Calendar
The Event object represents an individual event in the EstatePrime's calendar system. This object is returned in JSON format, containing all available values for a event.
Object
The Event object represents an individual event in the EstatePrime's calendar system. Below are the fields included in a Event object:
Example
json
{
"id": 1489,
"full_day": false,
"date_starting": "2025-01-20 10:00:00",
"date_ending": "2025-01-20 11:00:00",
"date_created": "2025-01-15 18:00:05",
"created_by": 10,
"status_id": 1,
"category_id": 3,
"contacts": [23, 45, 67],
"users": [2, 5, 7],
"title": "Team Meeting",
"description": "Monthly update and strategy planning.",
"is_public": false,
"is_online": true,
"tags": [12, 34],
"remote_meeting": {
"type": "Google Meet",
"meeting_url": "https://meet.google.com/abc-defg-hij",
"meeting_id": "1x0g1q8ppes9681fpjaiq85dh1"
}
}- id (int): The system id of the event.
- full_day (boolean): Indicates if the event is a full-day event.
- date_starting (string): The date and time the event starts in
YYYY-MM-DD HH:MM:SSformat. - date_ending (string): The date and time the event ends in
YYYY-MM-DD HH:MM:SSformat. - date_created (string): The date and time the event was created in the format
YYYY-MM-DD HH:MM:SS. - created_by (int): The user ID of the user who created the event.
- status_id (int): The ID of the event status.
- category_id (int): The ID of the event category.
- contacts (array of integers): A list of contact IDs associated with the event.
- users (array of integers): A list of user IDs associated with the event.
- title (string): The event's title.
- description (string): The event's description.
- is_public (boolean): Indicates if the event is public.
- is_online (boolean): Indicates if the event is remote.
- tags (array of integers): A list of tag IDs associated with the event.
- remote_meeting (object): Information about the remote meeting, or
nullif not applicable. The object includes:- type (string): The type of the remote meeting (
Google Meet,Zoom,Other). - meeting_url (string): The url of the remote meeting.
- meeting_id (string): The meeting_id in case it was automatically created.
- type (string): The type of the remote meeting (
Get events
/api/calendar (GET)
Fetch a list of events.
Request
- Method:
GET - Headers: Include authentication headers as described in the Authentication section.
- Body: JSON object with the following parameters:
page(int): The page number to fetch. Defaults to1.date_starting(object): Filter by event's starting date range. Must include:min(string): The minimum date inYYYY-MM-DD HH:MM:SSformat, ornullfor no lower limit.max(string): The maximum date inYYYY-MM-DD HH:MM:SSformat, ornullfor no upper limit.
Example Body
json
{
"page": 1,
"date_starting": {
"min": "2025-02-24 00:00:00",
"max": null
}
}Response
- 200 OK: Returns a JSON array of event objects.
Example Response
json
{
"status": 200,
"page": 1,
"total_pages": 9,
"results_per_page": 50,
"total_results": 428,
"data": [
{
"id": 1489,
"full_day": false,
"date_starting": "2025-01-20 10:00:00",
"date_ending": "2025-01-20 11:00:00",
"date_created": "2025-01-15 18:00:05",
"created_by": 10,
"status_id": 1,
"category_id": 3,
"contacts": [23, 45, 67],
"users": [2, 5, 7],
"title": "Team Meeting",
"description": "Monthly update and strategy planning.",
"is_public": false,
"is_online": true,
"tags": [12, 34],
"remote_meeting": {
"type": "Google Meet",
"meeting_url": "https://meet.google.com/abc-defg-hij",
"meeting_id": "1x0g1q8ppes9681fpjaiq85dh1"
}
},
//Rest of the data...
]
}Get single event
/api/calendar/{id} (GET)
Get a single event by its id.
Request
- Method:
GET - Headers: Include authentication headers.
- Path Params: The event id to be fetched.
Example Response
json
{
"status": 200,
"data": {
"id": 1489,
"full_day": false,
"date_starting": "2025-01-20 10:00:00",
"date_ending": "2025-01-20 11:00:00",
"date_created": "2025-01-15 18:00:05",
"created_by": 10,
"status_id": 1,
"category_id": 3,
"contacts": [23, 45, 67],
"users": [2, 5, 7],
"title": "Team Meeting",
"description": "Monthly update and strategy planning.",
"is_public": false,
"is_online": true,
"tags": [12, 34],
"remote_meeting": {
"type": "Google Meet",
"meeting_url": "https://meet.google.com/abc-defg-hij",
"meeting_id": "1x0g1q8ppes9681fpjaiq85dh1"
}
}
}Response
- 200 OK: Returns the JSON object of the event.
Create event
/api/calendar (POST)
Create a new event.
Request
- Method:
POST - Headers: Include authentication headers.
- Body: JSON object with the event details to be inserted.
Example Body
json
{
"full_day": true,
"date_starting": "2025-01-20",
"date_ending": "2025-01-21",
"created_by": 10,
"status_id": 1,
"category_id": 3,
"contacts": [23, 45, 67],
"users": [2, 5, 7],
"title": "Team Meeting",
"description": "Monthly update and strategy planning.",
"is_public": false,
"is_online": true,
"tags": [12, 34]
}Response
- 200 OK: Returns the created event ID.
Example Response
json
{
"status": 200,
"created_id": 789
}Update event
/api/calendar/{id} (PATCH)
Edit an existing event.
Request
- Method:
POST - Headers: Include authentication headers.
- Path Params: The event id to be edited.
- Body: JSON object with the event details to be updated.
Example Body
json
{
"status_id": 2,
"tags": null
}Response
- 200 OK: Returns the new event object.
Example Response
json
{
"status": 200,
"data": {
"id": 1489,
"full_day": false,
"date_starting": "2025-01-20 10:00:00",
"date_ending": "2025-01-20 11:00:00",
"date_created": "2025-01-15 18:00:05",
"created_by": 10,
"status_id": 2,
"category_id": 3,
"contacts": [23, 45, 67],
"users": [2, 5, 7],
"title": "Team Meeting",
"description": "Monthly update and strategy planning.",
"is_public": false,
"is_online": true,
"tags": [],
"remote_meeting": {
"type": "Google Meet",
"meeting_url": "https://meet.google.com/abc-defg-hij",
"meeting_id": "1x0g1q8ppes9681fpjaiq85dh1"
}
}
}Delete event
/api/calendar/{id} (DELETE)
Delete a contact from the system.
Request
- Method:
DELETE - Headers: Include authentication headers.
- Path Params: The event id to be deleted.
Response
- 200 OK: Returns a success message.
Example Response
json
{
"status": 200,
"deleted_id": 789
}Get event categories
/api/calendar/categories (GET)
Fetch the available event categories.
Request
- Method:
GET - Headers: Include authentication headers.
Response
- 200 OK: Returns a JSON array of available event categories.
Example Response
json
{
"status": 200,
"data": [
{
"id": 1,
"name": "Property Viewing",
},
{
"id": 2,
"name": "Appointment with Homeowner",
},
{
"id": 3,
"name": "Team Meeting",
},
{
"id": 4,
"name": "Other",
}
]
}Get event statuses
/api/calendar/statuses (GET)
Fetch the available event statuses.
Request
- Method:
GET - Headers: Include authentication headers.
Response
- 200 OK: Returns a JSON array of available event statuses.
Example Response
json
{
"status": 200,
"data": [
{
"id": 1,
"name": "Upcoming",
},
{
"id": 2,
"name": "In progress",
},
{
"id": 3,
"name": "Completed",
},
{
"id": 4,
"name": "Cancelled",
}
]
}Get event tags
/api/calendar/tags (GET)
Fetch the available contact tags.
Request
- Method:
GET - Headers: Include authentication headers.
Response
- 200 OK: Returns a JSON array of available event tags.
Example Response
json
{
"status": 200,
"data": [
{
"id": 1,
"name": "VIP client",
},
{
"id": 2,
"name": "Lost",
}
]
}Get event custom fields
/api/calendar/custom-fields (GET)
Fetch the available custom fields for events.
Request
- Method:
GET - Headers: Include authentication headers.
Response
- 200 OK: Returns a JSON array of available custom fields for events.
Example Response
json
{
"status": 200,
"data": [
{
"id": 1,
"name": "Urgent Meeting",
"type": "checkbox"
}
]
}Available custom fields types
- text: Text up to 255 characters.
- textarea: Text up to 2500 characters.
- wysiwyg: Text with html format.
- number: Integer or decimal.
- formatted_number: Integer or decimal that is formatted. Eg 1,000,000.25.
- select: Single select with options.
- select_multi: Multiple select with options.
- checkbox: Boolean.
- file: Single file. (As a URL)
- file_multi: Array of multiple files. (As URLs)
- image: Single image. (As a URL)
- image_multi: Array of multiple images. (As URLs)
- address: Address. (Eg Bellariastraße 6, 1010 Wien, Austria)
- url: URL.
- date: Date in YYYY-MM-DD format. (Eg 2025-10-18)
- datetime: Date in YYYY-MM-DD HH:MM:SS format. (Eg 2025-10-18 18:24:10)
- currency: Integer or decimal that is formatted like a currency. Eg 1,000,000.25€.
- user: Application user_id.
- user_multi: An array of application user_id.
- contact: Another contact's id.
- contact_multi: An array with multiple contact ids.

