> ## Documentation Index
> Fetch the complete documentation index at: https://docs.yampi.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# List Contacts

> Lista contactos resueltos con paginación (15 por página).

Lista los contactos que tienen al menos uno de: identificador, email o teléfono. Orden y paginación configurables.

## Autenticación

<ParamField header="api_access_token" type="string" required>
  Token de usuario (**userApiKey**).
</ParamField>

## Parámetros de ruta

<ParamField path="account_id" type="integer" required>
  ID de la cuenta.
</ParamField>

## Parámetros de consulta

<ParamField query="sort" type="string">
  Orden: `name`, `email`, `phone_number`, `last_activity_at`; prefijo `-` para descendente. Ej: `-last_activity_at`.
</ParamField>

<ParamField query="page" type="integer" default="1">
  Número de página (tamaño fijo 15).
</ParamField>

## Ejemplo de solicitud

<RequestExample>
  ```bash cURL theme={null}
  curl -X GET 'https://app.yampi.ai/api/v1/accounts/1/contacts?page=1&sort=-last_activity_at' \
    -H 'api_access_token: TU_TOKEN' \
    -H 'Content-Type: application/json'
  ```
</RequestExample>

## Respuesta exitosa

<ResponseExample>
  ```json 200 - Success theme={null}
  {
    "payload": [
      {
        "id": 1,
        "name": "Alice",
        "email": "alice@acme.inc",
        "phone_number": "+123456789",
        "thumbnail": "https://...",
        "identifier": "ext-123",
        "last_activity_at": "2026-03-13T10:00:00Z",
        "custom_attributes": {}
      }
    ],
    "meta": { "count": 42 }
  }
  ```
</ResponseExample>

<ResponseField name="payload" type="array">
  Lista de contactos (objetos con id, name, email, phone\_number, thumbnail, identifier, last\_activity\_at, custom\_attributes).
</ResponseField>

<ResponseField name="meta.count" type="integer">
  Total de registros (para paginación).
</ResponseField>

## Errores

* **400**: Bad Request — parámetros inválidos.
* **401**: No autenticado.
