Empieza gratis

Referencia de la API

Exportación de mensajes

Exporta los mensajes de WhatsApp, SMS, RCS y email de un periodo de hasta 31 días, con paginación por cursor y los metadatos de correlación de cada envío.

  • 4 operaciones
  • URL basehttps://api.messages.ccxcompany.co
  • AutenticaciónBearer con tu clave de API

El texto técnico de abajo viene del contrato público, openapi.json, en el idioma en que se escribió el contrato.

Exporta as mensagens de WhatsApp de um período

GET/v2/exports/whatsapp

Todas as mensagens de WhatsApp criadas entre from e to (inclusive; até 31 dias por consulta), da mais recente para a mais antiga, com a correlação dos webhooks: metadata, campaignId, contactId e o seu Customer ID (contactExternalId).

Paginação por cursor: passe o nextCursor da resposta em cursor até ele voltar null. O custo por página é constante, qualquer que seja a profundidade.

Ambiente: vem da credencial — chave de teste exporta o sandbox.

O destinatário (to) sai mascarado sem o escopo pii:full.

Permissão: messages:read.

Parámetros

CampoDóndeTipoDescripción
fromobligatorioquerystring · date-timeInício do período (inclusive), ISO 8601.
toobligatorioquerystring · date-timeFim do período (inclusive), ISO 8601.
cursoropcionalquerystringO nextCursor da página anterior. Ausente = primeira página.
limitopcionalqueryintegerLinhas por página (padrão 500, máximo 1000).

Respuestas

  • 200Default Response

    Campos y ejemplo de la respuesta
    CampoTipoDescripción
    itemsobligatorioobject[]
    items[].idobligatoriostring
    items[].channelobligatoriostringValores:whatsappsmsrcsemail
    items[].directionobligatoriostringValores:outboundinbound
    items[].toobligatoriostring
    items[].statusobligatoriostring
    items[].campaignIdopcionalstring
    items[].contactIdopcionalstring
    items[].contactExternalIdopcionalstring
    items[].metadataopcionalobjectMetadados de correlação do seu sistema (ex.: customerId, journeyId), devolvidos intactos em todo webhook desta mensagem. Até 20 chaves; chave começa por letra e usa [A-Za-z0-9_.-] (até 64); valor é texto (até 256), número ou booleano. Não envie dado pessoal aqui.
    items[].createdAtobligatoriostring
    items[].sentAtopcionalstring
    items[].deliveredAtopcionalstring
    items[].readAtopcionalstring
    items[].failedAtopcionalstring
    items[].reasonopcionalstring
    items[].segmentsopcionalinteger
    items[].deliveredViaopcionalstringValores:rcssms
    items[].subjectopcionalstring
    nextCursorobligatoriostring | null
    JSON
    {  "items": [    {      "id": "string",      "channel": "whatsapp",      "direction": "outbound",      "to": "string",      "status": "string",      "campaignId": "string",      "contactId": "string",      "contactExternalId": "string",      "metadata": {},      "createdAt": "string",      "sentAt": "string",      "deliveredAt": "string",      "readAt": "string",      "failedAt": "string",      "reason": "string",      "segments": 1,      "deliveredVia": "rcs",      "subject": "string"    }  ],  "nextCursor": "string"}
  • 400RFC 7807 problem details for BAD_REQUEST (400).

  • 401RFC 7807 problem details for UNAUTHORIZED (401).

  • 403RFC 7807 problem details for FORBIDDEN (403).

  • 422RFC 7807 problem details for VALIDATION_ERROR (422).

Las respuestas de error siguen el formato RFC 7807 (application/problem+json), con un código estable en el campo code. Ver los códigos de error

Ejemplo en curl

cURL
curl 'https://api.messages.ccxcompany.co/v2/exports/whatsapp?from=2026-10-16T12%3A00%3A00.000Z&to=2026-10-16T12%3A00%3A00.000Z' \  -H "Authorization: Bearer $CCX_API_KEY"
Solo los campos obligatorios. Cambia los valores de ejemplo por los tuyos.

Exporta as mensagens de SMS de um período

GET/v2/exports/sms

Todas as mensagens de SMS criadas entre from e to (inclusive; até 31 dias por consulta), da mais recente para a mais antiga, com a correlação dos webhooks: metadata, campaignId, contactId e o seu Customer ID (contactExternalId).

Paginação por cursor: passe o nextCursor da resposta em cursor até ele voltar null. O custo por página é constante, qualquer que seja a profundidade.

Ambiente: vem da credencial — chave de teste exporta o sandbox.

O destinatário (to) sai mascarado sem o escopo pii:full.

Permissão: sms:read.

Parámetros

CampoDóndeTipoDescripción
fromobligatorioquerystring · date-timeInício do período (inclusive), ISO 8601.
toobligatorioquerystring · date-timeFim do período (inclusive), ISO 8601.
cursoropcionalquerystringO nextCursor da página anterior. Ausente = primeira página.
limitopcionalqueryintegerLinhas por página (padrão 500, máximo 1000).

Respuestas

  • 200Default Response

    Campos y ejemplo de la respuesta
    CampoTipoDescripción
    itemsobligatorioobject[]
    items[].idobligatoriostring
    items[].channelobligatoriostringValores:whatsappsmsrcsemail
    items[].directionobligatoriostringValores:outboundinbound
    items[].toobligatoriostring
    items[].statusobligatoriostring
    items[].campaignIdopcionalstring
    items[].contactIdopcionalstring
    items[].contactExternalIdopcionalstring
    items[].metadataopcionalobjectMetadados de correlação do seu sistema (ex.: customerId, journeyId), devolvidos intactos em todo webhook desta mensagem. Até 20 chaves; chave começa por letra e usa [A-Za-z0-9_.-] (até 64); valor é texto (até 256), número ou booleano. Não envie dado pessoal aqui.
    items[].createdAtobligatoriostring
    items[].sentAtopcionalstring
    items[].deliveredAtopcionalstring
    items[].readAtopcionalstring
    items[].failedAtopcionalstring
    items[].reasonopcionalstring
    items[].segmentsopcionalinteger
    items[].deliveredViaopcionalstringValores:rcssms
    items[].subjectopcionalstring
    nextCursorobligatoriostring | null
    JSON
    {  "items": [    {      "id": "string",      "channel": "whatsapp",      "direction": "outbound",      "to": "string",      "status": "string",      "campaignId": "string",      "contactId": "string",      "contactExternalId": "string",      "metadata": {},      "createdAt": "string",      "sentAt": "string",      "deliveredAt": "string",      "readAt": "string",      "failedAt": "string",      "reason": "string",      "segments": 1,      "deliveredVia": "rcs",      "subject": "string"    }  ],  "nextCursor": "string"}
  • 400RFC 7807 problem details for BAD_REQUEST (400).

  • 401RFC 7807 problem details for UNAUTHORIZED (401).

  • 403RFC 7807 problem details for FORBIDDEN (403).

  • 422RFC 7807 problem details for VALIDATION_ERROR (422).

Las respuestas de error siguen el formato RFC 7807 (application/problem+json), con un código estable en el campo code. Ver los códigos de error

Ejemplo en curl

cURL
curl 'https://api.messages.ccxcompany.co/v2/exports/sms?from=2026-10-16T12%3A00%3A00.000Z&to=2026-10-16T12%3A00%3A00.000Z' \  -H "Authorization: Bearer $CCX_API_KEY"
Solo los campos obligatorios. Cambia los valores de ejemplo por los tuyos.

Exporta as mensagens de RCS de um período

GET/v2/exports/rcs

Todas as mensagens de RCS criadas entre from e to (inclusive; até 31 dias por consulta), da mais recente para a mais antiga, com a correlação dos webhooks: metadata, campaignId, contactId e o seu Customer ID (contactExternalId).

Paginação por cursor: passe o nextCursor da resposta em cursor até ele voltar null. O custo por página é constante, qualquer que seja a profundidade.

Ambiente: vem da credencial — chave de teste exporta o sandbox.

O destinatário (to) sai mascarado sem o escopo pii:full.

Permissão: rcs:read.

Parámetros

CampoDóndeTipoDescripción
fromobligatorioquerystring · date-timeInício do período (inclusive), ISO 8601.
toobligatorioquerystring · date-timeFim do período (inclusive), ISO 8601.
cursoropcionalquerystringO nextCursor da página anterior. Ausente = primeira página.
limitopcionalqueryintegerLinhas por página (padrão 500, máximo 1000).

Respuestas

  • 200Default Response

    Campos y ejemplo de la respuesta
    CampoTipoDescripción
    itemsobligatorioobject[]
    items[].idobligatoriostring
    items[].channelobligatoriostringValores:whatsappsmsrcsemail
    items[].directionobligatoriostringValores:outboundinbound
    items[].toobligatoriostring
    items[].statusobligatoriostring
    items[].campaignIdopcionalstring
    items[].contactIdopcionalstring
    items[].contactExternalIdopcionalstring
    items[].metadataopcionalobjectMetadados de correlação do seu sistema (ex.: customerId, journeyId), devolvidos intactos em todo webhook desta mensagem. Até 20 chaves; chave começa por letra e usa [A-Za-z0-9_.-] (até 64); valor é texto (até 256), número ou booleano. Não envie dado pessoal aqui.
    items[].createdAtobligatoriostring
    items[].sentAtopcionalstring
    items[].deliveredAtopcionalstring
    items[].readAtopcionalstring
    items[].failedAtopcionalstring
    items[].reasonopcionalstring
    items[].segmentsopcionalinteger
    items[].deliveredViaopcionalstringValores:rcssms
    items[].subjectopcionalstring
    nextCursorobligatoriostring | null
    JSON
    {  "items": [    {      "id": "string",      "channel": "whatsapp",      "direction": "outbound",      "to": "string",      "status": "string",      "campaignId": "string",      "contactId": "string",      "contactExternalId": "string",      "metadata": {},      "createdAt": "string",      "sentAt": "string",      "deliveredAt": "string",      "readAt": "string",      "failedAt": "string",      "reason": "string",      "segments": 1,      "deliveredVia": "rcs",      "subject": "string"    }  ],  "nextCursor": "string"}
  • 400RFC 7807 problem details for BAD_REQUEST (400).

  • 401RFC 7807 problem details for UNAUTHORIZED (401).

  • 403RFC 7807 problem details for FORBIDDEN (403).

  • 422RFC 7807 problem details for VALIDATION_ERROR (422).

Las respuestas de error siguen el formato RFC 7807 (application/problem+json), con un código estable en el campo code. Ver los códigos de error

Ejemplo en curl

cURL
curl 'https://api.messages.ccxcompany.co/v2/exports/rcs?from=2026-10-16T12%3A00%3A00.000Z&to=2026-10-16T12%3A00%3A00.000Z' \  -H "Authorization: Bearer $CCX_API_KEY"
Solo los campos obligatorios. Cambia los valores de ejemplo por los tuyos.

Exporta as mensagens de e-mail de um período

GET/v2/exports/email

Todas as mensagens de e-mail criadas entre from e to (inclusive; até 31 dias por consulta), da mais recente para a mais antiga, com a correlação dos webhooks: metadata, campaignId, contactId e o seu Customer ID (contactExternalId).

Paginação por cursor: passe o nextCursor da resposta em cursor até ele voltar null. O custo por página é constante, qualquer que seja a profundidade.

Ambiente: vem da credencial — chave de teste exporta o sandbox.

O destinatário (to) sai mascarado sem o escopo pii:full.

Permissão: email:read.

Parámetros

CampoDóndeTipoDescripción
fromobligatorioquerystring · date-timeInício do período (inclusive), ISO 8601.
toobligatorioquerystring · date-timeFim do período (inclusive), ISO 8601.
cursoropcionalquerystringO nextCursor da página anterior. Ausente = primeira página.
limitopcionalqueryintegerLinhas por página (padrão 500, máximo 1000).

Respuestas

  • 200Default Response

    Campos y ejemplo de la respuesta
    CampoTipoDescripción
    itemsobligatorioobject[]
    items[].idobligatoriostring
    items[].channelobligatoriostringValores:whatsappsmsrcsemail
    items[].directionobligatoriostringValores:outboundinbound
    items[].toobligatoriostring
    items[].statusobligatoriostring
    items[].campaignIdopcionalstring
    items[].contactIdopcionalstring
    items[].contactExternalIdopcionalstring
    items[].metadataopcionalobjectMetadados de correlação do seu sistema (ex.: customerId, journeyId), devolvidos intactos em todo webhook desta mensagem. Até 20 chaves; chave começa por letra e usa [A-Za-z0-9_.-] (até 64); valor é texto (até 256), número ou booleano. Não envie dado pessoal aqui.
    items[].createdAtobligatoriostring
    items[].sentAtopcionalstring
    items[].deliveredAtopcionalstring
    items[].readAtopcionalstring
    items[].failedAtopcionalstring
    items[].reasonopcionalstring
    items[].segmentsopcionalinteger
    items[].deliveredViaopcionalstringValores:rcssms
    items[].subjectopcionalstring
    nextCursorobligatoriostring | null
    JSON
    {  "items": [    {      "id": "string",      "channel": "whatsapp",      "direction": "outbound",      "to": "string",      "status": "string",      "campaignId": "string",      "contactId": "string",      "contactExternalId": "string",      "metadata": {},      "createdAt": "string",      "sentAt": "string",      "deliveredAt": "string",      "readAt": "string",      "failedAt": "string",      "reason": "string",      "segments": 1,      "deliveredVia": "rcs",      "subject": "string"    }  ],  "nextCursor": "string"}
  • 400RFC 7807 problem details for BAD_REQUEST (400).

  • 401RFC 7807 problem details for UNAUTHORIZED (401).

  • 403RFC 7807 problem details for FORBIDDEN (403).

  • 422RFC 7807 problem details for VALIDATION_ERROR (422).

Las respuestas de error siguen el formato RFC 7807 (application/problem+json), con un código estable en el campo code. Ver los códigos de error

Ejemplo en curl

cURL
curl 'https://api.messages.ccxcompany.co/v2/exports/email?from=2026-10-16T12%3A00%3A00.000Z&to=2026-10-16T12%3A00%3A00.000Z' \  -H "Authorization: Bearer $CCX_API_KEY"
Solo los campos obligatorios. Cambia los valores de ejemplo por los tuyos.

¿Atascado en una ruta? Habla con quienes mantienen la API.

Si creas la cuenta desde la web, recibes 5 US$ de crédito de prueba.