GetDocflows (V4)

Возвращает список документов с информацией о документообороте по их идентификаторам.

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

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

Request Headers:
Request Body:

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

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

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

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

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

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

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

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

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

Response Body:

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

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

Метод вернет всю доступную информацию по указанным документам, в том числе содержимое документов и подписей, если это было указано в запросе. Обратите внимание, что суммарный размер содержимого всех сущностей, хранящихся в поле Entity.Content.Data, не может превышать 1 048 576 байт — ограничение относится только к Entity с EntityType.Attachment. Если при добавлении содержимого очередного документа этот размер будет превышен, то такое содержимое не будет добавлено в ответ. Если для каких-то документов содержимое не было получено в ответе метода, его можно получить с помощью метода GetEntityContent (V4).

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

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

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

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

{
    "Requests": [
        {
            "DocumentId": {
                "MessageId": "b7a4809e-ff8f-4a6c-86ae-0f514c353afd",
                "EntityId": "132c02e7-2d07-43f2-bf23-c9bc52f281e9"
            }
        }
    ]
}

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

{
    "Documents": [
        {
            "DocumentId": {
                "MessageId": "b7a4809e-ff8f-4a6c-86ae-0f514c353afd",
                "EntityId": "132c02e7-2d07-43f2-bf23-c9bc52f281e9"
            },
            "LastEvent": {
                "EventId": "92d89e14-fdbb-11ef-8000-000189ea7b5d",
                "Timestamp": {
                    "Ticks": 638772135536156180
                }
            },
            "DocumentInfo": {
                "FullVersion": {
                    "TypeNamedId": "Torg2",
                    "Function": "NoAdditionalInfo",
                    "Version": "torg2_05_01_01"
                },
                "MessageType": "Letter",
                "WorkflowId": 1,
                "Participants": {
                    "Sender": {
                        "BoxId": "09ae254c5cd0408284de7ccb46d86f82@diadoc.ru",
                        "DepartmentId": "00000000-0000-0000-0000-000000000000"
                    },
                    "Recipient": {
                        "BoxId": "1f208d032a604f6491b1b7aad54cfaf3@diadoc.ru",
                        "DepartmentId": "00000000-0000-0000-0000-000000000000"
                    },
                    "IsInternal": false
                },
                "DocumentDirection": "Inbound",
                "DepartmentId": "00000000-0000-0000-0000-000000000000",
                "Metadata": [
                    {
                        "Key": "FileName",
                        "Value": "DP_PRIRASXPRINMARK_2BM-0299242701-757645784-202407101104400484330_2BM-4934609619-732644841-202407101103418496883_20230116_17b84e47-f0c7-454e-a491-289dc2ace6c3.xml"
                    },
                    {
                        "Key": "DocumentNumber",
                        "Value": "1"
                    },
                    {
                        "Key": "DocumentDate",
                        "Value": "2023-01-16T00:00:00.0000000Z"
                    }
                ],
                "CustomData": [],
                "DocumentLinks": {
                    "InitialIds": [],
                    "SubordinateIds": []
                },
                "PacketInfo": {
                    "LockMode": "None"
                },
                "IsRead": true,
                "IsDeleted": false,
                "IsInvitation": false,
                "LetterInfo": {
                    "IsEncrypted": false,
                    "ForwardDocumentEvents": [],
                    "IsTest": false
                },
                "EditingSettingId": ""
            },
            "Docflow": {
                "SenderTitle": {
                    "IsFinished": true,
                    "Attachment": {
                        "Attachment": {
                            "Entity": {
                                "EntityId": "132c02e7-2d07-43f2-bf23-c9bc52f281e9",
                                "CreationTimestamp": {
                                    "Ticks": 638772119340795259
                                },
                                "Content": {
                                    "Size": 6658
                                }
                            },
                            "AttachmentFilename": "DP_PRIRASXPRINMARK_2BM-0299242701-757645784-202407101104400484330_2BM-4934609619-732644841-202407101103418496883_20230116_17b84e47-f0c7-454e-a491-289dc2ace6c3.xml",
                            "DisplayFilename": "Акт ТОРГ-2 №1 от 16.01.23"
                        },
                        "Signature": {
                            "Cms": {
                                "EntityId": "58c26ff0-683c-4031-b572-41abc009903b",
                                "CreationTimestamp": {
                                    "Ticks": 638772119340795259
                                },
                                "Content": {
                                    "Size": 3378
                                }
                            },
                            "CadesT": {
                                "EntityId": "66a045fc-521e-4d63-bae4-9c0e454aa35e",
                                "CreationTimestamp": {
                                    "Ticks": 638772119344269072
                                },
                                "Content": {
                                    "Size": 7010
                                }
                            },
                            "SignerBoxId": "09ae254c5cd0408284de7ccb46d86f82@diadoc.ru",
                            "SignerDepartmentId": "00000000-0000-0000-0000-000000000000",
                            "IsValid": true,
                            "DeliveredAt": {
                                "Ticks": 638772119344269072
                            },
                            "PowerOfAttorneyAttachmentStatus": {
                                "StatusName": "PowerOfAttorneyRequired",
                                "Comment": "Документ подписан сертификатом другого ЮЛ/ИП, возможно, требуется МЧД"
                            }
                        },
                        "ContentTypeId": "torg2_no_additional_info_05_01_01"
                    },
                    "SentAt": {
                        "Ticks": 638772119340795259
                    },
                    "DeliveredAt": {
                        "Ticks": 638772119344269072
                    },
                    "SenderSignatureStatus": "SenderSignatureCheckedAndValid"
                },
                "Confirmation": {
                    "IsFinished": true,
                    "ConfirmationAttachment": {
                        "Attachment": {
                            "Entity": {
                                "EntityId": "e13208c8-7962-4bbe-b9e1-7fdddff1254b",
                                "CreationTimestamp": {
                                    "Ticks": 638772119344269072
                                },
                                "Content": {
                                    "Size": 5547
                                }
                            },
                            "AttachmentFilename": "DP_PDOTPR_2BM-0299242701-757645784-202407101104400484330_2BM_20250310_e13208c8-7962-4bbe-b9e1-7fdddff1254b.xml",
                            "DisplayFilename": "Подтверждение даты отправки"
                        },
                        "Signature": {
                            "Cms": {
                                "EntityId": "6d9d47b2-890a-4e1b-ad17-f041af4ffdf9",
                                "CreationTimestamp": {
                                    "Ticks": 638772119344269072
                                },
                                "Content": {
                                    "Size": 3364
                                }
                            },
                            "CadesT": {
                                "EntityId": "ac1a3e4c-b2e4-43ec-87bb-d4267fc7d26a",
                                "CreationTimestamp": {
                                    "Ticks": 638772119344269072
                                },
                                "Content": {
                                    "Size": 6995
                                }
                            },
                            "SignerBoxId": "00000000000000000000000000000000@diadoc.ru",
                            "SignerDepartmentId": "00000000-0000-0000-0000-000000000000",
                            "IsValid": true,
                            "DeliveredAt": {
                                "Ticks": 638772119344269072
                            },
                            "PowerOfAttorneyAttachmentStatus": {
                                "StatusName": "PowerOfAttorneyNotRequired"
                            }
                        },
                        "ContentTypeId": "delivery_confirmation_133_01_03"
                    },
                    "ConfirmedAt": {
                        "Ticks": 638772119344269072
                    }
                },
                "ResolutionEntities": {
                    "Requests": [],
                    "Resolutions": [],
                    "ApprovementSignatures": [],
                    "SignatureDenials": []
                },
                "OuterDocflows": [],
                "OuterDocflowEntities": [],
                "DocflowStatus": {
                    "PrimaryStatus": {
                        "Severity": "Info",
                        "StatusText": "Документооборот завершен"
                    },
                    "PowerOfAttorneyGeneralStatus": {
                        "Severity": "Warning",
                        "StatusNamedId": "IsNotAttached",
                        "StatusText": "Не приложена доверенность",
                        "Errors": []
                    }
                }
            }
        }
    ]
}

Пример запроса с использованием C# SDK:

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

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

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);

См. также

Методы для работы с документооборотом:
  • GetDocflowEvents (V3) — возвращает список событий, произошедших с документами

  • GetDocflowEvents (V4) — возвращает список событий, произошедших с документами

  • GetDocflows (V3) — возвращает список документов с информацией о документообороте по их идентификаторам

  • GetDocflows (V4) — возвращает список документов с информацией о документообороте по их идентификаторам

  • GetDocflowsByPacketId (V3) — возвращает список документов, находящихся в пакете

  • GetDocflowsByPacketId (V4) — возвращает список документов, находящихся в пакете

  • SearchDocflows (V3) — выполняет поиск документов по строке запроса

  • SearchDocflows (V4) — выполняет поиск документов по строке запроса

Предыдущие версии метода:
Устаревшие версии метода: