Skip to main content
POST
/
appointments
Schedule Appointment
curl --request POST \
  --url https://api.mijnklantportaal.nl/v1/appointments \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "Contract extension",
  "startsAt": "2025-03-05 14:30:00",
  "endsAt": "2025-03-05 16:00:00",
  "customerId": "cst_abcde123fgh",
  "attendeeName": "John Doe",
  "attendeeEmail": "[email protected]"
}
'
{
  "id": "apt_abc12346def678",
  "customerId": "cst_abc12345def678",
  "attendeeName": "John Doe",
  "attendeeEmail": "[email protected]",
  "startsAt": "2025-03-05T16:00:00+02:00",
  "endsAt": "2025-03-05T16:30:00+02:00",
  "status": "scheduled",
  "onlineMeetingLink": "https://meet.google.com/abc-123",
  "createdAt": "2025-03-04T17:23:14+02:00"
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
name
string
required

Name of the appointment, what will show up in the calendar

Example:

"Contract extension"

startsAt
string
required

The date and time the appointment will take place, written in format Y-m-d H:i

Example:

"2025-03-05 14:30:00"

endsAt
string
required

The date and time the appointment will ends, written in Y-m-d H:i format

Example:

"2025-03-05 16:00:00"

customerId
string

ID of the customer, if the appoinment is with a customer existing in your portal

Example:

"cst_abcde123fgh"

attendeeName
string

Name of the person you will meet with, required when no customerId is provided

Example:

"John Doe"

attendeeEmail
string

Email of the person you will meet with, required when no customerId is provided

Response

Returning the created Appointment

Appointment

id
string

ID of the appointment, always starting with apt_.

Example:

"apt_abc12346def678"

customerId
string | null

ID of the Customer involved in this appointment, when the case

Example:

"cst_abc12345def678"

attendeeName
string

Name of the attendee of the meeting

Example:

"John Doe"

attendeeEmail
string

Emailaddress of the attendee of the meeting

startsAt
string

Date and time when the appointment starts, written in ATOM format.

Example:

"2025-03-05T16:00:00+02:00"

endsAt
string

Date and time when the appointment ends, written in ATOM format.

Example:

"2025-03-05T16:30:00+02:00"

status
string

Current status of the appointment. Possible values are scheduled, canceled, and pending.

Example:

"scheduled"

Link to the online meeting of the connected integration, when available

Example:

"https://meet.google.com/abc-123"

createdAt
string

Date and time when the appointment is added to MijnKlantportaal, not matter of the status. Written in ATOM format.

Example:

"2025-03-04T17:23:14+02:00"