Skip to main content

Service Configuration

Business service configuration schemas for managing bookable services. Includes service definitions and dynamic field configuration for appointment data collection.

Source: src/core/business-mgt/service-config.schema.ts


BusinessServiceConfig

Configuration for bookable services offered by a business.

Schema: BusinessServiceConfigSchema

Attributes

AttributeTypeRequiredDefaultDescription
idstringUnique identifier for the service
namestringYesDisplay name of the service
descriptionstringYesDetailed description of the service
durationnumberNo60Service duration in minutes (max 480)
bufferTimenumberNo0Buffer time between appointments in minutes
isBookablebooleanNotrueWhether service can be booked online
pricenumberNo0Service price in account currency
isActivebooleanNotrueWhether service is currently available
requiredDatafieldConfigServiceAppointmentFieldConfigNoDynamic field configuration for appointments
createdAtnumberUnix timestamp when created
updatedAtnumberUnix timestamp when last updated

ServiceAppointmentFieldConfig

Service-level configuration for dynamic appointment fields. Part of the three-level dynamic fields hierarchy.

Hierarchy

Organization Level (AppointmentFieldConfigSchema)

▼ inherits via appointmentFieldConfigId
Service Level (ServiceAppointmentFieldConfigSchema) ← THIS SCHEMA

▼ stores values
Appointment Level (AppointmentAdditionalInfoSchema)

Attributes

AttributeTypeRequiredDefaultDescription
inheritedFieldKeysarray<string>No[]Field keys to inherit from organization config
fieldOverridesarray<FieldOverride>No[]Overrides for inherited field properties
additionalFieldsarray<FieldDefinition>No[]Service-specific field definitions
isActivebooleanNotrueWhether field configuration is active
reuseDetailsbooleanNofalseWhether captured data can be reused

ServiceQRCode

QR code for direct appointment booking.

Schema: ServiceQRCodeSchema

Attributes

AttributeTypeRequiredDefaultDescription
idstringYesUnique identifier for the QR code
appointmentUrlstringYesURL to the appointment booking interface
qrCodeImagestringNoBase64 encoded QR code image
serviceIdstringNoSpecific service ID for direct booking

Example

{
"id": "svc_abc123",
"name": "Haircut",
"description": "Professional haircut with wash and style",
"duration": 45,
"bufferTime": 15,
"isBookable": true,
"price": 35.00,
"isActive": true,
"requiredDatafieldConfig": {
"inheritedFieldKeys": ["allergies", "preferences"],
"fieldOverrides": [],
"additionalFields": [
{
"fieldKey": "hair_type",
"fieldType": "SELECT",
"label": "Hair Type",
"options": ["Straight", "Wavy", "Curly", "Coily"]
}
],
"isActive": true,
"reuseDetails": true
},
"createdAt": 1709856000000,
"updatedAt": 1709856000000
}

Create / Update Schemas

SchemaDescriptionOmits
CreateBusinessServiceSchemaFor creating servicesid, createdAt, updatedAt
UpdateBusinessServiceSchemaFor updating servicesAll fields optional except id