Reten Docs
Integración Tareas

Listar Actividades

Consulta las actividades de tipo tarea visibles para tu integración.

GET /api/integration/activities/tasks

Retorna una lista paginada de actividades de tipo tarea visibles para la clave de API de tu integración.

Autenticación: Requerida — permiso VIEW_ACTIVITIES

Header requerido

HeaderValor
x-api-keyYOUR_API_KEY

Parámetros de consulta

ParámetroTipoRequeridoDescripción
pagenumberNoNúmero de página (por defecto: 1)
per_pagenumberNoResultados por página (por defecto: 20, máximo: 100)
statusstringNoFiltrar por estado de actividad (ver Activity States). Valores filtrables: READY, RETRYING, DISPATCHED, COMPLETED, CANCELED, FAILED
result_statusstringNoFiltrar por estado del resultado (ver Activity States). Valores filtrables: COMPLETED, NOT_EXECUTED
channelstringNoFiltrar por canal (SALESMAN, CALLCENTER, etc.)
external_commerce_idstringNoFiltrar por ID externo del comercio
external_operator_idstringNoFiltrar por ID externo del operador
scheduled_fromstringNoFecha mínima de programación (ISO 8601)
scheduled_tostringNoFecha máxima de programación (ISO 8601)

Ejemplo

curl -X GET "BASE_URL/api/integration/activities/tasks?page=1&per_page=10&status=READY" \
  -H "x-api-key: YOUR_API_KEY"
const params = new URLSearchParams({
  page: "1",
  per_page: "10",
  status: "READY",
});

const response = await fetch(
  `${BASE_URL}/api/integration/activities/tasks?${params}`,
  {
    headers: {
      "x-api-key": "YOUR_API_KEY",
    },
  }
);

const data = await response.json();
import requests

response = requests.get(
    f"{BASE_URL}/api/integration/activities/tasks",
    headers={
        "x-api-key": "YOUR_API_KEY",
    },
    params={
        "page": 1,
        "per_page": 10,
        "status": "READY",
    },
)

data = response.json()

Respuesta 200 OK

El siguiente es un ejemplo ilustrativo de la forma del response. Los valores de campos como id, scheduledAt, status, lifecycleStatus, etc., varían según el estado real de cada actividad. Para el catálogo completo de posibles valores de status y lifecycleStatus, ver Activity States.

{
  "data": [
    {
      "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "activityOrigin": "ACTIVITY",
      "type": "TASK",
      "status": "READY",
      "score": 85,
      "channel": "SALESMAN",
      "scheduledAt": "2026-12-01T09:00:00.000Z",
      "occurredAt": null,
      "createdAt": "2026-04-10T14:30:00.000Z",
      "lifecycleStatus": "SCHEDULED",
      "lifecycleStatusLabel": "Programada",
      "lifecycleStatusDetail": null,
      "canForceRetryDispatch": false,
      "commerceExternalId": "COM-001",
      "commerceName": "Farmacia Central",
      "reason": {
        "code": "CHURN_RISK",
        "label": "Riesgo de fuga"
      },
      "userStatus": null,
      "commerceAssignment": {
        "commerceExternalId": "COM-001",
        "assignmentReason": "Asignación por ruta",
        "commerce": {
          "externalId": "COM-001",
          "name": "Farmacia Central"
        }
      },
      "activityDetails": {
        "type": "TASK",
        "assignedRouteCode": "RUTA-NORTE-01",
        "assignedOperatorExternalId": "OP-042",
        "assignedRoute": {
          "code": "RUTA-NORTE-01",
          "name": "Ruta Norte"
        },
        "assignedOperator": {
          "externalId": "OP-042",
          "name": "Carlos Pérez",
          "type": "SALESMAN"
        }
      },
      "activityResult": null
    }
  ],
  "meta": {
    "page": 1,
    "per_page": 10,
    "total": 47,
    "totalPages": 5
  }
}

Campos de la actividad

CampoTipoDescripción
idstringIdentificador único de la actividad
activityOrigin"ACTIVITY" | "STANDALONE"Origen de la actividad
typestring | nullTipo de actividad (ej. "TASK")
statusstring | nullEstado actual de la actividad — ver Activity States para el catálogo completo
scorenumber | nullPuntuación de prioridad de la actividad (asignada al crearla)
channelstring | nullCanal de la actividad (SALESMAN, CALLCENTER, etc.)
scheduledAtstring | nullFecha programada (ISO 8601)
occurredAtstring | nullFecha en que ocurrió la gestión (ISO 8601)
createdAtstring | nullFecha de creación (ISO 8601)
lifecycleStatusstring | nullEstado del ciclo de vida para visualización (read-only, computed) — ver Activity States
lifecycleStatusLabelstring | nullEtiqueta legible del estado del ciclo de vida
lifecycleStatusDetailstring | nullDetalle adicional del estado
canForceRetryDispatchbooleanIndica si se puede forzar un re-dispatch
commerceExternalIdstringID externo del comercio asociado
commerceNamestringNombre del comercio
reasonobject | nullRazón de la actividad (code, label)
userStatusobject | nullEstado personalizado del usuario (code, label)
commerceAssignmentobject | nullInformación de asignación del comercio
activityDetailsobject | nullDetalles específicos del tipo de actividad
activityResultobject | nullResultado de la gestión (si existe)

Campos de activityDetails (tipo TASK)

CampoTipoDescripción
type"TASK"Discriminador de tipo
assignedRouteCodestring | nullCódigo de la ruta asignada
assignedOperatorExternalIdstring | nullID externo del operador asignado
assignedRouteobject | nullRuta asignada (code, name)
assignedOperatorobject | nullOperador asignado (externalId, name, type)

Campos de activityResult

CampoTipoDescripción
idstringIdentificador del resultado
resultStatusstringEstado del resultado — ver Activity States §Related enums → ActivityResultStatusEnum
sourcestringOrigen del resultado
originstringCanal de origen
channelstring | nullCanal del resultado
occurredAtstringFecha en que ocurrió (ISO 8601)
createdAtstringFecha de creación (ISO 8601)
resultDetailsobject | nullDetalles del resultado de tipo tarea

Errores

StatusDescripción
401Clave de API faltante o inválida
403La clave no tiene el permiso VIEW_ACTIVITIES