Changelog
Release history for the Chaindoc Server SDK, Embed SDK, and the public REST API. Both SDKs follow semver. major versions signal breaking changes, minor versions add backwards-compatible capabilities, patches are bug fixes. Releases ship when features are ready; there's no fixed cadence.
v2.0.0-alpha. April 2026 (current alpha)
Published on the `@alpha` tag on npm while we stabilise the new modules. Adds contracts, invoices, transactions, templates, and webhook signature verification to the Server SDK. Install with `npm install @chaindoc_io/server-sdk@alpha`. Learn more in the Semantic Versioning 2.0.0.
Server SDK. new modules
- `chaindoc.contracts.*`. full contract lifecycle: create, send, cancel, terminate, add payment setup, list, get status, get activities
- `chaindoc.invoices.*`. create, list, get, send, charge, mark paid
- `chaindoc.transactions.*`. list per contract, get by UUID
- `chaindoc.templates.*`. render templates into documents, signature requests, or contracts
- `Chaindoc.webhooks.verify(rawBody, signature, timestamp, secret)`. static helper for webhook HMAC-SHA256 verification with a 5-minute replay window
- `chaindoc.getApiKeyInfo()`. returns key metadata (keyId, keyName, accessLevel, etc.)
Server SDK. other additions
- `environment` option on the constructor (`'production'` | `'staging'` | `'development'`). pick the target environment without manually constructing `baseUrl`
- `isRetryable` flag on `ChaindocError`. lets callers decide whether to retry on top of the SDK's built-in retry budget
- Retry config is now an object: `{ maxRetries, baseDelayMs, maxDelayMs }`
Server SDK. breaking changes
- Removed the KYC module. KYC now happens exclusively inside the Embed SDK flow; there is no dedicated server-side KYC method. Migration: drop any `chaindoc.kyc.*` calls from your code.
- `chaindoc.healthCheck()` no longer returns `userId`. The response shape is now `{ status, timestamp, apiKeyValid }`.
Embed SDK. v1.1.0-alpha
- New callbacks: `onClose` (fires on any teardown, including after success) and `onResendOtp` (fires when signer requests a new OTP)
- New instance methods: `isReady()` and `getSessionId()`
- New `openSignatureFlow` options: `modalWidth`, `modalHeight`, `zIndex`, `closeOnClickOutside`, `closeOnEscape`, `language` (14 locales supported)
- Breaking: `theme` is no longer a constructor option. pass it in `openSignatureFlow({ theme: 'light' | 'dark' })` instead
Public API
- New endpoints: `/api/v1/contracts/*`, `/api/v1/contracts/:id/invoices/*`, `/api/v1/transactions/*`, `/api/v1/templates/:id/*`
- Webhook envelope shape stabilised at `{ id, type, createdAt, data }`
- 11 new webhook event types added: `contract.created`, `contract.status_changed`, `contract.signed`, `contract.cancelled`, `contract.terminated`, `invoice.created`, `invoice.sent`, `invoice.paid`, `invoice.cancelled`, `transaction.created`, `transaction.updated`
v1.0.0. December 10, 2025
First stable release. Server SDK and Embed SDK shipped alongside the public REST API.
Server SDK (`@chaindoc_io/server-sdk`)
- Node.js 18+ support, zero runtime dependencies (native `fetch`, `Blob`, `FormData`)
- Full TypeScript definitions
- Automatic retries with exponential backoff + jitter on 5xx / 429 / network errors
- Modules: `media`, `documents`, `signatures`, `embedded`, `kyc` (KYC was later dropped in v2.0.0-alpha)
Embed SDK (`@chaindoc_io/embed-sdk`)
- Framework-agnostic browser SDK. works with React, Vue, Angular, Svelte, and plain JS
- Modal and inline display modes
- Light / dark theming
- Available via npm and as a UMD bundle through unpkg/jsDelivr
Public API
- REST API under `/api/v1/*` with `sk_` / `pk_` key-based authentication
- Documents, Signatures, Media upload, Embedded session creation, General (`/me`, `/health`)
- Rate limiting (10 requests / 60 seconds per key across public endpoints)
- PAdES-BES signatures embedded in the signed PDF (EU DSS pipeline, per-user ECDSA certificates)
- Blockchain anchoring of signed document hashes on SKALE Calypso
- Webhooks with HMAC-SHA256 signatures for event delivery
- Sumsub-powered KYC available through the embedded signing flow
What to do next
- Quick start. get your first signature in 10 minutes
- Installation. set up the SDKs
- API documentation. full endpoint reference
- Webhooks. event types and signature verification
- Security. key management and hardening