Skip to main content
GET
/
user
/
whatsapp
/
session-status
curl -X GET "https://suasofia.online/api/user/whatsapp/session-status?sender_id=12&recipient_phone=+1234567890" \
  -H "Authorization: Bearer YOUR_API_KEY"
{
  "success": true,
  "has_conversation": true,
  "conversation_id": 1234,
  "customer_name": "João Silva",
  "last_customer_message_at": "2026-02-24T10:30:00+00:00",
  "session_status": {
    "is_open": true,
    "can_send_freeform": true,
    "requires_template": false,
    "message": "Sessão aberta (23 hr 45 min restantes). Mensagens livres ilimitadas permitidas.",
    "minutes_remaining": 1425,
    "expires_at": "2026-02-25T10:30:00+00:00"
  }
}
Este endpoint verifica se existe uma janela de mensagens ativa de 24 horas entre seu remetente WhatsApp e um destinatário específico. Use isto para determinar se você pode enviar mensagens livres ou precisa usar uma mensagem de template.

Parâmetros de Query

sender_id
integer
required
O ID do remetente WhatsApp (obtido do endpoint Obter Remetentes)
recipient_phone
string
required
O número de telefone do destinatário em formato internacional (ex: +1234567890)

Campos da Resposta

success
boolean
Se a requisição foi bem-sucedida
has_conversation
boolean
Se existe uma conversa com este destinatário
conversation_id
integer
O ID da conversa (presente apenas quando has_conversation é true)
customer_name
string
O nome do cliente se disponível (presente apenas quando has_conversation é true)
last_customer_message_at
string
Timestamp ISO 8601 da última mensagem do cliente (presente apenas quando has_conversation é true)
session_status
object

Respostas de Erro

404 Não Encontrado
curl -X GET "https://suasofia.online/api/user/whatsapp/session-status?sender_id=12&recipient_phone=+1234567890" \
  -H "Authorization: Bearer YOUR_API_KEY"
{
  "success": true,
  "has_conversation": true,
  "conversation_id": 1234,
  "customer_name": "João Silva",
  "last_customer_message_at": "2026-02-24T10:30:00+00:00",
  "session_status": {
    "is_open": true,
    "can_send_freeform": true,
    "requires_template": false,
    "message": "Sessão aberta (23 hr 45 min restantes). Mensagens livres ilimitadas permitidas.",
    "minutes_remaining": 1425,
    "expires_at": "2026-02-25T10:30:00+00:00"
  }
}

Fluxo Típico

Use este endpoint como parte de um fluxo de envio de mensagens:
  1. Verificar status da sessão antes de enviar uma mensagem
  2. Se can_send_freeform for true → use Enviar Mensagem Livre
  3. Se requires_template for true → use Enviar Mensagem de Template

Observações

  • A janela de 24 horas é baseada no timestamp da última mensagem recebida do cliente.
  • Cada nova mensagem do cliente reinicia o timer de 24 horas.
  • Este endpoint não consome nenhum saldo — é apenas uma verificação de status somente leitura.