Répondre à un client (texte libre)

POST /v1/messages/reply : répondez en texte libre, gratuitement, dans la fenêtre de service de 24h.

Répondre dans la fenêtre de 24h

POST /v1/messages/reply — scope messages:send

Envoie un message texte libre à un client qui vous a écrit dans les 24 heures précédentes (la « fenêtre de service » de Meta). C'est le canal de réponse conversationnelle — GRATUIT, aucun crédit n'est débité. Hors de cette fenêtre, Meta refuse le texte libre : il faut alors un template pré-approuvé envoyé via POST /v1/messages.

Paramètres

ParamètreTypeRequisDescription
tostringOuiDestinataire au format E.164, ex. +237699123456 — normalement le from du message.inbound reçu.
textstringOuiLe texte du message. Pas de variables ni de mise en forme template.
fromstringNonphone_number_id émetteur (voir GET /v1/numbers) — utilisez le number reçu dans le message.inbound pour répondre depuis le bon numéro. Omis = numéro par défaut du compte.
Attention — Répondre au bon numéro
Si votre compte a plusieurs numéros connectés, le champ number du message.inbound est le phone_number_id qui a REÇU le message du client — passez-le en from pour que la réponse parte du même numéro.

Requête

curl -X POST https://wa-api.geskap.com/v1/messages/reply \
  -H "Authorization: Bearer sk_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "+237699123456",
    "text": "Bonjour Jean, votre commande #8842 part demain matin."
  }'

Réponse (202)

{
  "id": "9d3e…",
  "status": "sent",
  "wa_message_id": "wamid…",
  "to": "2376****3456",
  "created_at": "2026-08-20T09:14:07Z"
}
Important — Hors fenêtre : 470 / erreur Meta
Si le client n'a pas écrit depuis plus de 24h, Meta rejette le texte libre. Créez et faites approuver un template (voir la section Templates), puis envoyez-le avec POST /v1/messages.