С помощью REST-сервиса синхронизации данных МойСклад может обмениваться с внешними сервисами любыми данными, хранящимися в базе данных компании-подписчика.
В приведенной ниже таблице описаны адреса REST-ресурсов и параметры для них:
| Назначение | Метод | Адрес | Тело запроса | Результат | |
|---|---|---|---|---|---|
| Запрос объекта типа type с идентификатором id | GET | /ms/xml/{type}/{id} | Отсутствует | Код 200 и объект типа type, если объект найден, либо код 404 и пустой ответ, если объект не найден. | |
| Создание нового или обновление существующего объекта типа type | PUT | /ms/xml/{type} | Объект типа type | Объект типа type | |
| Удаление | DELETE | /ms/xml/{type}/{id} | Отсутствует | Код 200 в случае успешного завершения операции и код 404, если объект типа type с идентификатором id не найден. | |
| Запрос списка объектов типа type | GET | /ms/xml/{type}/list | Отсутствует | Код 200 и коллекция объектов типа type | |
| Обновление или создание объектов типа type | PUT | /ms/xml/{type}/list/update | Коллекция объектов типа type | Код 200 и коллекция идентификаторов созданных или обновленных объектов типа type | |
| Удаление коллекции объектов типа type | POST | /ms/xml/{type}/list/delete | коллекция идентификаторов | Код 200 |
Для всех перечисленных сервисов базовым адресом является: https://online.moysklad.ru/exchange/rest
Например, адрес ресурса для получения (метод GET) или удаления (метод DELETE) приемки с идентификатором HHfndjsweuj6643nbf будет выглядеть так: https://online.moysklad.ru/exchange/rest/ms/xml/Supply/HHfndjsweuj6643nbf
В описании использованы подстановки в фигурных скобках. Для обращения к соответствующему сервису необходимо заменить строку вида {type} на название типа данных, а строку вида {id} на идентификатор объекта, если это необходимо для вызова данного сервиса.
Допустимые значения для строки {type}:
| Справочники | |
|---|---|
| Uom | единица измерения |
| Good | товар |
| GoodFolder | папка товаров и услуг |
| Service | услуга |
| Agent | папка контрагентов |
| Company | компания |
| MyCompany | организация |
| Person | частное лицо |
| Employee | сотрудник |
| Country | страна |
| Consignment | серия |
| Currency | валюта |
| ProcessingPlanFolder | папка технологических карт |
| ProcessingPlan | технологическая карта |
| Contract | контракт |
| Project | проект |
| Gtd | ГТД |
| Thing | серийный номер |
| LossReason | основание списания |
| EnterReason | основание оприходования |
| CustomEntity | элемент пользовательского справочника |
| Документы | ||
|---|---|---|
| Supply | приемка | |
| Demand | отгрузка | |
| Loss | списание | |
| Enter | оприходование | |
| SalesReturn | возврат покупателя | |
| PurchaseReturn | возврат поставщику | |
| CustomerOrder | заказ покупателя | |
| PurchaseOrder | заказ поставщику | |
| InternalOrder | внутренний заказ | |
| ProcessingOrder | заказ на технологическую операцию | |
| Processing | технологическая операция | |
| Move | перемещение | |
| Inventory | инвентаризация | |
| CashIn | кассовый приход | |
| CashOut | кассовая выплата | |
| PaymentIn | безналичный приход | |
| PaymentOut | безналичная выплата | |
Сервисы поддерживают обмен данными в формате XML, согласно схемы обмена данными сервиса МойСклад exchange-1.3.0.xsd.
Коллекции объектов и идентификаторов должны передаваться в теге <collection></collection>. Например:
<?xml version="1.0" encoding="UTF-8"?>
<collection>
<id>8f3m688db546</id>
<id>22h346snfrfr</id>
</collection>
При запросе коллекций объектов может применяться фильтрация данных. Описание параметров фильтрации располагается на странице: Фильтрация данных в REST-сервисе.
Для работы с перечисленными сервисами требуется BASIC-авторизация. Пользователь, с именем и паролем которого будет происходить обращение к сервису, должен быть наделен правами на работу в административном разделе обмена данными. Для этого необходимо внести пользователя в стандартную группу "Возможность производить обмен данными".
Кириллическое имя пользователя и пароль при входе с BASIC-авторизацией работать не будут, так как в этом случае UTF-8 строка с именем и паролем интерпретируются как ASCII. Чтобы обойти это ограничение BASIC-авторизации, вы можете использовать вместо имени пользователя почтовый адрес, указанный при регистрации учетной записи. Если почтовый адрес указан в более чем одной учетной записи пользователя, то в качестве логина его использовать уже нельзя.
© 2007—2012 ООО «Логнекс» складская программа учета товаров