Skip to content

Validate Booking Parameters

Request

After generating the appointment parameters, you can validate them to ensure the appointment can be successfully created.

The JSON object containing the Online Booking parameters includes the following fields:

FieldTypeMandatoryDescription
appointmentsArray of objectsYESBooking options (services, team members...)

The appointments array consists of objects that have the following fields:

FieldTypeMandatoryDescription
idnumberYesAppointment ID for post-save feedback (see response to request).
servicesarray of numbersNOArray of IDs of the services the client wants to sign up for
staff_idnumberYESID of the team member the client wants to book with (0 if any team member is selected)
datetimedatetimeYESSession date and time in ISO8601 format (passed for each session in the book_times resource)

In response to the parameter check request, an empty response with the code 201 will be returned if the booking parameters are in order and bookings can be created:

If the response is JSON with an HTTP code other than 201, then the booking parameters are out of order, and bookings cannot be created.

The server may return the following errors during appointment creation:

  1. Selected time slot is already taken. Returned with HTTP status code 422 and error code 433.

  2. No team members available for booking. Occurs if a default team member was selected but none are available. Returned with HTTP status code 422 and error code 436.

  3. Booking time conflict within the same request. One of the selected booking times overlaps with another booking created in the same request. Returned with HTTP status code 422 and error code 437, including the conflicting booking’s id in the appointments array.

  4. Service not available for booking The selected service is no longer available (e.g. removed by the location). Returned with HTTP status code 422 and error code 438.

Security
BearerPartner
Path
location_idnumberrequired

location ID

Headers
Acceptstringrequired

e.g. application/vnd.api.v2+json

Example:application/vnd.api.v2+json
Content-Typestringrequired

application/json

Authorizationstringrequired

Bearer partner_token

Bodyapplication/jsonrequired
appointmentsArray of objectsrequired

appointment options (services, team members...)

Example:
[ { "id": 1, "services": [], "staff_id": 6544, "datetime": "2026-09-21T23:00:00.000-05:00" }, { "id": 2, "services": [], "staff_id": 6544, "datetime": "2026-09-21T23:00:00.000-05:00" } ]
curl -i -X POST \
  'https://developer.alteg.io/_mock/en/public/openapi/book_check/{location_id}' \
  -H 'Accept: application/vnd.api.v2+json' \
  -H 'Authorization: Bearer <YOUR_Bearer {PartnerToken}_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "appointments": [
      {
        "id": 1,
        "services": [
          331
        ],
        "staff_id": 6544,
        "datetime": "2026-09-21T23:00:00.000-05:00"
      },
      {
        "id": 2,
        "services": [
          99055
        ],
        "staff_id": 6544,
        "datetime": "2026-09-21T23:00:00.000-05:00"
      }
    ]
  }'

Responses

Created

Bodyapplication/json
successboolean

Execution success status (true)

Example:true
datanull

Always null for this response

Example:null
metaobject

metadata

Example:
{ "message": "Created" }
Response
{ "success": true, "meta": { "message": "Created" } }