---
title: "Create a general appointment."
method: POST
path: "/appointments/general"
tags: ["Appointments"]
---

# Create a general appointment.

`POST /appointments/general`

## Request

- Base URL: `https://api.alto.zoopladev.co.uk`
- URL: `https://api.alto.zoopladev.co.uk/appointments/general`
- Auth: `appAuth` (a scheme the document does not define)

Creates an appointment with the requested contacts and properties for the given negotiators.
Required scope: alto/write:appointments_general

## Headers

- `AgencyRef` string, required

## Request body

- GeneralAppointmentRequest
  - `negotiatorIds` integer[], required: Required: The unique identifer of the negotiator(s)
  - `branchId` integer, nullable: Optional: The branch in which to record the appointment diary event. When omitted, defaults to the first negotiator's default branch.
  - `contactIds` integer[], nullable: Optional: The unique identifer of the applicant(s)
  - `propertyIds` integer[], nullable: Optional: The unique identifer of the property(s)
  - `urgent` boolean: Optional: Set the Urgent flag for the appointment being created. If ommitted this will default to false.
  - `startDate` string, date-time, required: Required: The start date and time in ISO 8601 format of the appointment being created. Interpreted as UK local diary time: a value with a UTC marker (a trailing `Z`) or an explicit offset is converted to UK local time (Europe/London); a plain local value with no offset is taken as-is.
  - `endDate` string, date-time, required: Required: The end date and time in ISO 8601 format of the appointment being created. Interpreted as UK local diary time: a value with a UTC marker (a trailing `Z`) or an explicit offset is converted to UK local time (Europe/London); a plain local value with no offset is taken as-is.
  - `subTypeId` integer, required: Required: The sub type of the appointment being created.
  - `location` string, nullable: Optional: The location where the appointment being created will be held.
  - `notes` string, nullable: Optional: Additional notes to accompany the appointment being created.

## Response `200`

Returns an object containing the newly created appointment's unique identifier

- CreateAppointmentData
  - `appointmentId` integer: The unique identifier of the viewing appointment that has been created

## Other responses

- `400`: Validation error e.g. invalid date range selection.
- `401`: Unauthorized
- `403`: Invalid scope or AgencyRef for request.
- `500`: Internal Server Error

---

[API](https://skmtc.dev/alto/apis/alto-api.md) - [All operations](https://skmtc.dev/alto/apis/alto-api/llms.txt) - [OpenAPI document](https://skmtc.dev/alto/apis/alto-api/revisions/1b729d9b15a8?raw)
