Dokumentacja API do generowania podpisów

Twórz odręczne podpisy bezpośrednio z kodu. Proste API REST, uwierzytelnianie kluczem, formaty PNG · SVG · JPG · PDF i przejrzyste limity według planu.

REST · JSON Token Bearer Cztery formaty Limity zależne od planu

⚡ Szybki start

Trzy kroki od rejestracji do pierwszego podpisu.

1

Uzyskaj klucz

Utwórz klucz API na stronie API w swoim koncie. Pełny klucz jest pokazywany tylko raz.

2

Wyślij żądanie

Wyślij POST na /api/v1/signatures z imieniem i nazwiskiem.

3

Odbierz podpis

Odpowiedź zawiera podpis w wybranym formacie (PNG, SVG, JPG lub PDF) oraz jego hash do ponownego wygenerowania.

🔗 Bazowy adres URL

Wszystkie odpowiedzi są w formacie JSON. Przy powodzeniu: { "success": true, "data": {…}, "meta": {…} }; przy błędzie: { "success": false, "error": { "code", "message" } }.

Bazowy adres URL
https://onlinesignatures.net/api/v1

🔑 Uwierzytelnianie

Każde żądanie wymaga tokena Bearer w nagłówku Authorization. Klucze twórz i zarządzaj nimi na stronie API w koncie — pełny klucz jest pokazywany tylko raz.

cURL
curl https://onlinesignatures.net/api/v1/usage \
  -H "Authorization: Bearer sk_live_your_token"

🎨 Formaty wyjściowe

Domyślnie podpis jest zwracany jako przezroczysty PNG. Dodaj parametr format, aby otrzymać inny format — nie zużywa to dodatkowego limitu.

PNG

png

domyślny

Przezroczyste tło. Najlepsze do nakładania na dokumenty.

SVG

svg

do sieci

Podpis opakowany w SVG — łatwo skalować i osadzać w HTML.

JPG

jpg

lekki

Białe tło, najmniejszy rozmiar pliku.

PDF

pdf

dokument

Gotowy do użycia plik PDF z podpisem.

ℹ️Dostępne formaty zależą od Twojego planu — zobacz stronę Plany API. Żądanie niedostępnego formatu zwraca błąd format_not_allowed (403).
Plan Klucze Żądań / miesiąc Żądań / minutę PNG SVG JPG PDF
API Start 4 5 000 50 ✓ — — —
API Pro 5 60 000 300 ✓ ✓ ✓ —
API Business 15 250 000 5 000 ✓ ✓ ✓ ✓
API Scale 50 1 000 000 3 000 ✓ ✓ ✓ ✓

Klucze = ile kluczy API możesz utworzyć w tym planie. Żądań / miesiąc to główny limit; żądań / minutę to ochrona przed skokami.

🔍 Jakość obrazu

Domyślnie podpis jest zwracany w standardowej jakości (1×). Dodaj parametr quality, aby otrzymać większy i ostrzejszy obraz: 2× to dwa razy więcej pikseli, 4× — cztery razy więcej. Nie zużywa dodatkowego limitu.

1×

quality: 1

domyślny

Standardowy rozmiar. Dobry na ekrany i strony internetowe.

2×

quality: 2

ostrzejszy

Dwa razy więcej pikseli. Ostrzejszy w dokumentach i na ekranach o wysokiej gęstości.

4×

quality: 4

maksimum

Cztery razy więcej pikseli. Najlepszy do druku i dużych formatów.

PNG · 4×
curl -X POST https://onlinesignatures.net/api/v1/signatures \
 -H "Authorization: Bearer sk_live_..." \
 -H "Content-Type: application/json" \
 -d '{"first_name":"Signature",
      "last_name":"Generator",
      "format":"png",
      "quality":4}'
ℹ️Start obejmuje 1×; Pro, Business i Scale obejmują 1×, 2× i 4×. Żądanie jakości wyższej niż w Twoim planie zwraca błąd quality_not_allowed (403), a żądanie nie jest liczone.
ℹ️SVG jest wektorowy i pozostaje ostry w każdym rozmiarze, więc parametr quality go nie zmienia — działa dla PNG, JPG i PDF. Bardzo szeroki podpis może zostać wyrenderowany nieco poniżej 4×, aby zmieścić się w limitach rozmiaru.

Ten sam podpis w innej jakości

Aby otrzymać dokładnie ten sam podpis w innej jakości, zapisz hash z odpowiedzi i poproś o niego ponownie przez POST /api/v1/signatures/replay. Każde wywołanie to jedno żądanie.

PNG · 1× → 4×
curl -X POST https://onlinesignatures.net/api/v1/signatures/replay \
 -H "Authorization: Bearer sk_live_..." \
 -H "Content-Type: application/json" \
 -d '{"hash":"eyJpdiI6...",
      "format":"png",
      "quality":4}'
POST/api/v1/signatures

Wygeneruj nowy podpis na podstawie imienia i nazwiska.

PNG (domyślny)
curl -X POST https://onlinesignatures.net/api/v1/signatures \
 -H "Authorization: Bearer sk_live_..." \
 -H "Content-Type: application/json" \
 -d '{"first_name":"Signature",
      "last_name":"Generator"}'
PDF
curl -X POST https://onlinesignatures.net/api/v1/signatures \
 -H "Authorization: Bearer sk_live_..." \
 -H "Content-Type: application/json" \
 -d '{"first_name":"Signature",
      "last_name":"Generator",
      "format":"pdf"}'

Parametry

first_nameopcjonalnie ciąg, do 60 znaków
last_nameopcjonalnie ciąg, do 60 znaków
middle_nameopcjonalnie ciąg, do 60 znaków
formatopcjonalnie png (domyślnie), svg, jpg, pdf — w ramach Twojego planu
qualityopcjonalnie 1 (domyślnie), 2, 4 — w ramach Twojego planu
ℹ️Podaj przynajmniej jedno pole — imię lub nazwisko (jedno słowo, inicjał albo imię i nazwisko).
Sukces 201
{
  "success": true,
  "data": {
    "id": 1842,
    "hash": "eyJpdiI6...",
    "format": "pdf",
    "mime": "application/pdf",
    "signature": "data:application/pdf;
       base64,JVBER..."
  },
  "meta": { "quota": { "remaining":179 } }
}
Błąd 403
{
  "success": false,
  "error": {
    "code": "format_not_allowed",
    "message": "The pdf format is
      not available on
      your plan."
  }
}
GET/api/v1/signatures/{hash}

Wygeneruj ponownie wcześniej utworzony podpis na podstawie jego hash. Format możesz też ustawić przez ?format=.

cURL
curl "https://onlinesignatures.net/api/v1/signatures/{hash}?format=svg" \
  -H "Authorization: Bearer sk_live_your_token"
GET/api/v1/usage

Zwraca Twój plan, dostępne formaty, miesięczny limit, zużycie oraz czas resetu.

Sukces 200
{
  "success": true,
  "data": {
    "plan": "Business",
    "formats": ["png", "svg", "jpg"],
    "rate_per_minute": 1000,
    "key": { "name": "Production", "masked": "sk_live_a1b2…8f9c" },
    "quota": { "limit": 500, "used": 321, "remaining": 179 }
  }
}

⏱️ Limity i przydział

Miesięczny limit jest głównym ograniczeniem i zależy od planu (zob. Plany API). Dodatkowo limit na minutę (również według planu) chroni przed skokami. Odpowiedzi zawierają nagłówki X-Quota-Limit, X-Quota-Remaining i X-Quota-Reset do samoograniczania. Zmiana formatu nie zużywa dodatkowego limitu: jedna generacja = jedno żądanie.

⚠️ Kody błędów

401 · invalid_api_keyBrak klucza lub jest nieprawidłowy
403 · key_disabled / plan_requiredKlucz wyłączony lub plan bez API
403 · format_not_allowedFormat niedostępny w Twoim planie
403 · quality_not_allowedJakość niedostępna w Twoim planie
422 · validation_errorNieprawidłowe pola żądania (w tym nieznany format)
429 · rate_limitedPrzekroczono limit na minutę — zrób przerwę i spróbuj ponownie
429 · quota_exceededWyczerpano miesięczny limit planu
503 · render_unavailableGenerowanie chwilowo niedostępne, spróbuj później

💬 Pytania i odpowiedzi

Czy zmiana formatu zużywa dodatkowy limit?

Nie. Jedna generacja to jedno żądanie, niezależnie od formatu wyjściowego.

Jakie formaty są dostępne?

PNG, SVG, JPG i PDF. Zestaw dostępnych formatów zależy od Twojego planu.

Co się stanie, jeśli poproszę o format spoza mojego planu?

API zwraca błąd format_not_allowed (403) i nie nalicza żądania.

Do czego służy parametr quality?

Dodaj do żądania "quality": 1, 2 lub 4, aby uzyskać ostrzejszy i bardziej szczegółowy podpis. 1× to jakość standardowa; 2× i 4× są ostrzejsze. Start zawiera 1×; Pro i wyższe plany zawierają 1×, 2× i 4×. Nie zużywa dodatkowego limitu.

Jak uzyskać ten sam podpis w 1× i 4×?

Utwórz podpis raz i zapisz hash z odpowiedzi. Następnie wyślij POST /api/v1/signatures/replay z tym hash i quality 1, potem 4 — imię i zawijas pozostaną te same, zmieni się tylko ostrość.