Copiar página

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_…").

Descargar OpenAPIColección de Postman

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

  • period string query

    Ventana de tiempo: 7d, 30d, 90d o 12m. Default 30d. Otro valor es un 422 VALIDATION_ERROR.

    default "30d"

  • AllSign-Version enum header

    Fecha 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
  • totalDocs integer requerido

    Documentos enviados en el periodo, sin contar borradores.

  • completed integer requerido

    Documentos con todas las firmas completas.

  • pending integer requerido

    Documentos aún esperando firmas.

  • expired integer requerido

    Documentos que vencieron sin completarse.

  • completionRate number requerido

    Porcentaje de completados sobre los enviados (0–100).

  • avgSignTimeHours number puede ser null

    Horas promedio entre la creación del documento y su última firma. null si aún no hay documentos completados en el periodo.

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

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

  • period string query

    Ventana de tiempo: 7d, 30d, 90d o 12m. Default 30d.

    default "30d"

  • AllSign-Version enum header

    Fecha 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
  • object string, siempre "list"

    Siempre "list".

  • data array de objetos requerido

    Las 4 etapas del embudo, en orden.

    Ver 3 atributos hijos
    • data[].label string requerido

      Nombre de la etapa (ej. "Enviados").

    • data[].count integer requerido

      Documentos en esa etapa.

    • data[].pct number requerido

      Porcentaje de esa etapa respecto a la primera.

  • hasMore boolean

    Siempre false — colección acotada, sin cursor.

    default false

  • nextCursor null

    Siempre null — esta colección no pagina.

  • previousCursor null

    Siempre null — esta colección no pagina.

  • limit null

    Siempre null — sin parámetro limit en este endpoint.

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

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-Version enum header

    Fecha 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
  • object string, siempre "list"

    Siempre "list".

  • data array de objetos requerido

    Un punto por mes (hasta 6).

    Ver 3 atributos hijos
    • data[].month string requerido

      Abreviatura 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 expone GET /v2/analytics/trend (contrato público en vivo) por compatibilidad.

    • data[].signed integer requerido

      Documentos firmados ese mes.

    • data[].avgHours number requerido

      Horas promedio de firma ese mes.

  • hasMore boolean

    Siempre false.

    default false

  • nextCursor null

    Siempre null — esta colección no pagina.

  • previousCursor null

    Siempre null — esta colección no pagina.

  • limit null

    Siempre null — sin parámetro limit en este endpoint.

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

Bottlenecks

GET /analytics/bottlenecks

Los firmantes que más documentos tienen pendientes — quién está frenando tus flujos de firma.

Parámetros

  • limit integer query

    Máximo de firmantes a devolver (1–20, default 5).

    default 5 · entre 1 y 20

  • AllSign-Version enum header

    Fecha 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
  • object string, siempre "list"

    Siempre "list".

  • data array de objetos requerido

    Firmantes ordenados por firmas pendientes.

    Ver 4 atributos hijos
    • data[].signerName string requerido

      Nombre del firmante.

    • data[].signerEmail string puede ser null

      Correo del firmante, si se conoce.

    • data[].pendingCount integer requerido

      Firmas pendientes de esta persona.

    • data[].avgDays number requerido

      Días promedio que llevan pendientes.

  • hasMore boolean

    Siempre false — la lista la acota limit, no un cursor.

    default false

  • nextCursor null

    Siempre null — esta colección no pagina.

  • previousCursor null

    Siempre null — esta colección no pagina.

  • limit integer requerido

    El límite aplicado a esta respuesta.

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

Team activity

GET /analytics/team

Actividad de envío y firma por cada miembro del tenant — una fila por miembro.

Parámetros

  • period string query

    Ventana de tiempo: 7d, 30d, 90d o 12m. Default 30d.

    default "30d"

  • AllSign-Version enum header

    Fecha 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
  • object string, siempre "list"

    Siempre "list".

  • data array de objetos requerido

    Una fila por miembro del equipo.

    Ver 7 atributos hijos
    • data[].userId string requerido

      ID opaco del miembro (usr_…) — el mismo prefijo que usa GET /v3/users/me, no un UUID crudo.

    • data[].name string requerido

      Nombre del miembro.

    • data[].initials string requerido

      Iniciales para avatar.

    • data[].role string requerido

      Rol del miembro en el tenant.

    • data[].sent integer requerido

      Documentos enviados por el miembro.

    • data[].signed integer requerido

      Documentos enviados por el miembro que ya se completaron.

    • data[].rate number requerido

      Tasa de finalización del miembro.

  • hasMore boolean

    Siempre false — acotada por el número de asientos del tenant.

    default false

  • nextCursor null

    Siempre null — esta colección no pagina.

  • previousCursor null

    Siempre null — esta colección no pagina.

  • limit null

    Siempre null — sin parámetro limit en este endpoint.

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

Recent events

GET /analytics/events

El feed de actividad reciente del tenant — los últimos eventos de documento (creado, enviado, firmado, etc.).

Parámetros

  • limit integer query

    Máximo de eventos a devolver (1–50, default 8).

    default 8 · entre 1 y 50

  • AllSign-Version enum header

    Fecha 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
  • object string, siempre "list"

    Siempre "list".

  • data array de objetos requerido

    Eventos recientes, más nuevos primero.

    Ver 6 atributos hijos
    • data[].id string requerido

      ID del evento (evt_…).

    • data[].documentName string requerido

      Nombre del documento del evento.

    • data[].eventType string requerido

      Tipo de evento (token opaco, ej. document.created).

    • data[].actorName string puede ser null

      Nombre de quien originó el evento, o null si fue el sistema.

    • data[].actorInitials string requerido

      Iniciales del actor.

    • data[].createdAt string (fecha-hora ISO 8601) requerido

      Cuándo ocurrió (ISO 8601).

  • hasMore boolean

    Siempre false — la lista la acota limit.

    default false

  • nextCursor null

    Siempre null — esta colección no pagina.

  • previousCursor null

    Siempre null — esta colección no pagina.

  • limit integer requerido

    El límite aplicado a esta respuesta.

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