/v1/campaignsCriar campanha
Cria uma campanha como rascunho, dispara na hora ou agenda o envio. O título do conteúdo também vira o nome da campanha no painel.
Com action: "send" a campanha entra na fila de envio na mesma hora. Com action: "schedule" ela fica queued até scheduled_at; o agendador confere as campanhas vencidas a cada minuto.
Sem segment_id, o público é todo assinante com dispositivo ativo. Quem desativou a category informada fica de fora. A category precisa estar cadastrada no site; uma chave desconhecida recebe 422.
scheduled_at sem fuso é lido no fuso do site (padrão America/Sao_Paulo).
Send request
Use the documented inputs to call this endpoint directly.
Parameters
Values are applied to the request and the example on the right.
Valor único por campanha, até 255 caracteres. Repetir a chamada com a mesma chave e o mesmo corpo em até 24 horas devolve a resposta original (com Idempotent-Replayed: true) em vez de criar outra campanha. A mesma chave com outro corpo recebe 422.
Request body
application/jsonrequireddraft salva como rascunho, send envia agora e schedule agenda para scheduled_at.
Values: "draft" · "send" · "schedule"
ID de um segmento deste site. Sem ele, a campanha vai para todos os assinantes ativos.
Chave de uma categoria cadastrada no site, até 255 caracteres. Assinantes que desativaram essa categoria não recebem. Uma chave que não existe no site recebe 422.
Data e hora do envio. Obrigatório com action: "schedule". Com fuso (-03:00 ou Z), vale o fuso informado; sem fuso, o horário é lido no fuso do site (padrão America/Sao_Paulo).
Entrega no mesmo horário de relógio de scheduled_at no fuso de cada assinante (estimado pelo país).
Dá prioridade à campanha na fila de envio. Use para notícia urgente.
Repete a campanha um dia ou uma semana depois de cada envio.
Values: "none" · "daily" · "weekly"
Ativa o teste A/B. Exige variants com pelo menos duas variantes.
Fração do público, entre 0 e 1, que recebe as variantes primeiro. Duas horas depois, a variante com mais cliques vai para o restante. Com 0 ou 1 não há segunda fase.
Variantes do teste A/B, no mínimo duas. Obrigatório quando ab_test é true.
Responses
Campanha criada.
{
"id": 1287,
"status": "queued",
"type": "scheduled"
}ID da campanha.
draft para rascunho; queued para envio imediato ou agendado.
Values: "draft" · "queued"
Values: "instant" · "scheduled"
Chave ausente, inválida ou revogada.
{
"message": "Credencial ausente ou inválida."
}Descrição do erro, em português. Quando a causa não tem mensagem própria, vem a mensagem padrão do código HTTP. Trate pelo código, não pelo texto.
Algum campo não passou na validação. errors traz a mensagem de cada campo.
{
"message": "O campo content.title é obrigatório.",
"errors": {
"content.title": [
"O campo content.title é obrigatório."
]
}
}Primeira mensagem de erro.
Mensagens por campo. A chave é o caminho do campo com pontos, como content.title ou definition.groups.0.rules.1.op.
Limite de requisições excedido. Espere os segundos indicados em Retry-After.
{
"message": "Muitas requisições. Tente novamente em instantes."
}Descrição do erro, em português. Quando a causa não tem mensagem própria, vem a mensagem padrão do código HTTP. Trate pelo código, não pelo texto.
Powered by heyo