GetDocflows (версия 3)

Метод GetDocflows возвращает список документов с информацией о документообороте по их идентификаторам. Для каждого документа возвращаются данные, которые характеризуют его текущее состояние: информация о документообороте и метаданные.

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

Request Headers:
Request Body:

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

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

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

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

  • 402 Payment Required – у организации с указанным идентификатором boxId закончилась подписка на API.

  • 403 Forbidden – доступ к ящику с предоставленным авторизационным токеном запрещен или у пользователя нет прав для доступа ко всем документам организации.

  • 404 Not Found – в указанном ящике нет документов с указанными идентификаторами.

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

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

Response Body:

Тело ответа содержит список документов с информацией о документообороте, представленный структурой GetDocflowBatchResponseV3.

Метод добавляет в ответ всю информацию, относящуюся к цепочке документооборота, в том числе бинарные представления документов и подписей. Но метод имеет ограничение на суммарный размер всех бинарных представлений, хранящихся в поле GetDocflowBatchResponse.Documents.Docflow.DocumentAttachment.Attachment.Entity.Content.Data, — он не должен превышать 1048576 байт. Если при добавлении очередного бинарного представления суммарный размер превысит это значение, то оно не будет добавлено в ответ метода. Вы можете получить такое бинарное представление с помощью метода GetEntityContent.

Для выполнения метода текущий пользователь должен иметь доступ ко всем документам организации, иначе метод вернет ошибку 403 (Forbidden).

SDK

GetDocflowBatchResponseV3 GetDocflows(string authToken, string boxId, GetDocflowBatchRequest request);

Пример использования (C#)

Получение двух документов и вывод на консоль признака завершенности их документооборота.

var request = new GetDocflowBatchRequest
{
    Requests =
    {
        new GetDocflowRequest
        {
            DocumentId = new DocumentId(messageId1, documentId1),
            InjectEntityContent = true
        },
        new GetDocflowRequest
        {
            DocumentId = new DocumentId(messageId2, documentId2),
            InjectEntityContent = false,
            LastEventId = lastEventId
        }
    }
};
var response = api.Docflow.GetDocflows(token, boxId, request);
foreach (var doc in response.Documents)
    Console.Out.WriteLine(doc.Docflow.SenderTitle.IsFinished);