For the complete documentation index, see llms.txt. This page is also available as Markdown.

Calendar

All Notifications

get

This endpoint is used to fetch all notifications in the current organization

Authorizations
AuthorizationstringRequired

JWT token obtained from /api/login/. Pass as: Authorization: Bearer

Query parameters
items_per_pageintegerRequired

Items Per Page

pageintegerRequired

Page Number

reversebooleanOptional

Sorting Order

sortstringOptional

Sorting Key

Responses
200Success
application/json

Serializer for Documents.

Recognized primitve fields:

* ``StringField``
* ``URLField``
* ``EmailField``
* ``IntField``
* ``LongField``
* ``FloatField``
* ``DecimalField``
* ``BooleanField``
* ``DateTimeField``
* ``ComplexDateTimeField``
* ``ObjectIdField``
* ``SequenceField`` (assumes it has integer counter)
* ``UUIDField``
* ``GeoPointField``
* ``GeoJsonBaseField`` (all those fields)
* ``DateField``

Compound fields: ListField and DictField are mapped to corresponding DRF fields, with respect to nested field specification.

The ReferenceField is handled like ForeignKey in DRF: there nested serializer autogenerated if serializer depth greater then 0, otherwise it's handled by it's own (results as str(id)).

For EmbeddedDocumentField also nested serializer autogenerated for non-zero depth, otherwise it is skipped. TODO: THIS IS PROBABLY WRONG AND SHOULD BE FIXED.

Generic fields GenericReferenceField and GenericEmbeddedDocumentField are handled by their own with corresponding serializer fields.

Not well supported or untested:

``FileField``
``ImageField``
``BinaryField``

All other fields are mapped to DocumentField and probably will work wrong.

calendar_idstring · max: 25Required
titlestringRequired
class_namestringOptional
locationstringOptional
descriptionstringOptional
startstring · date-timeOptional
endstring · date-timeOptional
usersstringRead-onlyRequired
optional_usersstringRead-onlyRequired
all_daybooleanOptional
linkstringOptional
projectstringOptional
milestone_idstring · max: 25 · nullableOptional
is_video_conferencebooleanOptional
video_conference_typestringOptional
is_meeting_cancelledbooleanOptional
cancel_notestringOptional
attendeesstringRead-onlyRequired
push_to_googlebooleanOptional
push_to_microsoftbooleanOptional
get/api/calendar/info/
GET /api/calendar/info/?items_per_page=1&page=1 HTTP/1.1
Host: api.app.projetly.io
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
[
  {
    "calendar_id": "text",
    "title": "text",
    "class_name": "text",
    "location": "text",
    "description": "text",
    "start": "2026-01-01T00:00:00.000Z",
    "end": "2026-01-01T00:00:00.000Z",
    "users": "text",
    "optional_users": "text",
    "all_day": true,
    "extended_props": {
      "ANY_ADDITIONAL_PROPERTY": "anything"
    },
    "link": "text",
    "repeat": {
      "ANY_ADDITIONAL_PROPERTY": "anything"
    },
    "project": "text",
    "milestone_id": "text",
    "is_video_conference": true,
    "video_conference_type": "text",
    "timezone": {
      "ANY_ADDITIONAL_PROPERTY": "anything"
    },
    "is_meeting_cancelled": true,
    "cancel_note": "text",
    "attendees": "text",
    "push_to_google": true,
    "push_to_microsoft": true
  }
]

Creates a new item

post

This endpoint is used to save a new item for the current organization

Authorizations
AuthorizationstringRequired

JWT token obtained from /api/login/. Pass as: Authorization: Bearer

Body
Other propertiesanyOptional
Responses
201

No response body

No content

post/api/calendar/info/
POST /api/calendar/info/ HTTP/1.1
Host: api.app.projetly.io
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
201

No response body

No content

Gets a meeting with the given id

get

This endpoint is used to fetch a meeting detail for the current organization

Authorizations
AuthorizationstringRequired

JWT token obtained from /api/login/. Pass as: Authorization: Bearer

Path parameters
idstringRequired
Responses
200Success
application/json

Serializer for Documents.

Recognized primitve fields:

* ``StringField``
* ``URLField``
* ``EmailField``
* ``IntField``
* ``LongField``
* ``FloatField``
* ``DecimalField``
* ``BooleanField``
* ``DateTimeField``
* ``ComplexDateTimeField``
* ``ObjectIdField``
* ``SequenceField`` (assumes it has integer counter)
* ``UUIDField``
* ``GeoPointField``
* ``GeoJsonBaseField`` (all those fields)
* ``DateField``

Compound fields: ListField and DictField are mapped to corresponding DRF fields, with respect to nested field specification.

The ReferenceField is handled like ForeignKey in DRF: there nested serializer autogenerated if serializer depth greater then 0, otherwise it's handled by it's own (results as str(id)).

For EmbeddedDocumentField also nested serializer autogenerated for non-zero depth, otherwise it is skipped. TODO: THIS IS PROBABLY WRONG AND SHOULD BE FIXED.

Generic fields GenericReferenceField and GenericEmbeddedDocumentField are handled by their own with corresponding serializer fields.

Not well supported or untested:

``FileField``
``ImageField``
``BinaryField``

All other fields are mapped to DocumentField and probably will work wrong.

calendar_idstring · max: 25Required
titlestringRequired
class_namestringOptional
locationstringOptional
descriptionstringOptional
startstring · date-timeOptional
endstring · date-timeOptional
usersstringRead-onlyRequired
optional_usersstringRead-onlyRequired
all_daybooleanOptional
linkstringOptional
projectstringOptional
milestone_idstring · max: 25 · nullableOptional
is_video_conferencebooleanOptional
video_conference_typestringOptional
is_meeting_cancelledbooleanOptional
cancel_notestringOptional
attendeesstringRead-onlyRequired
push_to_googlebooleanOptional
push_to_microsoftbooleanOptional
get/api/calendar/info/{id}/
GET /api/calendar/info/{id}/ HTTP/1.1
Host: api.app.projetly.io
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "calendar_id": "text",
  "title": "text",
  "class_name": "text",
  "location": "text",
  "description": "text",
  "start": "2026-01-01T00:00:00.000Z",
  "end": "2026-01-01T00:00:00.000Z",
  "users": "text",
  "optional_users": "text",
  "all_day": true,
  "extended_props": {
    "ANY_ADDITIONAL_PROPERTY": "anything"
  },
  "link": "text",
  "repeat": {
    "ANY_ADDITIONAL_PROPERTY": "anything"
  },
  "project": "text",
  "milestone_id": "text",
  "is_video_conference": true,
  "video_conference_type": "text",
  "timezone": {
    "ANY_ADDITIONAL_PROPERTY": "anything"
  },
  "is_meeting_cancelled": true,
  "cancel_note": "text",
  "attendees": "text",
  "push_to_google": true,
  "push_to_microsoft": true
}
put

API endpoint that allows meeting calendar to be created, viewed, deleted or edited.

Authorizations
AuthorizationstringRequired

JWT token obtained from /api/login/. Pass as: Authorization: Bearer

Path parameters
idstringRequired
Body

Serializer for Documents.

Recognized primitve fields:

* ``StringField``
* ``URLField``
* ``EmailField``
* ``IntField``
* ``LongField``
* ``FloatField``
* ``DecimalField``
* ``BooleanField``
* ``DateTimeField``
* ``ComplexDateTimeField``
* ``ObjectIdField``
* ``SequenceField`` (assumes it has integer counter)
* ``UUIDField``
* ``GeoPointField``
* ``GeoJsonBaseField`` (all those fields)
* ``DateField``

Compound fields: ListField and DictField are mapped to corresponding DRF fields, with respect to nested field specification.

The ReferenceField is handled like ForeignKey in DRF: there nested serializer autogenerated if serializer depth greater then 0, otherwise it's handled by it's own (results as str(id)).

For EmbeddedDocumentField also nested serializer autogenerated for non-zero depth, otherwise it is skipped. TODO: THIS IS PROBABLY WRONG AND SHOULD BE FIXED.

Generic fields GenericReferenceField and GenericEmbeddedDocumentField are handled by their own with corresponding serializer fields.

Not well supported or untested:

``FileField``
``ImageField``
``BinaryField``

All other fields are mapped to DocumentField and probably will work wrong.

calendar_idstring · max: 25Required
titlestringRequired
class_namestringOptional
locationstringOptional
descriptionstringOptional
startstring · date-timeOptional
endstring · date-timeOptional
usersstringRead-onlyRequired
optional_usersstringRead-onlyRequired
all_daybooleanOptional
linkstringOptional
projectstringOptional
milestone_idstring · max: 25 · nullableOptional
is_video_conferencebooleanOptional
video_conference_typestringOptional
is_meeting_cancelledbooleanOptional
cancel_notestringOptional
attendeesstringRead-onlyRequired
push_to_googlebooleanOptional
push_to_microsoftbooleanOptional
Responses
200Success
application/json

Serializer for Documents.

Recognized primitve fields:

* ``StringField``
* ``URLField``
* ``EmailField``
* ``IntField``
* ``LongField``
* ``FloatField``
* ``DecimalField``
* ``BooleanField``
* ``DateTimeField``
* ``ComplexDateTimeField``
* ``ObjectIdField``
* ``SequenceField`` (assumes it has integer counter)
* ``UUIDField``
* ``GeoPointField``
* ``GeoJsonBaseField`` (all those fields)
* ``DateField``

Compound fields: ListField and DictField are mapped to corresponding DRF fields, with respect to nested field specification.

The ReferenceField is handled like ForeignKey in DRF: there nested serializer autogenerated if serializer depth greater then 0, otherwise it's handled by it's own (results as str(id)).

For EmbeddedDocumentField also nested serializer autogenerated for non-zero depth, otherwise it is skipped. TODO: THIS IS PROBABLY WRONG AND SHOULD BE FIXED.

Generic fields GenericReferenceField and GenericEmbeddedDocumentField are handled by their own with corresponding serializer fields.

Not well supported or untested:

``FileField``
``ImageField``
``BinaryField``

All other fields are mapped to DocumentField and probably will work wrong.

calendar_idstring · max: 25Required
titlestringRequired
class_namestringOptional
locationstringOptional
descriptionstringOptional
startstring · date-timeOptional
endstring · date-timeOptional
usersstringRead-onlyRequired
optional_usersstringRead-onlyRequired
all_daybooleanOptional
linkstringOptional
projectstringOptional
milestone_idstring · max: 25 · nullableOptional
is_video_conferencebooleanOptional
video_conference_typestringOptional
is_meeting_cancelledbooleanOptional
cancel_notestringOptional
attendeesstringRead-onlyRequired
push_to_googlebooleanOptional
push_to_microsoftbooleanOptional
put/api/calendar/info/{id}/
PUT /api/calendar/info/{id}/ HTTP/1.1
Host: api.app.projetly.io
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 540

{
  "calendar_id": "text",
  "title": "text",
  "class_name": "text",
  "location": "text",
  "description": "text",
  "start": "2026-01-01T00:00:00.000Z",
  "end": "2026-01-01T00:00:00.000Z",
  "all_day": true,
  "extended_props": {
    "ANY_ADDITIONAL_PROPERTY": "anything"
  },
  "link": "text",
  "repeat": {
    "ANY_ADDITIONAL_PROPERTY": "anything"
  },
  "project": "text",
  "milestone_id": "text",
  "is_video_conference": true,
  "video_conference_type": "text",
  "timezone": {
    "ANY_ADDITIONAL_PROPERTY": "anything"
  },
  "is_meeting_cancelled": true,
  "cancel_note": "text",
  "push_to_google": true,
  "push_to_microsoft": true
}
200Success
{
  "calendar_id": "text",
  "title": "text",
  "class_name": "text",
  "location": "text",
  "description": "text",
  "start": "2026-01-01T00:00:00.000Z",
  "end": "2026-01-01T00:00:00.000Z",
  "users": "text",
  "optional_users": "text",
  "all_day": true,
  "extended_props": {
    "ANY_ADDITIONAL_PROPERTY": "anything"
  },
  "link": "text",
  "repeat": {
    "ANY_ADDITIONAL_PROPERTY": "anything"
  },
  "project": "text",
  "milestone_id": "text",
  "is_video_conference": true,
  "video_conference_type": "text",
  "timezone": {
    "ANY_ADDITIONAL_PROPERTY": "anything"
  },
  "is_meeting_cancelled": true,
  "cancel_note": "text",
  "attendees": "text",
  "push_to_google": true,
  "push_to_microsoft": true
}

Deletes the meeting with the given id

delete

This endpoint is used to delete an meeting for the current organization

Authorizations
AuthorizationstringRequired

JWT token obtained from /api/login/. Pass as: Authorization: Bearer

Path parameters
idstringRequired
Responses
204

No response body

No content

delete/api/calendar/info/{id}/
DELETE /api/calendar/info/{id}/ HTTP/1.1
Host: api.app.projetly.io
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
204

No response body

No content

get

API endpoint that allows meeting calendar to be created, viewed, deleted or edited.

Authorizations
AuthorizationstringRequired

JWT token obtained from /api/login/. Pass as: Authorization: Bearer

Responses
200Success
application/json

Serializer for Documents.

Recognized primitve fields:

* ``StringField``
* ``URLField``
* ``EmailField``
* ``IntField``
* ``LongField``
* ``FloatField``
* ``DecimalField``
* ``BooleanField``
* ``DateTimeField``
* ``ComplexDateTimeField``
* ``ObjectIdField``
* ``SequenceField`` (assumes it has integer counter)
* ``UUIDField``
* ``GeoPointField``
* ``GeoJsonBaseField`` (all those fields)
* ``DateField``

Compound fields: ListField and DictField are mapped to corresponding DRF fields, with respect to nested field specification.

The ReferenceField is handled like ForeignKey in DRF: there nested serializer autogenerated if serializer depth greater then 0, otherwise it's handled by it's own (results as str(id)).

For EmbeddedDocumentField also nested serializer autogenerated for non-zero depth, otherwise it is skipped. TODO: THIS IS PROBABLY WRONG AND SHOULD BE FIXED.

Generic fields GenericReferenceField and GenericEmbeddedDocumentField are handled by their own with corresponding serializer fields.

Not well supported or untested:

``FileField``
``ImageField``
``BinaryField``

All other fields are mapped to DocumentField and probably will work wrong.

calendar_idstring · max: 25Required
titlestringRequired
class_namestringOptional
locationstringOptional
descriptionstringOptional
startstring · date-timeOptional
endstring · date-timeOptional
usersstringRead-onlyRequired
optional_usersstringRead-onlyRequired
all_daybooleanOptional
linkstringOptional
projectstringOptional
milestone_idstring · max: 25 · nullableOptional
is_video_conferencebooleanOptional
video_conference_typestringOptional
is_meeting_cancelledbooleanOptional
cancel_notestringOptional
attendeesstringRead-onlyRequired
push_to_googlebooleanOptional
push_to_microsoftbooleanOptional
get/api/calendar/info/options/
GET /api/calendar/info/options/ HTTP/1.1
Host: api.app.projetly.io
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "calendar_id": "text",
  "title": "text",
  "class_name": "text",
  "location": "text",
  "description": "text",
  "start": "2026-01-01T00:00:00.000Z",
  "end": "2026-01-01T00:00:00.000Z",
  "users": "text",
  "optional_users": "text",
  "all_day": true,
  "extended_props": {
    "ANY_ADDITIONAL_PROPERTY": "anything"
  },
  "link": "text",
  "repeat": {
    "ANY_ADDITIONAL_PROPERTY": "anything"
  },
  "project": "text",
  "milestone_id": "text",
  "is_video_conference": true,
  "video_conference_type": "text",
  "timezone": {
    "ANY_ADDITIONAL_PROPERTY": "anything"
  },
  "is_meeting_cancelled": true,
  "cancel_note": "text",
  "attendees": "text",
  "push_to_google": true,
  "push_to_microsoft": true
}

Gets a meeting with the given source_ref_id

get

This endpoint is used to fetch a meeting detail for the current organization by external source_ref_id

Authorizations
AuthorizationstringRequired

JWT token obtained from /api/login/. Pass as: Authorization: Bearer

Query parameters
source_ref_idstringRequired

External event reference id

Responses
200Success
application/json

Serializer for Documents.

Recognized primitve fields:

* ``StringField``
* ``URLField``
* ``EmailField``
* ``IntField``
* ``LongField``
* ``FloatField``
* ``DecimalField``
* ``BooleanField``
* ``DateTimeField``
* ``ComplexDateTimeField``
* ``ObjectIdField``
* ``SequenceField`` (assumes it has integer counter)
* ``UUIDField``
* ``GeoPointField``
* ``GeoJsonBaseField`` (all those fields)
* ``DateField``

Compound fields: ListField and DictField are mapped to corresponding DRF fields, with respect to nested field specification.

The ReferenceField is handled like ForeignKey in DRF: there nested serializer autogenerated if serializer depth greater then 0, otherwise it's handled by it's own (results as str(id)).

For EmbeddedDocumentField also nested serializer autogenerated for non-zero depth, otherwise it is skipped. TODO: THIS IS PROBABLY WRONG AND SHOULD BE FIXED.

Generic fields GenericReferenceField and GenericEmbeddedDocumentField are handled by their own with corresponding serializer fields.

Not well supported or untested:

``FileField``
``ImageField``
``BinaryField``

All other fields are mapped to DocumentField and probably will work wrong.

calendar_idstring · max: 25Required
titlestringRequired
class_namestringOptional
locationstringOptional
descriptionstringOptional
startstring · date-timeOptional
endstring · date-timeOptional
usersstringRead-onlyRequired
optional_usersstringRead-onlyRequired
all_daybooleanOptional
linkstringOptional
projectstringOptional
milestone_idstring · max: 25 · nullableOptional
is_video_conferencebooleanOptional
video_conference_typestringOptional
is_meeting_cancelledbooleanOptional
cancel_notestringOptional
attendeesstringRead-onlyRequired
push_to_googlebooleanOptional
push_to_microsoftbooleanOptional
get/api/calendar/info/source-ref/
GET /api/calendar/info/source-ref/?source_ref_id=text HTTP/1.1
Host: api.app.projetly.io
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "calendar_id": "text",
  "title": "text",
  "class_name": "text",
  "location": "text",
  "description": "text",
  "start": "2026-01-01T00:00:00.000Z",
  "end": "2026-01-01T00:00:00.000Z",
  "users": "text",
  "optional_users": "text",
  "all_day": true,
  "extended_props": {
    "ANY_ADDITIONAL_PROPERTY": "anything"
  },
  "link": "text",
  "repeat": {
    "ANY_ADDITIONAL_PROPERTY": "anything"
  },
  "project": "text",
  "milestone_id": "text",
  "is_video_conference": true,
  "video_conference_type": "text",
  "timezone": {
    "ANY_ADDITIONAL_PROPERTY": "anything"
  },
  "is_meeting_cancelled": true,
  "cancel_note": "text",
  "attendees": "text",
  "push_to_google": true,
  "push_to_microsoft": true
}

Last updated