Ir para o conteúdo

Listar mensagens do negócio

GET/api/v1/deals/{seq}/messages

Consulta o histórico de mensagens do contato vinculado ao negócio, respeitando a visibilidade do membro.

Exemplos

A URL usa o servidor de produção. Defina PIPEFACIL_API_KEY e as variáveis de caminho (como SEQ ou ID) com os identificadores reais. Ajuste o corpo antes de executar: requisições de escrita alteram dados do workspace.

cURL

curl --request GET \
  --url "https://pipefacil-server.matchsales.com.br/api/v1/deals/$SEQ/messages" \
  --header "Authorization: Bearer $PIPEFACIL_API_KEY"
JavaScript
const response = await fetch(`https://pipefacil-server.matchsales.com.br/api/v1/deals/${process.env.SEQ}/messages`, {
  method: "GET",
  headers: {
    Authorization: `Bearer ${process.env.PIPEFACIL_API_KEY}`,
  },
});

if (!response.ok) throw new Error(`HTTP ${response.status}: ${await response.text()}`);
const text = await response.text();
const data = text ? JSON.parse(text) : null;
Python
import os
import json
import requests

response = requests.request(
    "GET",
    f"https://pipefacil-server.matchsales.com.br/api/v1/deals/{os.environ['SEQ']}/messages",
    headers={"Authorization": f"Bearer {os.environ['PIPEFACIL_API_KEY']}"},
)
response.raise_for_status()
data = response.json() if response.content else None

Parâmetros

NomeLocalTipoObrigatórioDescrição
seqpathintegerSimSequência do negócio neste workspace.
limitqueryintegerNãoTamanho da página.
cursorquerystringNãoCursor opaco da página anterior.

Respostas

200Operação concluída.
CampoTipoDescrição
dataobject—
data.itemsarray—
data.items[].idstring—
data.items[].conversationIdstring—
data.items[].channelIdstringAceita null.
data.items[].externalIdstringAceita null.
data.items[].directionstringValores: inbound, outbound.
data.items[].senderPhonestringAceita null.
data.items[].recipientPhonestringAceita null.
data.items[].bodystring—
data.items[].previewTextstring—
data.items[].typestring—
data.items[].statusstring—
data.items[].readboolean—
data.items[].timestampstringFormato: date-time.
data.items[].statusTimestampstringFormato: date-time. Aceita null.
data.items[].errorMessagestringAceita null.
data.items[].quotedTextstringAceita null.
data.items[].quotedDirectionstringValores: inbound, outbound. Aceita null.
data.items[].quotedMessageIdstringAceita null.
data.items[].quotedTypestringAceita null.
data.items[].quotedMediaobjectAceita null.
data.items[].quotedMedia.mediaAssetIdstringAceita null.
data.items[].quotedMedia.statusstringEstado de ingestão da mídia armazenada. Aceita null.
data.items[].quotedMedia.mediaTypestring—
data.items[].quotedMedia.contentTypestringAceita null.
data.items[].quotedMedia.captionstringAceita null.
data.items[].quotedMedia.filenamestringAceita null.
data.items[].quotedMedia.sizeBytesintegerFormato: int64. Aceita null.
data.items[].quotedMedia.durationMsintegerAceita null.
data.items[].quotedMedia.widthintegerAceita null.
data.items[].quotedMedia.heightintegerAceita null.
data.items[].quotedMedia.providerMediaIdstringAceita null.
data.items[].quotedMedia.providerMediaUrlstringAceita null.
data.items[].quotedMedia.contentUrlstringURL relativa para baixar o arquivo. Nula enquanto a mídia não estiver READY. A cópia do provedor para o armazenamento é assíncrona. Aceita null.
data.items[].sentByUserIdstringAceita null.
data.items[].originstringOrigem da mensagem: api, app, automation, agent ou outra. Aceita null.
data.items[].originLabelstringAceita null.
data.items[].mediaobjectAceita null.
data.items[].media.mediaAssetIdstringAceita null.
data.items[].media.statusstringEstado de ingestão da mídia armazenada. Aceita null.
data.items[].media.mediaTypestring—
data.items[].media.contentTypestringAceita null.
data.items[].media.captionstringAceita null.
data.items[].media.filenamestringAceita null.
data.items[].media.sizeBytesintegerFormato: int64. Aceita null.
data.items[].media.durationMsintegerAceita null.
data.items[].media.widthintegerAceita null.
data.items[].media.heightintegerAceita null.
data.items[].media.providerMediaIdstringAceita null.
data.items[].media.providerMediaUrlstringAceita null.
data.items[].media.contentUrlstringURL relativa para baixar o arquivo. Nula enquanto a mídia não estiver READY. A cópia do provedor para o armazenamento é assíncrona. Aceita null.
data.items[].contentobjectDados estruturados de tipos sem corpo de texto, como anúncio de origem, localização, cartão de contato ou alvo de reação. Aceita null.
data.items[].createdAtstringFormato: date-time.
data.items[].editedAtstringFormato: date-time. Aceita null.
data.items[].deletedAtstringData da exclusão. O conteúdo pode permanecer no histórico de auditoria; a integração decide como exibi-lo. Formato: date-time. Aceita null.
data.nextCursorstringAceita null.
data.hasMoreboolean—
Esquema OpenAPI
{
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/ConversationMessage"
          }
        },
        "nextCursor": {
          "type": "string",
          "nullable": true
        },
        "hasMore": {
          "type": "boolean"
        }
      }
    }
  }
}
401Chave ausente, malformada, desconhecida, revogada ou expirada, ou membro emissor inativo.
CampoTipoDescrição
errorstring—
codestringValores: BAD_REQUEST, VALIDATION_ERROR, UNAUTHORIZED, FORBIDDEN, FEATURE_DISABLED, NOT_FOUND, CONFLICT, QUOTA_EXCEEDED, UNPROCESSABLE_ENTITY, INTERNAL_ERROR, SERVICE_UNAVAILABLE.
requestIdstring—
detailsstringAceita null.
fieldErrorsarrayAceita null.
fieldErrors[].fieldstring—
fieldErrors[].messagestring—
Esquema OpenAPI
{
  "type": "object",
  "description": "Formato padrão de erro. `details` e `fieldErrors` são omitidos quando ausentes.",
  "properties": {
    "error": {
      "type": "string"
    },
    "code": {
      "type": "string",
      "enum": [
        "BAD_REQUEST",
        "VALIDATION_ERROR",
        "UNAUTHORIZED",
        "FORBIDDEN",
        "FEATURE_DISABLED",
        "NOT_FOUND",
        "CONFLICT",
        "QUOTA_EXCEEDED",
        "UNPROCESSABLE_ENTITY",
        "INTERNAL_ERROR",
        "SERVICE_UNAVAILABLE"
      ]
    },
    "requestId": {
      "type": "string"
    },
    "details": {
      "type": "string",
      "nullable": true
    },
    "fieldErrors": {
      "type": "array",
      "nullable": true,
      "items": {
        "type": "object",
        "properties": {
          "field": {
            "type": "string"
          },
          "message": {
            "type": "string"
          }
        }
      }
    }
  },
  "required": [
    "error",
    "code",
    "requestId"
  ]
}
403Autenticado, mas sem acesso: falta de permissão (`FORBIDDEN`), recurso desligado no workspace (`FEATURE_DISABLED`) ou tentativa de acessar uma agenda não permitida.
CampoTipoDescrição
errorstring—
codestringValores: BAD_REQUEST, VALIDATION_ERROR, UNAUTHORIZED, FORBIDDEN, FEATURE_DISABLED, NOT_FOUND, CONFLICT, QUOTA_EXCEEDED, UNPROCESSABLE_ENTITY, INTERNAL_ERROR, SERVICE_UNAVAILABLE.
requestIdstring—
detailsstringAceita null.
fieldErrorsarrayAceita null.
fieldErrors[].fieldstring—
fieldErrors[].messagestring—
Esquema OpenAPI
{
  "type": "object",
  "description": "Formato padrão de erro. `details` e `fieldErrors` são omitidos quando ausentes.",
  "properties": {
    "error": {
      "type": "string"
    },
    "code": {
      "type": "string",
      "enum": [
        "BAD_REQUEST",
        "VALIDATION_ERROR",
        "UNAUTHORIZED",
        "FORBIDDEN",
        "FEATURE_DISABLED",
        "NOT_FOUND",
        "CONFLICT",
        "QUOTA_EXCEEDED",
        "UNPROCESSABLE_ENTITY",
        "INTERNAL_ERROR",
        "SERVICE_UNAVAILABLE"
      ]
    },
    "requestId": {
      "type": "string"
    },
    "details": {
      "type": "string",
      "nullable": true
    },
    "fieldErrors": {
      "type": "array",
      "nullable": true,
      "items": {
        "type": "object",
        "properties": {
          "field": {
            "type": "string"
          },
          "message": {
            "type": "string"
          }
        }
      }
    }
  },
  "required": [
    "error",
    "code",
    "requestId"
  ]
}
404Recurso não encontrado ou fora da visibilidade do membro.
CampoTipoDescrição
errorstring—
codestringValores: BAD_REQUEST, VALIDATION_ERROR, UNAUTHORIZED, FORBIDDEN, FEATURE_DISABLED, NOT_FOUND, CONFLICT, QUOTA_EXCEEDED, UNPROCESSABLE_ENTITY, INTERNAL_ERROR, SERVICE_UNAVAILABLE.
requestIdstring—
detailsstringAceita null.
fieldErrorsarrayAceita null.
fieldErrors[].fieldstring—
fieldErrors[].messagestring—
Esquema OpenAPI
{
  "type": "object",
  "description": "Formato padrão de erro. `details` e `fieldErrors` são omitidos quando ausentes.",
  "properties": {
    "error": {
      "type": "string"
    },
    "code": {
      "type": "string",
      "enum": [
        "BAD_REQUEST",
        "VALIDATION_ERROR",
        "UNAUTHORIZED",
        "FORBIDDEN",
        "FEATURE_DISABLED",
        "NOT_FOUND",
        "CONFLICT",
        "QUOTA_EXCEEDED",
        "UNPROCESSABLE_ENTITY",
        "INTERNAL_ERROR",
        "SERVICE_UNAVAILABLE"
      ]
    },
    "requestId": {
      "type": "string"
    },
    "details": {
      "type": "string",
      "nullable": true
    },
    "fieldErrors": {
      "type": "array",
      "nullable": true,
      "items": {
        "type": "object",
        "properties": {
          "field": {
            "type": "string"
          },
          "message": {
            "type": "string"
          }
        }
      }
    }
  },
  "required": [
    "error",
    "code",
    "requestId"
  ]
}
429Limite de requisições excedido por workspace ou IP.
CampoTipoDescrição
errorstring—
codestringValores: BAD_REQUEST, VALIDATION_ERROR, UNAUTHORIZED, FORBIDDEN, FEATURE_DISABLED, NOT_FOUND, CONFLICT, QUOTA_EXCEEDED, UNPROCESSABLE_ENTITY, INTERNAL_ERROR, SERVICE_UNAVAILABLE.
requestIdstring—
detailsstringAceita null.
fieldErrorsarrayAceita null.
fieldErrors[].fieldstring—
fieldErrors[].messagestring—
Esquema OpenAPI
{
  "type": "object",
  "description": "Formato padrão de erro. `details` e `fieldErrors` são omitidos quando ausentes.",
  "properties": {
    "error": {
      "type": "string"
    },
    "code": {
      "type": "string",
      "enum": [
        "BAD_REQUEST",
        "VALIDATION_ERROR",
        "UNAUTHORIZED",
        "FORBIDDEN",
        "FEATURE_DISABLED",
        "NOT_FOUND",
        "CONFLICT",
        "QUOTA_EXCEEDED",
        "UNPROCESSABLE_ENTITY",
        "INTERNAL_ERROR",
        "SERVICE_UNAVAILABLE"
      ]
    },
    "requestId": {
      "type": "string"
    },
    "details": {
      "type": "string",
      "nullable": true
    },
    "fieldErrors": {
      "type": "array",
      "nullable": true,
      "items": {
        "type": "object",
        "properties": {
          "field": {
            "type": "string"
          },
          "message": {
            "type": "string"
          }
        }
      }
    }
  },
  "required": [
    "error",
    "code",
    "requestId"
  ]
}

Precisa de ajuda?

Encontrou um problema ou ficou com uma dúvida? Fale com a equipe pelo WhatsApp.

Chamar no WhatsApp