SDKs

Un SDK oficial de TypeScript, @allsign/sdk, generado del mismo contrato que esta documentación. ¿No es tu lenguaje? cURL es el fallback universal y puedes generar tu propio cliente desde el spec público.

Estado: beta

@allsign/sdk está en beta y todavía no está publicado en npm. Su superficie puede cambiar antes del 1.0. Mientras tanto, cualquier ejemplo de esta documentación funciona tal cual con cURL, que no depende del SDK.

Cómo se genera

El SDK no se escribe a mano: se genera del OpenAPI (openapi.public.json), la misma fuente de verdad de la referencia y del contrato de errores. Por eso los tipos, los nombres camelCase y los códigos de error del SDK siempre coinciden con la API real — no hay drift posible.

Instalación

Cuando salga de beta, se instalará desde npm:

npm install @allsign/sdk

Aún no está publicado en npm. Si quieres probarlo antes, escríbenos para acceso temprano al paquete beta.

Uso

Instancia el cliente con tu API key y usa los recursos tipados:

import { AllSign } from "@allsign/sdk";

const allsign = new AllSign({ apiKey: process.env.ALLSIGN_API_KEY });

const doc = await allsign.documents.create({
  templateId: "tmpl_...",
  signers: [{ name: "Ana", email: "ana@empresa.mx" }],
});

await allsign.documents.send(doc.id);

Manejo de errores

Las respuestas no-2xx se lanzan como AllSignError, con el mismo code estable del problem+json y el requestId para correlacionar. Programa contra err.code, nunca contra el texto del mensaje.

import { AllSign, AllSignError } from "@allsign/sdk";

try {
  await allsign.documents.retrieve("doc_inexistente");
} catch (err) {
  if (err instanceof AllSignError && err.code === "DOCUMENT_NOT_FOUND") {
    // err.code calca el problem+json; err.requestId es tu llave para reportar
    console.error(err.status, err.code, err.requestId);
  }
}

cURL: el fallback universal

No necesitas ningún SDK para usar la API. Es HTTP + JSON: cualquier lenguaje con un cliente HTTP funciona, y cada ejemplo de esta documentación se traduce directo a cURL.

curl "https://api.allsign.io/v3/documents" \
  -H "Authorization: Bearer $ALLSIGN_API_KEY" \
  -H "AllSign-Version: 2026-07-11" \
  -H "Idempotency-Key: 3f1a9c7e-2b6d-4a51-9f0c-8d2e1b4a6c90" \
  -H "Content-Type: application/json" \
  -d '{ "source": "template", "templateId": "tmpl_...", "signers": [{ "name": "Ana", "email": "ana@empresa.mx" }] }'

Genera tu propio cliente

El spec público está publicado y versionado. Con él generas un cliente tipado en tu lenguaje (Python, Go, Java, C#…) usando openapi-generator u otro generador:

# 1. El spec público, versionado y siempre al día:
curl https://developers.allsign.io/openapi.public.json -o openapi.json

# 2. Genera un cliente en tu lenguaje con openapi-generator:
npx @openapitools/openapi-generator-cli generate \
  -i openapi.json -g python -o ./allsign-client

El mismo spec alimenta nuestro SDK de TS — tu cliente generado sigue exactamente el mismo contrato.