yclients.createRecord
Записывает клиента на услугу.
Сигнатура: yclients.createRecord(salonId: int, params: Map) -> ?int
Аргументы:
salonId
— идентификатор филиала.params
— параметры записи:staffId
— идентификатор сотрудника (обязательный).services
— список услуг (обязательный). Каждый элемент — ассоциативный массив:id
— идентификатор услуги.client
— информация о клиенте (обязательная):phone
— номер телефона клиента (обязательный).name
— имя клиента (обязательное для нового клиента).email
— email клиента.datetime
— дата и время записи (обязательная).seanceLength
— длительность сеанса в секундах (обязательная).saveIfBusy
— сохранять запись, если время занято (по умолчанию false
).sendSms
— отправлять ли СМС с деталями записи клиенту (по умолчанию false
).comment
— комментарий к записи.smsRemainHours
— за сколько часов до визита отправить СМС напоминание (по умолчанию 1).emailRemainHours
— за сколько часов до визита отправить email напоминание (по умолчанию 12).attendance
— статус записи (0 — ожидание, 1 — услуги оказаны, 2 — подтверждена, -1 — не пришел).customFields
— дополнительные поля, заполненные согласно настройкам филиала.recordLabels
— список идентификаторов категорий записи.customColor
— цвет записи (по умолчанию null
).apiId
— идентификатор внешней системы (по умолчанию null
).Возвращаемое значение: int
— идентификатор записи в случае успеха или nil
в случае ошибки.
$recordId = yclients.createRecord(25344, {
"staffId": 2303331,
"services": [{"id": 11428840}],
"client": {
"phone": "79876543210",
"name": "Семён",
"email": "semen@gmail.com"
},
"datetime": "2023-06-07 15:00",
"seanceLength": 3600,
"saveIfBusy": false,
"sendSms": false,
"comment": "Комментарий к записи",
"smsRemainHours": 1,
"emailRemainHours": 12,
"attendance": 2,
"customFields": {"priority":"high"},
"recordLabels": ["67345", "78549"],
"customColor": null,
"apiId": "7894"
});
yclients.recordDetails
Получает данные о записи.
Сигнатура: yclients.recordDetails(salonId: int, recordId: int) -> ?Map
Аргументы:
salonId
— идентификатор филиала.recordId
— идентификатор записи.Возвращаемое значение: Ассоциативный массив с деталями записи, если запись существует, или nil
в случае ошибки.
$record = yclients.recordDetails(25344, 52157914);
// $record будет содержать:
// {
// "id": 52157914,
// "client": {
// "id": 167359987,
// "name": "Семён",
// "surname": "",
// "phone": "+79876543210",
// "card": "",
// "email": "semen@gmail.com"
// },
// "staff": {
// "id": 2303331,
// "name": "Анисимова Полина",
// "specialization": "специалист",
// "position": {
// "id": 231647,
// "title": "Парикмахер"
// }
// },
// "services": [
// {
// "id": 11440288,
// "title": "Стрижка",
// "cost": 1000,
// "costToPay": 0,
// "manualCost": 0,
// "costPerUnit": 0,
// "discount": 0,
// "firstCost": 0,
// "amount": 1
// }
// ],
// "date": "2023-06-03T14:33:00+00:00",
// "createDate": "2023-05-31T05:51:44+00:00",
// "comment": "",
// "attendance": 2,
// "length": 4200,
// "lastChangeDate": "2023-06-02T10:26:50+00:00",
// "prepaid": false,
// "prepaidConfirmed": false,
// "deleted": true,
// "apiId": "7894"
// }
yclients.rescheduleRecord
Переносит запись на новое время.
Сигнатура: yclients.rescheduleRecord(salonId: int, recordId: int, datetime: string) -> bool
Аргументы:
salonId
— идентификатор филиала.recordId
— идентификатор записи.datetime
— новая дата и время в формате yyyy-MM-dd HH:mm
.Возвращаемое значение: true
в случае успеха и false
в случае ошибки.
$success = yclients.rescheduleRecord(25344, 52157914, "2023-06-07 16:00");
// $success будет true, если запись была успешно перенесена
yclients.confirmRecord
Подтверждает запись.
Сигнатура: yclients.confirmRecord(salonId: int, recordId: int) -> bool
Аргументы:
salonId
— идентификатор филиала.recordId
— идентификатор записи.Возвращаемое значение: true
в случае успеха и false
в случае ошибки.
$success = yclients.confirmRecord(25344, 52157914);
// $success будет true, если запись была успешно подтверждена