Enviar mensaje de WhatsApp
POST
https://api.bydomu.com/v1/conversations/{contactId}/messagesEsta referência é gerada a partir do código da API, por isso as descrições estão em espanhol. Nomes, parâmetros e exemplos são iguais em qualquer idioma.
Envía un mensaje al contacto respetando la ventana de servicio de 24 h de Meta.
- Ventana abierta: manda
bodyy se entrega como texto libre (la respuesta es el mensaje guardado). - Ventana cerrada: manda
templateId+variablescon una plantilla APROBADA (la respuesta traewaMessageId,renderedBodyyusage). - Ninguna de las dos es posible (opt-out, sin plantilla, sin ventana):
409 CONFLICTcon el motivo enerror.message, el modo enerror.reason(FREE_FORM,TEMPLATE_ONLY,HUMAN_AGENT_ONLY,BLOCKED) y, si falta la plantilla,error.windowExpiresAt.
La API nunca envía como human_agent: esa vía es de una persona real en el buzón. Si la organización no tiene un número de WhatsApp activo, responde 404.
Permissão
messages:writeChaves
Só secreta (de um servidor)
Cabeçalhos
X-API-KeystringobrigatórioSua chave secreta.
Idempotency-KeystringClave única de la operación (8-128 caracteres de
[a-zA-Z0-9._:-]). Un reintento con la misma clave y el mismo cuerpo devuelve la respuesta original sin repetir la operación. Vive 24 horas. · 8–128 charsParâmetros de rota
contactIdstringobrigatórioID del contacto
Corpo (JSON)
bodystringTexto libre. Solo con la ventana de 24 h abierta. · 1–4096 chars
templateIdstringPlantilla aprobada, para la ventana cerrada.
variablesobjectValores de las variables de la plantilla. · default={}
Respostas
201Mensaje enviado
400Datos inválidos: el cuerpo o la query no cumplen el esquema, o `Idempotency-Key` está mal formada.
401
UNAUTHORIZED · Clave faltante, inválida, desactivada o vencida.402
PAYMENT_REQUIRED · Cuenta en modo solo lectura: se rechaza toda mutación.403
FORBIDDEN · La clave no puede usar esta operación: falta el scope, es una secreta en el navegador, el nivel de la cuenta no la permite, está suspendida o se alcanzó un tope del plan.404
NOT_FOUND · El recurso no existe en la organización.409
DUPLICATE · Choca con un dato existente o con el estado actual, o la `Idempotency-Key` ya se usó con otro cuerpo o sigue en curso.429
RATE_LIMITED · Límite de peticiones excedido: el de la clave (`RATE_LIMITED`), el de escrituras de la organización (`TENANT_RATE_LIMITED`) o bloqueo temporal de la IP por claves inválidas.500
INTERNAL_ERROR · Error interno del servidor.502
WHATSAPP_ERROR · Falló un servicio externo (Meta / WhatsApp).