Modèles d'e-mail

La ressource keenauth_email_template gère le contenu publié d'un modèle d'e-mail personnalisable : une famille (par exemple verify_email) dans une locale. Elle nécessite le forfait Startup ou supérieur (sinon 403 plan_feature_unavailable).

resource "keenauth_email_template" "verify" {
  family    = "verify_email"
  locale    = "en"
  subject   = "Confirm your email"
  html      = "<p>Confirm your email address: <a href=\"{{ link }}\">Confirm</a></p>"
  text_body = "Confirm your email address: {{ link }}"
  from_name = "Acme"
}
Attribut Description
family, locale L'emplacement. Modifier l'un ou l'autre gère un modèle différent.
subject Liquid, texte brut, jusqu'à 200 caractères, sans saut de ligne.
html Fragment HTML Liquid, jusqu'à 256 KiB.
text_body Corps en texte brut Liquid (obligatoire), jusqu'à 64 KiB.
from_name Nom d'affichage de l'expéditeur, facultatif, jusqu'à 64 caractères. Non défini, le nom de l'application ou de l'environnement est utilisé.
overwrite_pending_draft Facultatif, valeur par défaut false. Voir ci-dessous.
version, latest_version En lecture seule. La version publiée, et la version la plus récente de l'emplacement.

Le serveur vérifie le contenu à l'écriture puis à nouveau à la publication : bac à sable Liquid, HTML équilibré, constructions interdites, et présence de {{ link }} ou {{ code }}, requis par la famille, dans le HTML comme dans le corps texte.

Application d'une modification

  1. PUT écrit le contenu comme nouvelle version brouillon. If-Match correspond à la version la plus récente de l'emplacement lue en dernier ("0" pour un emplacement sans version).
  2. POST …:publish publie cette version. La version précédente est archivée et reste dans l'historique (les 50 versions les plus récentes et la version publiée sont conservées).

La ressource lit la version publiée. Une version publiée ou restaurée dans le tableau de bord apparaît comme une dérive lors du plan suivant.

Brouillons en attente

Un brouillon plus récent que la version publiée (enregistré dans le tableau de bord, ou laissé par une publication échouée) n'est jamais écrasé silencieusement :

Si quelqu'un écrit dans le modèle entre plan et apply, l'API répond 412 et rien ne change. Relancez plan.

Création, import et destruction