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
}
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"
}
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
}
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
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