IBM Cloud Docs
Personalización de mensajes de correo electrónico

Personalización de mensajes de correo electrónico

Cuando un usuario interactúa con la aplicación, es posible que desee enviar una respuesta o solicitar la verificación. App ID proporciona plantillas predeterminadas que puede utilizar para las interacciones. También puede utilizar las plantillas como una guía y personalizar la mensajería para ajustarla a su marca.

App ID utiliza SendGrid como servicio de reparto de correo. Todos los correos electrónicos se envían con una sola cuenta de SendGrid.

Configuración de valores de correo electrónico

Con App ID, puede optar por utilizar las credenciales predeterminadas de App ID SendGrid añadir su propia cuenta SendGrid o configurar su propio webhook personalizado para enviar mensajes de correo electrónico en Directorio Nube.

Utilización del proveedor de correo electrónico predeterminado de IBM

Por defecto, App ID utiliza SendGrid como servicio de entrega de correo electrónico para Cloud Directory.

  1. Vaya a la página Cloud Directory > Plantillas de correo electrónico > Valores de correo electrónico del panel de control de servicio.

  2. Seleccione Valor predeterminado. Aparece la información que tiene que especificar.

  3. Configure los Detalles del remitente.

    1. En Desde, escriba la dirección de correo electrónico de donde desea que los usuarios reciban los correos electrónicos.

    2. En Nombre del remitente, escriba el nombre que desee asociado al correo electrónico de "Desde".

    3. En Responder a, escriba la dirección de correo electrónico donde desee recibir las respuestas que alguien tuviera que mandarle por correo electrónico.

  4. Pulse Probar para probar su configuración con un correo electrónico de prueba.

  5. Pulse Guardar para habilitar la configuración.

Adición de su propia cuenta de SendGrid

Al utilizar su propia cuenta de SendGrid para enviar los correos electrónicos de Cloud Directory, tendrá el control completo. Puede decidir cómo se envían los correos electrónicos, utilizar su propio nombre de dominio y definir los detalles del remitente. Con los valores de correo electrónico personalizados, puede reducir las posibilidades de que un correo electrónico se filtre como spam, a la vez que se promueve el reconocimiento de marca para la aplicación.

Una conexión directa a su proveedor de correo electrónico puede ayudarle a obtener información sobre mensajes individuales como, por ejemplo, el número de personas que abren los correos electrónicos y qué mensajes no se han entregado. También puede ver estadísticas globales que puede utilizar para gestionar mejor las campañas de correo electrónico.

¿No dispone de una cuenta de SendGrid? Regístrese.

  1. Vaya a la página Cloud Directory > Plantillas de correo electrónico > Valores de correo electrónico del panel de control de servicio.

  2. Seleccione SendGrid. Aparece la información que tiene que especificar.

  3. En Clave de API de SendGrid, escriba su clave de API.

  4. Configure los Detalles del remitente.

    1. En Desde, escriba la dirección de correo electrónico de donde desea que los usuarios reciban los correos electrónicos.

    2. En Nombre del remitente, escriba el nombre que desee asociado al correo electrónico de "Desde".

    3. En Responder a, escriba la dirección de correo electrónico donde desee recibir las respuestas que alguien tuviera que mandarle por correo electrónico.

  5. Pulse Probar para probar su configuración con un correo electrónico de prueba.

  6. Pulse Guardar para habilitar la configuración.

Personalización de su proveedor de correo electrónico

Al definir su propio punto de extensión personalizado para enviar correos electrónicos de Cloud Directory, tendrá el control completo. Puede decidir cómo se envían los correos electrónicos, utilizar su propio nombre de dominio y definir los detalles del remitente. Con los valores de correo electrónico personalizados, puede reducir las posibilidades de que un correo electrónico se filtre como spam, a la vez que se promueve el reconocimiento de marca para la aplicación.

Una conexión directa a su proveedor de correo electrónico puede ayudarle a obtener información sobre mensajes individuales como, por ejemplo, el número de personas que abren los correos electrónicos y qué mensajes no se han entregado. También puede ver estadísticas globales que puede utilizar para gestionar mejor las campañas de correo electrónico.

Configuración de un proveedor personalizado con la GUI

Puede utilizar el panel de control de servicio para configurar su proveedor personalizado.

  1. Vaya a la página Cloud Directory > Plantillas de correo electrónico > Valores de correo electrónico del panel de control de servicio.

  2. Seleccione Personalizar. Aparece la información que tiene que especificar.

  3. En Webhook, escriba su URL de extensión personalizado.

  4. Seleccione un Tipo de autorización. Puede elegir entre las opciones siguientes:

    • Ninguna: el punto final webhook o URL no necesita ninguna cabecera de autorización.
    • Básica: el punto final webhook requiere una cabecera de autenticación HTTP con cada solicitud en formato de nombre de usuario y contraseña.
    • Cabeceras de autorización: la solicitud webhook requiere que pase la información de autorización para su punto final en una autorización HTTP. Por ejemplo, puede pasar una señal OAuth 2.0: Authorization: Bearer eyJraWQiOiIyMDIwMDEyNTE2MzMiLCJhbGciOiJSUzI1NiJ9.eyJpYW1faWQiOiJJ.
  5. Configure los Detalles del remitente.

    1. En Desde, escriba la dirección de correo electrónico de donde desea que los usuarios reciban los correos electrónicos.

    2. En Nombre del remitente, escriba el nombre que desee asociado al correo electrónico de "Desde".

    3. En Responder a, escriba la dirección de correo electrónico donde desee recibir las respuestas de los correos electrónicos.

  6. Pulse Probar para probar su configuración con un correo electrónico de prueba.

  7. Pulse Guardar para habilitar la configuración.

Configuración de un proveedor personalizado con la API

Puede utilizar las API de gestión de Cloud Directory para configurar su remitente de correo electrónico personalizado.

  1. Configure un punto de extensión que pueda escuchar una solicitud POST. El punto final debe poder:

    • Leer la carga útil que procede de App ID.
    • Enviar el correo electrónico desde su proveedor personalizado.
    • Opcionalmente, valide que la carga útil de JSON que devuelve App ID no haya sido modificada por un tercero de ninguna manera. Se devuelve una serie formateada como {"jws": "jws-format-string"} que contiene el ID de arrendatario, el emisor de la señal JWS, la indicación de fecha y hora de cuándo se envió el mensaje, un ID de transacción exclusivo y la información de mensaje real que incluye los detalles del remitente y el contenido del cuerpo del correo electrónico.

    Su punto de extensión puede tener un aspecto similar al del ejemplo siguiente:

    const sgMail = require('@sendgrid/mail');
    const {promisify} = require('bluebird');
    const request = promisify(require('request'));
    const jwtVerify = promisify(require('jsonwebtoken').verify);
    const jwtDecode = require('jsonwebtoken').decode;
    const jwkToPem = require('jwk-to-pem');
    
    async function obtainPublicKeys() {
       // Your instance tenant ID
       const tenantId = '<tenantID>';
    
       // Send request to App ID's public keys endpoint
       const keysOptions = {
       method: 'GET',
       url: `https://<region>.appid.cloud.ibm.com/oauth/v4/$<tenantID>/publickeys`
       };
       const keysResponse = await request(keysOptions);
       return JSON.parse(keysResponse.body).keys;
    }
    
    async function verifySignature(keysArray, kid, jws) {
       const keyJson = keysArray.find(key => key.kid === kid);
       if (keyJson) {
       const pem = jwkToPem(keyJson);
       await jwtVerify(jws, pem);
       return;
       }
       throw new Error ("Unable to verify signature");
    }
    
    async function verifyAndSendMail(jws) {
       // The API key for Sendgrid
       const sgApiKey = '<SengridApiKey>';
    
       // Init Sendgrind
       sgMail.setApiKey(sgApiKey);
    
       // Decode message to get information
       const data = jwtDecode(jws, {complete: true});
    
       // Extract kid from header
       const kid = data.header.kid;
    
       const keysArray = await obtainPublicKeys();
    
       // Verify the signature of the payload with the public keys
       await verifySignature(keysArray, kid ,jws);
    
       // Send the email with Your Sendgrid account
       const message = data.payload.message;
       const msg = {
       to: message.to,
       from: message.from.address,
       subject: message.subject,
       html: message.body,
       };
       console.log(`Sending email to ${message.to}`);
       let sendgridResponse = await sgMail.send(msg);
    
       return {result : 'email_sent',sendgridResponse};
    }
    
  2. Realice una solicitud PUT a /management/v4/<tenantID>/config/cloud_directory/email_dispatcher para proporcionar su webhook URL. Opcionalmente, puede proporcionar información de autorización. Los tipos de autorización soportados son: Basic authorization y constant authorization header value.

    curl -X PUT https://<region>.appid.cloud.ibm.com/management/v4/<tenantID>/config/cloud_directory/email_dispatcher' \
    --header 'Accept: application/json' \
    --header 'Authorization: Bearer <IAMToken>' \
    -d '{
       "provider": "custom",
       "custom": {
       "url": "https://example.com/send_mail",
       "authorization": {
          "type": "basic",
          "username": "<username>",
          "password": "<password>"
          }
       }
       }'
    
  3. Compruebe que la configuración se ha configurado correctamente probando el distribuidor de correo electrónico. Utilice la API de prueba para activar una solicitud a su remitente de correo electrónico personalizado configurado.

Plantillas de correo electrónico

Cuando envía mensajes a los usuarios, puede utilizar cualquier combinación de las plantillas siguientes. O bien, puede editar las plantillas para personalizar el mensaje.

Además de los siguientes tipos de mensaje, también puede aprovechar las plantillas MFA.

Para una mayor personalización, puede utilizar parámetros en los mensajes. Consulte la tabla siguiente para ver los parámetros que puede utilizar en todos los tipos de mensajes.

Los parámetros que puede utilizar en sus mensajes a los usuarios
Parámetro Descripción
%{display.logo} Muestra la imagen que ha configurado para su widget de inicio de sesión.
%{user.displayName} Muestra el nombre de pantalla que elige un usuario para utilizar al interactuar con la app.
%{user.email} Muestra la dirección de correo electrónico registrada del usuario.
%{user.username} Muestra el nombre de usuario especificado del usuario cuando el método de autenticación se establece en nombre de usuario y contraseña.
%{user.firstName} Muestra el nombre especificado del usuario.
%{user.formattedName} Muestra el nombre completo del usuario.
%{user.lastName} Muestra el apellido especificado del usuario.

Correo electrónico: Bienvenido

Cuando un usuario se registra en su app, es probable que desee enviarle un mensaje de bienvenida a la app.

  1. Vaya al separador Cloud Directory > Plantillas de correo electrónico > Correo electrónico de bienvenida del panel de control de servicios.

  2. Establezca la opción Correo electrónico de bienvenida en Habilitado.

  3. Personalice el contenido del mensaje. Puede añadir parámetros e insertar imágenes utilizando la consola. Para cambiar el idioma del mensaje, puede utilizar las API para establecer el idioma. Sin embargo, usted es el responsable del contenido y la conversión del mensaje. Consulte la tabla siguiente para ver la lista de tablas que puede utilizar en este mensaje y todos los demás mensajes que puede enviar. Si un usuario no proporciona la información que extrae el parámetro, aparecerá en blanco.

  4. Pulse Guardar.

Correo electrónico: Verificación

Cuando un usuario se registra en su aplicación mediante su correo electrónico, puede enviarle un correo electrónico que le solicite confirmar su identidad. Al solicitar una verificación, se limita el número de cuentas falsas que pueden registrarse en su app. Puede restringir el acceso a su app hasta que el usuario verifique su correo electrónico, o utilizarlo como forma de gestionar los usuarios para los que ha creado perfiles.

Los usuarios que se añaden manualmente mediante el panel de control de App ID o la API de creación de usuarios no reciben este correo electrónico automáticamente.

  1. Vaya al separador Cloud Directory > Plantillas de correo electrónico > Verificación de correo electrónico del panel de control de servicios.

  2. Establezca la opción Verificación de correo electrónico en Habilitada.

  3. Establezca Permitir a los usuarios registrarse en la app sin verificar la dirección de correo electrónico primero en . Cuando se establece en sí, los usuarios pueden interactuar con la aplicación después de registrarse, pero antes de verificar su dirección de correo electrónico. El valor predeterminado es no.

  4. Personalice el contenido del mensaje. Puede añadir parámetros e insertar imágenes utilizando la consola. Para cambiar el idioma del mensaje, puede utilizar las API para establecer el idioma. Sin embargo, usted es el responsable del contenido y la conversión del mensaje. Consulte la tabla siguiente para ver los distintos parámetros que puede utilizar en el mensaje. Si un usuario no proporciona la información que extrae el parámetro, aparecerá en blanco.

    Parámetros que puede utilizar en los mensajes relacionados con la verificación
    Parámetro Descripción
    %{linkExpiration.hours} Muestra el número de horas que es válido el enlace.
    %{linkExpiration.minutes} Muestra el número de minutos que es válido el enlace.
    %{verify.code} Muestra un URL de verificación de un único uso.
    %{verify.link} Muestra el URL de acción que especificó en los valores.

    También puede utilizar los parámetros de mensaje que se listan en la sección Mensaje de bienvenida.

  5. Defina una hora de vencimiento para el URL de acción. El URL de vencimiento es la cantidad de tiempo, en minutos, en la que un usuario debe completar la acción antes de que caduque el enlace de verificación. Este valor también afecta a la cantidad de tiempo que su enlace de restablecimiento de contraseña es válido.

  6. Especifique un URL para la página que desea visualizar después de que un usuario verifique su correo electrónico en el recuadro URL de la página de agradecimiento. Si elige dejar este campo en blanco, se muestra una página predeterminada de App ID.

  7. Pulse Guardar.

Correo electrónico: Restablecimiento de contraseña

Cuando un usuario interactúa con la app, es posible que olvide su contraseña o que necesite actualizarla. Puede personalizar la respuesta por correo electrónico a su solicitud. Cuando un usuario solicita un cambio, su contraseña sigue siendo la misma hasta que pulsa en el enlace en este correo electrónico.

  1. Vaya al separador Cloud Directory > Plantillas de correo electrónico > Restablecer contraseña del panel de control de servicios.

  2. Establezca la opción Correo electrónico de contraseña olvidada en Habilitado.

  3. Personalice el contenido del mensaje. Puede añadir parámetros e insertar imágenes utilizando la consola. Para cambiar el idioma del mensaje, puede utilizar las API para establecer el idioma. Sin embargo, usted es el responsable del contenido y la conversión del mensaje. Consulte la tabla siguiente para ver los distintos parámetros que puede utilizar en el mensaje. Si un usuario no proporciona la información que extrae el parámetro, aparecerá en blanco.

    Parámetros que puede utilizar en mensajes relacionados con contraseñas olvidadas
    Parámetro Descripción
    %{linkExpiration.hours} Muestra el número de horas que es válido el enlace.
    %{linkExpiration.minutes} Muestra el número de minutos que es válido el enlace.
    %{resetPassword.code} Muestra una clave de acceso de un solo uso como parte del URL. Esto significa que cada persona tendría un código diferente. Ejemplo:https://us-south.appid.cloud.ibm.com/wfm/verify/6574839563478
    %{resetPassword.link} Muestra el enlace que pulsa un usuario para restablecer su contraseña.

    También puede utilizar los parámetros de mensaje que se listan en la sección Mensaje de bienvenida.

  4. Defina una hora de vencimiento para el URL de acción. El URL de vencimiento es la cantidad de tiempo, en minutos, en la que un usuario debe completar la acción antes de que caduque el enlace de verificación. Este valor también afecta a la cantidad de tiempo que su enlace de restablecimiento de contraseña es válido.

  5. Especifique un URL para la página que desea visualizar después de que un usuario verifique su correo electrónico en el recuadro URL de la página de restablecer contraseña. Si elige dejar este campo en blanco, se muestra una página predeterminada de App ID.

  6. Pulse Guardar.

Correo electrónico: Cambio de contraseña

Puede notificar a un usuario cuando se actualice su contraseña. La notificación es útil si no ha solicitado el cambio de contraseña. Pueden llevar a cabo los pasos apropiados para volver a asegurar su cuenta.

  1. Vaya al separador Cloud Directory > Plantillas de correo electrónico > Cambio de contraseña del panel de control de servicios.

  2. Establezca la opción Correo electrónico de contraseña cambiada en Habilitado.

  3. Personalice el contenido del mensaje. Puede añadir parámetros e insertar imágenes utilizando la consola. Para cambiar el idioma del mensaje, puede utilizar las API para establecer el idioma. Sin embargo, usted es el responsable del contenido y la conversión del mensaje. Consulte la tabla siguiente para ver los distintos parámetros que puede utilizar en el mensaje. Si un usuario no proporciona la información que extrae el parámetro, aparecerá en blanco.

    Parámetros que puede utilizar en los mensajes relacionados con el cambio de contraseña
    Parámetro Descripción
    %{passwordChangeInfo.time} Muestra la hora en que entra en vigor la nueva contraseña.
    %{passwordChangeInfo.ipAddress} Muestra la dirección IP desde la que se ha solicitado el cambio de contraseña.

    También puede utilizar los parámetros de mensaje que se listan en la sección Mensaje de bienvenida.

  4. Pulse Guardar.

Idiomas soportados

Puede utilizar las API de gestión lingüística para establecer el idioma en el que se puede escribir la comunicación con el usuario. Sin embargo, de origen solo está disponible el idioma inglés. Usted es el responsable de la conversión de los mensajes. Una vez establecida la configuración con la API, se actualiza la interfaz gráfica de usuario, de forma que pueda modificar el texto de plantilla.

Lenguas admitidas
Código Idioma Región
af-ZA Afrikáans Sudáfrica
sq-AL Albanés Albania
am-ET Amhárico Etiopía
ar-DZ Árabe Argelia
ar-BH Árabe Bahréin
ar-EG Árabe Egypt
ar-IQ Árabe Iraq
ar-JO Árabe Jordania
ar-KW Árabe Kuwait
ar-LB Árabe Líbano
ar-LY Árabe Libya
ar-MR Árabe Mauritania
ar-MA Árabe Marruecos
ar-OM Árabe Omán
ar-QA Árabe Qatar
ar-SA Árabe ArabiaSaudí
ar-SY Árabe Siria
ar-YE Árabe Túnez
ar-AE Árabe EmiratosÁrabesUnidos
ar-YE Árabe Yemen
hy-AM Armenio Armenia
as-IN Assamés India
az-AZ Azerí Azerbaiján
eu-ES Euskera España
be-BY Bielorruso Brasil
bn-BD Bengalí Bangladesh
be-BY Bielorruso Brasil
bn-BD Bengalí Bangladesh
bn-IN Bengalí India
bs-Latn-BA Bosnio Bosnia
bg-BG Búlgaro Bulgaria
my-MM Birmano Birmania
ca-ES Catalán España
zh-Hans-CN Chino simplificado China
zh-Hans-SG Chino simplificado Singapur
zh-Hant-HK Chino tradicional Zona administrativa especial de Hong Kong, China
zh-Hant-MO Chino tradicional Macao R.A.E. de la República Popular China
zh-Hant-TW Chino tradicional Taiwán
hr-HR Croata Croacia
cs-CZ Checo RepúblicaCheca
da-DK Danés Dinamarca
nl-BE Holandés Bélgica
nl-NL Holandés Países Bajos
en-AU Inglés Australia
eu-BE Inglés Bélgica
en-CM Inglés Camerún
eu-CA Inglés Canadá
en-GH Inglés Ghana
eu-HK Inglés Zona administrativa especial de Hong Kong, China
en-IN Inglés India
en-IE Inglés Irlanda
en-KE Inglés Kenia
en-MU Inglés Mauricio
en-NZ Inglés Nueva Zelanda
en-NG Inglés Nigeria
en-PH Inglés Filipinas
en-SG Inglés Singapur
en-ZA Inglés Sudáfrica
en-TZ Inglés Tanzania
en-GB Inglés Reino Unido
en-US Inglés Estados Unidos
en-ZM Inglés Zambia
en Inglés
et-EE Estonio Estonia
fil-PH Filipino Filipinas
fi-FI Finés Finlandia
fr-DZ Francés Argelia
fr-CM Francés Camerún
fr-CD Francés República Democrática del Congo
fr-BE Francés Bélgica
fr-CA Francés Canadá
fr-FR Francés Francia
fr-CI Francés Costa de Marfil (Côte d'Ivoire)
fr-LU Francés Luxemburgo
fr-MR Francés Mauritania
fr-MU Francés Mauricio
fr-MA Francés Marruecos
fr-SN Francés Senegal
fr-CH Francés Suiza
fr-TN Francés Túnez
gl-ES Gallego España
lg-UG Luganda Uganda
ka-GE Georgiano Georgia
de-AT Alemán Austria
de-DE Alemán Alemania
de-LU Alemán Luxemburgo
de-CH Alemán Suiza
el-GR Griego Grecia
gu-IN Gujarati India
ha-NG Hausa Nigeria
he-IL Hebreo Israel
hi-IN Hindi India
hu-HU Húngaro Hungría
is-IS Islandés Iceland
ig-NG Igbo Nigeria
id-ID Indonesio Indonesia
it-IT Italiano Italia
it-CH Italiano Suiza
ja-JP Japonés Japón
kn-IN Canarés India
kk-KZ Kazajo Kazajistán
km-KH Jemer Camboya
rw-RW Ruandés Ruanda
kok-IN Konkani India
ko-KR Coreano Corea del Sur
lo-LA Lituano Lituania
lv-LV Letón Letonia
lt-LT Jemer Camboya
mk-MK Macedonio Macedonia
ms-Latn-MY Malayo latino Malasia
ml-IN Malayalam India
mt-MT Maltés Malta
mr-IN Marathi India
mn-Cyrl-MN Mongol cirílico Mongolia
ne-IN Nepalí India
ne-NP Nepalí Nepal
nb-NO Noruego bokmål Noruega
nn-NO Noruego nynorsk Noruega
or-IN Oriya (Odia) India
om-ET Oromo Etiopía
pl-PL Polaco Polonia
pt-AO Portugués Angola
pt-BR Portugués Brasil
pt-MO Portugués Macao R.A.E. de la República Popular China
pt-MZ Portugués Mozambique
pt-PT Portugués Portugal
pa-IN Punjabí India
ro-RO Rumano Rumanía
ru-RU Ruso Rusia
sr-Cyrl-RS Serbio cirílico Serbia
sr-Latn-ME Serbio latino Montenegro
sr-Latn-RS Serbio latino Serbia
si-LK Cingalés Sri Lanka
sk-SK Eslovaco Eslovaquia
sl-SI Esloveno Eslovenia
es-AR Español Argentina
es-BO Español Bolivia
es-CL Español Chile
es-CO Español Colombia
es-CR Español Costa Rica
es-DO Español República Dominicana
es-EC Español Ecuador
es-SV Español El Salvador
es-GT Español Guatemala
es-HN Español Honduras
es-MX Español México
es-NI Español Nicaragua
es-PA Español Panamá
es-PY Español Paraguay
es-PE Español Perú
es-PR Español Puerto Rico
es-ES Español España
es-US Español Estados Unidos
es-UY Español Uruguay
es-VE Español Venezuela
sw-KE Suajili Kenia
sw-TZ Suajili Tanzania
sv-SE Sueco Suecia
ta-IN Tamil India
te-IN Telugu India
th-TH Tailandés Tailandia
tr-TR Turco Turkey
uk-UA Ucraniano Ucrania
ur-IN Urdu India
ur-PK Urdu Pakistán
uz-Cyrl-UZ Uzbeko cirílico Uzbekistán
uz-Latn-UZ Uzbeko latino Uzbekistán
vi-VN Vietnamita Vietnam
cy-GB Galés Reino Unido
yo-NG Yoruba Nigeria
zu-ZA Zulu Sudáfrica