API · v1 · stabil
CODEMETA OSDeveloper Center
Konsole öffnen
Entity · booking_services

Booking Service Schema

Schema-ID
booking_service
Collection
booking_services
Permissions
  • Lesenbooking_service_view
  • Anlegenbooking_service_create
  • Ändernbooking_service_edit
  • Löschenbooking_service_delete

Felder

Booking Service Schema

booking_services4 Permissions

Schema for validating booking service entities

namestringerforderlich

Service name

1–200 Zeichen
descriptionstringoptional

Optional service description

max 2000 Zeichennullable
systemKeystringoptional

Marker for auto-provisioned, internal-only system services (e.g. "project_meeting"). Used to look up / lazily create a tenant-wide shared service. Null for normal user-created services.

max 64 Zeichennullable
durationMinutesintegererforderlich

Appointment duration in minutes

1530456090120
bufferBeforeMinutesintegeroptional

Buffer time before the appointment in minutes

0 – 480Default: 0
bufferAfterMinutesintegeroptional

Buffer time after the appointment in minutes

0 – 480Default: 0
priceintegeroptional

Price in cents

≥ 0nullable
currencystringoptional

Currency code (ISO 4217)

max 3 ZeichenDefault: "EUR"
priceDisplayModestringoptional

How the price is displayed to the customer

showhideon_request
Default: "show"
locationobjectoptional

Where the appointment takes place

nullable
typestringerforderlich

Location type

on_siteremotephonecustom
valuestringoptional

Location value (address, URL, phone number, etc.)

max 500 Zeichennullable
assignedUserIdsuuid[]erforderlich

User IDs that can be booked for this service

min 1 Items
assignmentModestringerforderlich

How a user is assigned to a booking

any_availablecustomer_choosessmart_assign
maxConcurrentBookingsintegeroptional

Maximum concurrent bookings per time slot

1 – 10Default: 1
autoConfirmbooleanoptional

Automatically confirm bookings without manual approval

Default: true
requiresApprovalbooleanoptional

Whether bookings require manual approval

Default: false
isActivebooleanoptional

Whether the service is active and bookable

Default: true
colorstringoptional

Hex color for calendar display (e.g. #FF5733)

max 7 Zeichennullable
categoryIduuidoptional

Category ID for grouping services

nullable
imageFileIduuidoptional

File ID for the service image

nullable
onlineMeetingProviderstringoptional

Online meeting provider for remote appointments

teamszoomgoogle_meet
nullable
reminderConfigobjectoptional

Reminder configuration

enabledbooleanerforderlich

Whether reminders are enabled

emailBeforeinteger[]optional

Minutes before appointment to send email reminders

Default: []
cancellationPolicyobjectoptional

Cancellation and rescheduling policy

allowCancellationbooleanerforderlich

Whether customers can cancel bookings

minHoursBeforeintegeroptional

Minimum hours before appointment to allow cancellation

0 – 720Default: 24
allowReschedulebooleanoptional

Whether customers can reschedule bookings

Default: true
rescheduleMinHoursBeforeintegeroptional

Minimum hours before appointment to allow rescheduling

0 – 720Default: 24
isGroupBookingbooleanoptional

Whether this service supports group bookings (multiple participants per slot)

Default: false
maxParticipantsintegeroptional

Maximum participants per slot (only relevant when isGroupBooking=true)

2 – 100nullable
minParticipantsintegeroptional

Minimum participants for the booking to take place

1 – 100nullable
registrationDeadlineHoursintegeroptional

Hours before start after which registration closes

0 – 720nullable
followUpConfigobjectoptional

Follow-up email configuration after appointment

nullable
enabledbooleanoptional
Default: false
delayHoursintegeroptional

Hours after appointment end to send follow-up

1 – 168Default: 24
includeNpsbooleanoptional

Include NPS rating question in follow-up email

Default: false
customMessagestringoptional

Custom follow-up message (HTML)

max 2000 Zeichennullable
customFieldsobject[]optional

Custom intake form fields

Default: []
idstringerforderlich

Unique field identifier

1–50 Zeichen
typestringerforderlich

Field input type

texttextareadropdowncheckboxnumberemailphone
labelobjecterforderlich

i18n labels (e.g. { de: "Name", en: "Name" })

placeholderobjectoptional

i18n placeholders

nullable
requiredbooleanerforderlich

Whether the field is required

optionsobject[]optional

Dropdown options

nullable
valuestringoptional
labelobjectoptional

i18n labels for option

validationobjectoptional

Validation rules

nullable
minLengthintegeroptional
maxLengthintegeroptional
minnumberoptional
maxnumberoptional
patternstringoptional

Standard-Endpoints

Diese Resource folgt dem generischen CRUD-Vertrag der Plattform. Lesen Sie die Konventionen für Pagination, Idempotenz, Optimistic Locking und Audit. Die wichtigsten Endpoints:

  • GET /api/v1/booking_services — Liste, paginiert + filterbar
  • GET /api/v1/booking_services/<id> — Einzelne Entity
  • POST /api/v1/booking_services — Anlegen
  • PATCH /api/v1/booking_services/<id> — Teil-Update
  • DELETE /api/v1/booking_services/<id> — Soft-Delete
  • GET /api/v1/booking_services/<id>/timeline — Audit + Aktivitäten

Suche