DssSign¶
Метод DssSign
запускает асинхронную операцию подписания файлов сертификатом без носителя.
- POST /DssSign¶
- Query Parameters:
boxId – идентификатор ящика организации.
certificateThumbprint – отпечаток сертификата без носителя, которым требуется подписать файлы. Если не передан, будет использован неистекший сертификат без носителя с самым длительным сроком действия, привязанный к пользователю в Диадоке.
- Request Headers:
Authorization – данные, необходимые для авторизации.
- Request Body:
Тело запроса должно содержать структуру DssSignRequest.
- Status Codes:
200 OK – операция успешно завершена.
400 Bad Request – данные в запросе имеют неверный формат или отсутствуют обязательные параметры.
401 Unauthorized – в запросе отсутствует HTTP-заголовок
Authorization
или в этом заголовке содержатся некорректные авторизационные данные.402 Payment Required – у организации с указанным идентификатором
boxId
закончилась подписка на API.403 Forbidden – доступ к ящику с предоставленным авторизационным токеном запрещен.
404 Not Found – не найден ящик с указанным идентификатором или DSS-сертификат.
405 Method Not Allowed – используется неподходящий HTTP-метод.
500 Internal Server Error – при обработке запроса возникла непредвиденная ошибка.
- Response Body:
Тело ответа содержит идентификатор операции
taskId
в структуре AsyncMethodResult. По этому идентификатору с помощью метода DssSignResult можно узнать результат обработки запроса.
Пример запроса¶
POST /DssSign?boxId=54e9ca30-09c3-4bc9-926f-8f3c1ab56ca3&certificateThumbprint=8A80C2723DBC4F0A94F8CEE21C0A15A68A80C272 HTTP/1.1
Host: diadoc-api.kontur.ru
Authorization: DiadocAuth ddauth_api_client_id=key, ddauth_token=token
Content-Type: application/json; charset=utf-8
{
"Files": [
{
"Content": {
"Content": "<fileBytesBase64>"
},
"FileName": "first.xml"
},
{
"Content": {
"NameOnShelf": "__userId__/478DCC82-6CD1-4A26-B8F7-7E3E52DC5C81"
},
"FileName": "second.xml"
},
{
"Content": {
"EntityId": {
"MessageId": "ab149008-561e-42aa-a639-8873a64ceaaf",
"EntityId": "f92492f0-f5fc-4de6-898c-6b77c83d0dba"
}
},
"FileName": "third.xml"
},
{
"Content": {
"PatchedContentId": "0AD643FD-C76F-4408-B6B8-1964F9A40AD5"
},
"FileName": "fourth.xml"
}
]
}
Пример ответа¶
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"TaskId": "2fd45887-138e-4e08-aeb2-bcd55bf0dd85"
}