Klient Node.js
- npm: @16it/autosignly
- Kod i README: clients/node
npm install @16it/autosignly
Wersje: wspierana linia to 1.0.*. Najnowsze wydanie każdej paczki znajdziesz wśród
tagów w repozytorium.
Node 20 lub nowszy, typy TypeScript w komplecie, zero zależności w runtime.
Przykład
import { AutosignlyClient } from "@16it/autosignly";
import { readFile } from "node:fs/promises";
const client = new AutosignlyClient(process.env.AUTOSIGNLY_API_KEY!, process.env.AUTOSIGNLY_API_SECRET!);
const documentId = await client.uploadAndSign({
pdf: await readFile("doc.pdf"),
documentName: "Dokumnet o współpracy",
});
Co obejmuje
Wszystko, co wystawia API: dane klucza, listowanie i filtrowanie dokumentów (po statusie i po tagach), odczyt pojedynczego dokumentu, wgranie PDF-a z wysyłką lub bez, załączniki, wysyłkę do podpisu, pobranie pliku, tagi, kontrahentów — a do tego weryfikację podpisu webhooka i asynchroniczny iterator przechodzący duże listy strona po stronie.
Błędy przychodzą jako typowane klasy (NotFoundError, RateLimitError, ConnectionError, …),
a odczyty są ponawiane z narastającym odstępem, więc czkawka sieci nie zamienia się w awarię
Twojego kodu.
Jak jest testowany
Repozytorium niesie dwie suity, obie odpala npm test:
- Testy jednostkowe przeciwko podstawionemu
fetch— nagłówki, budowa multiparta, ponowienia, mapowanie błędów - Testy kontraktowe, które porównują każdą nazwę pola czytaną i wysyłaną przez klienta z opublikowaną specyfikacją OpenAPI — klient rozjechany z API wywala się sam
Osobno wewnętrzna suita e2e przechodzi całą ścieżkę na żywym środowisku: zakłada firmę, wgrywa PDF, dokłada załączniki, wysyła dokument do podpisu, podpisuje jako odbiorca i sprawdza zapieczętowany dokument, który wraca.