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

# List Contacts

> Retrieve a paginated list of contacts with filtering and sorting options



## OpenAPI

````yaml GET /contacts/list
openapi: 3.1.0
info:
  title: Aidan API
  description: API for managing AI agents (chatbots and voicebots) on the Outbox platform
  version: 1.0.0
servers:
  - url: https://api.callaidan.com
security: []
tags:
  - name: Webhooks
    description: >-
      **Inbound notifications.** After a voice call ends, Aidan POSTs JSON to
      the Webhook URL on your agent (Voice Agents settings or `webhook_url`).
      Your server receives these requests — they are not calls *to*
      `api.callaidan.com`. The documented path `/_reference/webhooks/...` exists
      only in this spec so the payload schema can appear in the API Reference;
      it is not callable on the production API.
paths:
  /contacts/list:
    get:
      summary: List Contacts
      description: Retrieve a paginated list of contacts with filtering and sorting options
      parameters:
        - name: X-User-Timezone
          in: header
          description: User's timezone for timestamp formatting (defaults to UTC)
          required: false
          schema:
            type: string
        - name: page
          in: query
          description: Page number for pagination. Page size is 20 items.
          required: false
          schema:
            type: integer
            default: 1
        - name: search
          in: query
          description: >-
            Search term to filter contacts by name, email, or phone
            (case-insensitive)
          required: false
          schema:
            type: string
        - name: tags
          in: query
          description: Filter contacts by tags
          required: false
          schema:
            type: array
            items:
              type: string
        - name: sort_by
          in: query
          description: Field to sort by
          required: false
          schema:
            type: string
            enum:
              - last_activity
              - created_at
              - score
              - duration
              - cost
            default: last_activity
        - name: sort_direction
          in: query
          description: Sort direction
          required: false
          schema:
            type: string
            enum:
              - asc
              - desc
            default: desc
        - name: filters
          in: query
          description: >-
            JSON-encoded advanced filter object (same shape as the bulk delete
            `filters`).
          required: false
          schema:
            type: string
        - name: pn
          in: query
          description: When `true`, only return contacts that have a phone number set.
          required: false
          schema:
            type: string
            enum:
              - 'true'
              - 'false'
            default: 'false'
        - name: limit
          in: query
          description: Page size (1-500). Defaults to 20.
          required: false
          schema:
            type: integer
            default: 20
            minimum: 1
            maximum: 500
      responses:
        '200':
          description: List of contacts retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContactList'
        '401':
          description: Unauthorized - Invalid or missing API key
      security:
        - CompanyApiKey: []
components:
  schemas:
    ContactList:
      type: object
      properties:
        results:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
                description: Contact ID
              name:
                type: string
                description: Contact name
              email:
                type: string
                description: Contact email
              phone:
                type: string
                description: Contact phone number
              tags:
                type: array
                items:
                  type: string
              last_activity:
                type: string
                format: date-time
                description: Last activity timestamp in user timezone
              created_at:
                type: string
                format: date-time
                description: Creation timestamp in user timezone
        total:
          type: integer
          description: Total count of contacts
  securitySchemes:
    CompanyApiKey:
      type: apiKey
      in: header
      name: Authorization
      description: Company API Key

````