GET/v2/lists
Listas estáticas são audiências mantidas pelo SEU sistema: quem está nelas é quem a API colocou. Cada item traz size, o número de contatos na lista agora. Para os contatos, use GET /contacts?listId=.
Permissão: contacts:read.
Respostas
As respostas de erro seguem o formato RFC 7807 (application/problem+json), com um código estável no campo code. Ver os códigos de erro
Exemplo em curl
cURL
curl 'https://api.messages.ccxcompany.co/v2/lists' \ -H "Authorization: Bearer $CCX_API_KEY"
Só os campos obrigatórios. Troque os valores de exemplo pelos seus.POST/v2/lists
O nome é único na organização (409 se repetir).
Permissão: contacts:write.
Corpo da requisiçãoapplication/json
Exemplo completo do corpo
JSON
{ "name": "string", "description": "string"}Respostas
201Default Response
Campos e exemplo da resposta
JSON
{ "id": "string", "name": "string", "description": "string", "size": 0, "createdAt": "string", "updatedAt": "string"}400RFC 7807 problem details for BAD_REQUEST (400).
401RFC 7807 problem details for UNAUTHORIZED (401).
403RFC 7807 problem details for FORBIDDEN (403).
404RFC 7807 problem details for NOT_FOUND (404).
409RFC 7807 problem details for CONFLICT (409).
422RFC 7807 problem details for VALIDATION_ERROR (422).
As respostas de erro seguem o formato RFC 7807 (application/problem+json), com um código estável no campo code. Ver os códigos de erro
Exemplo em curl
cURL
curl -X POST 'https://api.messages.ccxcompany.co/v2/lists' \ -H "Authorization: Bearer $CCX_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "name": "string" }' Só os campos obrigatórios. Troque os valores de exemplo pelos seus.POST/v2/lists/{id}/members
Entra quem veio; ninguém sai. Quem já estava não conta em added.
Identificadores aceitos, juntos ou separados: externalIds (o Customer ID do seu sistema), contactIds (cnt_…) e phones (E.164). Até 50.000 por chamada; lista maior entra em lotes de POST …/members.
Quem não existe na base não é criado: volta em notFound (amostra de até 100 por tipo) e em notFoundCount. Para criar, importe antes com POST /contacts/import.
Permissão: contacts:write.
Corpo da requisiçãoapplication/json
Exemplo completo do corpo
JSON
{ "externalIds": [ "string" ], "contactIds": [ "string" ], "phones": [ "string" ]}Respostas
200Default Response
Campos e exemplo da resposta
JSON
{ "listId": "string", "matched": 0, "added": 0, "removed": 0, "total": 0, "notFoundCount": 0, "notFound": { "externalIds": [ "string" ], "contactIds": [ "string" ], "phones": [ "string" ] }}400RFC 7807 problem details for BAD_REQUEST (400).
401RFC 7807 problem details for UNAUTHORIZED (401).
403RFC 7807 problem details for FORBIDDEN (403).
404RFC 7807 problem details for NOT_FOUND (404).
422RFC 7807 problem details for VALIDATION_ERROR (422).
As respostas de erro seguem o formato RFC 7807 (application/problem+json), com um código estável no campo code. Ver os códigos de erro
Exemplo em curl
cURL
curl -X POST 'https://api.messages.ccxcompany.co/v2/lists/<id>/members' \ -H "Authorization: Bearer $CCX_API_KEY" \ -H "Content-Type: application/json" \ -d '{}' Só os campos obrigatórios. Troque os valores de exemplo pelos seus.PUT/v2/lists/{id}/members
A lista passa a ser exatamente quem veio: entra quem não estava, sai quem não veio. Se nenhum identificador achar contato, a chamada é recusada com 422 e a lista não muda (para esvaziar, use …/members/remove).
Identificadores aceitos, juntos ou separados: externalIds (o Customer ID do seu sistema), contactIds (cnt_…) e phones (E.164). Até 50.000 por chamada; lista maior entra em lotes de POST …/members.
Quem não existe na base não é criado: volta em notFound (amostra de até 100 por tipo) e em notFoundCount. Para criar, importe antes com POST /contacts/import.
Permissão: contacts:write.
Corpo da requisiçãoapplication/json
Exemplo completo do corpo
JSON
{ "externalIds": [ "string" ], "contactIds": [ "string" ], "phones": [ "string" ]}Respostas
200Default Response
Campos e exemplo da resposta
JSON
{ "listId": "string", "matched": 0, "added": 0, "removed": 0, "total": 0, "notFoundCount": 0, "notFound": { "externalIds": [ "string" ], "contactIds": [ "string" ], "phones": [ "string" ] }}400RFC 7807 problem details for BAD_REQUEST (400).
401RFC 7807 problem details for UNAUTHORIZED (401).
403RFC 7807 problem details for FORBIDDEN (403).
404RFC 7807 problem details for NOT_FOUND (404).
422RFC 7807 problem details for VALIDATION_ERROR (422).
As respostas de erro seguem o formato RFC 7807 (application/problem+json), com um código estável no campo code. Ver os códigos de erro
Exemplo em curl
cURL
curl -X PUT 'https://api.messages.ccxcompany.co/v2/lists/<id>/members' \ -H "Authorization: Bearer $CCX_API_KEY" \ -H "Content-Type: application/json" \ -d '{}' Só os campos obrigatórios. Troque os valores de exemplo pelos seus.POST/v2/lists/{id}/members/remove
Sai quem veio. Os contatos continuam na base.
Identificadores aceitos, juntos ou separados: externalIds (o Customer ID do seu sistema), contactIds (cnt_…) e phones (E.164). Até 50.000 por chamada; lista maior entra em lotes de POST …/members.
Quem não existe na base não é criado: volta em notFound (amostra de até 100 por tipo) e em notFoundCount. Para criar, importe antes com POST /contacts/import.
Permissão: contacts:write.
Corpo da requisiçãoapplication/json
Exemplo completo do corpo
JSON
{ "externalIds": [ "string" ], "contactIds": [ "string" ], "phones": [ "string" ]}Respostas
200Default Response
Campos e exemplo da resposta
JSON
{ "listId": "string", "matched": 0, "added": 0, "removed": 0, "total": 0, "notFoundCount": 0, "notFound": { "externalIds": [ "string" ], "contactIds": [ "string" ], "phones": [ "string" ] }}400RFC 7807 problem details for BAD_REQUEST (400).
401RFC 7807 problem details for UNAUTHORIZED (401).
403RFC 7807 problem details for FORBIDDEN (403).
404RFC 7807 problem details for NOT_FOUND (404).
422RFC 7807 problem details for VALIDATION_ERROR (422).
As respostas de erro seguem o formato RFC 7807 (application/problem+json), com um código estável no campo code. Ver os códigos de erro
Exemplo em curl
cURL
curl -X POST 'https://api.messages.ccxcompany.co/v2/lists/<id>/members/remove' \ -H "Authorization: Bearer $CCX_API_KEY" \ -H "Content-Type: application/json" \ -d '{}' Só os campos obrigatórios. Troque os valores de exemplo pelos seus.