لوكلاء AI: ملف markdown لهذه الصفحة — /docs-content-en/entities/booking-resource-types.md فهرس التوثيق — /llms.txt
مقالات التوثيق متاحة حاليًا باللغة الإنجليزية فقط.
Booking resource types
A booking resource type is a category of online booking resources, such as specialists, equipment or rooms. The type stores the settings for client messages about bookings: which messages to send, when, and with which template.
Bitrix24 API: booking.v1.resourceType.*
Scope: booking
Create: Booking resource types
POST /v1/booking-resource-types
Creates a booking resource type — a category of online booking resources with the settings for client messages about bookings.
Fields go at the root of the JSON, without a fields wrapper.
Request fields (body)
| Field | Type | Required | Description |
|---|---|---|---|
Fieldcode |
Typestring | Requiredyes | DescriptionSymbolic code of the type. Unique among the types of the Bitrix24 account: a duplicate code is rejected with 422 BITRIX_ERROR |
Fieldname |
Typestring | Requiredyes | DescriptionType name |
FieldisInfoNotificationOn |
Typeboolean | string | Requiredno | DescriptionBooking info message to the client. true / false or "Y" / "N". Default true |
FieldisConfirmationNotificationOn |
Typeboolean | string | Requiredno | DescriptionBooking confirmation request. Default true |
FieldisReminderNotificationOn |
Typeboolean | string | Requiredno | DescriptionBooking reminder. Default true |
FieldisFeedbackNotificationOn |
Typeboolean | string | Requiredno | DescriptionFeedback request. Default true |
FieldisDelayedNotificationOn |
Typeboolean | string | Requiredno | DescriptionMessage to a client who is running late. Default true |
FieldisCancellationNotificationOn |
Typeboolean | string | Requiredno | DescriptionBooking cancellation message to the client. Default true |
FieldsenderCode |
Typestring | null | Requiredno | DescriptionService that sends messages to the client, for example bitrix24. Default null |
FieldinfoNotificationDelay |
Typenumber | null | Requiredno | DescriptionHow many seconds after the booking is made to send the booking info message. Default null |
FieldconfirmationNotificationDelay |
Typenumber | null | Requiredno | DescriptionHow many seconds before the booking to send the first confirmation request. Default 86400 |
FieldconfirmationNotificationRepetitions |
Typenumber | null | Requiredno | DescriptionHow many times to repeat the confirmation request, not counting the first one. Default null |
FieldconfirmationNotificationRepetitionsInterval |
Typenumber | null | Requiredno | DescriptionInterval between repeats of the confirmation request, in seconds. Default 10800 |
FieldconfirmationCounterDelay |
Typenumber | null | Requiredno | DescriptionHow many seconds before the booking an unconfirmed booking enters the counter. Default 10800 |
FieldreminderNotificationDelay |
Typenumber | null | Requiredno | DescriptionHow many seconds before the booking to send the reminder. -1 — on the morning of the booking day. Default -1 |
FielddelayedNotificationDelay |
Typenumber | null | Requiredno | DescriptionAfter how many seconds of lateness to send the message to the client. Default 300 |
FielddelayedCounterDelay |
Typenumber | null | Requiredno | DescriptionAfter how many seconds of lateness the booking enters the calendar counter. Default 300 |
FieldcancellationNotificationDelay |
Typenumber | null | Requiredno | DescriptionDelay of the booking cancellation message, in seconds. Default 600 |
FieldtemplateTypeInfo |
Typestring | Requiredno | DescriptionBooking message template: inanimate, animate, inanimate_long. Default inanimate. Saved, but not returned in the type card |
FieldtemplateTypeConfirmation |
Typestring | Requiredno | DescriptionConfirmation request template: inanimate, animate, inanimate_long. Default inanimate |
FieldtemplateTypeReminder |
Typestring | Requiredno | DescriptionReminder template. The only value is base |
FieldtemplateTypeFeedback |
Typestring | Requiredno | DescriptionFeedback request template: inanimate, animate. Default inanimate |
FieldtemplateTypeDelayed |
Typestring | Requiredno | DescriptionLate-arrival message template: inanimate, animate. Default inanimate |
The built-in "Expert" type uses the animate templates; the "Equipment", "Car" and "Property" types use inanimate.
Examples
curl — personal key
curl -X POST "https://vibecode.bitrix24.com/v1/booking-resource-types" \
-H "X-Api-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Technicians",
"code": "master",
"isInfoNotificationOn": false,
"isConfirmationNotificationOn": false,
"isReminderNotificationOn": false,
"isFeedbackNotificationOn": false,
"isDelayedNotificationOn": false,
"isCancellationNotificationOn": false
}'
curl — OAuth application
curl -X POST "https://vibecode.bitrix24.com/v1/booking-resource-types" \
-H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Technicians",
"code": "master",
"isInfoNotificationOn": false,
"isConfirmationNotificationOn": false,
"isReminderNotificationOn": false,
"isFeedbackNotificationOn": false,
"isDelayedNotificationOn": false,
"isCancellationNotificationOn": false
}'
JavaScript — personal key
const res = await fetch('https://vibecode.bitrix24.com/v1/booking-resource-types', {
method: 'POST',
headers: {
'X-Api-Key': 'YOUR_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({
name: 'Technicians',
code: 'master',
isInfoNotificationOn: false,
isConfirmationNotificationOn: false,
isReminderNotificationOn: false,
isFeedbackNotificationOn: false,
isDelayedNotificationOn: false,
isCancellationNotificationOn: false,
}),
})
const { data } = await res.json()
console.log('Type ID:', data.id)
JavaScript — OAuth application
const res = await fetch('https://vibecode.bitrix24.com/v1/booking-resource-types', {
method: 'POST',
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
'Content-Type': 'application/json',
},
body: JSON.stringify({
name: 'Technicians',
code: 'master',
isInfoNotificationOn: false,
isConfirmationNotificationOn: false,
isReminderNotificationOn: false,
isFeedbackNotificationOn: false,
isDelayedNotificationOn: false,
isCancellationNotificationOn: false,
}),
})
const { data } = await res.json()
console.log('Type ID:', data.id)
Response fields
On success, the HTTP status is 201 Created.
| Field | Type | Description |
|---|---|---|
Fieldsuccess |
Typeboolean | Descriptiontrue on success |
Fielddata |
Typeobject | DescriptionCard of the created type. The card fields are listed in the "Response fields" section of the Get a booking resource type page |
Fielddata.id |
Typenumber | DescriptionType identifier. Pass it in typeId when creating a booking resource |
Response example
{
"success": true,
"data": {
"id": 31,
"code": "master",
"name": "Technicians",
"senderCode": null,
"isInfoNotificationOn": false,
"isConfirmationNotificationOn": false,
"isReminderNotificationOn": false,
"isFeedbackNotificationOn": false,
"isDelayedNotificationOn": false,
"isCancellationNotificationOn": false,
"infoNotificationDelay": null,
"confirmationNotificationDelay": 86400,
"confirmationNotificationRepetitions": null,
"confirmationNotificationRepetitionsInterval": 10800,
"confirmationCounterDelay": 10800,
"reminderNotificationDelay": -1,
"delayedNotificationDelay": 300,
"delayedCounterDelay": 300,
"cancellationNotificationDelay": 600,
"templateTypeConfirmation": "inanimate",
"templateTypeReminder": "base",
"templateTypeFeedback": "inanimate",
"templateTypeDelayed": "inanimate"
}
}
Error response example
422 — a type with this code already exists:
{
"success": false,
"error": {
"code": "BITRIX_ERROR",
"message": "Resource type with code \"master\" already exists",
"b24Code": "1010"
}
}
Errors
| HTTP | Code | Description |
|---|---|---|
| HTTP400 | CodeMISSING_REQUIRED_FIELDS |
Descriptioncode is not passed. Message code is required |
| HTTP400 | CodeREADONLY_FIELD |
Descriptionid is passed in the body. Message id is read-only |
| HTTP400 | CodeINVALID_PARAMS |
DescriptionEmpty body. Message Provide a non-empty object of fields |
| HTTP400 | CodeINVALID_PARAMS |
DescriptionA field not listed in the "Request fields (body)" table. Message Unknown booking field |
| HTTP400 | CodeINVALID_PARAMS |
DescriptionA field value is an object or an array. Message Fields must contain scalar values |
| HTTP422 | CodeBITRIX_ERROR |
DescriptionA type with this code already exists, b24Code 1010 |
| HTTP422 | CodeBITRIX_ERROR |
Descriptionname is not passed. Message Required fields: name |
| HTTP401 | CodeMISSING_API_KEY |
DescriptionThe X-Api-Key header is not passed |
| HTTP401 | CodeTOKEN_MISSING |
DescriptionThe key has no Bitrix24 tokens |
| HTTP403 | CodeSCOPE_DENIED |
DescriptionThe key does not have the booking scope |
| HTTP403 | CodeWRITE_BLOCKED_READONLY_KEY |
DescriptionThe key is in read-only mode |
| HTTP429 | CodeRATE_LIMITED |
DescriptionRequest rate exceeded. The effective cap is in the x-ratelimit-limit header |
| HTTP502 | CodeBITRIX_RESPONSE_INVALID |
DescriptionBitrix24 returned a response of an unexpected shape. If this happened while re-reading the card after the write, the type has already been created — find it in the list before retrying |
Full list of common API errors — Errors.