/appointments/:id

Update an appointment details from a white-list of updatable attributes.

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

Updatable Attributes White-list

📘

Attributes not included in the request body or not on the white-list will be ignored. Appointments can be rescheduled and canceled with separate APIs.

  • firstName
  • lastName
  • phone
  • email
  • certificate
  • fields
  • notes
  • labels
  • smsOptIn

It is only necessary to send the attributes you would like to update, but required attributes such as firstName and lastName may not be cleared.

Updating Forms

Form data may be updated using the special fields attribute. The fields are an array of field ID and value objects, {"id": fieldId, "value": fieldValue}.

Field IDs can be found in the GET /forms API or by editing the form in Acuity and inspecting the fields by right clicking the field and choosing "Inspect".

Values for the [multi-valued field `checkboxlist`] should be submitted as a single comma-delimited string. Make sure to include a space after each comma in the string.

PUT "https://acuityscheduling.com/api/v1/appointments/1"

{
  "fields": [
    {
      "id": 1,
      "value": "My field value."
    }
  ]
}
PUT "https://acuityscheduling.com/api/v1/appointments/1"

{
  "fields": [
    {
        "id": 1, 
        "value": "Value 1, Value 2, Value 3"
        }
  ]
}

Updating as an Admin

📘

admin=true

By default appointments are updated as if they are being edited by a client. Updating an appointment as an admin allows setting the "notes" and/or "certificate" field, disabling attribute validations. To book as an admin pass the query parameter admin=true.

PUT "https://acuityscheduling.com/api/v1/appointments/1?admin=true"

{
  "notes": "These are my notes."
}

Labels

The API currently only accepts one label per appointment, passed as an array of objects with length 1.

"labels": [
{
"id": 3,
"name": "Completed",
"color": "pink"
}
][
{
"id": 3,
"name": "Completed",
"color": "pink"
}
],

Path Params
int32
required

Appointment ID

Body Params
string

Client first name, may not be removed.

string

Client last name, may not be removed.

string

Client email. May not be removed for clients, optional for admins.

string

Client phone. May not be removed for clients depending on account settings, optional for admins.

string

Package or coupon certificate code. May only be set by admins. Learn more about booking as an admin

fields
array

A special field for updating form field values.

fields
string

May only be set by admins. Learn more about booking as an admin.

labels
array

An array of label objects. The API currently only accepts an array of length 1.

labels
boolean
Defaults to false

Indicates whether the client has explicitly given their permission to receive SMS messages. This parameter is only applicable to Appointments with an Appointment Type that requires Opt In and can be omitted (and will be ignored) for all other Appointments. If set to false on an applicable Appointment, an SMS reminder will not be sent. This parameter may be omitted if you do not wish to update this field. For more information on SMS Opt In settings for Appointment Types, see the article in our Knowledge Base.

Response

Language
Credentials
Basic
base64
:
LoadingLoading…
Response
Choose an example:
application/json