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

# Buscar Deals

> Busca deals do parceiro autenticado. Pelo menos um parametro de busca deve ser fornecido.



## OpenAPI

````yaml GET /deal
openapi: 3.1.0
info:
  title: API Morada.ai
  version: 1.0.0
  description: >-
    Boas-vindas a documentacao da API Morada.ai!


    O escopo dessa documentacao e o cadastro e ingestao de leads dentro da
    M.I.A, com cada metodo tendo sua especificidade detalhada.


    Caso haja duvidas sobre a API, entre em contato direto com nosso time de
    engenharia em team.engineering@morada.ai, ou caso seja uma duvida geral,
    entre em contato com nosso time de atendimento atraves de seu Account
    Manager, ou atraves do e-mail help@morada.ai.
  contact:
    name: Morada.ai Engineering
    email: team.engineering@morada.ai
servers:
  - url: https://mia-gateway.morada.ai
    description: Servidor de producao
security:
  - apiKey: []
tags:
  - name: Deals
    description: Operacoes relacionadas a negocios (deals)
  - name: Leads
    description: Operacoes relacionadas a ingestao de leads
  - name: Notificacoes
    description: Envio de notificacoes e mensagens template via WhatsApp
  - name: Produtos
    description: Consulta e busca de produtos cadastrados
paths:
  /deal:
    get:
      tags:
        - Deals
      summary: Buscar Deals
      description: >-
        Busca deals do parceiro autenticado. Pelo menos um parametro de busca
        deve ser fornecido.
      operationId: getDeals
      parameters:
        - name: leadPhoneNumber
          in: query
          required: false
          description: Numero de telefone do lead (opcional)
          schema:
            type: string
        - name: leadEmail
          in: query
          required: false
          description: Email do lead (opcional; precisa ser valido)
          schema:
            type: string
            format: email
        - name: dealId
          in: query
          required: false
          description: ID interno do negocio na Morada (opcional)
          schema:
            type: string
        - name: dealExternalId
          in: query
          required: false
          description: ID externo do negocio (opcional)
          schema:
            type: string
      responses:
        '200':
          description: Busca realizada com sucesso
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/DealSearchResult'
              examples:
                comResultados:
                  summary: Sucesso (com resultados)
                  value:
                    - deal:
                        id: deal-123
                        status: open
                        createdAt: '2023-01-01T00:00:00.000Z'
                        updatedAt: '2023-01-01T00:00:00.000Z'
                        ownerId: owner-123
                        ownerName: Jane Agent
                        ownerEmail: jane@company.com
                        props:
                          externalIntegrationId: ext-123
                      person:
                        id: person-123
                        name: John Doe
                        email: john@example.com
                        phoneNumber: '+1234567890'
                      property:
                        id: property-123
                        name: Downtown Apartment
                        externalId: prop-ext-123
                      agent:
                        id: 1234
                        name: Test agent
                        number: +55 11 1234-5678
                semResultados:
                  summary: Sucesso (sem resultados)
                  value: []
        '400':
          description: Requisicao invalida
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                emailInvalido:
                  summary: Email invalido
                  value:
                    error: '[{"code":"invalid_string","message":"Invalid email"}]'
                parametroNaoReconhecido:
                  summary: Parametro nao reconhecido
                  value:
                    error: >-
                      [{"code":"unrecognized_keys","message":"Unrecognized
                      key(s) in object"}]
        '401':
          description: Nao autorizado
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                apiKeyAusente:
                  summary: API key ausente
                  value:
                    error: Unauthorized - Missing API key
                apiKeyInvalida:
                  summary: API key invalida
                  value:
                    error: Unauthorized - Invalid API key
        '500':
          description: Erro interno do servidor
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error: Internal Server Error
      security:
        - apiKey: []
components:
  schemas:
    DealSearchResult:
      type: object
      properties:
        deal:
          $ref: '#/components/schemas/Deal'
        person:
          $ref: '#/components/schemas/Person'
        property:
          $ref: '#/components/schemas/Property'
        agent:
          $ref: '#/components/schemas/Agent'
    ErrorResponse:
      type: object
      properties:
        error:
          type: string
          description: Mensagem de erro
    Deal:
      type: object
      properties:
        id:
          type: string
          description: Identificador unico do deal
        status:
          type: string
          enum:
            - open
            - won
            - lost
            - closed
          description: Status atual do deal
        createdAt:
          type: string
          format: date-time
          description: Data de criacao do deal
        updatedAt:
          type: string
          format: date-time
          description: Data da ultima atualizacao do deal
        ownerId:
          type: string
          description: ID do responsavel pelo deal
        ownerName:
          type: string
          description: Nome do responsavel pelo deal
        ownerEmail:
          type: string
          format: email
          description: Email do responsavel pelo deal
        props:
          type: object
          additionalProperties: true
          description: Propriedades adicionais do deal
          properties:
            externalIntegrationId:
              type: string
              description: ID de integracao externa
    Person:
      type: object
      properties:
        id:
          type: string
          description: Identificador unico da pessoa
        name:
          type: string
          description: Nome da pessoa
        email:
          type: string
          format: email
          description: Email da pessoa
        phoneNumber:
          type: string
          description: Telefone da pessoa
    Property:
      type: object
      properties:
        id:
          type: string
          description: Identificador unico da propriedade
        name:
          type: string
          description: Nome da propriedade
        externalId:
          type: string
          description: ID externo da propriedade
    Agent:
      type: object
      properties:
        id:
          type: integer
          description: ID do agente/instancia
        name:
          type: string
          description: Nome do agente
        number:
          type: string
          description: Numero de telefone do agente
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: x-morada-api-key
      description: Chave de API do parceiro. Fornecida pelo time da Morada.ai.

````