Appointment

Edit an appointment

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…

This function allows you to modify an existing appointment. See Appointment for a list of attributes which are supported for appointments. Only attributes marked as Read-Write can be modified using this endpoint.

🚧

Repeating appointments cannot be created or modified via the API. Attempting to edit an existing repeating appointment will return a should_not_edit_appointment error. To work with repeating appointments, use the Daylite application directly.

📘

Note

When editing an appointment, including the add or remove actions will allow you to specify a list of items to update/remove from the field's existing contents. Leaving out add or remove will replace the fields contents entirely.

Examples:
{ "resources": { "add":["/v1/resources/1000"] } }
{ "invitations": { "remove":[{ "invitee": "/v1/contacts/2000" }] } }

Attributes you leave out are not changed. Some appointments are marked as not editable through the API; editing one returns 400 with {"error":"not_editable_via_api"}.

An appointment in the trash can't be edited (404 with {"error":"trashed_object"}) until you restore it with {"trashed": false}. A successful update returns 204 No Content.

Path Params
int32
required

The appointment ID

Body Params
string

Subject (max 2048 characters).

string

Location (max 2048 characters).

string

Details (max 8192 characters).

string

Category name. Created if it does not exist. Send null or "" to clear.

keywords

List of keyword names (max 64). Keywords that do not exist are created. Send an array to replace the list, or {"add": [...], "remove": [...]} to change only some entries.

string
enum

Appointment type.

string
enum

Appointment status.

Allowed:
boolean

Whether this is an all-day appointment.

string
enum

Show the time as busy or free.

Allowed:
string

IANA time zone name, e.g. America/Toronto, or floating for an appointment at the same clock time in every time zone.

date-time

Start time in UTC, e.g. 2025-04-10T13:15:00Z.

date-time

End time in UTC, e.g. 2025-04-10T14:15:00Z. Must be after the start.

string

Start time in the appointment's timezone, without an offset, e.g. 2025-04-10T09:15:00. Ignored if utc_start is also sent.

string

End time in the appointment's timezone, without an offset, e.g. 2025-04-10T10:15:00. Ignored if utc_end is also sent.

resources

References of the resources booked for the appointment, e.g. ["/v1/resources/1000"]. At most 10, and all must be active. Send an array to replace the list, or {"add": [...], "remove": [...]} to change only some entries.

invitations

People invited to the appointment. Send an array to replace the list, or {"add": [...], "remove": [...]} to change only some entries.

contacts

Contacts linked to the appointment. Send an array to replace the list, or {"add": [...], "remove": [...]} to change only some entries.

companies

Companies linked to the appointment. Send an array to replace the list, or {"add": [...], "remove": [...]} to change only some entries.

opportunities

Opportunities linked to the appointment. Send an array to replace the list, or {"add": [...], "remove": [...]} to change only some entries.

projects

Projects linked to the appointment. Send an array to replace the list, or {"add": [...], "remove": [...]} to change only some entries.

tasks

Tasks linked to the appointment. Send an array to replace the list, or {"add": [...], "remove": [...]} to change only some entries.

groups

Groups linked to the appointment. Send an array to replace the list, or {"add": [...], "remove": [...]} to change only some entries.

notes

Notes linked to the appointment. Send an array to replace the list, or {"add": [...], "remove": [...]} to change only some entries.

forms

Forms linked to the appointment. Send an array to replace the list, or {"add": [...], "remove": [...]} to change only some entries.

email_messages

Emails to link to the appointment. Write-only: use GET /v1/appointments/{id}/emails to list them. Send an array to replace the list, or {"add": [...], "remove": [...]} to change only some entries.

string

Reference to the user responsible for the appointment, e.g. /v1/users/1000. Defaults to the user making the request.

boolean

Set to false to restore the appointment from the trash. Use DELETE to move it to the trash.

Responses
204

204 No Content

Language
Credentials
Header
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json