Analytics
Los endpoints de Analytics resumen la actividad de firma de tu tenant: indicadores clave, el embudo de firma, la tendencia mensual, quién frena los documentos, la actividad por miembro del equipo y los eventos más recientes. Son de solo lectura y agregan datos que ya viven en tus documentos.
Los seis endpoints exigen el scope analytics:read (o analytics:*). Una API key con solo document:* recibe 403 PERMISSION_DENIED con la extensión requiredScope: "analytics:read" — genera o edita una key con ese scope en el Dashboard antes de consultarlos.
Todas las respuestas usan camelCase en el wire e ids opacos con prefijo (usr_, evt_). Los errores siguen problem+json (RFC 9457) con un code en UPPER_SNAKE. Estas listas son colecciones acotadas (object: "list" con hasMore siempre false): NO paginan por cursor — su tamaño lo limita el propio endpoint (el embudo tiene 4 etapas, la tendencia 6 meses, etc.). Cada respuesta trae headers RateLimit-*.
Los ejemplos usan $ALLSIGN_API_KEY. Defínela una vez con tu key de sandbox: export ALLSIGN_API_KEY="allsign_test_sk_…" (en PowerShell: $env:ALLSIGN_API_KEY="allsign_test_sk_…").
KPIs
GET /analytics/kpis
Indicadores clave del periodo: total de documentos, completados, pendientes, expirados, tasa de finalización y tiempo promedio de firma. La respuesta es un objeto plano (no un sobre list).
Parámetros
-
periodstring queryVentana de tiempo:
7d,30d,90do12m. Default30d. Otro valor es un422 VALIDATION_ERROR. -
AllSign-Versionenum headerFecha del contrato contra la que quieres resolver la petición. Si la omites se sirve la versión vigente; una fecha desconocida responde 400
UNSUPPORTED_API_VERSION.Valores:
2026-07-11
Devuelve
200 Objeto plano con los KPIs del periodo.
Ver los 6 atributos de la respuesta
-
totalDocsinteger requeridoDocumentos enviados en el periodo, sin contar borradores.
-
completedinteger requeridoDocumentos con todas las firmas completas.
-
pendinginteger requeridoDocumentos aún esperando firmas.
-
expiredinteger requeridoDocumentos que vencieron sin completarse.
-
completionRatenumber requeridoPorcentaje de completados sobre los enviados (0–100).
-
avgSignTimeHoursnumber puede ser nullHoras promedio entre la creación del documento y su última firma.
nullsi aún no hay documentos completados en el periodo.
Signing funnel
GET /analytics/funnel
El embudo de firma en cuatro etapas fijas: Enviados → En progreso → Completados → Expirados. La colección siempre trae exactamente 4 elementos.
Parámetros
-
periodstring queryVentana de tiempo:
7d,30d,90do12m. Default30d. -
AllSign-Versionenum headerFecha del contrato contra la que quieres resolver la petición. Si la omites se sirve la versión vigente; una fecha desconocida responde 400
UNSUPPORTED_API_VERSION.Valores:
2026-07-11
Devuelve
200 Colección acotada (object: "list") con las 4 etapas del embudo, en orden.
Ver los 6 atributos de la respuesta
-
objectstring, siempre "list"Siempre
"list". -
dataarray de objetos requeridoLas 4 etapas del embudo, en orden.
Ver 3 atributos hijos
-
data[].labelstring requeridoNombre de la etapa (ej. "Enviados").
-
data[].countinteger requeridoDocumentos en esa etapa.
-
data[].pctnumber requeridoPorcentaje de esa etapa respecto a la primera.
-
-
hasMorebooleanSiempre
false— colección acotada, sin cursor. -
nextCursornullSiempre
null— esta colección no pagina. -
previousCursornullSiempre
null— esta colección no pagina. -
limitnullSiempre
null— sin parámetrolimiten este endpoint.
Monthly trend
GET /analytics/trend
Documentos firmados y horas promedio de firma por mes, para los últimos 6 meses (fijo, sin parámetros).
Parámetros
-
AllSign-Versionenum headerFecha del contrato contra la que quieres resolver la petición. Si la omites se sirve la versión vigente; una fecha desconocida responde 400
UNSUPPORTED_API_VERSION.Valores:
2026-07-11
Devuelve
200 Colección acotada (object: "list") con un punto por mes (hasta 6).
Ver los 6 atributos de la respuesta
-
objectstring, siempre "list"Siempre
"list". -
dataarray de objetos requeridoUn punto por mes (hasta 6).
Ver 3 atributos hijos
-
data[].monthstring requeridoAbreviatura del mes en inglés, sin año (ej. "Jan"). No es formato ISO
YYYY-MM: el mismo valor se repite para meses de distintos años. Mantiene el formato que ya exponeGET /v2/analytics/trend(contrato público en vivo) por compatibilidad. -
data[].signedinteger requeridoDocumentos firmados ese mes.
-
data[].avgHoursnumber requeridoHoras promedio de firma ese mes.
-
-
hasMorebooleanSiempre
false. -
nextCursornullSiempre
null— esta colección no pagina. -
previousCursornullSiempre
null— esta colección no pagina. -
limitnullSiempre
null— sin parámetrolimiten este endpoint.
Bottlenecks
GET /analytics/bottlenecks
Los firmantes que más documentos tienen pendientes — quién está frenando tus flujos de firma.
Parámetros
-
limitinteger queryMáximo de firmantes a devolver (1–20, default
5). -
AllSign-Versionenum headerFecha del contrato contra la que quieres resolver la petición. Si la omites se sirve la versión vigente; una fecha desconocida responde 400
UNSUPPORTED_API_VERSION.Valores:
2026-07-11
Devuelve
200 Colección acotada (object: "list"), firmantes ordenados por firmas pendientes.
Ver los 6 atributos de la respuesta
-
objectstring, siempre "list"Siempre
"list". -
dataarray de objetos requeridoFirmantes ordenados por firmas pendientes.
Ver 4 atributos hijos
-
data[].signerNamestring requeridoNombre del firmante.
-
data[].signerEmailstring puede ser nullCorreo del firmante, si se conoce.
-
data[].pendingCountinteger requeridoFirmas pendientes de esta persona.
-
data[].avgDaysnumber requeridoDías promedio que llevan pendientes.
-
-
hasMorebooleanSiempre
false— la lista la acotalimit, no un cursor. -
nextCursornullSiempre
null— esta colección no pagina. -
previousCursornullSiempre
null— esta colección no pagina. -
limitinteger requeridoEl límite aplicado a esta respuesta.
Team activity
GET /analytics/team
Actividad de envío y firma por cada miembro del tenant — una fila por miembro.
Parámetros
-
periodstring queryVentana de tiempo:
7d,30d,90do12m. Default30d. -
AllSign-Versionenum headerFecha del contrato contra la que quieres resolver la petición. Si la omites se sirve la versión vigente; una fecha desconocida responde 400
UNSUPPORTED_API_VERSION.Valores:
2026-07-11
Devuelve
200 Colección acotada (object: "list"), una fila por miembro del tenant.
Ver los 6 atributos de la respuesta
-
objectstring, siempre "list"Siempre
"list". -
dataarray de objetos requeridoUna fila por miembro del equipo.
Ver 7 atributos hijos
-
data[].userIdstring requeridoID opaco del miembro (
usr_…) — el mismo prefijo que usaGET /v3/users/me, no un UUID crudo. -
data[].namestring requeridoNombre del miembro.
-
data[].initialsstring requeridoIniciales para avatar.
-
data[].rolestring requeridoRol del miembro en el tenant.
-
data[].sentinteger requeridoDocumentos enviados por el miembro.
-
data[].signedinteger requeridoDocumentos enviados por el miembro que ya se completaron.
-
data[].ratenumber requeridoTasa de finalización del miembro.
-
-
hasMorebooleanSiempre
false— acotada por el número de asientos del tenant. -
nextCursornullSiempre
null— esta colección no pagina. -
previousCursornullSiempre
null— esta colección no pagina. -
limitnullSiempre
null— sin parámetrolimiten este endpoint.
Recent events
GET /analytics/events
El feed de actividad reciente del tenant — los últimos eventos de documento (creado, enviado, firmado, etc.).
Parámetros
-
limitinteger queryMáximo de eventos a devolver (1–50, default
8). -
AllSign-Versionenum headerFecha del contrato contra la que quieres resolver la petición. Si la omites se sirve la versión vigente; una fecha desconocida responde 400
UNSUPPORTED_API_VERSION.Valores:
2026-07-11
Devuelve
200 Colección acotada (object: "list"), eventos recientes (más nuevos primero).
Ver los 6 atributos de la respuesta
-
objectstring, siempre "list"Siempre
"list". -
dataarray de objetos requeridoEventos recientes, más nuevos primero.
Ver 6 atributos hijos
-
data[].idstring requeridoID del evento (
evt_…). -
data[].documentNamestring requeridoNombre del documento del evento.
-
data[].eventTypestring requeridoTipo de evento (token opaco, ej.
document.created). -
data[].actorNamestring puede ser nullNombre de quien originó el evento, o
nullsi fue el sistema. -
data[].actorInitialsstring requeridoIniciales del actor.
-
data[].createdAtstring (fecha-hora ISO 8601) requeridoCuándo ocurrió (ISO 8601).
-
-
hasMorebooleanSiempre
false— la lista la acotalimit. -
nextCursornullSiempre
null— esta colección no pagina. -
previousCursornullSiempre
null— esta colección no pagina. -
limitinteger requeridoEl límite aplicado a esta respuesta.