Перелік методів API по роботі з порталом EDIN ID
Всі запити нижче перерахованих API методів порталу EDIN ID направляються на адресу: https://id.edin.ua
Для підписання хеш(ів) та/або файлу пароль передається в зашифрованому вигляді.
Авторизація
Кожен запит має містити HTTP header:
| Header | Обовʼязковий | Опис |
|---|---|---|
x-system-id |
так | Токен/ідентифікатор зовнішньої системи. Саме цей header використовується для авторизації. |
Приклад:
curl -X GET 'https://host/api/external/company?...' \
-H 'x-system-id: 019eb581-307b-7562-8a1f-20227511e898'
Отримання публічного ключа для шифрування паролів
Усі секретні значення, які передаються в API, мають бути зашифровані на актуальний публічний RSA-ключ сервера.
Це стосується таких полів:
| Поле | Що передавати |
|---|---|
Метод 9.1: info.caPassPhrase |
base64(RSA-encrypt(publicKey, caPassPhraseBytes)) |
Метод 9.1: info.pkPassword |
base64(RSA-encrypt(publicKey, pkPasswordBytes)) |
Метод 11: adminKeyPassword |
base64(RSA-encrypt(publicKey, adminKeyPasswordBytes)) |
API очікує саме base64 від зашифрованих bytes, а не plaintext пароль.
Інтеграція підписання в облікову систему
| 1 | Отримати і зберегти публічний ключ | GET /api/external/key |
| 2 | Підписати хеш ключем співробітника компанії | POST /api/external/company/sign |
| 3 | Підписати файл ключем співробітника компанії | POST /api/external/company/sign/file |
| 4 | Верифікувати підпис на файлі | POST /api/external/company/sign/file/verify |
| 5 | Отримати інформацію про сертифікат | GET /api/external/company/key/certificate |
Інтеграція управління ключами в облікову систему
Створення ключа складається з трьох запитів:
- Створити чернетку ключа та отримати PDF для підпису співробітником.
- Згенерувати PDF для підпису адміністратором компанії.
- Передати detached-підписи всіх PDF і активувати ключ або передати його на активацію КНЕДП.
Рекомендований сценарій створення та активації ключа:
- Перевірити компанію методом 1.
- Якщо співробітника ще немає – створити його методом 8.
- Перевірити співробітника методом 2.
- Викликати метод 9.1 і отримати
pKey.uuidта employee PDF-форми. - Співробітник підписує PDF-форми з відповіді 9.1 detached-підписом.
- Викликати метод 9.2 з
pKeyUuidтаadminIpnі отримати admin PDF-форми. - Адміністратор/суперадміністратор підписує PDF-форми з відповіді 9.2 detached-підписом.
- Викликати метод 9.3, передавши
keyUuid,activateі map підписів за всіма отриманимиformType. - Отримати оновлений
ESSPrivateKeyзі статусомACTIVATEDабоCOMPANY_ADMIN_APPROVED.