Публикация документов
МойСклад позволяет печатать документы - формировать файлы в формате pdf или xls по специальным шаблонам, которые называются шаблонами печатных форм. Для большинства документов есть встроенные шаблоны, о создании собственных шаблонов можно прочитать в статье поддержки.
Публикация - это ссылка на печатную форму документа. Ее можно отправить по электронной почте. При публикации файлы формируются только в формате pdf. Публикации доступны для следующих видов документов:
- Заказ покупателя
- Счет покупателю
- Отгрузка
- Заказ поставщику
- Счет поставщика
- Приемка
- Входящий платеж
- Приходный ордер
- Исходящий платеж
- Расходный ордер
- Внутренний заказ
- Перемещение
- Оприходование
- Списание
- Счет-фактура выданный
- Счет-фактура полученный
- Возврат поставщику
- Возврат покупателя
- Выплата денег
- Внесение денег
- Розничный возврат
- Розничная продажа
- Договор
Шаблоны печатной формы
В JSON API возможно запросить списки встроенных и пользовательских шаблонов печатных форм, чтобы впоследствии использовать их для печати и публикации документов.
Запрос встроенных шаблонов заказов покупателей:
curl
-X GET
-u login:password
-H "Lognex-Pretty-Print-JSON: true"
"https://online.moysklad.ru/api/remap/1.1/entity/customerorder/metadata/embeddedtemplate/"
Ответ
{
"context": {
"employee": {
"meta": {
"href": "https://online.moysklad.ru/api/remap/1.1/context/employee",
"metadataHref": "https://online.moysklad.ru/api/remap/1.1/entity/employee/metadata",
"type": "employee",
"mediaType": "application/json"
}
}
},
"meta": {
"href": "https://online.moysklad.ru/api/remap/1.1/entity/customerorder/metadata/embeddedtemplate/",
"type": "embeddedtemplate",
"mediaType": "application/json",
"size": 1,
"limit": 25,
"offset": 0
},
"rows": [
{
"meta": {
"href": "https://online.moysklad.ru/api/remap/1.1/entity/customerorder/metadata/embeddedtemplate/6ffea5e5-1b69-4a88-be59-4856281d439c",
"type": "embeddedtemplate",
"mediaType": "application/json"
},
"id": "6ffea5e5-1b69-4a88-be59-4856281d439c",
"name": "Заказ",
"type": "entity",
"content": "https://online.moysklad.ru/api/remap/1.1/download-template/order.xls"
}
]
}
Запрос пользовательских шаблонов заказов покупателей:
curl
-X GET
-u login:password
-H "Lognex-Pretty-Print-JSON: true"
"https://online.moysklad.ru/api/remap/1.1/entity/customerorder/metadata/customtemplate/"
Ответ
{
"context": {
"employee": {
"meta": {
"href": "https://online.moysklad.ru/api/remap/1.1/context/employee",
"metadataHref": "https://online.moysklad.ru/api/remap/1.1/entity/employee/metadata",
"type": "employee",
"mediaType": "application/json"
}
}
},
"meta": {
"href": "https://online.moysklad.ru/api/remap/1.1/entity/customerorder/metadata/customtemplate/",
"type": "customtemplate",
"mediaType": "application/json",
"size": 1,
"limit": 25,
"offset": 0
},
"rows": [
{
"meta": {
"href": "https://online.moysklad.ru/api/remap/1.1/entity/customerorder/metadata/customtemplate/13b49a38-0b64-4129-9fb8-0f9f936fa575",
"type": "customtemplate",
"mediaType": "application/json"
},
"id": "13b49a38-0b64-4129-9fb8-0f9f936fa575",
"name": "order_upakovka.xls",
"type": "entity",
"content": "https://online.moysklad.ru/api/remap/1.1/download/13b49a38-0b64-4129-9fb8-0f9f936fa575"
}
]
}
По ссылке из поля content можно скачать сам шаблон.
Изменение или удаление шаблонов печатных форм через JSON API невозможно.
Создание публикаций в JSON API
Создание публикаций возможно средствами JSON API. Чтобы создать публикацию нужен документ, например, заказ покупателя, и шаблон печатной формы - встроенный или пользовательский.
Создадим публикацию для заказа покупателя
curl
-X PUT
-u login:password
-H "Content-Type: application/json"
-H "Lognex-Pretty-Print-JSON: true"
"https://online.moysklad.ru/api/remap/1.1/entity/customerorder/53e988fd-c7c9-11e8-9dd2-f3a3000000cd/publication"
-d '{
"template": {
"meta": {
"href": "https://online.moysklad.ru/api/remap/1.1/entity/customerorder/metadata/embeddedtemplate/6ffea5e5-1b69-4a88-be59-4856281d439c",
"type": "embeddedtemplate",
"mediaType": "application/json"
}
}
}'
В ответ возвращается JSON представление публикации. Если такая публикация уже существовала, код ответа 200. Если публикация была создана - 201.
{
"meta": {
"href": "https://online.moysklad.ru/api/remap/1.1/entity/customerorder/53e988fd-c7c9-11e8-9dd2-f3a3000000cd/publication/aec51463-bbd2-11e6-8a84-bae500000003",
"type": "operationpublication",
"mediaType": "application/json"
},
"template": {
"meta": {
"href": "https://online.moysklad.ru/api/remap/1.1/entity/customerorder/metadata/embeddedtemplate/6ffea5e5-1b69-4a88-be59-4856281d439c",
"type": "embeddedtemplate",
"mediaType": "application/json"
}
},
"href": "https://doc.moysklad.ru/board/ef371086-c7c8-11e8-9dd2-f3a300000000/publication/aec51463-bbd2-11e6-8a84-bae500000003.html"
}
Список всех публикаций
Также можно запросить список всех публикаций документа.
curl
-X GET
-u login:password
-H "Lognex-Pretty-Print-JSON: true"
"https://online.moysklad.ru/api/remap/1.1/entity/customerorder/53e988fd-c7c9-11e8-9dd2-f3a3000000cd/publication"
Ответ:
{
"context": {
"employee": {
"meta": {
"href": "https://online.moysklad.ru/api/remap/1.1/context/employee",
"metadataHref": "https://online.moysklad.ru/api/remap/1.1/entity/employee/metadata",
"type": "employee",
"mediaType": "application/json"
}
}
},
"meta": {
"href": "https://online.moysklad.ru/api/remap/1.1/entity/customerorder/53e988fd-c7c9-11e8-9dd2-f3a3000000cd/publication",
"type": "demand",
"mediaType": "application/json",
"size": 1,
"limit": 25,
"offset": 0
},
"rows": [
{
"meta": {
"href": "https://online.moysklad.ru/api/remap/1.1/entity/customerorder/53e988fd-c7c9-11e8-9dd2-f3a3000000cd/publication/aec51463-bbd2-11e6-8a84-bae500000003",
"type": "operationpublication",
"mediaType": "application/json"
},
"template": {
"meta": {
"href": "https://online.moysklad.ru/api/remap/1.1/entity/customerorder/metadata/embeddedtemplate/6ffea5e5-1b69-4a88-be59-4856281d439c",
"type": "embeddedtemplate",
"mediaType": "application/json"
}
},
"href": "https://doc.moysklad.ru/board/45eb22e0-0e7b-11e2-1c31-3c4a92f3a0a7/publication/242ce894-b0fc-4090-a4bd-2ddd1e2a910b.html"
}
]
}
Удаление публикаций
Через JSON API можно удалить публикацию:
curl
-X DELETE
-u login:password
-H "Content-Type: application/json"
-H "Lognex-Pretty-Print-JSON: true"
""https://online.moysklad.ru/api/remap/1.1/entity/customerorder/53e988fd-c7c9-11e8-9dd2-f3a3000000cd/publication/aec51463-bbd2-11e6-8a84-bae500000003"
Ссылки публикаций
По ссылке публикации (например, https://doc.moysklad.ru/board/ef371086-c7c8-11e8-9dd2-f3a300000000/publication/aec51463-bbd2-11e6-8a84-bae500000003.html) открывается страница, с которой можно скачать pdf-документ.
По ссылке будет доступна самая последняя версия документа, даже если вы вносите изменения в документ после его публикации.
Ссылка будет доступна, пока не удалена публикация.