Janela de 24h
Confira se o contato pode receber texto livre pelo número que fará o envio.
A janela define se você pode enviar texto livre. Fora dela, use um template aprovado. Estar dentro da janela não significa que a mensagem será gratuita: a cobrança depende das regras da Meta.
/public/v1/window/{to}O fluxo (link para esta seção)
Consulte o mesmo número que fará o envio antes de escolher o formato da mensagem. A Meta confirma a permissão no momento do envio, porque a janela pode vencer entre as duas chamadas.
janela aberta -> POST /messages com "text" ou "template"
janela fechada -> POST /messages com "template" aprovadocurl https://api.patrociniotech.com/public/v1/window/5521999999999 \
-H "Authorization: Bearer SUA_CHAVE"Resposta (link para esta seção)
{
"success": true,
"data": {
"to": "5521999999999",
"open": true,
"can_send_text": true,
"seconds_left": 84141,
"expires_at": "2026-08-03T11:14:22.000Z",
"last_inbound_at": "2026-08-02T11:14:22.000Z",
"opt_in": "accepted",| Campo | O que é |
|---|---|
| open | A janela está aberta agora. |
| can_send_text | Mesmo valor de open. Indica se o envio com text está permitido. |
| seconds_left | Quantos segundos faltam para fechar. Zero quando está fechada. |
| expires_at | Quando fecha, em UTC. Nulo se o contato nunca escreveu. |
| last_inbound_at | Última vez que o contato escreveu para o número consultado. |
| opt_in | accepted, pending, declined ou nulo, conforme o cadastro no número consultado. Não define se a janela está aberta. |
| opt_in_at / opt_in_source | Data e origem do estado local. accepted com origem inbound indica que a pessoa escreveu; não comprova autorização para promoções. null significa informação não registrada. |
| opt_in_scope | phone_number: estado do cadastro no número selecionado. Uma recusa em outro número da empresa também impede marketing. |
| marketing_allowed | Ausência de bloqueio registrado para marketing. True não comprova consentimento, aprovação do template ou entrega. |
| marketing_block_reason | opted_out_or_blocked quando existe recusa de promoções na empresa ou bloqueio no número consultado; nulo sem essa exclusão. |
Janela aberta não é autorização de marketing (link para esta seção)
O contato pode ter open: true e marketing_allowed: false. A primeira informação permite responder ao atendimento com texto; a segunda impede novos templates promocionais pela API.
opt_in descreve o cadastro deste número. Uma saída de promoções registrada em outro número da mesma empresa também impede marketing: por isso, consulte marketing_allowed, não apenas opt_in.
marketing_allowed: true significa apenas que não encontramos exclusão registrada. Não converta esse resultado em accepted. A origem e o consentimento da sua lista continuam sob responsabilidade da integração.O que abre a janela (link para esta seção)
A mensagem do contato renova a janela por 24 horas a partir do horário da mensagem. Envio, entrega e leitura de mensagens da empresa não estendem o prazo.
open: false. Para iniciar a conversa, use um template aprovado e respeite a permissão do destinatário.Vários números (link para esta seção)
Se a sua conta tem mais de um número conectado, a janela é por número. Passe phone_number_id para consultar a de um específico; sem ele, consultamos o número padrão, seguindo a mesma seleção usada no envio. Não combinamos janelas de números diferentes.
O telefone em to deve conter DDI e DDD. Para cadastros locais, normalize o telefone informando o país; esta rota não deduz o país nem acrescenta 55.
curl "https://api.patrociniotech.com/public/v1/window/5521999999999?phone_number_id=1234567890" \
-H "Authorization: Bearer SUA_CHAVE"Usar a janela recebida no webhook (link para esta seção)
A consulta é opcional. O evento message.received já informa window_expires_at. Mantenha a maior validade por contato e número da empresa para escolher entre texto e template sem consultar a cada resposta.
outside_24h_window caso o prazo termine antes do envio.