ExtendedSignerDetails

Набор необходимых полей для подписания счетов-фактур, актов и накладных был значительно меньше, чем для подписания УПД и УКД.

Все данные подписанта можно было достать из сертификата и данных его организации - автоматическое заполнение данных подписанта происходило при заполнении BoxId и Certificate/CertificateThumbprint.

Данная логика сохранилась и при подписании УПД/УКД и актов/накладных в форматах 551/552. Автоматическое заполнение происходит, если в Диадоке есть дополнительные данные, необходимые для подписания. Если дополнительных данных, необходимых для подписания в Диадоке нет, то будет возникать ошибка.

Расширенные данные можно заполнить методом ExtendedSignerDetails.

Заполнение данных

Во второй версии метода ExtendedSignerDetails параметры buyer и correction заменены на один параметр целочисленного типа documentTitleType. Возможные значения параметра представлены ниже:

DocumentTitleType {
    UtdSeller = 0;         // Данные для титула продавца УПД
    UtdBuyer = 1;          // Данные для титула покупателя УПД
    UcdSeller = 2;         // Данные для титула продавца УКД
    UcdBuyer = 3;          // Данные для титула покупателя УКД
    TovTorg551Seller = 4;  // Данные для титула продавца 551
    TovTorg551Buyer = 5;   // Данные для титула покупателя 551
    AccCert552Seller = 6;  // Данные для титула исполнителя 552
    AccCert552Buyer = 7;   // Данные для титула заказчика 552
    Utd820Buyer = 8;       // Данные для титула покупателя УПД формата приказа 820
}

В теле запроса должно содержаться отправляемое сообщение, сериализованное в протобуфер ExtendedSignerDetailsToPost.

В теле ответа содержится отправленное сообщение, сериализованное в протобуфер ExtendedSigner.

POST /V2/ExtendedSignerDetails
Query Parameters:
 
  • boxId (string) – идентификатор ящика, для которого нужно заполнить данные о подписанте
  • thumbprint (string) – отпечаток сертификата, для которого нужно заполнить дополнительные данные о подписанте
  • documentTitleType (int) – тип титула, для которого нужно заполнить дополнительные данные о подписанте
Request Headers:
 
Status Codes:
  • 200 OK – операция успешно завершена
  • 400 Bad Request – данные в запросе имеют неверный формат или отсутствуют обязательные параметры
  • 401 Unauthorized – в запросе отсутствует HTTP-заголовок Authorization, или в этом заголовке содержатся некорректные авторизационные данные
  • 403 Forbidden – доступ к ящику с предоставленным авторизационным токеном запрещен
  • 405 Method Not Allowed – используется неподходящий HTTP-метод
  • 500 Internal Server Error – при обработке запроса возникла непредвиденная ошибка

Проверка данных

Проверить, какие дополнительные данные указаны для конкретного подписанта можно этим же методом.

В теле ответа содержится отправленное сообщение, сериализованное в протобуфер ExtendedSigner.

GET /V2/ExtendedSignerDetails
Query Parameters:
 
  • boxId (string) – идентификатор ящика, для которого нужно заполнить данные о подписанте
  • thumbprint (string) – отпечаток сертификата, для которого нужно заполнить дополнтиельные данные о подписанте
  • documentTitleType (int) – тип титула, для которого нужно заполнить дополнительные данные о подписанте
Request Headers:
 
Status Codes:
  • 200 OK – операция успешно завершена
  • 400 Bad Request – данные в запросе имеют неверный формат или отсутствуют обязательные параметры
  • 401 Unauthorized – в запросе отсутствует HTTP-заголовок Authorization, или в этом заголовке содержатся некорректные авторизационные данные
  • 403 Forbidden – доступ к ящику с предоставленным авторизационным токеном запрещен
  • 405 Method Not Allowed – используется неподходящий HTTP-метод
  • 500 Internal Server Error – при обработке запроса возникла непредвиденная ошибка

Примеры

Пример POST запроса:

POST /V2/ExtendedSignerDetails?boxId=48ad04b4-af63-4a72-901c-f19b698c31cc&thumbprint=B8C080A89A5F643A&documentTitleType=0 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

{
   "JobTitle": "сотрудник",
   "SignerType": "LegalEntity",
   "SignerInfo": "additional",
   "SignerPowers": "PersonMadeOperation",
   "SignerStatus": "SellerEmployee",
   "SignerPowersBase": "Должностные обязанности"
}

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

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

{
   "Surname": "Иванов",
   "FirstName": "Иван",
   "Patronymic": "Иванович",
   "JobTitle": "сотрудник",
   "Inn": "101010101010",
   "SignerType": "IndividualEntity",
   "SignerOrganizationName": "ЗАО \"ПФ \"СКБ Контур\"",
   "SignerInfo": "additional",
   "SignerPowers": "PersonMadeOperation",
   "SignerStatus": "SellerEmployee",
   "SignerPowersBase": "Должностные обязанности"
}