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

# Listar contactos para CRM

> Devuelve una lista paginada de contactos con su última conversación, filtros por etapa, inbox, status, etc.



## OpenAPI

````yaml /es/openapi.json get /v1/contacts/crm
openapi: 3.0.0
info:
  title: Nuvia API - Empresa
  description: Documentación de la API para empresas
  version: '1.0'
  contact: {}
servers:
  - url: https://api.nuvia.ai
security: []
tags:
  - name: messages
    x-group: Mensagens
  - name: contacts
    x-group: Contatos
  - name: campaigns
    x-group: Campanhas
  - name: tables
    x-group: Tabelas e Listas
  - name: agents
    x-group: Agentes
  - name: conversations
    x-group: Conversas
  - name: inboxes
    x-group: Caixas de Entrada
  - name: knowledge
    x-group: Base de Conhecimento
  - name: Webhooks
    x-group: Webhooks
  - name: campaign-enrollments
    x-group: Inscrições em Campanha
  - name: custom-fields
    x-group: Campos Customizados
paths:
  /v1/contacts/crm:
    get:
      tags:
        - contacts
      summary: Listar contactos para CRM
      description: >-
        Devuelve una lista paginada de contactos con su última conversación,
        filtros por etapa, inbox, status, etc.
      operationId: ContactController_findContactsForCrm
      parameters:
        - name: x-company-id
          in: header
          description: >-
            Identificador de la empresa objetivo. Obligatorio solo para API keys
            globales (type=global). Se ignora para API keys de empresa y
            usuarios humanos.
          required: false
          schema:
            type: string
        - name: agentId
          required: false
          in: query
          description: Filtrar por ID del agente
          schema:
            type: string
        - name: agentStepId
          required: false
          in: query
          description: Filtrar por ID de la etapa
          schema:
            type: string
        - name: inboxId
          required: false
          in: query
          description: Filtrar por ID del inbox
          schema:
            type: string
        - name: status
          required: false
          in: query
          description: Filtrar por estado (OPEN, RESOLVED)
          schema:
            type: string
            items:
              type: string
        - name: userIds
          required: false
          in: query
          description: Filtrar por IDs de los usuarios
          schema:
            type: string
            items:
              type: string
        - name: startDate
          required: false
          in: query
          description: >-
            Fecha inicial para filtrar conversaciones (last_activity_at >=
            startDate)
          schema:
            type: string
        - name: endDate
          required: false
          in: query
          description: >-
            Fecha final para filtrar conversaciones (last_activity_at <=
            endDate)
          schema:
            type: string
        - name: advancedFilters
          required: false
          in: query
          description: 'Filtros avanzados en formato JSON: [{ field, operator, value }]'
          schema:
            maxItems: 20
            type: string
            items:
              type: object
              properties:
                field:
                  type: string
                  maxLength: 200
                operator:
                  type: string
                  enum:
                    - eq
                    - neq
                    - contains
                    - not_contains
                    - starts_with
                    - ends_with
                    - gt
                    - lt
                    - is_empty
                    - is_not_empty
                value:
                  default: ''
                  type: string
                  maxLength: 1000
              required:
                - field
                - operator
        - name: page
          required: false
          in: query
          description: Número de página (empieza en 1)
          schema:
            maximum: 9007199254740991
            exclusiveMinimum: true
            default: 1
            type: string
            minimum: 0
        - name: rowsPerPage
          required: false
          in: query
          description: Cantidad de elementos por página
          schema:
            maximum: 9007199254740991
            exclusiveMinimum: true
            default: 10
            type: string
            minimum: 0
        - name: search
          required: false
          in: query
          schema:
            type: string
      responses:
        '200':
          description: Lista de contactos con última conversación devuelta correctamente
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContactsListResponseDto'
        '401':
          description: Token inválido o expirado
        '403':
          description: Sin permiso para acceder a este recurso
      security:
        - JWT-auth: []
components:
  schemas:
    ContactsListResponseDto:
      type: object
      properties:
        result:
          type: array
          items: {}
          description: Lista de contactos
        meta:
          description: Metadatos de la paginación
      required:
        - result
        - meta
  securitySchemes:
    JWT-auth:
      scheme: bearer
      bearerFormat: JWT
      type: http
      description: Token JWT de autenticação

````