Перейти до основного вмісту
Certyneo
API REST — eIDAS

Електронний підписний API для розробників

Вбудуйте електронний підпис eIDAS у свій застосунок: REST API, вебхуки з підписом HMAC, вбудоване підписання в iframe та безкоштовні тестові ключі вже з безкоштовного облікового запису.

Безкоштовні тестові ключі · SLA 99,9 % (Business і Enterprise) · Хостинг у ЄС

REST + специфікація OpenAPI

Передбачувані ендпоінти, чистий JSON, стандартні HTTP-коди. Специфікацію OpenAPI можна завантажити та згенерувати за нею власні клієнти.

Довірні веб-буки

5 спроб зі зростаючими інтервалами, підпис HMAC SHA-256, невдалі події можна надіслати повторно з панелі управління. Писати polling не потрібно.

Натомість, якщо ви не можете отримати відповідну інформацію, будь ласка, зверніться до нас.

Простий, удосконалений (SMS-код OTP) і кваліфікований підпис — рівень обирається для кожного конверта полем signatureLevel. До кожного підписаного документа додається журнал аудиту з позначками часу.

Хостинг у ЄС

Сервери в Німеччині, Франції та Іспанії. Опубліковані ліміти запитів для кожного тарифу та заголовки X-RateLimit у кожній відповіді. SLA 99,9 % на тарифах Business і Enterprise.

Старт за три запити

Завантажте PDF, створіть конверт, надішліть його: достатньо трьох HTTP-запитів.

cURL — завантажити, створити, надіслати
# 1. Upload the PDF
curl https://certyneo.com/api/v1/documents \
  -H "Authorization: Bearer $CERTYNEO_API_KEY" \
  -F "file=@contrat.pdf"
# → { "id": "cm8doc...", "status": "READY", ... }

# 2. Create the envelope (draft)
curl https://certyneo.com/api/v1/envelopes \
  -H "Authorization: Bearer $CERTYNEO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "subject": "Contrat de prestation",
    "documentIds": ["cm8doc..."],
    "recipients": [{ "email": "client@example.com", "name": "Jane Doe" }]
  }'
# → { "id": "cm8env...", "status": "DRAFT", ... }

# 3. Send the invitations
curl -X POST https://certyneo.com/api/v1/envelopes/cm8env.../send \
  -H "Authorization: Bearer $CERTYNEO_API_KEY"

POST /documents повертає ідентифікатор PDF, POST /envelopes створює чернетку з підписантами, потім POST /envelopes/:id/send надсилає запрошення. Далі перебіг процесу надходить через вебхук.

Node.js — вбудований fetch, без залежностей
// Node 18+ — native fetch, no dependency
import { readFile } from "node:fs/promises";

const API = "https://certyneo.com/api/v1";
const auth = { Authorization: `Bearer ${process.env.CERTYNEO_API_KEY}` };

// 1. Upload the PDF
const form = new FormData();
const pdf = new Blob([await readFile("contrat.pdf")], { type: "application/pdf" });
form.append("file", pdf, "contrat.pdf");
const doc = await (await fetch(`${API}/documents`, { method: "POST", headers: auth, body: form })).json();

// 2. Create the envelope (draft)
const envelope = await (await fetch(`${API}/envelopes`, {
  method: "POST",
  headers: { ...auth, "Content-Type": "application/json" },
  body: JSON.stringify({
    subject: "Contrat de prestation",
    documentIds: [doc.id],
    recipients: [{ email: "client@example.com", name: "Jane Doe" }],
  }),
})).json();

// 3. Send the invitations
await fetch(`${API}/envelopes/${envelope.id}/send`, { method: "POST", headers: auth });

SDK не потрібен: API викликається вбудованим fetch із Node 18 або будь-яким HTTP-клієнтом. За специфікацією OpenAPI також можна згенерувати типізований клієнт вашою мовою.

Веб-хоки реагуйте в реальному часі

Події конверта та одержувача, перевірювана підпис HMAC та автоматичне повідомлення про повтор.

envelope.completed
{
  "id": "cm8f2h6a10004qr9k5p2wm3xt",
  "event": "envelope.completed",
  "data": {
    "envelopeId": "cm7x2k9p40001qz8h3f7bn2ld",
    "subject": "Contrat de prestation",
    "status": "COMPLETED",
    "completedAt": "2026-09-26T08:42:13.000Z",
    "recipientCount": 1,
    "recipients": [
      { "email": "client@example.com", "name": "Jane Doe", "role": "SIGNER", "status": "SIGNED" }
    ],
    "signedDocumentUrl": "https://storage.certyneo.com/signed/...pdf?X-Amz-Expires=604800&..."
  },
  "timestamp": "2026-09-26T08:42:13.521Z"
}
  • HMAC SHA-256 підпис кожного завантаження перевіряйте автентичність на серверній стороні.
  • Автоматичний повтор у разі тимчасової помилки: 5 спроб протягом приблизно 1 год 20 хв з експоненціальною затримкою.
  • Невдалі події відображаються в панелі управління, і їх можна повторити одним кліком. Після 5 невдач поспіль ендпоінт призупиняється, і ви отримуєте сповіщення.
  • До 5 ендпоінтів на тарифі Standard, 15 на Business і 50 на Business Pro, кожен підписаний на обрані вами події.

Чому API присвячено електронній підписі?

Інтеграція електронної підписи в ваш продукт не є легкою справою. Вам потрібні гарантії юридичної відповідності (eIDAS), технічної надійності (веб-хоки, які дійсно приходять), і суверенітету даних (європейський хостинг для уникнення Облокового закону).

API створено розробниками для розробників, і він дотримується конвенцій REST: версія в URL (/api/v1), пагінація параметрами page і limit, помилки в JSON із машинозчитуваним кодом, специфікація OpenAPI для генерації клієнтів. Жодного SOAP, жодного XML, жодних сюрпризів.

Визначення відповідності eIDAS для розробників

Регламент eIDAS визначає три рівні підпису: простий (SES), удосконалений (AES) і кваліфікований (QES). API Certyneo дає змогу обрати рівень кожного конверта полем signatureLevel: SIMPLE (за замовчуванням), ADVANCED або QUALIFIED. Простого підпису досить для більшості звичайних комерційних договорів; QES потрібен, коли закон або одержувач вимагає рівнозначності власноручному підпису.

Технічно удосконалений рівень автоматично вмикає SMS-код OTP і вимагає номер телефону для кожного підписанта. Журнал аудиту отримує позначки часу за стандартом RFC 3161. QES спирається на кваліфікований сертифікат, виданий кваліфікованим надавачем довірчих послуг із ЄС. Усім керують через API.

Рекомендована архітектура інтеграції

Найпоширеніша модель інтеграції має такий напрямок:

  • Ваш бекенд завантажує PDF (POST /api/v1/documents), створює конверт-чернетку (POST /api/v1/envelopes), потім надсилає його (POST /api/v1/envelopes/:id/send).
  • Підписант отримує запрошення електронною поштою або підписує безпосередньо у вашому інтерфейсі завдяки вбудованому підписанню в iframe (POST /api/v1/envelopes/:id/embed-url, починаючи з тарифу Standard).
  • Після завершення підпису Certyneo закликає ваш веб-хоук з появою envelope.completed.
  • Ви оновлюєте базу даних і повідомляєте користувача (е-мейл, в додатку і т.д.).

Безкоштовні тестові ключі

Ключі sk_test_ доступні на всіх тарифах, включно з Безкоштовним, а тестові конверти не витрачають ваш місячний ліміт. На тарифі Безкоштовний їх можна надсилати лише на вашу власну адресу електронної пошти, і вони обмежені 20 запитами на годину; платні тарифи дають від 200 до 1 000 запитів на годину. Тестові дані видаляються через 30 днів. Перший тестовий ключ безкоштовного облікового запису до того ж відкриває місяць тарифу Standard у подарунок.

А якщо ви не хочете писати код

Все, що робить цей API, також можна керувати без написання жодного рядка з потоку: створити конверт, відправити його, реагувати на підпис, отримати запечатаний PDF та його журнал аудиту. Така ж основа, але з візуальним дизайнером замість HTTP-клієнта. Дивіться інтеграцію Power Automate та Microsoft 365.

Мігрувати з DocuSign або Yousign

Якщо у вас уже є інтеграція з DocuSign або Yousign, словник схожий: envelopes → envelopes, recipients → recipients, вебхуки статусу → webhooks. Посібник із міграції з DocuSign і Yousign на Certyneo описує всі кроки — від експорту шаблонів до перемикання вебхуків.

Ви переходите з Adobe Acrobat Sign (раніше EchoSign, потім Adobe Sign)? Відповідність однаково пряма — agreements → envelopes, participants → recipients, webhooks → webhooks. Порівняти Certyneo та Adobe Acrobat Sign →

Ціна API електронного підпису: де купити підписку?

Щоб придбати підписку на API підпису, не потрібні ні кошторис, ні замовлення на постачання: тестові ключі безкоштовні, API-ключ створюється в панелі управління, а доступ до продакшн REST API включено вже в тариф Standard за 19 €/місяць — вебхуки включено, без оплати за кожен простий підпис.

  • Standard — 19 €/місяць: 100 конвертів/місяць, API REST + вебгуки, 10 користувачів
  • Business — 39 €/місяць: 300 конвертів/місяць, групове надсилання, веб-форми
  • Business Pro — 99 €/місяць: 1 000 конвертів/місяць, API високої частоти (300 req/хв), необмежена кількість користувачів

Кваліфікований підпис (QES) оплачується поштучно під час надсилання: 9,90 € за підпис за наявності передплати, які списуються зі збереженої картки після вичерпання QES, включених у Business і Business Pro, та 14,90 € без передплати.

Для великих обсягів або при необхідності контрактного зобов'язання (SLA, виділений DPA, річна тарифікація), план Enterprise закупляється у комерційної команди. У будь-якому випадку ціни є публічними — порівняйте їх перед тим, як взяти зобов'язання.

Для поглибленого вивчення

Часті запитання — API

Який межевий прорив API?

Ліміт застосовується до кожного ключа, за хвилину, залежно від тарифу: 60 запитів на Standard, 120 на Business, 300 на Business Pro і 1 000 на Enterprise. Кожна відповідь містить заголовки X-RateLimit-Limit, X-RateLimit-Remaining і X-RateLimit-Reset; у разі перевищення API повертає 429 із заголовком Retry-After.

Скільки коштує API?

Тестові ключі (sk_test_) безкоштовні на всіх тарифах. Доступ до продакшн REST API включено вже в тариф Standard за 19 €/місяць (100 конвертів/місяць), далі Business за 39 €/місяць і Business Pro за 99 €/місяць зі зростаючими квотами; кваліфікований підпис (QES) оплачується поштучно, 9,90 € за наявності підписки. Для більших обсягів тариф Enterprise оформлюється через відділ продажів.

Чи є АЛС?

Так: 99,9 % доступності на місяць на тарифах Business і Enterprise, із кредитом на рахунок від 10 до 50 % залежно від фактичного відхилення. Стан сервісу постійно публікується на сторінці статусу Certyneo.

Яке аутентифікацію ви використовуєте?

API-ключ у заголовку Authorization (Bearer sk_live_… або sk_test_…). Ключі створюються й відкликаються в панелі управління, з негайною дією. Для стороннього застосунку, що діє від імені ваших користувачів, доступний OAuth 2.0 з потоком authorization code і PKCE.

Як перевірити підпис HMAC веб-хоку?

Кожен вебхук містить заголовок підпису X-Certyneo-Signature: HMAC SHA-256 у шістнадцятковому вигляді від сирого тіла запиту, обчислений із секретом вашого ендпоінта. Перерахуйте його на сервері за незміненим тілом і порівняйте за сталий час (crypto.timingSafeEqual у Node, hmac.compare_digest у Python).

Чи є офіційний SDK?

Поки що не опубліковано. API викликається безпосередньо через HTTP з будь-якої мови, а за специфікацією OpenAPI можна згенерувати типізований клієнт за допомогою openapi-generator або подібного інструмента. Без коду Certyneo також доступний у Make, n8n, Postman і RapidAPI.

Чи можна протестувати безкоштовно?

Так: створіть безкоштовний обліковий запис і згенеруйте ключ sk_test_ у панелі управління. Перший тестовий ключ безкоштовного облікового запису також відкриває місяць тарифу Standard у подарунок. Колекція Postman дає змогу виконати перші запити, не написавши жодного рядка коду.

Скільки коштує API EchoSign (який став Adobe Acrobat Sign)?

EchoSign купила компанія Adobe у 2011 році й перейменувала на Adobe Sign, а згодом на Adobe Acrobat Sign: API досі існує, але його ціна не публікується й визначається корпоративною комерційною пропозицією від відділу продажів Adobe, зазвичай пакетами річних транзакцій. Certyneo, навпаки, публікує свої ціни: продакшн-доступ до API включено вже в тариф Standard за 19 €/місяць, оформлюється онлайн без кошторису, а безкоштовні тестові ключі дають змогу оцінити API до оплати.

Готові до інтеграції електронної підпису?

Безкоштовні тестові ключі, специфікація OpenAPI, підписані вебхуки. Почніть просто зараз.