Crear configuración de plantilla
Crea una nueva configuración de plantilla, permitiendo definir el nombre, el tipo, el contenido, los países de envío y la información de la firma. Tras la creación, la plantilla queda en estado "Pendiente de revisión" y solo se puede usar después de aprobarse.
URL de solicitud
POST https://smsapi.engagelab.com/v1/template-configs
Validación de la llamada
Consulta Validación de la llamada para saber cómo realizar la autenticación de la API.
Ejemplo de solicitud
Encabezado de la solicitud
POST /v1/template-configs HTTP/1.1
Content-Type: application/json
Authorization: Basic amlndWFuZ2RldjpkZXZfc2VjcmV0
Cuerpo de la solicitud
{
"template_name": "Plantilla de notificación de pedido",
"template_type": "utility",
"template_content": "Su pedido {order_no} ha sido enviado y se espera que se entregue antes de {delivery_time}",
"country_codes": "CN,US",
"add_signature": true,
"sign_id": "987654321",
"sign_position": 2
}
Parámetros de solicitud
| Parámetro | Tipo | Opciones | Descripción |
|---|---|---|---|
| template_name | String | Obligatorio | Nombre de la plantilla, máximo 255 caracteres |
| template_type | String | Obligatorio | Tipo de plantilla: authentication (autenticación / OTP), utility (notificación), marketing (marketing). El valor histórico otp se mapea a authentication por compatibilidad. |
| template_content | String | Obligatorio | Contenido de la plantilla, no puede contener: 【, 】, 、, 测试, test, [, ] |
| country_codes | String | Obligatorio | Códigos de los principales países de envío, separados por comas |
| add_signature | Boolean | Opcional | Si se añade firma, false por defecto |
| sign_id | String | Obligatorio condicional | Obligatorio cuando add_signature es true, ID de la firma |
| sign_position | Integer | Obligatorio condicional | Obligatorio cuando add_signature es true, posición de la firma: 1-prefijo, 2-sufijo |
Parámetros de respuesta
Respuesta correcta
El código de estado HTTP es 200 y el cuerpo de la respuesta contiene los siguientes campos:
| Campo | Tipo | Descripción |
|---|---|---|
| template_id | String | ID de la plantilla creada |
Ejemplo correcto
{
"template_id": "123456789"
}
Respuesta con error
El código de estado HTTP es 4xx/5xx y el cuerpo de la respuesta contiene los siguientes campos:
| Campo | Tipo | Descripción |
|---|---|---|
| code | Integer | Código de error |
| message | String | Detalle del error |
Ejemplo de error
{
"code": 400,
"message": "sign status is not approved, can not use"
}
Códigos de error
| Código de error | Estado HTTP | Posibles errores |
|---|---|---|
1000 |
500 |
Error interno del servicio; fallo al consultar la lista o los detalles de plantillas; fallo de la base de datos al crear, actualizar o eliminar plantillas; fallo al consultar la información de firma o los planes pendientes de envío |
2001 |
401 |
Fallo de autenticación; Authorization ausente, con formato incorrecto o token no válido |
2002 |
401/403 |
Token de desarrollador caducado o deshabilitado; el negocio ha sido eliminado |
2005 |
400 |
IP no incluida en la lista de permitidos: ip forbidden |
3001 |
400 |
Formato JSON de la solicitud incorrecto: not correct parameter format |
3002 |
400 |
Formato de templateId incorrecto; template_name vacío o de más de 255 caracteres; template_type no válido; template_content vacío; country_codes vacío; falta sign_id cuando add_signature=true; sign_position no válido; el contenido de la plantilla contiene caracteres prohibidos |
3002 |
400 |
Validación de plantilla de tipo autenticación fallida: debe contener {{code}} y solo admite las dos variables {{code}} y {{ttl}} |
3003 |
400 |
La firma añadida no está aprobada; la plantilla no pertenece al negocio actual; las plantillas pendientes de revisión no se pueden actualizar; hay planes pendientes o en ejecución que usan esta plantilla y no se puede actualizar/eliminar |
4001 |
400 |
La plantilla no existe: template config not exist; la firma referenciada no existe al crear/actualizar la plantilla: sign config not exist |
Mensajes de error comunes:
sign config not exist: la configuración de firma no existesign status is not approved, can not use: la firma no está aprobada y no se puede usartemplate config not exist: la configuración de la plantilla no existeip forbidden: la IP no está en la lista de permitidosnot correct parameter format: el formato JSON de la solicitud es incorrecto
Consideraciones
- Tras crearse, la plantilla queda en estado "Pendiente de revisión" (status=1) y solo se puede usar para enviar SMS después de aprobarse
- Si se añade una firma, esta debe estar en estado aprobado
- El contenido de la plantilla no puede contener caracteres prohibidos:
【,】,、,测试,test,[,] - Tanto el ID de la plantilla como el de la firma son números de tipo cadena
Apéndice
Estado de la configuración de plantilla (status)
| Valor | Descripción |
|---|---|
| 1 | Pendiente de revisión |
| 2 | Revisión aprobada |
| 3 | Revisión rechazada |
Tipo de plantilla (template_type)
| Valor | Descripción |
|---|---|
| authentication | Autenticación / OTP |
| utility | Notificación |
| marketing | Marketing |
El valor histórico
otpse mapea aauthenticationpor compatibilidad. El contenido de las plantillas de tipo autenticación debe incluir{{code}}y solo admite las dos variables{{code}}y{{ttl}}.
Posición de la firma (sign_position)
| Valor | Descripción |
|---|---|
| 0 | Sin firma |
| 1 | Prefijo |
| 2 | Sufijo |










