# Book an appointment booking Required Scopes: Book an appointment booking for given customer Endpoint: POST /v1/appointments/booking/book Version: 1.12.1 Security: ApiKeyAuth ## Request fields (application/json): - `customerId` (integer, required) Unique ID of the customer Example: 203 - `bookableAppointmentId` (integer, required) Unique ID of the bookable appointment Example: 20334 - `startDateTime` (string, required) Start date time of the bookable appointment slot Example: "2022-06-22T08:00:00.000+02:00[Europe/Berlin]" - `endDateTime` (string, required) End date time of the bookable appointment slot Example: "2022-06-22T10:00:00.000+02:00[Europe/Berlin]" - `instructorIds` (array) Instructor ID list of the bookable appointment slot ## Response 200 fields (application/json): - `bookingId` (integer, required) Unique ID of the appointment booking Example: 2033 - `bookingStatus` (string, required) Status of the appointment booking Enum: "BOOKED", "BOOKED_WITH_CONFIRMATION_REQUIRED", "CANCELED" - `startDateTime` (string, required) Start date and time of the appointment booking - `endDateTime` (string, required) End date and time of the appointment booking - `title` (string) Title of the appointment booking Example: "Mission Beach body" - `duration` (integer) Duration of the appointment booking in minutes Example: 45 - `category` (string) Category of the appointment booking Example: "Fitness" - `description` (string) Description of the appointment booking Example: "Get your body ready for beaches" - `imgUrl` (string) Image URL assigned to display this appointment booking - `instructors` (array) Instructors list of the appointment booking - `instructors.id` (integer, required) Unique ID of the instructor Example: 101 - `instructors.firstName` (string, required) Instructor's first name Example: "Anna" - `instructors.lastName` (string, required) Instructor's last name Example: "Chodakowska" - `instructors.publicName` (string) Public name that should be shown to customers Example: "Peter2000" - `appointmentStatus` (string, required) The status of an appointment Enum: "PLANNED", "CANCELED", "COMPLETED" - `participantStatus` (string, required) The status of a participant Enum: "PARTICIPATING", "NOT_PARTICIPATING", "UNSET" ## Response 400 fields (application/json): - `errorMessage` (string, required) Resolved message in the context-specific default locale - `errorCode` (string) Key for translation files - `traceId` (string) Datadog trace id - `reference` (string) Reference to validation error Example: "parent.child" - `args` (array) Arguments referenced by format specifiers while resolving the message from translation files - `typedArgs` (array) Same as but with type information - `typedArgs.value` (object) - `typedArgs.type` (string) Enum: "TIMESTAMP", "BOOLEAN", "DATE", "MONTH_DAY", "TIME", "TERM", "TERM_LIST", "INTEGER", "DECIMAL", "STRING", "MONEY", "LIMITABLE_CONFIG_PROPERTY", "I18N_KEY", "I18N_KEY_LIST", "PERMISSION_LIST", "ENUM", "AVAILABILITY_LIST" ## Response 401 fields (application/json): - `errorMessage` (string, required) Resolved message in the context-specific default locale - `errorCode` (string) Key for translation files - `traceId` (string) Datadog trace id - `reference` (string) Reference to validation error Example: "parent.child" - `args` (array) Arguments referenced by format specifiers while resolving the message from translation files - `typedArgs` (array) Same as but with type information - `typedArgs.value` (object) - `typedArgs.type` (string) Enum: "TIMESTAMP", "BOOLEAN", "DATE", "MONTH_DAY", "TIME", "TERM", "TERM_LIST", "INTEGER", "DECIMAL", "STRING", "MONEY", "LIMITABLE_CONFIG_PROPERTY", "I18N_KEY", "I18N_KEY_LIST", "PERMISSION_LIST", "ENUM", "AVAILABILITY_LIST" ## Response 403 fields (application/json): - `errorMessage` (string, required) Resolved message in the context-specific default locale - `errorCode` (string) Key for translation files - `traceId` (string) Datadog trace id - `reference` (string) Reference to validation error Example: "parent.child" - `args` (array) Arguments referenced by format specifiers while resolving the message from translation files - `typedArgs` (array) Same as but with type information - `typedArgs.value` (object) - `typedArgs.type` (string) Enum: "TIMESTAMP", "BOOLEAN", "DATE", "MONTH_DAY", "TIME", "TERM", "TERM_LIST", "INTEGER", "DECIMAL", "STRING", "MONEY", "LIMITABLE_CONFIG_PROPERTY", "I18N_KEY", "I18N_KEY_LIST", "PERMISSION_LIST", "ENUM", "AVAILABILITY_LIST" ## Response 404 fields (application/json): - `errorMessage` (string, required) Resolved message in the context-specific default locale - `errorCode` (string) Key for translation files - `traceId` (string) Datadog trace id - `reference` (string) Reference to validation error Example: "parent.child" - `args` (array) Arguments referenced by format specifiers while resolving the message from translation files - `typedArgs` (array) Same as but with type information - `typedArgs.value` (object) - `typedArgs.type` (string) Enum: "TIMESTAMP", "BOOLEAN", "DATE", "MONTH_DAY", "TIME", "TERM", "TERM_LIST", "INTEGER", "DECIMAL", "STRING", "MONEY", "LIMITABLE_CONFIG_PROPERTY", "I18N_KEY", "I18N_KEY_LIST", "PERMISSION_LIST", "ENUM", "AVAILABILITY_LIST" ## Response 409 fields (application/json): - `errorMessage` (string, required) Resolved message in the context-specific default locale - `errorCode` (string) Key for translation files - `traceId` (string) Datadog trace id - `reference` (string) Reference to validation error Example: "parent.child" - `args` (array) Arguments referenced by format specifiers while resolving the message from translation files - `typedArgs` (array) Same as but with type information - `typedArgs.value` (object) - `typedArgs.type` (string) Enum: "TIMESTAMP", "BOOLEAN", "DATE", "MONTH_DAY", "TIME", "TERM", "TERM_LIST", "INTEGER", "DECIMAL", "STRING", "MONEY", "LIMITABLE_CONFIG_PROPERTY", "I18N_KEY", "I18N_KEY_LIST", "PERMISSION_LIST", "ENUM", "AVAILABILITY_LIST" ## Response 429 fields (application/json): - `errorMessage` (string, required) Resolved message in the context-specific default locale - `errorCode` (string) Key for translation files - `traceId` (string) Datadog trace id - `reference` (string) Reference to validation error Example: "parent.child" - `args` (array) Arguments referenced by format specifiers while resolving the message from translation files - `typedArgs` (array) Same as but with type information - `typedArgs.value` (object) - `typedArgs.type` (string) Enum: "TIMESTAMP", "BOOLEAN", "DATE", "MONTH_DAY", "TIME", "TERM", "TERM_LIST", "INTEGER", "DECIMAL", "STRING", "MONEY", "LIMITABLE_CONFIG_PROPERTY", "I18N_KEY", "I18N_KEY_LIST", "PERMISSION_LIST", "ENUM", "AVAILABILITY_LIST" ## Response 500 fields (application/json): - `errorMessage` (string, required) Resolved message in the context-specific default locale - `errorCode` (string) Key for translation files - `traceId` (string) Datadog trace id - `reference` (string) Reference to validation error Example: "parent.child" - `args` (array) Arguments referenced by format specifiers while resolving the message from translation files - `typedArgs` (array) Same as but with type information - `typedArgs.value` (object) - `typedArgs.type` (string) Enum: "TIMESTAMP", "BOOLEAN", "DATE", "MONTH_DAY", "TIME", "TERM", "TERM_LIST", "INTEGER", "DECIMAL", "STRING", "MONEY", "LIMITABLE_CONFIG_PROPERTY", "I18N_KEY", "I18N_KEY_LIST", "PERMISSION_LIST", "ENUM", "AVAILABILITY_LIST"