---
updatedAt: 2025-06-09T23:19:48.000Z
agentTools:
  projectIndex: https://developers.acuityscheduling.com/llms.txt
---

# /appointments/:id/cancel

Cancel an appointment.

Cancel an appointment using this endpoint.  Once canceled, appointments will have a `noShow` attribute.  This attribute may be updated, but it isn't possible to un-cancel the appointment.

### Cancel as an Admin

> 📘 ?admin=true
>
> By default appointments are canceled as a client.  Canceling an appointment as an admin allows setting the "noShow" field and disables cancellation rules.  To cancel as an admin pass the query parameter `admin=true`.

### No Email

Skip sending the cancellation e-mail and SMS by canceling the appointment with the `noEmail=true` query parameter.

### Errors

Validation errors return a `400` error response:

```json 400
{
  "status_code": 400,
  "message": "Clients are not allowed to cancel.",
  "error": "cancel_not_allowed"
}
```

| Error                | Message                                                                      |
| -------------------- | ---------------------------------------------------------------------------- |
| `cancel_not_allowed` | Clients are not allowed to cancel.                                           |
| `cancel_too_close`   | Clients are not allowed to cancel this close to the time of the appointment. |

# OpenAPI definition

```json
{
  "openapi": "3.1.0",
  "info": {
    "title": "v1",
    "version": "1.1"
  },
  "servers": [
    {
      "url": "https://acuityscheduling.com/api/v1"
    }
  ],
  "components": {
    "securitySchemes": {
      "sec0": {
        "type": "http",
        "scheme": "basic"
      }
    }
  },
  "security": [
    {
      "sec0": []
    }
  ],
  "paths": {
    "/appointments/{id}/cancel": {
      "put": {
        "summary": "/appointments/:id/cancel",
        "description": "Cancel an appointment.",
        "operationId": "put-appointments-id-cancel",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Appointment ID",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "cancelNote": {
                    "type": "string",
                    "description": "A message to send with cancellation notifications."
                  },
                  "noShow": {
                    "type": "boolean",
                    "description": "Whether the appointment was a no show, settable by admins.",
                    "default": false
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "200",
            "content": {
              "application/json": {
                "examples": {
                  "Result": {
                    "value": "{\n\t\"id\": 1,\n\t\"firstName\": \"Bob\",\n\t\"lastName\": \"McTest\",\n\t\"phone\": \"\",\n\t\"email\": \"bob.mctest@example.com\",\n\t\"date\": \"June 17, 2013\",\n\t\"time\": \"10:15am\",\n\t\"endTime\": \"11:15am\",\n  \"dateCreated\": \"July 2, 2013\",\n  \"datetime\": \"2013-06-17T10:15:00-0700\",\n\t\"price\": \"10.00\",\n\t\"paid\": \"no\",\n  \"amountPaid\": \"0.00\",\n\t\"type\": \"Regular Visit\",\n  \"appointmentTypeID\": 1,\n  \"classID\": null,\n\t\"duration\": \"60\",\n\t\"calendar\": \"My Calendar\",\n\t\"calendarID\": 1,\n  \"location\": \"\",\n  \"certificate\": null,\n\t\"confirmationPage\": \"https://acuityscheduling.com/schedule.php?owner=11145481&id[]=1220aa9f41091c50c0cc659385cfa1d0&action=appt\",\n\t\"formsText\": \"...\",\n\t\"notes\": \"Notes\",\n\t\"timezone\": \"America/New_York\",\n\t\"forms\": [\n\t\t{\n\t\t\t\"id\": 1,\n\t\t\t\"name\": \"Example Intake Form\",\n\t\t\t\"values\": [\n\t\t\t\t{\n\t\t\t\t\t\"value\": \"yes\",\n\t\t\t\t\t\"name\": \"Is this your first visit?\",\n\t\t\t\t\t\"fieldID\": 1,\n\t\t\t\t\t\"id\": 21502993\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"value\": \"Ninja\",\n\t\t\t\t\t\"name\": \"What is your goal for this appointment?\",\n\t\t\t\t\t\"fieldID\": 2,\n\t\t\t\t\t\"id\": 21502994\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\t],\n  \"noShow\": false\n}"
                  }
                },
                "schema": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "integer",
                      "example": 1,
                      "default": 0
                    },
                    "firstName": {
                      "type": "string",
                      "example": "Bob"
                    },
                    "lastName": {
                      "type": "string",
                      "example": "McTest"
                    },
                    "phone": {
                      "type": "string",
                      "example": ""
                    },
                    "email": {
                      "type": "string",
                      "example": "bob.mctest@example.com"
                    },
                    "date": {
                      "type": "string",
                      "example": "June 17, 2013"
                    },
                    "time": {
                      "type": "string",
                      "example": "10:15am"
                    },
                    "endTime": {
                      "type": "string",
                      "example": "11:15am"
                    },
                    "dateCreated": {
                      "type": "string",
                      "example": "July 2, 2013"
                    },
                    "datetime": {
                      "type": "string",
                      "example": "2013-06-17T10:15:00-0700"
                    },
                    "price": {
                      "type": "string",
                      "example": "10.00"
                    },
                    "paid": {
                      "type": "string",
                      "example": "no"
                    },
                    "amountPaid": {
                      "type": "string",
                      "example": "0.00"
                    },
                    "type": {
                      "type": "string",
                      "example": "Regular Visit"
                    },
                    "appointmentTypeID": {
                      "type": "integer",
                      "example": 1,
                      "default": 0
                    },
                    "classID": {},
                    "duration": {
                      "type": "string",
                      "example": "60"
                    },
                    "calendar": {
                      "type": "string",
                      "example": "My Calendar"
                    },
                    "calendarID": {
                      "type": "integer",
                      "example": 1,
                      "default": 0
                    },
                    "location": {
                      "type": "string",
                      "example": ""
                    },
                    "certificate": {},
                    "confirmationPage": {
                      "type": "string",
                      "example": "https://acuityscheduling.com/schedule.php?owner=11145481&id[]=1220aa9f41091c50c0cc659385cfa1d0&action=appt"
                    },
                    "formsText": {
                      "type": "string",
                      "example": "..."
                    },
                    "notes": {
                      "type": "string",
                      "example": "Notes"
                    },
                    "timezone": {
                      "type": "string",
                      "example": "America/New_York"
                    },
                    "forms": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "id": {
                            "type": "integer",
                            "example": 1,
                            "default": 0
                          },
                          "name": {
                            "type": "string",
                            "example": "Example Intake Form"
                          },
                          "values": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "value": {
                                  "type": "string",
                                  "example": "yes"
                                },
                                "name": {
                                  "type": "string",
                                  "example": "Is this your first visit?"
                                },
                                "fieldID": {
                                  "type": "integer",
                                  "example": 1,
                                  "default": 0
                                },
                                "id": {
                                  "type": "integer",
                                  "example": 21502993,
                                  "default": 0
                                }
                              }
                            }
                          }
                        }
                      }
                    },
                    "noShow": {
                      "type": "boolean",
                      "example": false,
                      "default": true
                    }
                  }
                }
              }
            }
          }
        },
        "deprecated": false,
        "x-readme": {
          "code-samples": [
            {
              "language": "javascript",
              "code": "var Acuity = require('acuityscheduling');\n\nvar acuity = Acuity.basic({\n  userId: ACUITY_USER_ID,\n  apiKey: 'ACUITY_API_KEY'\n});\n\n// Create appontment options:\nvar options = {\n  method: 'PUT',\n  body: {\n    cancelNote: 'The bridge is out!'\n  }\n};\n\n// Make the cancel appointment request:\nvar appointmentID = 1;\nacuity.request('/appointments/' + appointmentID + '/cancel', options, function (err, res, appointment) {\n  if (err) return console.error(err);\n  console.log(appointment);\n});",
              "name": "js-sdk"
            },
            {
              "language": "php",
              "code": "<?php\nrequire_once('vendor/autoload.php');\n\n$acuity = new AcuityScheduling(array(\n  'userId' => ACUITY_USER_ID,\n  'apiKey' => 'ACUITY_API_KEY'\n));\n\n// Make the cancel-appointment request:\n$appointmentID = 1;\n$appointment = $acuity->request('/appointments/'.$appointmentID.'/cancel', array(\n  'method' => 'PUT',\n  'data' => array(\n    'cancelNote' => 'The bridge is out!'\n  )\n));\nprint_r($appointment);",
              "name": "php-sdk"
            }
          ],
          "samples-languages": [
            "javascript",
            "php"
          ]
        }
      }
    }
  },
  "x-readme": {
    "headers": [],
    "explorer-enabled": false,
    "proxy-enabled": false
  },
  "x-readme-fauxas": true
}
```