T: відмінності між версіями
Немає опису редагування |
|||
Рядок 962: | Рядок 962: | ||
] | ] | ||
} | } | ||
</pre> | |||
==SearchClients== | |||
'''Вхідні параметри:''' | |||
<pre> | |||
date ModifiedDateFrom – дата останньої зміни анкети | |||
int[] ClientsID – масив ідентифікаторів анкет | |||
string[] Phones – масив телефонних номерів | |||
string[] Emails – масив електронних поштових скриньок | |||
string[] LoyaltyCards – масив кодів карт лояльності | |||
string FirstName – ім’я | |||
string LastName – прізвище | |||
string MiddleName – по батькові | |||
string DocumentSeriesAndNumber – серія і номер документа без роздільників | |||
string DocumentIIN – ІПН документа | |||
bool Sex – стать | |||
int MaxRecordsCount – максимальна кількість записів у відповіді | |||
date BirthDay – дата народження | |||
Preferences[] – масив вподобань. Структура з такими полями: | |||
string Code – код вподобання | |||
string Value – значення вподобання | |||
ComplexSearch – комплексний пошук. Структура з такими полями: | |||
string SearchString – значення для пошуку | |||
string[] SearchObjects – масив полів, по яких виконується пошук | |||
{ | |||
"Credentials":{"UserName":"artemis","Password":"123"}, | |||
"ClientsID" : [1,2296], | |||
"Phones" :["123-33-55","0991112233"], | |||
"Emails":["test@gmail.com"], | |||
"LoyaltyCards":["123-33-55","0991112233"], | |||
"FirstName":"Ivan", | |||
"LastName":"Ivanov", | |||
"MiddleName":"Ivanovich", | |||
"DocumentSeriesAndNumber":"FF123123", | |||
"DocumentIIN":"123534645", | |||
"Sex": true, | |||
"MaxRecordsCount": 5 | |||
} | |||
</pre> | |||
'''Значення, що повертається:''' | |||
<pre> | |||
string VersionInfo – версія сервісу | |||
long RequestTime – час, коли почали формувати відповідь на сервері у UTC (мілісекунди) | |||
int ErrorCode – код помилки. 0 – помилки немає | |||
string ErrorText – текст помилки | |||
Clients[] – список анкет, масив структур Client | |||
{ | |||
"ErrorCode": 0, | |||
"ErrorText": "", | |||
"RequestTime": "1647424120627", | |||
"VersionInfo": "1.0.0.3", | |||
"Clients": [ | |||
{ | |||
"Address": "", | |||
"BirthDay": "", | |||
"BlackList": true, | |||
"ClientID": 648, | |||
"Comment": "Like cars", | |||
"Documents": [ | |||
{ | |||
"DocumentDateEnd": "", | |||
"DocumentDateIssue": "", | |||
"DocumentNumber": "", | |||
"DocumentSeries": "", | |||
"DocumentType": "DrivingLicence", | |||
"INN": "", | |||
} | |||
], | |||
"Email": "", | |||
"FirstName": "Asdffff", | |||
"GuestsID": [], | |||
"LastName": "Dsf", | |||
"MiddleName": "Asdf", | |||
"Phone": "", | |||
"Photo": null, | |||
"PhotoURL": "~/img/photo_place.gif", | |||
"Preferences": [ | |||
{ | |||
"Code": null, | |||
"Name": "Хар1", | |||
"PreferenceID": 47, | |||
"Value": "wer" | |||
}, | |||
{ | |||
"Code": null, | |||
"Name": "уке", | |||
"PreferenceID": 49, | |||
"Value": "789" | |||
}, | |||
{ | |||
"Code": null, | |||
"Name": "кен", | |||
"PreferenceID": 50, | |||
"Value": "890" | |||
}, | |||
{ | |||
"Code": null, | |||
"Name": "123", | |||
"PreferenceID": 51, | |||
"Value": "123" | |||
} | |||
], | |||
"Sex": true, | |||
"VIP": true | |||
} | |||
] | |||
</pre> | </pre> |
Версія за 08:35, 21 травня 2025
Формат запитів JSON
Формат переданих і прийнятих даних – протокол обміну JSON. Кодування запиту та відповіді UTF8.
Запити повинні містити інформацію про авторизацію, відповіді повинні містити інформацію про версію протоколу, знімок часу в момент відповіді сервера, інформацію про помилку. Приклад запиту та відповіді наведено нижче.
Права доступу розрізняються залежно від пари користувач/пароль, які вводяться в кожному JSON-запиті в розділі «Облікові дані»:
{ "Credentials": { "UserName": "UserName", "Password": "User Password" }, }
Формат даних
- Формат дати/часу: "yyyy-MM-dd HH:mm:ss";
- Формат дати: "yyyy-MM-dd"
- Формат часу: "HH:mm"
- Роздільник типів із плаваючою крапкою(double): "."
Опис функцій спілкування
GetGuestsModified
Отримання інформації про гостей готелю.
Параметри: дані авторизації, готель (декілька?), час оновлення даних (обрізано те, що було раніше, якщо не вказано, то тільки для всіх гостей, що проживають,
або наступне бронювання, або останнє перебування в номері), масив з переборами відображених даних (проживання гостей (за замовчуванням, якщо не вказано), бронювання, виїзду, контактна інформація для гостей)
Вхідні параметри:
{ "Credentials" : { "UserName" : "UserName", "Password" : "User Password" }, // 0 – всі доступні готелі "Hotels" : [1, 2,...], // дата з часом, показувати номери, зміни у яких сталися після вказаного часу. "ModifiedDateFrom" : "2019-11-12 12:33:45", // необов’язковий фільтр за ідентифікаторами гостей "GuestsID" : ["1", .....] , // відповідно заброньовані, що проживають, останній виїхавший по номеру, анульований, незаїзд. "GuestStatus" : [0,2,3,-1,-2], // отримувати вартість гостя, за замовчуванням ні "isNeedCostInfo" : "0", // літерні коди класів послуг, нарахування по яких потрапляють у вартість "ServiceClasses":[""], // літерні коди підкласів послуг, нарахування по яких не потраплятимуть у вартість "ExcludeServiceSubclasses":[""], // виводити дані по анкетах у гостей, за замовчуванням ні "isNeedClientInfo" : "0", // вивантажувати фото клієнта "isNeedClientPhoto" : "0", // виводити дані по документах в анкетах, за замовчуванням ні "isNeedDocumentsInfo" : "0", // ПІБ гостя "GuestName" : "Петров Петро Петрович", // Номер телефону "PhoneNumber" : "0991232233", // Пошта "Mail" : "user@gmail.com", // Ідентифікатор анкети гостя "ClientID" : 654, // Вподобання "Preferences": [ { "Code": "carnumber", "Value": "333-44-55" } ], // Комплексний пошук по конкретних полях "ComplexSearch": { "SearchString": "+380991112233", "SearchObjects": ["GuestName", "Phone", "Email", "RoomNumber", "AccountNumber", "IdentityCard"] } }
Значення, що повертається:
{ "VersionInfo" : "0.1", // час, коли почали формувати відповідь на сервері у UTC (мілісекунди) "RequestTime" : "345356546", // код помилки, 0 – помилок немає "ErrorCode" : "0", "ErrorText" : "" , "Hotels" : [ "HotelInformation" : { "HotelID" : 1, "HotelName" : "Назва", "HotelShortName" : "КороткаНазва" }, "Guests" : [ { "Room" : { "RoomId" : 1, "RoomNumber" : "1001", "Floor" : "10", "RoomType" : { "RoomTypeName" : "", "RoomTypeShortName" : "", "RoomTypeId" : "", "Beds" : "1", "AddBeds" : "0" } }, "Guest" : #GuestInformation# } ] // Гості ] // Готелі }
GetClientsModified
Вхідні параметри:
{ "Credentials": { "UserName": "UserName", "Password": "User Password" }, // 0 – всі доступні готелі "Hotels": [1, 2, ...], // Дата з часом у UTC, показувати анкети, зміни у яких сталися після вказаного часу. "ModifiedDateFrom": "", // необов’язковий фільтр за ідентифікаторами клієнтів "ClientsID": [1, ...], // фільтри для анкет "Phones": [""], "Emails": [""], "FirstName": "", "LastName": "", "MiddleName": "", // серія та номер документа без роздільників "DocumentSeriesAndNumber": "", // ІПН документа "DocumentIIN": "", "Sex": true, // true - чоловічий, false - жіночий "BirthDay": "1982-08-01", // Вподобання "Preferences": [ { "Code": "carnumber", "Value": "333-44-55" } ], // Комплексний пошук по конкретних полях "ComplexSearch": { "SearchString": "+380991112233", "SearchObjects": ["LastName", "FirstName", "MiddleName", "Phone", "Email", "AccountNumber"] } }
Значення, що повертається:
{ "VersionInfo": "0.1", //время когда начали формировать ответ на сервере в UTC "RequestTime": "", //Код ошибки, 0 – нет ошибок "ErrorCode": "0", "ErrorText": "", "Clients": [ "Client": { "ClientID": "1", "FirsName": "", "MiddleName": "", "LastName": "", "BirthDay": "", "Email":"guest@gmail.com", "Phone":"+79997776655", "Comment":"Like smoking", "GuestsID":[1,2], "Documents": [ "PersonDocument": { "DocumentType": , "DocumentNumber": , "DocumentSeries": , "DocumentDateIssue": "", "DocumentDateEnd": "", "IIN": "", } ] } ]// Clients }
UpdateRooms
Вхідні параметри:
{ "Credentials": { "UserName": "UserName", "Password": "User Password" }, "Hotels": [ { "HotelInformation": { "HotelID": 1, "HotelName": "Name", "HotelShortName": "ShortName" }, "Rooms": [ { "Room": { "RoomId": 1, // код прибирання "CleanStatus": "clean", // код статусу продажу (sale, repair, repair not sale) "SaleStatus": "repair" } } ] } ] }
Значення, що повертається:
{ "VersionInfo": "0.1", // час, коли почали формувати відповідь на сервері у UTC (мілісекунди) "RequestTime": "123423234", // код помилки, 0 – помилок немає "ErrorCode": "0", "ErrorText": "" }
GetCustomerPayments
Вхідні параметри:
{ "Credentials": { "UserName": "UserName", "Password": "User Password" }, // 0 – всі доступні готелі "Hotels": [1, 2, ...], // масив з типом і кодом, кому надавалась послуга "Customers": [ { "CustomerId": 1, // тип контрагента (1 – гість, 2 – група, 3 – компанія, 4 – захід, 5 – цільовий рахунок) "CustomerType": 1 } ], // масив ідентифікаторів послуг (serviceid) для фільтру "Services": [1, 2, ...], // масив літерних кодів класів послуг для фільтру "ServiceClasses": [""], // масив літерних кодів підкласів послуг для фільтру "ServiceSubClasses": [""], // включати анульовані нарахування (за замовчуванням ні) "IncludeCanceled": "0", // дати періоду надання послуг, якщо якась дата не вказана — період відкритий "ConsumptionDateStart": "2020-01-01 14:00:00", "ConsumptionDateEnd": "2020-01-02 12:00:00", // початкова дата, з якої нарахування були змінені "ModifiedPaymentsFrom": "2020-01-01 14:00:00", // кінцева дата, до якої нарахування були змінені "ModifiedPaymentsTo": "2020-01-02 12:00:00", // типи номенклатури послуг "NomenclatureTypes": [0, 1] }
Значення, що повертається:
{ "Hotels": [ { "HotelInformation": { "HotelID": 1, "HotelName": "Name", "HotelShortName": "ShortName" }, // список контрагентів, хто користується послугою "Customers": [ { "CustomerID": 1, // тип контрагента (1 – гість, 2 – група, 3 – компанія, 4 – захід, 5 – цільовий рахунок) "CustomerType": 1, "CustomerName": "Василь Сухопаров", "ArrivalDate": "2013-06-07 08:54:00", "BookingSource": "Реклама", "CompanyOperatorID": null, "Consumer": "F0000029177", "ConsumerID": 29177, "ConsumerTypeID": 1, "CountryISO3": "UKR", "CountryName": "Україна", "DepartureDate": "2017-01-26 12:00:00", "Name": "Чуж Іннокентій Сидорович", "PriceListName": "Peggy", "RoomNumber": "23", "RoomTypeName": "Стандарт", "RoomTypeID": 1, "HousingName": "Корпус 1", "HousingID": 1, "Payments": [ { "PaymentID": 1, "PaymentType": 1, "ServiceID": 1, "ServiceClassName": "", "ServiceClassCode": "", "ServiceSubClassName": "", "ServiceSubClassCode": "", "ConsumptionDate": "2017-11-09 08:11:33", // статус оплати (0 – не оплачено, 1 – оплачено, 2 – частково оплачено) "NomenclatureTypes": 0, "NomenclatureTypeName": "Продукт", "PaymentStatus": 0, "PayAmount": "100.00", "PayAmountValuteISO": "RUB", "Quantity": "1.000", "Price": "10.00", "UsedQuantity": "1.000", "PriceValuteISO": "RUB", "IsPackagePayment": true, "TaxName": "", "TaxSum": "", "TaxRate": "", "TaxName2": "", "TaxSum2": "", "TaxRate2": "", "RestaurantReceipt": 1, "RestaurantBill": "", "ReceiptPayTypeID": 1, "ReceiptPayTypeName": "Карта", "IsReturned": false, "LastReceiptDate": "2013-06-07 08:54:00", "LastReceiptID": 1, "LastReceiptBillID": 1, "IsCanceled": false, "PackagePayments": [ { "PackagePaymentID": 1, "ServiceID": 1, "ServiceName": "", "ServiceClassName": "", "ServiceClassCode": "", "ServiceSubClassName": "", "ServiceSubClassCode": "", "Quantity": "1.000", "UsedQuantity": "1.000", "Price": "10.00", "PeriodDateFrom": "2017-11-08 08:00:00", "PeriodDateTo": "2017-11-10 10:00:00" } ] } ] } ] } ] }
GetUsers
Вхідні параметри:
{ "Credentials": { "UserName": "UserName", "Password": "User Password" }, // 0 – всі доступні готелі "Hotels": [1, 2, ...], // масив ідентифікаторів користувачів для фільтру. Якщо не вказано, то всі активні користувачі готелю "UsersID": [1, 2, ...] }
Значення, що повертається:
{ "ErrorCode": 0, "ErrorText": "", "RequestTime": "1585726829983", "VersionInfo": "0.1", "Hotels": [ { "HotelInformation": { "HotelID": 1, "HotelName": "Готель 1", "HotelShortName": "Г1" }, "Users": [ { "Email": "petrovich@gmail.com", "Phone": "56556756", "UserID": 372, "UserName": "Петров Петро Петрович" } ] } ] }
GetCompanies
Вхідні параметри:
{ "Credentials": { "UserName": "UserName", "Password": "User Password" }, // масив ідентифікаторів компаній для фільтру. Якщо не вказано, то всі відкриті компанії "CompaniesID": [1, 2, ...] }
Значення, що повертається:
{ "ErrorCode": 0, "ErrorText": "", "RequestTime": "1585727691299", "VersionInfo": "0.1", "Companies": [ { "CompanyID": 2, "CompanyName": "__Relax", "Email": "sdasd@sdasd.ru", "Phone": "123123" } ] }
GetActivitiesModified
Вхідні параметри:
{ "Credentials": { "UserName": "UserName", "Password": "User Password" }, // 0 – всі доступні готелі "Hotels": [1, 2, ...], // дата з часом, показувати заходи, зміни у яких сталися після вказаного часу "ModifiedDateFrom": "2019-11-12 12:33:45", // необов’язковий фільтр за ідентифікаторами заходів "ActivitiesID": [1, ...], // статуси заходів (-2, -1, 0, 3) "ActivityStatus": [0, ...], // необов’язковий фільтр за ідентифікаторами груп "GroupsID": [1, ...], // отримувати вартість, за замовчуванням ні "isNeedCostInfo": 0, // літерні коди класів послуг, нарахування по яких потрапляють у вартість "ServiceClasses": [""], // літерні коди підкласів послуг, нарахування по яких не потраплятимуть у вартість "ExcludeServiceSubclasses": [""], // комплексний пошук по конкретних полях "ComplexSearch": { "SearchString": "+380991112233", "SearchObjects": ["Name", "Phone", "Email", "AccountNumber"] } }
Значення, що повертається:
{ "ErrorCode": 0, "ErrorText": "", "RequestTime": "1595322549800", "VersionInfo": "0.1", "Hotels": [ { "Activities": [ { "ActivityID": 405, "ActivityName": "Мангал", "ActivityTypeID": 1, "ActivityTypeName": "Мангал 1", "Adults": 1, "Childs": 0, "Comment": "", "Company": null, "ContactName": "", "Cost": "388.66", "Country": null, "DecisionDate": "", "Email": "", "EndDate": "2012-06-08 02:00:00", "GroupID": null, "InfoSourceID": 1, "InfoSourceName": "Реклама", "Manager": { "Email": "", "Phone": "4242", "UserID": 1, "UserName": "Адмін" }, "OperatorCompany": { "CompanyID": 314, "CompanyName": "", "CompanyPrintCode": "", "CompanyPrintName": "", "CompanyPrintSertificate": "", "Email": "", "ITN": "", "Phone": "", "SegmentID": null, "SegmentName": "", "IndustryID": null, "IndustryName": "" }, "Payments": [ { "ConsumptionDate": "2012-06-08 02:00:00", "IsCanceled": false, "IsPackagePayment": false, "PackagePayments": [], "PayAmount": "0.00", "PayAmountValuteISO": "", "PaymentId": 556721, "PaymentStatus": 0, "PaymentType": 4, "Price": "388.66", "PriceValuteISO": "UAH", "Quantity": "1.000", "ServiceClassCode": "dwelling", "ServiceClassName": "Послуги проживання", "ServiceId": 89579, "ServiceName": "Проживання", "Tax2Name": "Акцизний збір", "Tax2Rate": "0.18", "Tax2Sum": "59.29", "TaxName": "ПДВ 18%", "TaxRate": "0.20", "TaxSum": "54.90", "UsedQuantity": "" } ], "Phone": "", "PaidTypeID": 1, "PaidTypeName": "Готівка", "PayStatus": 1, "CreationLoginID": 2, "PrepareTypeID": null, "PrepareTypeName": null, "PriceList": { "PriceListID": 24, "PriceListName": "Peggy", "Description": "", "IsChargeBonuses": false, "IsForInternet": false, "IsNonReturnRate": false, "IsRackRate": false, "IsSpecRate": false }, "ReservationTypeID": 1, "StartDate": "2012-06-05 08:00:00", "StatusID": 0, "StatusName": "Активне" } ], "HotelInformation": { "HotelID": 1, "HotelName": "Готель 1", "HotelShortName": "Г1" } } ] } Прайс-лист та сутності країн виглядають наступним чином: Country: {"CountryID":int, "CountryName":string, "CountryISO2":string, "CountryISO3":string}PriceList: {"PriceListID":int, "PriceListName":string}
GetGroupsModified
Вхідні параметри:
{ "Credentials": { "UserName": "UserName", "Password": "User Password" }, // 0 – всі доступні готелі "Hotels": [1, 2, ...], // дата з часом, показувати групи, зміни у яких сталися після вказаного часу "ModifiedDateFrom": "2019-11-12 12:33:45", // статуси груп (-3, -2, -1, 0, 1) "GroupStatus": [0, ...], // необов’язковий фільтр за ідентифікаторами груп "GroupsID": [1, ...], // отримувати вартість, за замовчуванням ні "isNeedCostInfo": 0, // літерні коди класів послуг, нарахування по яких потрапляють у вартість "ServiceClasses": [""], // літерні коди підкласів послуг, нарахування по яких не потраплятимуть у вартість "ExcludeServiceSubclasses": [""], // комплексний пошук по конкретних полях "ComplexSearch": { "SearchString": "+380991112233", "SearchObjects": ["Name", "Phone", "Email", "AccountNumber"] } }
Значення, що повертається:
{ "ErrorCode": 0, "ErrorText": "", "RequestTime": "1595328964995", "VersionInfo": "0.1", "Hotels": [ { "Groups": [ { "Activities": [ 571, 572, 573 ], "Adults": 5, "CanceledReason": null, "Childs": 0, "ChildsPay": 0, "Comment": "", "Company": null, "ContactName": "", "Cost": "650.00", "Country": null, "DecisionDate": "", "Email": "", "EndDate": "2012-06-30 12:00:00", "GroupID": 717, "GroupName": "sdvsdvsd", "Guests": [ 28571, 28572, 28573 ], "InfoSourceID": null, "InfoSourceName": "", "Manager": null, "ManagerID": 403, "PaidTypeID": 1, "PaidTypeName": "Готівка", "PersReservation": 2, "OperatorCompany": { "CompanyID": 285, "CompanyName": "Google", "CompanyPrintCode": "6756777777", "CompanyPrintName": "Google", "CompanyPrintSertificate": "", "Email": "", "ITN": "125154452115", "Phone": "", "SegmentID": null, "SegmentName": "", "IndustryID": null, "IndustryName": "" }, "PriceList": { "Description": "", "IsChargeBonuses": false, "IsForInternet": false, "IsNonReturnRate": false, "IsRackRate": false, "IsSpecRate": false, "PriceListID": 24, "PriceListName": "Peggy" }, "Payments": [ { "ConsumptionDate": "2012-06-30 12:00:00", "IsCanceled": false, "IsPackagePayment": true, "PackagePayments": [], "PayAmount": "0.00", "PayAmountValuteISO": "UAH", "PaymentId": 303327, "PaymentStatus": 0, "PaymentType": 2, "Price": "650.00", "PriceValuteISO": "UAH", "Quantity": "1.000", "ServiceClassCode": "dwelling", "ServiceClassName": "Послуги проживання", "ServiceId": 1, "ServiceName": "Проживання Pack", "ServiceSubClassCode": "dwelling", "ServiceSubClassName": "Проживання", "Tax2Rate": "", "Tax2Sum": "", "TaxRate": "", "TaxSum": "", "UsedQuantity": "" } ], "Phone": null, "PriceList": { "PriceListID": 31, "PriceListName": "Raquel8" }, "ReservationTypeID": 2, "StartDate": "2012-06-21 14:00:00", "StatusID": 0, "StatusName": "Активна" } ], "HotelInformation": { "HotelID": 1, "HotelName": "Готель 1", "HotelShortName": "Г1" } } ] }
UpdateGuest
Вхідні параметри:
{ "Credentials":{ "UserName":"username", "Password":"password" }, "GuestID":29177, "Comment":"", "UpdateFields":{ "ClientsToAdd":[49060], "ClientsToDelete":[1,2] } }
Значення, що повертається:
{ "VersionInfo" : "", Час, коли відповідь почала генеруватися на сервері в UTC (мілісекунди) "RequestTime" : "345356546", код помилки, 0 – помилок немає "ErrorCode" : "0", "ErrorText" : "" , }
AddClient
Вхідні параметри:
{ "Credentials":{ "UserName":"username", "Password":"password" }, "LastName":"External", //обязательное поле "Iso3Country":"UKR", //обязательное поле "Sex":true, "FirstName":"Service", "MiddleName":"Test", "BirthDay":"1991-02-02", "AdultOrChild":false, "Address":"Kiev, Yangelya 39a", "ClubCardNumber":1, "Email":"user@test.com", "Phone":"0991112233", "BlackList":true, "VIP":true, "Preferences":[{ "Code":"carnumber", "Value":"" }], "Documents": [ { "DocumentDateEnd": "2050-02-02", "DocumentDateIssue": "1991-02-02", "DocumentNumber": "000000", "DocumentSeries": "uu", "DocumentType": "Passport",//обязательное поле "IIN": "3333333333" } ] }
Значення, що повертається:
{ "VersionInfo" : "", Час, коли відповідь почала генеруватися на сервері в UTC (мілісекунди) "RequestTime" : "345356546", код помилки, 0 – помилок немає "ErrorCode" : "0", "ErrorText" : "" , }
- перелік можливих значень поля DocumentType
•Passport •InternationalPassport •ServicePassport •DiplomaticPassport •CertificationSoldier •SeamanPassport •MilitaryID •DrivingLicence •TemporaryIdentityCard •ForeignCitizenPassport •BirthCertificate •IdentityCard •InternationalPassportNew •InternationalBirthCertificate •ExternalInternationalPassport •UssrPassport •ExternalBirthCertificate •ForeignBirthCertificate •TemporaryAsylumCertificate •CisCitizenIdentityCard •ForeignCitizenServicePassport •NationalForeignCitizenPassport •TemporaryAsylumReview
UpdateClient
Вхідні параметри:
{ "Credentials":{ "UserName":"username", "Password":"password" }, "ClientID":49060, "UpdateFields":{ "LastName":"External", "Iso3Country":"UKR", "Sex":true, "FirstName":"Service", "MiddleName":"Test", "BirthDay":"1991-02-02", "AdultOrChild":false, "Address":"Kiev, Yangelya 39a", "ClubCardNumber":1, "Email":"user@test.com", "Phone":"0991112233", "BlackList":true, "VIP":true, "Preferences":[{ "Code":"carnumber", "Value":"" }] } }
Значення, що повертається:
{ "VersionInfo" : "", Час, коли відповідь почала генеруватися на сервері в UTC (мілісекунди) "RequestTime" : "345356546", код помилки, 0 – помилок немає "ErrorCode" : "0", "ErrorText" : "" , }
GetPriceListPrices
Вхідні параметри:
int[] PriceListIDs – масив ідентифікаторів прейскурантів. Обов’язковий параметр. string[] ServiceClassCodes – масив кодів класів послуг, за якими потрібні ціни. Обов’язковий параметр. date ConsumptionDate – дата споживання. Обов’язковий параметр. int CustomerType – тип споживача в готельній системі, для якого розраховуються ціни послуг. Обов’язковий параметр. string[] ServiceSubClassExcludeCodes – масив кодів підкласів послуг, за якими не повертати ціни. Необов’язковий параметр. int[] ServiceIDs – ідентифікатори послуг, для яких повертати ціни. Необов’язковий параметр. string[3] Valute – код валюти, у якій повертати ціни. Якщо не вказано, ціни будуть розраховані у валюті послуги. Conditionals – умови для підбору тарифу послуг, необов’язковий параметр. Структура зі наступними полями: int TermActivity – тип заходу int TermAdultCount – кількість дорослих int TermChildPaidCount – кількість дітей з оплатою int TermMealType – тип харчування int TermPlacesAdditionalCount – кількість додаткових місць int TermPlacesCount – кількість місць int TermRoomType – категорія номера bool TermWayOfSettlement – тип поселення: true – по місцях, false – номер цілком { "Credentials":{"UserName":"artemis","Password":"123"}, "PriceListIDs":[1,2296], "ServiceClassCodes":["dwelling","conference","eat"], "ConsumtionDate":"2021-06-11", "CustomerType":1, "ServiceSubClassExcludeCodes":["breakfast"], "ServiceIDs":[1], "Valute":"USD", "Conditionals":{ "TermActivity":1, "TermAdultCount":1, "TermChildPaidCount":1, "TermMealType":1, "TermPlacesAdditionalCount":1, "TermPlacesCount":1, "TermRoomType":1, "TermWayOfSettlement":false } }
Значення, що повертається:
string VersionInfo – версія сервісу long RequestTime – час, коли почали формувати відповідь на сервері в UTC (мілісекунди) int ErrorCode – код помилки. 0 – помилки немає string ErrorText – текст помилки Hotels[] – масив результатів по готелях. Структура з такими параметрами: HotelInformation – інформація по готелю. Структура з такими полями: int HotelID – ідентифікатор готелю string HotelName – назва готелю string HotelShortName – коротка назва готелю PriceLists[] – список прейскурантів. Структура з такими полями: int PriceListID – ідентифікатор прейскуранта string PriceListName – назва прейскуранта Services[] – список послуг прейскуранта. Структура з такими полями: int ServiceId – ID послуги string ServiceName – назва послуги string ServiceClassCode – код класу послуги string ServiceSubClassCode – код підкласу послуги decimal Price – ціна послуги string Currency – валюта { "ErrorCode": 0, "ErrorText": "", "RequestTime": "1623419232509", "VersionInfo": "1.0.0.3", "Hotels": [ { "HotelInformation": { "HotelID": 1, "HotelName": "Готель 1", "HotelShortName": "Г1" }, "PriceLists": [ { "PriceListID": 1, "PriceListName": "Bennie933", "Services": [ { "Currency": "USD", "Price": "5.79", "ServiceClassCode": "dwelling", "ServiceId": 1, "ServiceName": "Проживання Pack", "ServiceSubClassCode": "dwelling" } ] } ] } ] }
SearchClients
Вхідні параметри:
date ModifiedDateFrom – дата останньої зміни анкети int[] ClientsID – масив ідентифікаторів анкет string[] Phones – масив телефонних номерів string[] Emails – масив електронних поштових скриньок string[] LoyaltyCards – масив кодів карт лояльності string FirstName – ім’я string LastName – прізвище string MiddleName – по батькові string DocumentSeriesAndNumber – серія і номер документа без роздільників string DocumentIIN – ІПН документа bool Sex – стать int MaxRecordsCount – максимальна кількість записів у відповіді date BirthDay – дата народження Preferences[] – масив вподобань. Структура з такими полями: string Code – код вподобання string Value – значення вподобання ComplexSearch – комплексний пошук. Структура з такими полями: string SearchString – значення для пошуку string[] SearchObjects – масив полів, по яких виконується пошук { "Credentials":{"UserName":"artemis","Password":"123"}, "ClientsID" : [1,2296], "Phones" :["123-33-55","0991112233"], "Emails":["test@gmail.com"], "LoyaltyCards":["123-33-55","0991112233"], "FirstName":"Ivan", "LastName":"Ivanov", "MiddleName":"Ivanovich", "DocumentSeriesAndNumber":"FF123123", "DocumentIIN":"123534645", "Sex": true, "MaxRecordsCount": 5 }
Значення, що повертається:
string VersionInfo – версія сервісу long RequestTime – час, коли почали формувати відповідь на сервері у UTC (мілісекунди) int ErrorCode – код помилки. 0 – помилки немає string ErrorText – текст помилки Clients[] – список анкет, масив структур Client { "ErrorCode": 0, "ErrorText": "", "RequestTime": "1647424120627", "VersionInfo": "1.0.0.3", "Clients": [ { "Address": "", "BirthDay": "", "BlackList": true, "ClientID": 648, "Comment": "Like cars", "Documents": [ { "DocumentDateEnd": "", "DocumentDateIssue": "", "DocumentNumber": "", "DocumentSeries": "", "DocumentType": "DrivingLicence", "INN": "", } ], "Email": "", "FirstName": "Asdffff", "GuestsID": [], "LastName": "Dsf", "MiddleName": "Asdf", "Phone": "", "Photo": null, "PhotoURL": "~/img/photo_place.gif", "Preferences": [ { "Code": null, "Name": "Хар1", "PreferenceID": 47, "Value": "wer" }, { "Code": null, "Name": "уке", "PreferenceID": 49, "Value": "789" }, { "Code": null, "Name": "кен", "PreferenceID": 50, "Value": "890" }, { "Code": null, "Name": "123", "PreferenceID": 51, "Value": "123" } ], "Sex": true, "VIP": true } ]