Skip to content

Create an appointment

POST /appointments

Creates a CRM appointment. The wrapped payload form is canonical; direct top-level appointment fields remain accepted for compatibility. Times use ISO 8601 with an explicit offset, and connector-level rejection can return HTTP 200 with successful: false.

Operation ID: postAppointments
Authorization: BEARER or API key

Request body

Appointment payload. The wrapper is canonical; the direct form remains for compatibility.

Required: Yes

Content type: application/json

Schema: AppointmentCreateRequest

{
  "payload": {
    "title": "Strategy Call",
    "summary": "Discuss case plan",
    "startTimeUtc": "2026-07-20T19:00:00.000Z",
    "durationMinutes": 30,
    "contacts": [
      {
        "id": "501",
        "type": "Contact"
      }
    ]
  }
}

Responses

Status Description Body
200 Appointment creation result. AppointmentCreateResponse
400 Bad request, missing authentication, or connector error. ErrorResponse, string
401 The user session is expired or revoked. ErrorResponse, string