Envía un mensaje al contacto (como operador)
El mensaje siempre queda guardado en la conversación; delivery.ok dice si además salió por el canal. Un 2xx con delivery.ok: false significa "quedó registrado pero no le llegó al contacto" — hay que mirarlo, no alcanza con el código HTTP.
Desde la bandeja (sesión del panel) el envío es una intervención humana: pausa el piloto automático por los minutos que tenga configurados el workspace (paused_until en la respuesta) y viaja con el tag HUMAN_AGENT en Messenger/IG.
Con API key el envío es automático: NO pausa el piloto y respeta la pausa vigente. Si el contacto está silenciado (piloto apagado, pausa vigente o chat en «Hablar con humano») devuelve 409 autopilot_silenced y no se envía ni se guarda nada.
Pide el scope channels:send, no contacts:write. Una key de test (met_test_) no puede ejercerlo: devuelve 403 test_mode_restricted.
Request
- Base URL: https://api.met.meteor.com.co/api/v1
- URL: https://api.met.meteor.com.co/api/v1/contacts/{contactId}/messages
- Auth: one of:
- bearer (a scheme the document does not define)
- HTTP bearer
Path parameters
ID del contacto del CRM.
Request body
Response
Example response
{
"data": {
"delivery": {
"error": "Contacto sin teléfono",
"ok": true
},
"message": {
"agent_id": 77,
"channel_id": 5,
"contact_id": 4821,
"content": "¿Todavía tienen disponibilidad para el viernes?",
"created_at": "2026-07-30T04:12:33.120385Z",
"id": 918273,
"message_type": "text",
"origin": "panel",
"role": "user",
"sent_by_name": "Ana Ruiz",
"sent_by_user_id": 42,
"source": "whatsapp"
},
"paused_until": "2026-07-30T04:42:33.120Z"
}
}Changes
No recorded changes to this operation across all 1 revision of this API.