Templates

Una plantilla es un documento reutilizable (con variables) que ya subiste a AllSign. Ningún endpoint de esta página modifica nada: sirven para descubrir qué plantillas tienes, qué variables llenar y si tus valores están completos antes de gastar un crédito. La creación de un documento a partir de una plantilla no vive aquí — se hace con POST /v3/documents usando source: "template".

Para firmar con una plantilla, usa Create document con source: "template", el templateId y el mapa templateValues. Esta página te ayuda a encontrar la plantilla, conocer sus variables y ensayar los valores.

El orden que recomendamos al integrar: Get variables para saber qué se pide, Validate values para confirmar que tu mapa está completo, y recién entonces POST /v3/documents. Validar no cuesta crédito y no crea nada, así que puedes llamarlo en cada guardado de tu formulario.

List templates

GET /templates

Lista tus plantillas con paginación por cursor y filtros por tipo de archivo, categoría y texto libre.

Parámetros

limit query Resultados por página (1–100, default 20).
startingAfter query Cursor: plantillas después de este id (tmpl_…).
endingBefore query Cursor: plantillas antes de este id (tmpl_…).
sort query Orden por fecha de creación: createdAt o -createdAt (default -createdAt).
fileType query Filtra por tipo de archivo (ej. docx, pdf).
category query Filtra por categoría.
search query Búsqueda por texto libre en el nombre (1–255 caracteres).

Ejemplo (cURL)

curl "https://api.allsign.io/v3/templates?fileType=docx&limit=20" \
  -H "Authorization: Bearer allsign_live_sk_..."

Respuestas

200 Sobre de paginación por cursor (object: "list") con objetos Template. — TemplateList

{
  "object": "list",
  "data": [
    {
      "object": "template",
      "id": "tmpl_7h6g5f4e3d2c1b0a",
      "livemode": true,
      "name": "Contrato de arrendamiento",
      "description": "Plantilla estándar de arrendamiento",
      "category": "inmobiliario",
      "tags": [
        "arrendamiento",
        "renta"
      ],
      "fileType": "docx",
      "variableCount": 6,
      "usageCount": 34,
      "currentVersion": 3,
      "lastUsedAt": "2026-07-10T12:00:00Z",
      "createdAt": "2026-05-02T09:00:00Z",
      "updatedAt": "2026-07-01T14:30:00Z"
    }
  ],
  "hasMore": true,
  "limit": 20,
  "nextCursor": "tmpl_7h6g5f4e3d2c1b0a",
  "previousCursor": null
}

Errores posibles (problem+json): 400 401 403 422 429

Retrieve template

GET /templates/{template_id}

Consulta una plantilla por su id. Un id inexistente responde 404 (no 500).

Parámetros

template_id path · requerido ID de la plantilla (tmpl_…).

Ejemplo (cURL)

curl "https://api.allsign.io/v3/templates/tmpl_7h6g5f4e3d2c1b0a" \
  -H "Authorization: Bearer allsign_live_sk_..."

Respuestas

200 El objeto Template. — Template

{
  "object": "template",
  "id": "tmpl_7h6g5f4e3d2c1b0a",
  "livemode": true,
  "name": "Contrato de arrendamiento",
  "description": "Plantilla estándar de arrendamiento",
  "category": "inmobiliario",
  "tags": [
    "arrendamiento",
    "renta"
  ],
  "fileType": "docx",
  "variableCount": 6,
  "usageCount": 34,
  "currentVersion": 3,
  "lastUsedAt": "2026-07-10T12:00:00Z",
  "createdAt": "2026-05-02T09:00:00Z",
  "updatedAt": "2026-07-01T14:30:00Z"
}

Errores posibles (problem+json): 400 401 403 404 422 429

List template variables

GET /templates/{template_id}/variables

Lista las variables de una plantilla — justo lo que necesitas para armar el mapa templateValues de Create document. Es una colección acotada (no paginada por cursor): el número de variables lo limita el propio archivo.

Parámetros

template_id path · requerido ID de la plantilla (tmpl_…).

Ejemplo (cURL)

curl "https://api.allsign.io/v3/templates/tmpl_7h6g5f4e3d2c1b0a/variables" \
  -H "Authorization: Bearer allsign_live_sk_..."

Respuestas

200 Colección acotada (object: "list", hasMore siempre false) con las variables de la plantilla. — TemplateVariableList

{
  "object": "list",
  "templateId": "tmpl_7h6g5f4e3d2c1b0a",
  "data": [
    {
      "name": "nombre_completo",
      "label": "Nombre completo",
      "type": "text",
      "required": true,
      "defaultValue": null,
      "options": null,
      "role": null
    },
    {
      "name": "monto",
      "label": "Monto",
      "type": "currency",
      "required": true,
      "defaultValue": null,
      "options": null,
      "role": null
    },
    {
      "name": "arrendador__nombre",
      "label": "Nombre del arrendador",
      "type": "text",
      "required": true,
      "defaultValue": null,
      "options": null,
      "role": "Arrendador"
    }
  ],
  "hasMore": false
}

Errores posibles (problem+json): 400 401 403 404 422 429

Validate template values

POST /templates/{template_id}/validate-values

Comprueba un mapa templateValues contra las variables de la plantilla sin crear nada y sin consumir crédito. Es el ensayo previo de Create document: te dice qué falta antes de que el documento exista. Por qué importa: si envías POST /v3/documents sin una variable requerida, la respuesta es 422 y no se crea nada — pero ya escribiste el formulario, ya pediste los datos al usuario y ya armaste el request. Validar en cada guardado te deja corregir mientras el usuario sigue en la pantalla. Siempre responde 200, incluso cuando el mapa está mal: es un diagnóstico, no un rechazo. Lo que te dice si puedes crear el documento es el campo valid. La respuesta separa tres cosas que no pesan igual: - errors — falta una variable requerida. Es lo único que pone valid en false, y es exactamente lo que Create document rechaza con 422. - warnings — el valor no cuadra con el type de la variable. Nunca bloquean. El type no se declara: se infiere del nombre, así que una variable llamada forma_de_pago se marca currency aunque contenga texto. Trátalos como una pista para revisar, no como un error. - ignored — llaves que enviaste y la plantilla no declara, casi siempre un typo (nombre_completoo). Create document las descarta en silencio, así que este es el único lugar donde te enteras.

Parámetros

template_id path · requerido ID de la plantilla (tmpl_…) contra la que se validan los valores.

Cuerpo de la petición

application/json · schema TemplateValuesValidationRequest

Respuestas

200 El diagnóstico del mapa (object: "template_values_validation"), con valid y los tres bloques. 200 no significa que el mapa esté bien — revisa valid. — TemplateValuesValidation

Errores posibles (problem+json): 400 401 403 404 422 429