PostTemplatePatch

Отправляет дополнение к шаблону документов.

POST /PostTemplatePatch
Query Parameters:
  • boxId – идентификатор ящика организации в формате GUID.

  • templateId – идентификатор шаблона.

  • operationId – идентификатор операции. Необязательный параметр, нерегистрочувствительный. Если вызов с указанным идентификатором операции завершился успехом, то и все последующие вызовы с тем же идентификатором операции так же завершатся успехом. Результат всех последующих вызовов будет равен результату первого успешного вызова. По умолчанию в качестве идентификатора операции используется MD5-хэш тела запроса.

Request Headers:
Request Body:

Тело запроса должно содержать структуру TemplatePatchToPost.

Status Codes:
  • 200 OK – операция успешно завершена.

  • 204 No Content – операция еще не завершена. В HTTP-заголовке ответа Retry-After указано время в секундах, через которое нужно повторить запрос.

  • 400 Bad Request – данные в запросе имеют неверный формат, или отсутствуют обязательные параметры, или осуществляется попытка частичного отклонения шаблона из закрытого пакета.

  • 401 Unauthorized – в запросе отсутствует HTTP-заголовок Authorization или в этом заголовке содержатся некорректные авторизационные данные.

  • 402 Payment Required – у указанного ящика закончилась подписка на API.

  • 403 Forbidden – доступ к ящику с предоставленным авторизационным токеном запрещен, или нет доступа к шаблону, или отсутствуют права на создание/редактирование документов.

  • 404 Not Found – не найден шаблон документа.

  • 405 Method Not Allowed – используется неподходящий HTTP-метод.

  • 409 Conflict – осуществляется попытка отклонить шаблон в неподходящем статусе.

  • 500 Internal Server Error – при обработке запроса возникла непредвиденная ошибка.

Response Headers:
  • Retry-After – если в ответе содержится HTTP-заголовок Retry-After, то предыдущий вызов этого метода с таким же идентификатором операции еще не завершен. В этом случае следует повторить вызов через указанное в заголовке время (в секундах), чтобы убедиться, что операция завершилась без ошибок.

Response Body:

Тело ответа содержит отправленное дополнение, сериализованное в протобуфер MessagePatch.

Примеры использования

Пример HTTP-запроса:

POST /PostTemplatePatch?boxId={{boxId}}&templateId={{templateId}} HTTP/1.1
Host: diadoc-api.kontur.ru
Authorization: Bearer {{access_token}}
Accept: application/json; charset=utf-8
Content-Type: application/json

Пример тела запроса:

{
  "Refusals": [
    {
      "DocumentId": "4f3c5f4f-3972-4969-b804-a19ea6013d8c",
      "Comment": "Отзываем шаблон из-за ошибок"
    }
  ]
}

Пример тела ответа:

{
    "MessageId": "246211f1-bc1e-4135-a202-23e67569e903",
    "TimestampTicks": 639065749229785307,
    "Entities": [
        {
            "EntityType": "Attachment",
            "EntityId": "982a938e-9aad-4326-9eb8-ca9c90c60bc2",
            "AuthorUserId": "fd09b4e8-feb4-46f4-93b3-a76469d73bbd",
            "ParentEntityId": "4f3c5f4f-3972-4969-b804-a19ea6013d8c",
            "Content": {
                "Size": 52
            },
            "AttachmentType": "TemplateRefusal",
            "NeedRecipientSignature": false,
            "RawCreationDate": 639065749229785307,
            "NeedReceipt": false,
            "IsApprovementSignature": false,
            "IsEncryptedContent": false,
            "Labels": [],
            "TemplateRefusalInfo": {
                "Type": "Refusal",
                "BoxId": "1f208d03-2a60-4f64-91b1-b7aad54cfaf3",
                "Author": "Иванов Иван Иванович",
                "Comment": "Отзываем шаблон из-за ошибок"
            },
            "ContentTypeId": ""
        }
    ],
    "ForDraft": false,
    "DraftIsRecycled": false,
    "DraftIsTransformedToMessageIdList": [],
    "DraftIsLocked": false,
    "MessageIsDeleted": false,
    "EntityPatches": [],
    "MessageIsRestored": false,
    "MessageIsDelivered": false,
    "PatchId": "d267d47e-dc14-4ec8-84ef-b0fac310ff9e",
    "MessageType": "Template"
}

См. также

Инструкции:
Методы для работы с шаблонами:
  • PostTemplate — отправляет шаблон документа

  • PostTemplatePatch — отправляет дополнение к шаблону документа

  • TransformTemplateToMessage — cоздает из шаблона исходящее неотправленное сообщение