Reten Docs

List Activities

Query task-type activities visible to your integration.

GET /api/integration/activities/tasks

Returns a paginated list of task-type activities visible to your integration's API key.

Authentication: Required — permission VIEW_ACTIVITIES

Required header

HeaderValue
x-api-keyYOUR_API_KEY

Query parameters

ParameterTypeRequiredDescription
pagenumberNoPage number (default: 1)
per_pagenumberNoResults per page (default: 20, max: 100)
statusstringNoFilter by activity status (see Activity States). Filterable values: READY, RETRYING, DISPATCHED, COMPLETED, CANCELED, FAILED
result_statusstringNoFilter by result status (see Activity States). Filterable values: COMPLETED, NOT_EXECUTED
channelstringNoFilter by channel (SALESMAN, CALLCENTER, etc.)
external_commerce_idstringNoFilter by commerce external ID
external_operator_idstringNoFilter by operator external ID
scheduled_fromstringNoMinimum scheduled date (ISO 8601)
scheduled_tostringNoMaximum scheduled date (ISO 8601)

Example

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()

Response 200 OK

The following is an illustrative example of the response shape. Values for fields such as id, scheduledAt, status, lifecycleStatus, etc., vary depending on the actual state of each activity. For the complete catalog of possible status and lifecycleStatus values, see 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
  }
}

Activity fields

FieldTypeDescription
idstringUnique activity identifier
activityOrigin"ACTIVITY" | "STANDALONE"Activity origin
typestring | nullActivity type (e.g., "TASK")
statusstring | nullCurrent activity status — see Activity States for the complete catalog
scorenumber | nullActivity priority score (set at creation)
channelstring | nullActivity channel (SALESMAN, CALLCENTER, etc.)
scheduledAtstring | nullScheduled date (ISO 8601)
occurredAtstring | nullDate when the activity was handled (ISO 8601)
createdAtstring | nullCreation date (ISO 8601)
lifecycleStatusstring | nullLifecycle status for display (read-only, computed) — see Activity States
lifecycleStatusLabelstring | nullHuman-readable lifecycle status label
lifecycleStatusDetailstring | nullAdditional status detail
canForceRetryDispatchbooleanIndicates whether a re-dispatch can be forced
commerceExternalIdstringExternal ID of the associated commerce
commerceNamestringCommerce name
reasonobject | nullActivity reason (code, label)
userStatusobject | nullCustom user status (code, label)
commerceAssignmentobject | nullCommerce assignment information
activityDetailsobject | nullType-specific activity details
activityResultobject | nullActivity result (if exists)

activityDetails fields (TASK type)

FieldTypeDescription
type"TASK"Type discriminator
assignedRouteCodestring | nullAssigned route code
assignedOperatorExternalIdstring | nullAssigned operator external ID
assignedRouteobject | nullAssigned route (code, name)
assignedOperatorobject | nullAssigned operator (externalId, name, type)

activityResult fields

FieldTypeDescription
idstringResult identifier
resultStatusstringResult status — see Activity States §Related enums → ActivityResultStatusEnum
sourcestringResult source
originstringOrigin channel
channelstring | nullResult channel
occurredAtstringDate when it occurred (ISO 8601)
createdAtstringCreation date (ISO 8601)
resultDetailsobject | nullTask result details

Errors

StatusDescription
401API key missing or invalid
403The key does not have the VIEW_ACTIVITIES permission