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

# Buscar conversa

> Busca uma conversa com todos os dados relacionados a ela: integração, setor, atendente, última mensagem, contato, tags, cards do kanban, campos personalizados, atendimento em andamento, automações ativas, mensagens agendadas e a janela de 24 horas da API oficial do WhatsApp. Informe chatInternalId ou phoneNumber. O phoneNumber é buscado por aproximação; havendo mais de uma conversa, a que tem a mensagem mais recente é retornada, então informe o integrationId sempre que o mesmo número puder existir em mais de uma integração.



## OpenAPI

````yaml GET /inbox/find-chat
openapi: 3.1.0
info:
  title: OpenAPI Multchats
  description: Multchats API
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://api.multchats.com/v2
security:
  - bearerAuth: []
paths:
  /inbox/find-chat:
    get:
      tags:
        - Inbox
      summary: Buscar conversa
      description: >-
        Busca uma conversa com todos os dados relacionados a ela: integração,
        setor, atendente, última mensagem, contato, tags, cards do kanban,
        campos personalizados, atendimento em andamento, automações ativas,
        mensagens agendadas e a janela de 24 horas da API oficial do WhatsApp.
        Informe chatInternalId ou phoneNumber. O phoneNumber é buscado por
        aproximação; havendo mais de uma conversa, a que tem a mensagem mais
        recente é retornada, então informe o integrationId sempre que o mesmo
        número puder existir em mais de uma integração.
      parameters:
        - name: chatInternalId
          in: query
          required: false
          description: >-
            ID interno da conversa (obrigatório se phoneNumber não for
            informado)
          schema:
            type: string
            pattern: ^c[a-z0-9]{24}$
        - name: phoneNumber
          in: query
          required: false
          description: >-
            Número de telefone do contato, por exemplo 5511999999999, ou o LID
            do contato, por exemplo 123456789012345@lid (obrigatório se
            chatInternalId não for informado)
          schema:
            type: string
            minLength: 8
            maxLength: 30
        - name: integrationId
          in: query
          required: false
          description: >-
            ID da integração, restringe a busca feita pelo phoneNumber. Sem ele,
            a conversa mais recente entre todas as integrações é retornada
          schema:
            type: string
            pattern: ^c[a-z0-9]{24}$
      responses:
        '200':
          description: Conversa encontrada com sucesso
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FindChatResponse'
        '400':
          description: Erro na requisição ou conversa não encontrada
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    FindChatResponse:
      type: object
      properties:
        success:
          description: Indica se a operação foi bem-sucedida
          type: boolean
        response:
          type: object
          properties:
            chat:
              $ref: '#/components/schemas/ChatDetails'
    Error:
      required:
        - success
        - message
      type: object
      properties:
        success:
          description: Indica se a operação foi bem-sucedida
          type: boolean
          default: false
        message:
          description: Mensagem de erro (quando success é false)
          type: string
          default: Erro ao enviar mensagem
    ChatDetails:
      type: object
      properties:
        id:
          description: ID interno da conversa
          type: string
        name:
          description: Nome da conversa
          type: string
        picture:
          description: URL da foto da conversa
          type: string
          nullable: true
        chatId:
          description: ID da conversa no canal, por exemplo 5511999999999@s.whatsapp.net
          type: string
        phoneNumber:
          description: >-
            Número de telefone do contato. Nulo em grupos, no Instagram e em
            contatos com LID sem número conhecido
          type: string
          nullable: true
        type:
          description: Tipo da conversa
          type: string
          enum:
            - CONTACT
            - GROUP
        status:
          description: Status da conversa
          type: string
          enum:
            - IN_SERVICE
            - IN_THE_QUEUE
            - FINALIZED
        pinned:
          description: Indica se a conversa está fixada
          type: boolean
        attendantId:
          description: ID do atendente responsável
          type: string
          nullable: true
        sectorId:
          description: ID do setor da conversa
          type: string
          nullable: true
        integrationId:
          description: ID da integração da conversa
          type: string
        contactListId:
          description: ID do contato vinculado à conversa
          type: string
          nullable: true
        lastMessageId:
          description: ID da última mensagem
          type: string
          nullable: true
        lastMessageAt:
          description: Data da última mensagem
          type: string
          format: date-time
        createdAt:
          description: Data de criação da conversa
          type: string
          format: date-time
        updatedAt:
          description: Data de atualização da conversa
          type: string
          format: date-time
        integration:
          $ref: '#/components/schemas/ChatDetailsIntegration'
        sector:
          description: Setor da conversa
          type: object
          nullable: true
          properties:
            id:
              description: ID do setor
              type: string
            name:
              description: Nome do setor
              type: string
            color:
              description: Cor do setor
              type: string
              nullable: true
        attendant:
          description: Atendente responsável pela conversa
          type: object
          nullable: true
          properties:
            id:
              description: ID do usuário
              type: string
            name:
              description: Nome do usuário
              type: string
            email:
              description: E-mail do usuário
              type: string
            image:
              description: URL da foto do usuário
              type: string
              nullable: true
        lastMessage:
          description: Última mensagem da conversa, no mesmo formato de Buscar mensagens
          type: object
          nullable: true
          allOf:
            - $ref: '#/components/schemas/ChatDetailsMessage'
        contact:
          description: >-
            Contato vinculado à conversa. Quando a conversa não tem vínculo, o
            contato é buscado pelo número de telefone
          type: object
          nullable: true
          allOf:
            - $ref: '#/components/schemas/ChatDetailsContact'
        tags:
          description: Tags da conversa
          type: array
          items:
            $ref: '#/components/schemas/ChatDetailsTag'
        kanbanBoardCards:
          description: >-
            Cards do kanban do contato que não estão arquivados, do mais recente
            para o mais antigo
          type: array
          items:
            $ref: '#/components/schemas/ChatDetailsKanbanBoardCard'
        customFields:
          description: Campos personalizados do contato com seus valores
          type: array
          items:
            $ref: '#/components/schemas/CustomField'
        currentService:
          description: Atendimento em andamento
          type: object
          nullable: true
          properties:
            id:
              description: ID do atendimento
              type: string
            userId:
              description: ID do atendente
              type: string
            status:
              description: Status do atendimento
              type: string
              enum:
                - IN_PROGRESS
            startTime:
              description: Início do atendimento
              type: string
              format: date-time
        automations:
          description: Automações em execução na conversa
          type: object
          properties:
            typebot:
              description: Fluxo do Typebot em execução
              type: object
              nullable: true
              properties:
                id:
                  description: ID da execução
                  type: string
                sessionId:
                  description: ID da sessão no Typebot
                  type: string
                  nullable: true
                createdAt:
                  description: Início da execução
                  type: string
                  format: date-time
                automation:
                  description: Gatilho de automação que iniciou o fluxo
                  type: object
                  nullable: true
                  properties:
                    id:
                      description: ID do gatilho
                      type: string
                    name:
                      description: Nome do gatilho
                      type: string
                automationTypebot:
                  description: Integração com o Typebot utilizada
                  type: object
                  properties:
                    id:
                      description: ID da integração com o Typebot
                      type: string
                    name:
                      description: Nome da integração com o Typebot
                      type: string
            systemAutomation:
              description: Automação do sistema em execução
              type: object
              nullable: true
              properties:
                id:
                  description: ID da sessão da automação
                  type: string
                status:
                  description: Status da sessão
                  type: string
                  enum:
                    - RUNNING
                    - WAITING_INPUT
                    - WAITING_TIMER
                currentNodeId:
                  description: ID do bloco atual do fluxo
                  type: string
                  nullable: true
                waitUntil:
                  description: Prazo da espera por resposta, quando configurado
                  type: string
                  format: date-time
                  nullable: true
                isTest:
                  description: Indica se é uma sessão de teste iniciada pelo editor
                  type: boolean
                createdAt:
                  description: Início da sessão
                  type: string
                  format: date-time
                systemAutomation:
                  description: Automação do sistema
                  type: object
                  properties:
                    id:
                      description: ID da automação
                      type: string
                    name:
                      description: Nome da automação
                      type: string
        scheduledMessages:
          description: Mensagens agendadas pendentes, da mais próxima para a mais distante
          type: array
          items:
            type: object
            properties:
              id:
                description: ID do agendamento
                type: string
              name:
                description: Nome do agendamento
                type: string
              schedule:
                description: Data do envio
                type: string
                format: date-time
              status:
                description: Status do agendamento
                type: string
                enum:
                  - PENDING
              createdAt:
                description: Data de criação do agendamento
                type: string
                format: date-time
        messagingWindow:
          description: >-
            Janela de atendimento de 24 horas. Preenchida apenas em integrações
            WHATSAPP_OFFICIAL
          type: object
          nullable: true
          allOf:
            - $ref: '#/components/schemas/ChatDetailsMessagingWindow'
    ChatDetailsIntegration:
      description: Integração da conversa
      type: object
      properties:
        id:
          description: ID da integração
          type: string
        name:
          description: Nome da integração
          type: string
        type:
          description: Tipo da integração
          type: string
          enum:
            - WHATSAPP_API_BAILEYS
            - WHATSAPP_API_ZAPO
            - WHATSAPP_API_WHATSMEOW
            - WHATSAPP_API_HYPERMEOW
            - WHATSAPP_API_EVOLUTION
            - WHATSAPP_OFFICIAL
            - INSTAGRAM_OFFICIAL
            - WHATSAPP_API_GUPSHUP
        chatId:
          description: ID do número ou da conta conectada
          type: string
          nullable: true
        picture:
          description: URL da foto da integração
          type: string
          nullable: true
        color:
          description: Cor da integração
          type: string
          nullable: true
        connectionStatus:
          description: Status de conexão da integração
          type: string
          enum:
            - CONNECTED
            - DISCONNECTED
            - CONNECTING
            - PREPARING
            - DELETING
            - RECREATING
        onlyApi:
          description: Indica se a integração é apenas API
          type: boolean
        groupIsContact:
          description: Indica se os grupos são tratados como contatos
          type: boolean
        sectorId:
          description: ID do setor da integração
          type: string
        createdAt:
          description: Data de criação da integração
          type: string
          format: date-time
    ChatDetailsMessage:
      type: object
      properties:
        id:
          description: ID interno da mensagem
          type: string
        type:
          description: >-
            Tipo da mensagem, por exemplo TEXT, IMAGE, AUDIO ou
            SYSTEM_INTERNAL_NOTE
          type: string
        ack:
          description: Status de entrega da mensagem
          type: integer
        content:
          description: Conteúdo da mensagem
          type: string
          nullable: true
        chatInternalId:
          description: ID interno da conversa
          type: string
        options:
          description: Dados adicionais da mensagem. mediaUrl vem como URL pública
          type: object
        direction:
          description: Direção da mensagem
          type: string
          enum:
            - SEND
            - RECEIVE
        messageId:
          description: ID da mensagem no canal
          type: string
        messageAt:
          description: Data da mensagem
          type: string
          format: date-time
        createdAt:
          description: Data de criação da mensagem
          type: string
          format: date-time
        updatedAt:
          description: Data de atualização da mensagem
          type: string
          format: date-time
    ChatDetailsContact:
      type: object
      properties:
        id:
          description: ID do contato
          type: string
        name:
          description: Nome do contato
          type: string
        phoneNumber:
          description: Número de telefone do contato
          type: string
          nullable: true
        email:
          description: E-mail do contato
          type: string
          nullable: true
        instagram:
          description: Instagram do contato
          type: string
          nullable: true
        birthDate:
          description: Data de nascimento do contato
          type: string
          format: date-time
          nullable: true
        annotation:
          description: Anotação do contato
          type: string
          nullable: true
        params:
          description: Parâmetros adicionais do contato
          type: object
          nullable: true
        createdAt:
          description: Data de criação do contato
          type: string
          format: date-time
        updatedAt:
          description: Data de atualização do contato
          type: string
          format: date-time
    ChatDetailsTag:
      type: object
      properties:
        id:
          description: ID da tag
          type: string
        name:
          description: Nome da tag
          type: string
        color:
          description: Cor da tag
          type: string
        params:
          description: Parâmetros salvos ao adicionar a tag
          type: object
          nullable: true
        addedAt:
          description: Data em que a tag foi adicionada
          type: string
          format: date-time
    ChatDetailsKanbanBoardCard:
      type: object
      properties:
        id:
          description: ID do card
          type: string
        name:
          description: Nome do card
          type: string
        content:
          description: Conteúdo do card, por exemplo value e observation
          type: object
        position:
          description: Posição do card na coluna
          type: string
          nullable: true
        kanbanBoardColumnId:
          description: ID da coluna do card
          type: string
        priority:
          description: Prioridade do card
          type: string
          nullable: true
          enum:
            - LOW
            - MEDIUM
            - HIGH
        dueDate:
          description: Data de vencimento
          type: string
          format: date-time
          nullable: true
        startedAt:
          description: Data de início
          type: string
          format: date-time
          nullable: true
        completedAt:
          description: Data de conclusão
          type: string
          format: date-time
          nullable: true
        lastMovedAt:
          description: Data da última movimentação
          type: string
          format: date-time
          nullable: true
        createdAt:
          description: Data de criação do card
          type: string
          format: date-time
        updatedAt:
          description: Data de atualização do card
          type: string
          format: date-time
        kanbanBoard:
          description: Quadro do card
          type: object
          properties:
            id:
              description: ID do quadro
              type: string
            name:
              description: Nome do quadro
              type: string
            showMonetaryValue:
              description: Indica se o quadro exibe valor monetário
              type: boolean
        kanbanBoardColumn:
          description: Coluna do card
          type: object
          properties:
            id:
              description: ID da coluna
              type: string
            name:
              description: Nome da coluna
              type: string
            color:
              description: Cor da coluna
              type: string
            position:
              description: Posição da coluna no quadro
              type: string
              nullable: true
        labels:
          description: Etiquetas do card
          type: array
          items:
            type: object
            properties:
              id:
                description: ID da etiqueta
                type: string
              name:
                description: Nome da etiqueta
                type: string
              color:
                description: Cor da etiqueta
                type: string
                nullable: true
        assignees:
          description: Responsáveis pelo card
          type: array
          items:
            type: object
            properties:
              id:
                description: ID do usuário
                type: string
              name:
                description: Nome do usuário
                type: string
              email:
                description: E-mail do usuário
                type: string
              image:
                description: URL da foto do usuário
                type: string
                nullable: true
    CustomField:
      type: object
      properties:
        id:
          description: ID do campo
          type: string
        key:
          description: Chave do campo
          type: string
        label:
          description: Nome do campo
          type: string
        fieldType:
          description: Tipo do campo
          type: string
          enum:
            - TEXT
            - NUMBER
            - DATE
            - SELECT
            - MULTI_SELECT
            - CHECKBOX
            - URL
            - EMAIL
            - PHONE
            - FILE
        optionsJson:
          description: Opções do campo (para campos do tipo SELECT ou MULTI_SELECT)
          type: object
          nullable: true
        isRequired:
          description: Indica se o campo é obrigatório
          type: boolean
        sortOrder:
          description: Ordem de exibição do campo
          type: string
        sourceType:
          description: Tipo de origem do campo
          type: string
          enum:
            - TEMPLATE_FIELD
            - EXTRA_FIELD
        value:
          description: Valor do campo (null se não preenchido)
          nullable: true
    ChatDetailsMessagingWindow:
      type: object
      properties:
        isOpen:
          description: Indica se a janela de atendimento está aberta
          type: boolean
        expiresAt:
          description: Fim da janela de atendimento, em milissegundos desde 1970
          type: integer
          nullable: true
        requiresTemplate:
          description: Indica se é necessário enviar um modelo de mensagem
          type: boolean
        canSendFreeForm:
          description: Indica se é possível enviar mensagens livres
          type: boolean
        customerServiceWindow:
          description: Janela de atendimento de 24 horas
          type: object
          properties:
            isOpen:
              description: Indica se a janela está aberta
              type: boolean
            expiresAt:
              description: Fim da janela, em milissegundos desde 1970
              type: integer
              nullable: true
        freeEntryPointWindow:
          description: Janela gratuita aberta por anúncios que direcionam para o WhatsApp
          type: object
          properties:
            isOpen:
              description: Indica se a janela está aberta
              type: boolean
            expiresAt:
              description: Fim da janela, em milissegundos desde 1970
              type: integer
              nullable: true
            isPending:
              description: Indica se a janela aguarda a primeira resposta para abrir
              type: boolean
            pendingExpiresAt:
              description: Prazo da janela pendente, em milissegundos desde 1970
              type: integer
              nullable: true
        templatesFree:
          description: Indica se os modelos de mensagem estão isentos de cobrança
          type: boolean
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````