POST/api/v1/s2s/bookings
Create a booking
Published Partner endpoint from the stable OpenAPI 1.10.0 contract.
Overview
Use this endpoint only with a Partner API key. Code samples use placeholders and the public sandbox URL.
- Method
- POST
- Endpoint
- /api/v1/s2s/bookings
- Authentication
- X-API-Key
Request
Parameters
- X-Correlation-IDstringheader
- Optional opaque request correlation ID for tracing API calls across systems. Billing audit paths persist only UUIDv4-shaped values and drop free-form values.
- Example: 33333333-3333-4333-8333-333333333333
- Idempotency-Keystringheader
- Optional idempotency key for safe retries of booking mutations.
- Example: booking-create-2026-05-13-001
Request body
Required- appointmentTypeSlugstring
- Optional selected appointment type slug. When supplied, it must be active for the selected slot provider organization and specialty.
- Example: adipositas-erstberatung
- externalPatientRefstringRequired
- External patient reference from the integrating system.
- Example: patient-12345
- intakeResponsesobject
- Appointment-type-specific intake answers keyed by known custom field keys. Strings are NFC-normalized and trimmed before rule validation and encryption. At most 30 keys and 32,768 UTF-8 bytes of canonical normalized JSON; text/textarea values have a 240/4,000-code-point ceiling, numbers must be finite and within ±1,000,000,000. Required fields, type-specific rules and select values are checked against the selected appointment type (or encrypted historical snapshot for edits). Unknown/reserved keys are rejected with generic errors, without reflecting field keys or values.
- Example: {"companion-count":1,"visit-reason":"Erstberatung zur Adipositas-Therapie"}
- patientEmailstring (email)
- Optional patient email.
- patientNamestring
- Optional patient display name.
- patientPhonestring
- Optional patient phone.
- slotIdstring (uuid)Required
- Slot to book.
- Example: 0d6b61b1-a99e-480c-878f-b8f5d1be0983
- smsConfirmationAcceptedboolean
- Optional explicit SMS confirmation opt-in. When true, patientPhone must use strict E.164 format (+ followed by 8 to 15 digits).
Contract
The versioned OpenAPI contract is the authoritative source for parameters, request bodies, and response schemas.
Version
1.10.0
Expected response
201 Created