Las plantillas se envían por nombre: POST /v1/messages con type: "template" y template: { name, language, components }. La plantilla tiene que estar aprobada en Meta; components lleva sus variables. Si es tuya y no está aprobada, te devolvemos 422 TEMPLATE_NOT_APPROVED antes de llamar a Meta; si todavía no la sincronizamos, la dejamos pasar.
curl -X POST https://api.waiaconnect.com/v1/messages \
-H "Authorization: Bearer wc_live_YOUR_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{"connectionId":"conn_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX","to":"5493511234567","type":"template","template":{"name":"hello_world","language":"es","components":[]}}'
# The template must already be APPROVED in Meta. `components` carries its variables.De dónde sale el name: de GET /v1/templates (campos name + language de cada fila), o de la sección Plantillas del panel. Es el nombre en Meta, no el título que le pusiste en pantalla, y sólo sirve si esa fila está en APPROVED.
Fuera de la ventana de 24h de servicio, Meta exige una plantilla aprobada (error 131047 si mandás texto libre).
La ventana de 24 horas: sólo podés escribir libremente dentro de las 24h del último mensaje del cliente. Después necesitás una plantilla aprobada. Ese es el motivo por el que existen.