Запит служить для отримання результату перевірки ЕП. Запит є блокуючим, то результат буде отримано лише після завершення процесу перевірки ЕП, якщо такий був раніше запущено. Якщо ЕП дійсна, то буде повернуто HTTP статус код 200. Якщо ЕП не дійсний чи у процесі її безпоседеньої безпосередньої перевірки виникають помилки, буде повернуто HTTP статус код 406. При появі інших типів помилок, повертаються HTTP статус коди 503 чи 400.
...
Поля елемента масиву verifyResults
Поле | Тип даних | Опис |
---|---|---|
status | String | "SUCCESS" - перевірка ЕП здійснена без помилок "FAILURE" - в процесі перевірки ЕП виникли помилки |
failureCause | String | Опис причини виникнення помилки, яка виникла при безпосередній перевірці ЕП |
signerInfo | Object | Інформація з сертифіката власника ЕП |
signingDateTime | String | Час створення ЕП |
isValid | Boolean | true - ЕП дійсний false - ЕП не дійсний |
contentTimestamp | Object | Результат перевірки електронної позначки часу (ЕПЧ) даних для яких було створено ЕП |
signatureTimestamps | Array | Результати перевірки ЕПЧ електронного підпису |
isUntrustedValid | Boolean | Для перевірки ЕП використовується час створення ЕП, яке не завірено ЕПЧ. true - ЕП дійсна false - ЕП не дійсний |
signatureType | String | Тип електронного підпису.
|
signatureFormat | String | Формат електронного підпису.
|
Поля обʼєкта contentTimestamp, елемента масиву signatureTimestamps
...
Поля обʼєкта
Anchor | ||||
---|---|---|---|---|
|
Поле | Тип даних | Опис |
---|---|---|
ownerSurname | Object* | Прізвище |
ownerGivenname | Object* | Імʼя по батькові |
ownerFullName | Object* | Повне імʼя |
ownerCountry | Object* | Країна |
ownerRegion | Object* | Область |
ownerCity | Object* | Населений пункт |
ownerAddress | Object* | Поштова адреса |
ownerSerialNumber | Object* | Серійний номер власника |
ownerPosition | Object* | Посада |
...
Поле | Тип даних | Опис |
---|---|---|
personalData | Object* | Персональні дані |
alternativeOwnerName | Object* | Альтернативне імʼя власника |
subjectKeyId | Object* | Ідентифікатор ключа |
issuerKeyId | Object* | Ідентифікатор ключа видавця |
subjectOwnerId | Object* | Ідентифікатор власника |
certificateProfile | Object* | Профіль сертифікату |
keyUsage | Object* | Призначення сертифікату |
isTemporary | Object* | Ознака стартового сертифікату |
isReinforced | Object* | Ознака посиленого сертифікату |
isQualified | Object* | Признак квалифицированного сертификатаОзнака кваліфікованого сертифікату |
isPrivateKeyOnQSCD | Object* | Признак средства КЭПОзнака засобу КЕП |
qscdTypeName | Object* | Тип средства КЭПзасобу КЕП |
isElectronicStamp | Object* | Признак электронной печатиОзнака електронної печатки |
Поля обʼєкта
signerInfo.extensionsCertificateInfo.value.personalData.value Anchor personalData personalData
Поле | Тип даних | Опис |
---|---|---|
customId | Object* | Внешний идентификаторЗовнішній ідентифікатор |
passport | Object* | Паспортные данныеПаспортні дані |
drfou | Object* | Регистрационный номер учетной карточки плательщика налоговРеєстраційний номер облікової картки платника податків |
edrpou | Object* | Код ЕДПРОУЄДРПОУ |
eddrun | Object* | Уникальный Унікальний номер записи запису в ЕГДРЄДДР |
Поля обʼєкта типу
Anchor | ||||
---|---|---|---|---|
|
Поле | Тип даних | Опис |
---|---|---|
description | String | Описание Опис поля на языке, который выбран пользователем в Сервисемові, який було вибрано у Сервісі |
value | [Object, String, Boolean, Number, Array, null] | Значение Значення поля |
Приклад обʼєкта signerInfo
Code Block |
---|
{ "message": "Електронний підпис дійсний.", "verifyResults": [ { "status": "SUCCESS", "failureCause": "", "isValid": true, "signingDateTime": "2020-03-05T13:25:36Z", "contentTimestamp": {}, "signatureTimestamps": [ { "isValid": true, "isFailure": false, "dateTime": "2020-03-05T13:25:39Z", "tsaCertificateSerialNumber": "3DB73E7BF0D575B20200000001000000BB000000" } ], "signerInfo": { "ownerCertificateInfo": { "description": "Власник", "value": { "ownerSurname": { "description": "Прізвище", "value": "Боровіков" }, "ownerGivenname": { "description": "Імя по-батькові", "value": "Олександр Михайлович" }, "ownerFullName": { "description": "Повне ім'я", "value": "Боровіков Олександр Михайлович" }, "ownerCountry": { "description": "Країна", "value": "UA" }, "ownerRegion": { "description": "Область", "value": null }, "ownerCity": { "description": "Місто", "value": "Київ" }, "ownerAddress": { "description": "Поштова адреса", "value": null }, "ownerSerialNumber": { "description": "Серійний номер власника", "value": "2423814" }, "ownerPosition": { "description": "Посада", "value": null }, "ownerOrganization": { "description": "Організація", "value": null }, "ownerOrganizationUnit": { "description": "Відділ (підрозділ)", "value": null } } }, "issuerCertificateInfo": { "description": "Видавник", "value": { "issuerOrganization": { "description": "Організація", "value": "Інформаційно-довідковий департамент ДФС" }, "issuerDepartment": { "description": "Підрозділ", "value": "Управління (центр) сертифікації ключів ІДД ДФС" }, "issuerFullName": { "description": "Повне ім'я", "value": "Акредитований центр сертифікації ключів ІДД ДФС" }, "issuerCountry": { "description": "Країна", "value": "UA" }, "issuerRegion": { "description": "Область", "value": null }, "issuerCity": { "description": "Місто", "value": "Київ" }, "issuerAddress": { "description": "Поштова адреса", "value": null }, "issuerSerialNumber": { "description": "Серійний номер видавця", "value": "UA-39384476-2018" } } }, "publicKeyCertificateInfo": { "description": "Інформація про відкритий ключ", "value": { "publicKey": { "description": "Відкритий ключ", "value": "C4 39 B0 5D 95 8A 6D 95 0E 4D F4 71 2A 62 59 6B A1 55 C9 6A 91 99 21 01 8E D3 7B B4 72 11 E6 F9 00" }, "dsAlgorism": { "description": "Алгоритм ЕП", "value": "ДСТУ 4145-2002, ПБ, little-endian" } } }, "certificateSerialNumber": { "description": "Серійний номер сертифікату", "value": "20B4E4ED0D30998C0400000006FC24004DAD7500" }, "notBefore": { "description": "Початок дії", "value": "2019-06-10T21:00:00Z" }, "notAfter": { "description": "Закінчення дії", "value": "2021-06-10T21:00:00Z" }, "extensionsCertificateInfo": { "description": "Розширення", "value": { "personalData": { "description": "Персональні дані", "value": { "customId": { "description": "Зовнішній ідентифікатор", "value": null }, "passport": { "description": "Паспортні дані", "value": null }, "drfou": { "description": "Реєстраційний номер облікової картки платника податків", "value": "2031914098" }, "edrpou": { "description": "Код ЕДПРОУ", "value": null }, "eddrun": { "description": "Унікальний номер запису в ЄДДР", "value": null } } }, "alternativeOwnerName": { "description": "Альтернативне ім'я власника", "value": null }, "subjectKeyId": { "description": "Ідентифікатор ключа", "value": "9E 03 BA B2 24 4C 3D 02 09 41 08 8E 7E A3 E8 81 CD C6 90 58 B5 9B 38 1F 90 98 DC 5D F3 EF 61 8E" }, "issuerKeyId": { "description": "Ідентифікатор ключа видавця", "value": "20 B4 E4 ED 0D 30 99 8C BE 30 6A 07 7D 69 9A 32 73 23 8A E9 09 08 71 D6 16 37 0E 18 E5 76 D4 7F" }, "subjectOwnerId": { "description": "Ідентифікатор власника", "value": "00" }, "certificateProfile": { "description": "Профіль сертифіката", "value": null }, "keyUsage": { "description": "ПризначеняПризначення сертифіката", "value": "Електронний підпис, Невідрікаємість" }, "isTemporary": { "description": "Стартовий", "value": "false" }, "isReinforced": { "description": "Посилений", "value": "true" }, "isQualified": { "description": "Кваліфікований", "value": "true" }, "isPrivateKeyOnQSCD": { "description": "Засіб КЕП", "value": "false" }, "qscdTypeName": { "description": "Тип засобу КЕП", "value": null }, "isElectronicStamp" : { "description": "Електронна печатка", "value": "false" } } } } } ] } |
Пример кода на JavaScript + jQuery 2.2.4
Code Block | ||
---|---|---|
| ||
$.ajax({
url: "https://local.cipher.kiev.ua:9090/api/v1/ticket/79343564-147f-4a2a-ac2a-182d7a55f802/ds/verifier",
type: "GET",
dataType: "json",
cache: false
}).done(function (jsonResponse, textStatus, xhr) {
message = jsonResponse.message;
verifyResults = jsonResponse.verifyResults;
}).fail(function (xhr) {
try {
var jsonResponse = JSON.parse(xhr.responseText);
message = jsonResponse.message;
failureCause = jsonResponse.failureCause;
verifyResults = jsonResponse.verifyResults;
} catch (e) {
message = (xhr.responseText == undefined) ? "Ошибка при получении результата проверки ЭП." : xhr.responseText;
}
}) |