Interfaz de la API de plantillas

Crear plantilla

Endpoint

POST https://otp.api.engagelab.cc/v1/template-configs

Autenticación

Usa autenticación básica HTTP para autenticarte y añade Authorization a la cabecera HTTP:

Authorization: Basic ${base64_auth_string}
              
              Authorization: Basic ${base64_auth_string}

            
Este bloque de código se muestra en una ventana flotante

El algoritmo para generar base64_auth_string es: base64(dev_key:dev_secret)

Ejemplo de solicitud

Cabecera de la solicitud

POST /v1/messages HTTP/1.1 Content-Type: application/json Authorization: Basic amlndWFuZ2RldjpkZXZfc2VjcmV0
              
              POST /v1/messages HTTP/1.1
Content-Type: application/json
Authorization: Basic amlndWFuZ2RldjpkZXZfc2VjcmV0

            
Este bloque de código se muestra en una ventana flotante

Cuerpo de la solicitud

{ "template_id": "test-template-1", "description": "测试模版1", "send_channel_strategy": "whatsapp|sms", "brand_name": "品牌名称", "verify_code_config": { "verify_code_type": 1, "verify_code_len": 6, "verify_code_ttl": 1 }, "whatsapp_config": { "template_type": 1, "template_default_config": { "contain_security": false, "contain_expire": false } }, "sms_config": { "template_type": 2, "template_default_config": { "contain_security": false, "contain_expire": false }, "template_custom_config": { "custom_sub_type": "authentication", "custom_content": "xxx", "custom_country_codes": "HK,PH" } }, "voice_config": { "template_type": 1, "template_default_config": { "contain_security": false, "contain_expire": false } }, "email_config": { "template_name": "email模板名称", "template_custom_configs": [{ "language": "default", "pre_from_name": "test", "pre_from_mail": "test@test.com", "pre_subject": "test", "template_content": "预设邮件模版内容,必填,自定义变量如{{self}},验证码是{{code}}", "pre_param_map": { "self": "这里是self变量预设值" } }] }, "pwa_config": { "pwa_platform": "xx", "pwa_code": "xx" } }
              
              {
    "template_id": "test-template-1",       
    "description": "测试模版1",                 
    "send_channel_strategy": "whatsapp|sms",    
    "brand_name": "品牌名称",                   
    "verify_code_config": {                     
        "verify_code_type": 1,                  
        "verify_code_len": 6,                   
        "verify_code_ttl": 1                    
    },
    "whatsapp_config": {                        
        "template_type": 1,                      
        "template_default_config": {            
            "contain_security": false,              
            "contain_expire": false                 
        }
    },
    "sms_config": {                             
        "template_type": 2,                     
        "template_default_config": {            
            "contain_security": false,              
            "contain_expire": false                 
        },
        "template_custom_config": {             
            "custom_sub_type": "authentication",    
            "custom_content": "xxx",                
            "custom_country_codes": "HK,PH"         
        }
    },
    "voice_config": {                           
        "template_type": 1,                      
        "template_default_config": {            
            "contain_security": false,              
            "contain_expire": false                 
        }
    },
    "email_config": {                           
        "template_name": "email模板名称",                     
        "template_custom_configs": [{
            "language": "default",              
            "pre_from_name": "test",            
            "pre_from_mail": "test@test.com",   
            "pre_subject": "test",              
            "template_content": "预设邮件模版内容,必填,自定义变量如{{self}},验证码是{{code}}",    
            "pre_param_map": {                  
                "self": "这里是self变量预设值"
            }
        }]
    },
    "pwa_config": {                             
        "pwa_platform": "xx",                   
        "pwa_code": "xx"                        
    }
}

            
Este bloque de código se muestra en una ventana flotante

Parámetros de la solicitud

El objeto de solicitud se expresa en formato JSON, por lo que la cabecera debe incluir Content-Type: application/json.

Parameter Type Option Description
template_id String Required ID de plantilla personalizado, que debe ser único y estar limitado a 128 caracteres
description String Optional Descripción de la plantilla, limitada a 255 caracteres
send_channel_strategy String Required Estrategia de plantilla. Un único canal puede ser whatsapp, sms, email o voice. Varios canales se separan con `
brand_name String Optional Identificador de marca. En algunos estilos de plantilla con firma de marca, sustituye la variable de firma de marca. La longitud debe ser de 2 a 10 caracteres
verify_code_config Object Conditionally required Configuración del código de verificación. Es obligatoria cuando la plantilla incluye un tipo de código de verificación
verify_code_config.verify_code_type Integer Required Tipo de código de verificación, rango [1,7]: 1-numérico / 2-letras minúsculas / 4-letras mayúsculas. Los valores pueden combinarse; por ejemplo, 3 significa números + letras minúsculas
verify_code_config.verify_code_len Integer Required Longitud del código de verificación, rango [4,10]
verify_code_config.verify_code_ttl Integer Required Periodo de validez del código de verificación en minutos, rango [1,10]. Cuando la estrategia incluye whatsapp, solo puede ser 1, 5 o 10
whatsapp_config Object Conditionally required Configuración para la estrategia de WhatsApp. Es obligatoria cuando la estrategia de entrega incluye whatsapp
whatsapp_config.template_type Integer Required Tipo de plantilla de WhatsApp. Actualmente, solo se admite la plantilla predeterminada, por lo que el valor es fijo: 1
whatsapp_config.template_default_config Object Conditionally required Configuración de la plantilla predeterminada de WhatsApp. Es obligatoria cuando el tipo de plantilla de WhatsApp es la plantilla predeterminada
sms_config Object Conditionally required Configuración para la estrategia de SMS. Es obligatoria cuando la estrategia de entrega incluye sms
sms_config.template_type Integer Required Tipo de plantilla SMS: 1-plantilla predeterminada / 2-plantilla personalizada
sms_config.template_default_config Object Conditionally required Configuración de la plantilla predeterminada de SMS. Es obligatoria cuando el tipo de plantilla SMS es la plantilla predeterminada
sms_config.template_custom_config Object Conditionally required Configuración de la plantilla SMS personalizada. Es obligatoria cuando el tipo de plantilla SMS es una plantilla personalizada
sms_config.template_custom_config.custom_sub_type String Required Tipo de plantilla personalizada: authentication-código de verificación / marketing-marketing / utility-notificación
sms_config.template_custom_config.custom_content String Required Contenido de la plantilla personalizada. Para el tipo authentication, debe incluir la variable {{code}}
sms_config.template_custom_config.custom_country_codes String Optional Códigos de país o región de destino, separados por comas, usados como referencia durante la revisión de la plantilla
voice_config Object Conditionally required Configuración para la estrategia de voz. Es obligatoria cuando la estrategia de entrega incluye voice
voice_config.template_type Integer Required Tipo de plantilla de voz. Actualmente, solo se admite la plantilla predeterminada, por lo que el valor es fijo: 1
voice_config.template_default_config Object Conditionally required Configuración de la plantilla predeterminada de voz. Es obligatoria cuando el tipo de plantilla de voz es la plantilla predeterminada
email_config Object Conditionally required Configuración para la estrategia de email. Es obligatoria cuando la estrategia de entrega incluye email
email_config.template_name String Required Nombre de la plantilla de email
email_config.template_custom_configs Array Conditionally required Configuraciones de plantillas de email personalizadas. Son obligatorias cuando el tipo de plantilla de email es una plantilla personalizada. Admite configuración multilingüe
email_config.template_custom_configs.language String Required Idioma, donde default es el idioma predeterminado. Se puede asociar un contenido de plantilla distinto según el parámetro de idioma durante la entrega del mensaje
email_config.template_custom_configs.pre_from_name String Optional Nombre predefinido del remitente
email_config.template_custom_configs.pre_from_mail String Required Correo electrónico predefinido del remitente
email_config.template_custom_configs.pre_subject String Required Asunto predefinido del email
email_config.template_custom_configs.template_content String Required Contenido del email. Admite HTML. Las variables deben ir entre {{}}
email_config.template_custom_configs.pre_param_map Object Optional Valores predeterminados para las variables del contenido del email, declarados mediante pares clave-valor. Los valores deben ser cadenas
pwa_config Object Optional Configuración relacionada con la PWA. Actualmente es opcional
pwa_config.pwa_platform String Optional Plataforma PWA utilizada. Ponte en contacto con el soporte técnico para conocer el valor específico
pwa_config.pwa_code String Optional Código utilizado dentro de la plataforma PWA

Parámetros de respuesta

Field Type Option Description
code Integer Required Código de error. 0 indica éxito; otros valores indican fallo
message String Required Mensaje de respuesta

Respuesta correcta

{ "code": 0, "message": "success" }
              
              {
    "code": 0,
    "message": "success"
}

            
Este bloque de código se muestra en una ventana flotante

Respuesta fallida

{ "code": 3003, "message": "not contains any channel config" }
              
              {
    "code": 3003,
    "message": "not contains any channel config"
}

            
Este bloque de código se muestra en una ventana flotante

Códigos de error

Error Code HTTP Code Description
1000 500 Error interno
2001 401 Error de autenticación; no se ha proporcionado el token correcto
2002 401 Error de autenticación; el token ha caducado o ha sido deshabilitado
2004 403 No tienes permiso para llamar a esta API
3001 400 Formato de parámetro de solicitud no válido. Comprueba si el cuerpo de la solicitud es un JSON válido que cumple el formato de parámetros
3002 400 Parámetros de solicitud no válidos. Comprueba si los parámetros de la solicitud cumplen los requisitos
3003 400 Error de parámetro a nivel de negocio. Comprueba la descripción del campo message devuelto

Eliminar plantilla

Endpoint

DELETE /v1/template-configs/{templateId}

Autenticación

Usa autenticación básica HTTP para autenticarte y añade Authorization a la cabecera HTTP:

Authorization: Basic ${base64_auth_string}
              
              Authorization: Basic ${base64_auth_string}

            
Este bloque de código se muestra en una ventana flotante

El algoritmo para generar base64_auth_string es: base64(dev_key:dev_secret)

Ejemplo de solicitud

Cabecera de la solicitud

DELETE /v1/template-configs/{templateId} HTTP/1.1 Authorization: Basic amlndWFuZ2RldjpkZXZfc2VjcmV0
              
              DELETE /v1/template-configs/{templateId} HTTP/1.1
Authorization: Basic amlndWFuZ2RldjpkZXZfc2VjcmV0

            
Este bloque de código se muestra en una ventana flotante

Cuerpo de la solicitud

Ninguno

Parámetros de la solicitud

{templateId} en la URL indica el ID de la plantilla que se va a eliminar, definido por quien llama al usar la API Crear plantilla.

Parámetros de respuesta

Field Type Option Description
code Integer Required Código de error. 0 indica éxito; otros valores indican fallo
message String Required Mensaje de respuesta

Respuesta correcta

{ "code": 0, "message": "success" }
              
              {
    "code": 0,
    "message": "success"
}

            
Este bloque de código se muestra en una ventana flotante

Respuesta fallida

{ "code": 4001, "message": "config not exist" }
              
              {
    "code": 4001,
    "message": "config not exist"
}

            
Este bloque de código se muestra en una ventana flotante

Códigos de error

Error Code HTTP Code Description
1000 500 Error interno
2001 401 Error de autenticación; no se ha proporcionado el token correcto
2002 401 Error de autenticación; el token ha caducado o ha sido deshabilitado
2004 403 No tienes permiso para llamar a esta API
3001 400 Formato de parámetro de solicitud no válido. Comprueba si el cuerpo de la solicitud es un JSON válido que cumple el formato de parámetros
3002 400 Parámetros de solicitud no válidos. Comprueba si los parámetros de la solicitud cumplen los requisitos
4001 400 La plantilla no existe

Obtener la lista completa de plantillas

Esta API actualmente no admite paginación. Devuelve una lista resumida de todas las plantillas y excluye principalmente el contenido específico. Si necesitas contenido detallado, usa la API de detalles.

Endpoint

GET /v1/template-configs

Autenticación

Usa autenticación básica HTTP para autenticarte y añade Authorization a la cabecera HTTP:

Authorization: Basic ${base64_auth_string}
              
              Authorization: Basic ${base64_auth_string}

            
Este bloque de código se muestra en una ventana flotante

El algoritmo para generar base64_auth_string es: base64(dev_key:dev_secret)

Ejemplo de solicitud

Cabecera de la solicitud

GET /v1/template-configs HTTP/1.1 Authorization: Basic amlndWFuZ2RldjpkZXZfc2VjcmV0
              
              GET /v1/template-configs HTTP/1.1
Authorization: Basic amlndWFuZ2RldjpkZXZfc2VjcmV0

            
Este bloque de código se muestra en una ventana flotante

Cuerpo de la solicitud

Ninguno

Parámetros de la solicitud

Ninguno

Respuesta correcta

[{ "template_id": "test-template-1", "description": "测试模版1", "send_channel_strategy": "whatsapp|sms", "brand_name": "品牌名称", "verify_code_config": { "verify_code_type": 1, "verify_code_len": 6, "verify_code_ttl": 1 }, "whatsapp_config": { "template_type": 1 }, "sms_config": { "template_type": 2, "template_parts": 1 }, "voice_config": { "template_type": 1 }, "email_config": { "template_name": "email模板名称" }, "pwa_config": { "pwa_platform": "xx", "pwa_code": "xx" }, "created_time": 1234567890, "status": 1, "audit_remark": "xx" }]
              
              [{
    "template_id": "test-template-1",
    "description": "测试模版1",
    "send_channel_strategy": "whatsapp|sms",
    "brand_name": "品牌名称",
    "verify_code_config": {
        "verify_code_type": 1,
        "verify_code_len": 6,
        "verify_code_ttl": 1
    },
    "whatsapp_config": {
        "template_type": 1
    },
    "sms_config": {
        "template_type": 2,
        "template_parts": 1
    },
    "voice_config": {
        "template_type": 1
    },
    "email_config": {
        "template_name": "email模板名称"
    },
    "pwa_config": {
        "pwa_platform": "xx",
        "pwa_code": "xx"
    },
    "created_time": 1234567890,
    "status": 1,
    "audit_remark": "xx"
}]

            
Este bloque de código se muestra en una ventana flotante

Respuesta fallida

{ "code": 4001, "message": "config not exist" }
              
              {
    "code": 4001,
    "message": "config not exist"
}

            
Este bloque de código se muestra en una ventana flotante

Códigos de error

Error Code HTTP Code Description
1000 500 Error interno
2001 401 Error de autenticación; no se ha proporcionado el token correcto
2002 401 Error de autenticación; el token ha caducado o ha sido deshabilitado
2004 403 No tienes permiso para llamar a esta API
4001 400 La plantilla no existe

Obtener detalles de la plantilla

Endpoint

GET /v1/template-configs/{templateId}

Autenticación

Usa autenticación básica HTTP para autenticarte y añade Authorization a la cabecera HTTP:

Authorization: Basic ${base64_auth_string}
              
              Authorization: Basic ${base64_auth_string}

            
Este bloque de código se muestra en una ventana flotante

El algoritmo para generar base64_auth_string es: base64(dev_key:dev_secret)

Ejemplo de solicitud

Cabecera de la solicitud

GET /v1/template-configs/custom-template-id HTTP/1.1 Authorization: Basic amlndWFuZ2RldjpkZXZfc2VjcmV0
              
              GET /v1/template-configs/custom-template-id HTTP/1.1
Authorization: Basic amlndWFuZ2RldjpkZXZfc2VjcmV0

            
Este bloque de código se muestra en una ventana flotante

Cuerpo de la solicitud

Ninguno

Parámetros de la solicitud

{templateId} en la URL indica el ID de la plantilla que se va a recuperar, definido por quien llama al usar la API Crear plantilla.

Respuesta correcta

{ "template_id": "test-template-1", "description": "测试模版1", "send_channel_strategy": "whatsapp|sms", "brand_name": "品牌名称", "verify_code_config": { "verify_code_type": 1, "verify_code_len": 6, "verify_code_ttl": 1 }, "whatsapp_config": { "template_type": 1 }, "sms_config": { "template_type": 2, "template_parts": 1, "template_custom_config": { "custom_sub_type": "authentication", "custom_content": "xxx" } }, "voice_config": { "template_type": 1 }, "email_config": { "template_name": "email模板名称", "template_custom_configs": [{ "language": "default", "pre_from_name": "test", "pre_from_mail": "test@test.com", "pre_subject": "test", "template_content": "预设邮件模版内容,必填,自定义变量如{{self}},验证码是{{code}}", "pre_param_map": { "self": "这里是self变量预设值" } }] }, "pwa_config": { "pwa_platform": "xx", "pwa_code": "xx" }, "created_time": 1234567890, "status": 1, "audit_remark": "xx" }
              
              {
    "template_id": "test-template-1",
    "description": "测试模版1",
    "send_channel_strategy": "whatsapp|sms",
    "brand_name": "品牌名称",
    "verify_code_config": {
        "verify_code_type": 1,
        "verify_code_len": 6,
        "verify_code_ttl": 1
    },
    "whatsapp_config": {
        "template_type": 1
    },
    "sms_config": {
        "template_type": 2,
        "template_parts": 1,
        "template_custom_config": {
            "custom_sub_type": "authentication",
            "custom_content": "xxx"
        }
    },
    "voice_config": {
        "template_type": 1
    },
    "email_config": {
        "template_name": "email模板名称",
        "template_custom_configs": [{
            "language": "default",
            "pre_from_name": "test",
            "pre_from_mail": "test@test.com",
            "pre_subject": "test",
            "template_content": "预设邮件模版内容,必填,自定义变量如{{self}},验证码是{{code}}",
            "pre_param_map": {
                "self": "这里是self变量预设值"
            }
        }]
    },
    "pwa_config": {
        "pwa_platform": "xx",
        "pwa_code": "xx"
    },
    "created_time": 1234567890,
    "status": 1,
    "audit_remark": "xx"
}

            
Este bloque de código se muestra en una ventana flotante

Respuesta fallida

{ "code": 4001, "message": "config not exist" }
              
              {
    "code": 4001,
    "message": "config not exist"
}

            
Este bloque de código se muestra en una ventana flotante

Códigos de error

Error Code HTTP Code Description
1000 500 Error interno
2001 401 Error de autenticación; no se ha proporcionado el token correcto
2002 401 Error de autenticación; el token ha caducado o ha sido deshabilitado
2004 403 No tienes permiso para llamar a esta API
4001 400 La plantilla no existe
Icon Solid Transparent White Qiyu
Contacto