VenddorDocumentação API
API atualAPI legada
Guia rápidoReferência completa
Carregando índice…
API atual/Referência completa/Newsletter e formulários

Campanhas de newsletter

Cria, edita, lista e apaga rascunhos de e-mail marketing do seller.

Uma campanha é um e-mail com assunto, corpo em HTML e versão em texto. O seller a prepara aqui como rascunho (status: R). A API do seller não envia: o envio vai para todos os assinantes da loja e fica com o administrador.

Listar campanhas

GET/api/v1/vendor/newsletter/campaignsSeller

Lista as campanhas do seller

Da mais nova para a mais antiga, sem paginação.

Cabeçalhos

Authorizationstringobrigatório
Bearer $TOKEN. Token de acesso do usuário seller. Veja Tokens.

Exemplo de requisição

bash
curl -X GET "$BASE_URL/api/v1/vendor/newsletter/campaigns" \
  -H "Authorization: Bearer $TOKEN"
200Campanhas
json
{
  "campaigns": [
    {
      "id": "7f0c2b1e-5a43-4d8e-9a67-3c1d2e4f5a60",
      "subject": "Novidades de novembro",
      "html_body": "<h1>Novidades</h1><p>Chegou a coleção nova.</p>",
      "text_body": "Novidades: chegou a coleção nova.",
      "status": "R",
      "recipients": 0,
      "sent": 0,
      "failed": 0,
      "vendor_id": "94bd7e9a-fdad-4d01-8fc2-ba9d677d8b36",
      "created_at": "2026-10-11T12:00:00Z",
      "updated_at": "2026-10-11T12:00:00Z"
    }
  ],
  "total": 1
}

Campos da resposta

campaignsarray

Campanhas do seller.

iduuid
Id da campanha.
subjectstring
Assunto do e-mail.
html_bodystring
Corpo em HTML, gravado como enviado.
text_bodystring
Versão em texto puro.
statusstring
RPSAF
Letra: R rascunho, P agendada, S enviando, A enviada, F falhou.
recipientsinteger
Destinatários do envio. 0 em rascunho.
sentinteger
Entregues ao provedor de e-mail.
failedinteger
Falhas de envio.
scheduled_atstring
Horário de envio planejado (RFC 3339). Ausente se não houver.
sent_atstring
Quando foi enviada. Ausente antes.
vendor_iduuid
Seller dono.
created_atstring
Criação (RFC 3339, UTC).
updated_atstring
Última alteração.
totalinteger
Quantidade de campanhas.

Consultar campanha

GET/api/v1/vendor/newsletter/campaigns/{id}Seller

Devolve uma campanha

Cabeçalhos

Authorizationstringobrigatório
Bearer $TOKEN. Token de acesso do usuário seller. Veja Tokens.

Parâmetros de caminho

iduuidobrigatório
Id da campanha.

Exemplo de requisição

bash
curl -X GET "$BASE_URL/api/v1/vendor/newsletter/campaigns/7f0c2b1e-5a43-4d8e-9a67-3c1d2e4f5a60" \
  -H "Authorization: Bearer $TOKEN"
200Campanha
json
{
  "id": "7f0c2b1e-5a43-4d8e-9a67-3c1d2e4f5a60",
  "subject": "Novidades de novembro",
  "html_body": "<h1>Novidades</h1><p>Chegou a coleção nova.</p>",
  "text_body": "Novidades: chegou a coleção nova.",
  "status": "R",
  "recipients": 0,
  "sent": 0,
  "failed": 0,
  "vendor_id": "94bd7e9a-fdad-4d01-8fc2-ba9d677d8b36",
  "created_at": "2026-10-11T12:00:00Z",
  "updated_at": "2026-10-11T12:00:00Z"
}

Criar rascunho

POST/api/v1/vendor/newsletter/campaignsSeller

Cria um rascunho de campanha

Cabeçalhos

Authorizationstringobrigatório
Bearer $TOKEN. Token de acesso do usuário seller. Veja Tokens.

Corpo da requisição

subjectstringobrigatório
Assunto. Não pode ser vazio.
html_bodystring
Corpo em HTML. Gravado exatamente como enviado.
text_bodystring
Versão em texto puro, para clientes de e-mail sem HTML.
scheduled_atstring
Horário planejado de envio (RFC 3339). É só um dado: nada é enviado por este campo.

Exemplo de requisição

bash
curl -X POST "$BASE_URL/api/v1/vendor/newsletter/campaigns" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "subject": "Novidades de novembro",
  "html_body": "<h1>Novidades</h1><p>Chegou a coleção nova.</p>",
  "text_body": "Novidades: chegou a coleção nova."
}'
201Rascunho criado
json
{
  "id": "7f0c2b1e-5a43-4d8e-9a67-3c1d2e4f5a60",
  "subject": "Novidades de novembro",
  "html_body": "<h1>Novidades</h1><p>Chegou a coleção nova.</p>",
  "text_body": "Novidades: chegou a coleção nova.",
  "status": "R",
  "recipients": 0,
  "sent": 0,
  "failed": 0,
  "vendor_id": "94bd7e9a-fdad-4d01-8fc2-ba9d677d8b36",
  "created_at": "2026-10-11T12:00:00Z",
  "updated_at": "2026-10-11T12:00:00Z"
}

Alterar rascunho

PUT/api/v1/vendor/newsletter/campaigns/{id}Seller

Altera um rascunho

Parcial: só os campos enviados mudam. Só funciona enquanto status for R. Sem nenhum campo, devolve a campanha como está.

Cabeçalhos

Authorizationstringobrigatório
Bearer $TOKEN. Token de acesso do usuário seller. Veja Tokens.

Parâmetros de caminho

iduuidobrigatório
Id da campanha.

Corpo da requisição

subjectstring
Novo assunto.
html_bodystring
Novo corpo HTML.
text_bodystring
Nova versão em texto.
scheduled_atstring
Novo horário planejado.

Exemplo de requisição

bash
curl -X PUT "$BASE_URL/api/v1/vendor/newsletter/campaigns/7f0c2b1e-5a43-4d8e-9a67-3c1d2e4f5a60" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "subject": "Novidades de novembro: coleção nova"
}'
200Rascunho atualizado
json
{
  "id": "7f0c2b1e-5a43-4d8e-9a67-3c1d2e4f5a60",
  "subject": "Novidades de novembro: coleção nova",
  "html_body": "<h1>Novidades</h1><p>Chegou a coleção nova.</p>",
  "text_body": "Novidades: chegou a coleção nova.",
  "status": "R",
  "recipients": 0,
  "sent": 0,
  "failed": 0,
  "vendor_id": "94bd7e9a-fdad-4d01-8fc2-ba9d677d8b36",
  "created_at": "2026-10-11T12:00:00Z",
  "updated_at": "2026-10-11T12:00:00Z"
}

Apagar campanha

DELETE/api/v1/vendor/newsletter/campaigns/{id}Seller

Apaga uma campanha

Só rascunhos (R) e campanhas que falharam (F) podem ser apagadas. Remoção definitiva.

Cabeçalhos

Authorizationstringobrigatório
Bearer $TOKEN. Token de acesso do usuário seller. Veja Tokens.

Parâmetros de caminho

iduuidobrigatório
Id da campanha.

Exemplo de requisição

bash
curl -X DELETE "$BASE_URL/api/v1/vendor/newsletter/campaigns/7f0c2b1e-5a43-4d8e-9a67-3c1d2e4f5a60" \
  -H "Authorization: Bearer $TOKEN"
200Campanha apagada
json
{
  "message": "campaign deleted"
}

Erros

StatusQuandoCorpo de exemplo
401Token ausente, inválido ou expirado.{"error":"missing authorization header"}
403O token não é de um usuário seller (por exemplo, é de administrador).{"error":"insufficient permissions"}
403O usuário do seller (equipe) não tem nenhum dos privilégios exigidos. O dono da loja nunca recebe este erro.{"error":"insufficient vendor privileges","privilege_required_any":["vendor_settings","vendor_view_settings","vendor_manage_delivery_areas","vendor_manage_whatsapp","vendor_manage_documents","vendor_manage_kyc","vendor_view_plan","vendor_manage_application","vendor_manage_vacation"]}
403O usuário autenticado não está vinculado a nenhum seller.{"error":"no vendor account associated with this user"}
400JSON inválido, subject vazio na criação, ou edição de campanha que não é rascunho.{"error":"can only edit draft campaigns (current status: A)"}
404Campanha inexistente ou de outro seller; também ao apagar uma campanha que não é rascunho nem falha.{"error":"campaign not found or cannot be deleted (only draft/failed campaigns can be deleted)"}
Cuidado com o HTML

O html_body é gravado sem limpeza. Antes de o administrador enviar, revise o conteúdo: links, imagens e o rodapé de descadastro são responsabilidade de quem escreve o e-mail.

Veja também

  • Formulários
  • Visão geral
Anterior
Newsletter e formulários
Próxima
Formulários de captação
Nesta página
  • Listar campanhas
  • Exemplo de requisição
  • Consultar campanha
  • Exemplo de requisição
  • Criar rascunho
  • Exemplo de requisição
  • Alterar rascunho
  • Exemplo de requisição
  • Apagar campanha
  • Exemplo de requisição
  • Erros
  • Veja também