мета-данные страницы
  •  

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
api [25.04.2024 07:38]
Anatoly
api [27.04.2024 14:40]
Строка 1: Строка 1:
-====== Документация по API ====== 
- 
-===== Описание API ===== 
- 
-%%API%% позволяет реализовать Личный кабинет клиента,​ используя клиентскую сессию(авторизованного пользователя SessionID), получая информацию только по этому клиенту.\\ ​ 
-На основе полученной сессии,​ команды возвращают информацию **Только по одному текущем клиенту**.\\ ​ 
-**Время "​жизни"​ клиентской сессии неограниченно.**\\ ​ 
- 
-%%API%% позволяет реализовать создание и редактирование заказов,​ добавление оплаты в заказ, создание и изменение клиентов,​ получение изменившихся заказов и клиентов и др. через коммерческие команды,​ используя пользовательскую сессию (авторизованного пользователя SessionID). 
- 
-<WRAP important round>​API с клиентской сессией **Не позволяет реализовать синхронизацию всех заказов/​клиентов и др. со сторонними сервисами**.\\ 
-Т.к. это может привести к избыточной нагрузке и большому количеству запросов.</​WRAP>​ 
- 
-Для реализации таких целей, правильно использовать API c пользовательской сессией.\\ ​ 
-Для этого есть команды загрузки Изменившихся заказов за период (с выводом подробной информации по заказу),​ изменившихся клиентов,​ создание и изменение заказов. 
- 
-Виды команд:​\\ 
-  * //​Команды без сессии//​ - команды получения общих данных из стандартных справочников,​ **для выполнения которых Не требуется сессия**.\\ 
-  * //​Команды ТОЛЬКО с пользовательской сессией//​ - команды получения данных,​ **для выполнения которых Требуется пользовательская сессия**.\\ 
-  * //​Команды ТОЛЬКО с клиентской сессией//​ - команды получения данных по конкретному клиенту,​ **для выполнения которых Требуется клиентская сессия**.\\ 
-  * //​Команды с пользовательской или клиентской сессией//​ - команды получения данных,​ **для выполнения которых Требуется клиентская или пользовательская сессия**.\\ 
-  * //​Коммерческие команды с пользовательской сессией//​ - команды сохранения/​редактирования клиентов,​ заказов,​ оплаты и т.п. **для выполнения которых Требуется пользовательская сессия**.\\ 
- 
----- 
-===== Схема работы API ===== 
-{{:​работа_api.drawio.png?​direct&​600 |}}\\ 
----- 
-===== Формат команд ===== 
-Все значения параметров команд должны быть преобразованы,​ **через js encodeURIComponent,​ через php urlencode или подобные функции**. 
- 
-**Пример:​** 
-<​code>//​himinfo.ru/​cl/​{Path}/​api/?​command={"​key":"​value"​}&​SessionID=...&​callback=...</​code>​ 
-**Преобразованный пример:​** 
-<​code>//​himinfo.ru/​cl/​{Path}/​api/?​command=%7B%22key%22%3A%22value%22%7D&​SessionID=...&​callback=...</​code>​ 
- 
-где:​\\ ​ 
-  * //{Path}// - имя для Химчистки. Для получения этого параметра обратитесь в Клиентский сервис;​ 
-  * //command// - название выполняемой команды;​ 
-  * //​%%{"​key":​ "​value"​}%%//​ - параметры команды (значение=ключ). Представляет собой текстовую аналогию записи объекта на JS; 
-  * //​SessionID//​ - __в зависимости от команды **обязательный** параметр__. Указывает ID сессии для выполнения команды. Выдается при выполнении команды авторизации;​ 
-  * //​callback//​ - необязательный параметр. Указывает на имя процедуры для jsonP, которое вернется в ответе с json строкой. 
- 
-//**В ответе на запрос могут присутствовать поля, не описанные в настоящей документации. Приложению следует их игнорировать.**//​ 
----- 
-===== Коды ошибок API ===== 
- 
-|**Код ошибки**|**Текст ошибки** ​                                ​|**Описание** ​                                                      | 
-|100           ​|Ошибка подключения к БД<​sup>​1</​sup> ​             |                                                                   | 
-|101           ​|Ошибка выполнения запроса<​sup>​1</​sup> ​           |                                                                   | 
-|102           ​|Слишком частые запросы ​                          ​| ​                                                                  | 
-|103           ​|Отсутствуют команды на выполнение. ​              |Не правильно была сформирована API команда или такой не существует.| 
-|104           ​|Отсутствуют параметры команды ​                   |Не правильно указаны параметры в команде API.                      | 
-|105           ​|Некорректные данные ​                             |Не правильный формат данных в параметрах команды API.              | 
-|106           ​|Недействительный SessionID ​                      ​| ​                                                                  | 
-|107           |Не завершилась предыдущая команда ​               |Не завершилась предыдущая команда. **Устаревший код ошибки** ​      | 
-|108           ​|Сервер недоступен! Попробуйте подключиться позже |БД химчистки не доступна ​                                          | 
-|109           ​|Ошибка выполнения команды<​sup>​1</​sup> ​           |Ошибка выполнения команды на Himinfo ​                              | 
-<​sup>​1</​sup>​ - обратиться к разработчикам Агбис. 
----- 
-===== Виды команд API ===== 
- ​[[api_v2.0#​no_session|1.1. Команды без сессии]]\\ 
- ​[[api_v2.0#​client_session|1.2. Команды ТОЛЬКО с клиентской сессией]]\\ 
- ​[[api_v2.0#​user_session|1.3. Команды ТОЛЬКО с пользовательской сессией]]\\ 
- ​[[api_v2.0#​double_session|1.4. Команды с пользовательской или клиентской сессией]]\\ 
- ​[[api_v2.0#​commercial_session|1.5. Коммерческие команды с пользовательской сессией]]\\ 
----- 
-===== no_session =====  
-==== 1.1. Команды без сессии ==== 
-[[#​Версия API. api_version|Версия API. api_version]]\\ ​ 
-[[#​Авторизация. ModernLogin|Авторизация. ModernLogin]]\\ ​ 
-[[#​Регистрация. ModernRegistration|Регистрация. ModernRegistration]]\\ ​ 
-[[#​Восстановление пароля. ModernRememberPwd|Восстановление пароля. ModernRememberPwd]]\\ ​ 
-[[#​Выход из Личного кабинета. Logout|Выход из Личного кабинета. Logout]]\\ ​ 
-[[#​Проверка валидности сессии. ValidSessionID|Проверка валидности сессии. ValidSessionID]]\\ ​ 
- 
- 
- 
- 
-[[#​Дополнительные реквизиты. AddonTypes|Дополнительные реквизиты. AddonTypes]]\\ ​ 
-[[#​Комплекты доп. реквизитов. AddonPacks|Комплекты доп. реквизитов. AddonPacks]]\\ ​ 
-[[#​Прайс-лист. PriceList|Прайс-лист. PriceList]]\\ ​ 
-[[#​Группы прайс-листа. PriceTree|Группы прайс-листа. PriceTree]]\\ ​ 
-[[#​Склады. ReceptionCenters|Склады. ReceptionCenters]]\\ ​ 
-[[#​Регионы (районы). Regions|Регионы (районы). Regions]]\\ ​ 
-[[#​Список выездов. Trips|Список выездов. Trips]]\\ ​ 
-[[#​Информация по выезду. Trip|Информация по выезду. Trip]]\\ 
-[[#​Свободное время начала выезда на дату. TripsHr|Свободное время начала выезда на дату. TripsHr]]\\ ​ 
-[[#​Свободное время окончания выезда на дату. TripsHrTo|Свободное время окончания выезда на дату. TripsHrTo]]\\ ​ 
-[[#​Список выездных машин. Cars|Список выездных машин. Cars]]\\ ​ 
-[[#​Создание выезда. TripOrder|Создание выезда. TripOrder]]\\ ​ 
-[[#​Промо-код. PromoCode|Промо-код. PromoCode]]\\ ​ 
-[[#​Используемый промо-код. PromoCodeUse|Используемый промо-код. PromoCodeUse]]\\ ​ 
-[[#​Активация промо-кода. PromoCodeActivate|Активация промо-кода. PromoCodeActivate]]\\ ​ 
-[[#​Список изменившихся ID заказов. LastChangeOrder|Список изменившихся ID заказов. LastChangeOrder]]\\ 
-[[#​Подтверждение заказа. OrderConfirm|Подтверждение заказа. OrderConfirm]]\\ ​ 
-[[#​Подтверждение заказа. OrderAppConfirm|Подтверждение заказа. OrderAppConfirm]]\\ ​ 
-[[#​Отмена подтверждения заказа. CancelOrderApp|Отмена подтверждения заказа. CancelOrderApp]]\\ ​ 
-[[#​Статус заказа. GetStatusOrder|Статус заказа. GetStatusOrder]]\\ ​ 
-[[#​Отмена заказа. CancelOrder|Отмена заказа. CancelOrder]]\\ ​ 
-[[#Темы обсуждений клиента. TitleMessages|Темы обсуждений клиента. TitleMessages]]\\ ​ 
-[[#​Список сообщений темы. MessageList|Список сообщений темы. MessageList]]\\ ​ 
-[[#​Количество новых сообщений в теме. CountNewMessages|Количество новых сообщений в теме. CountNewMessages]]\\ ​ 
-[[#​Отправка сообщения темы. SendMessage|Отправка сообщения темы. SendMessage]]\\ ​ 
-[[#​Список акций. GetActionList|Список акций. GetActionList]]\\ ​ 
-[[#​Список сертификатов. Certificate|Список сертификатов. Certificate]]\\ ​ 
-[[#​Список строк сертификатов. CertificateLines|Список строк сертификатов. CertificateLines]]\\ ​ 
-[[#​Список активных сертификатов. ActiveCertificates|Список активных сертификатов. ActiveCertificates]]\\ ​ 
-[[#​Создание оплаты сертификата. CreatePayCertificate|Создание оплаты сертификата. CreatePayCertificate]]\\ ​ 
-[[#​Рекламные объявления. Advertisment|Рекламные объявления. Advertisment]]\\ ​ 
-[[#​Картинки рекламных объявлений. AdvertismentImg|Картинки рекламных объявлений. AdvertismentImg]]\\ ​ 
-----  
-===== client_session ===== 
-=== 1.2. Команды ТОЛЬКО с клиентской сессией === 
-[[#​Информация по клиенту. ContrInfo|Информация по клиенту. ContrInfo]]\\ ​ 
-[[#​Сохранение информации по клиенту. SaveInfo|Сохранение информации по клиенту. SaveInfo]]\\ ​ 
-[[#​Сохранение пароля. SavePass|Сохранение пароля. SavePass]]\\ ​ 
-[[#​Подтверждение номера телефона. ConfirmCellPhone|Подтверждение номера телефона. ConfirmCellPhone]]\\ ​ 
-[[#​Остаток бонусов клиента. Bonus|Остаток бонусов клиента. Bonus]]\\ ​ 
-[[#​Остаток депозита клиента. Deposit|Остаток депозита клиента. Deposit]]\\ ​ 
-[[#​Список заказов клиента. Orders|Список заказов клиента. Orders]]\\ ​ 
-[[#​История заказов клиента. OrdersHistory|История заказов клиента. OrdersHistory]]\\ ​ 
-[[#​Полная информация по заказу. FullOrderInfo|Полная информация по заказу. FullOrderInfo]]\\ ​ 
-[[#​Краткая информация по услугам заказа. Services|Краткая информация по услугам заказа. Services]]\\ ​ 
-[[#​Полная информация по услугам заказа. FullService|Полная информация по услугам заказа. FullService]]\\ ​ 
-[[#​Квитанция. ReceiptOnline|Квитанция. ReceiptOnline]]\\ ​ 
-[[#​Квитанция. Receipt|Квитанция. Receipt]]\\ ​ 
-[[#​Подписанная квитанция. SingReceipt|Подписанная квитанция. SingReceipt]]\\ 
-[[#​Список фотографий по заказу. OrderImagesModern|Список фотографий по заказу. OrderImagesModern]]\\ ​ 
-[[#​Фотографии по заказу. PhotoOnline|Фотографии по заказу. PhotoOnline]]\\ 
-[[#​Оплата депозитом. DepositPay|Оплата депозитом. DepositPay]]\\ ​ 
-[[#​Оплата бонусом. BonusPay|Оплата бонусом. BonusPay]]\\ ​ 
-[[#​Статистика входа в ЛК. Entry|Статистика входа в ЛК. Entry]]\\ ​ 
-[[#​Статистика заходов в ЛК. EntranceSite|Статистика заходов в ЛК. EntranceSite]]\\ ​ 
-[[#​Статистика открытия заказа в ЛК. OpenOrders|Статистика открытия заказа в ЛК. OpenOrders]]\\ ​ 
-[[#​Статистика открытия истории в ЛК. OpenHistory|Статистика открытия истории в ЛК. OpenHistory]]\\ ​