Référence de l’API

Modèles

Stocker des modèles avec une partie par canal, en anglais et en français, et publier des versions pour envoyer par identifiant ou alias.

get/v1/templates

Lister les modèles

Permissionemail_templates:rSDK Node.jshonkio.templates.list()

Tous les modèles, du plus récent au plus ancien, avec les parties que chaque langue possède. GET /v1/templates/{idOrAlias} renvoie le contenu d’un modèle.

Nécessite email_templates:r.

Réponses

  • 200Une page de modèles, du plus récent au plus ancien, sans le contenu de leurs parties.
    ChampTypeDescription
    data[]obligatoireobject[]
    idobligatoirestring
    objectobligatoirestring
    • Une valeur parmi : template
    nameobligatoirestring
    aliasobligatoirestring
    • Peut être null
    default_languageobligatoirestring
    • Une valeur parmi : en | fr
    partsobligatoireobject

    Les parties de chaque langue : la langue par défaut toujours, l’autre quand elle a une partie.

    enobject

    Les parties qu’une langue possède.

    emailobligatoireboolean

    Si cette langue a une partie courriel.

    smsobligatoireboolean

    Si cette langue a une partie SMS.

    pushboolean

    Si cette langue a une partie push.

    frobject

    Les parties qu’une langue possède.

    emailobligatoireboolean

    Si cette langue a une partie courriel.

    smsobligatoireboolean

    Si cette langue a une partie SMS.

    pushboolean

    Si cette langue a une partie push.

    published_versionobligatoireinteger

    La version qu’utilisent les envois de production. Null jusqu’à la première publication.

    • Peut être null
    has_unpublished_changesobligatoireboolean

    True quand le brouillon diffère de la version publiée dans une partie ou une langue.

    created_atobligatoirestring
    • Format : date-time
    updated_atobligatoirestring
    • Format : date-time
    has_moreobligatoireboolean
    next_cursorobligatoirestring

    Passez-le comme cursor pour la page suivante. Null sur la dernière page.

    • Peut être null
  • 401Clé API manquante, invalide, révoquée ou expirée.Le corps d’erreur standard.
  • 402Le compte n’a aucun solde, ou une clé LIVE a été utilisée avant la première recharge.Le corps d’erreur standard.
  • 403La clé API ne dispose pas de la permission requise pour cette opération, ou le compte est suspendu ou fermé.Le corps d’erreur standard.
  • 422VALIDATION_ERROR : la requête n’a pas passé la validation ; details indique les champs en cause.Le corps d’erreur standard.
  • 429Limite de débit atteinte : 100 requêtes par seconde et par compte, ou une limite propre à la route (Retry-After est défini le cas échéant).Le corps d’erreur standard.
  • 500Erreur de serveur inattendue.Le corps d’erreur standard.

Exemple

const { data, error } = await honkio.templates.list({ limit: 20 })
if (error) throw new Error(error.message)
for (const t of data.data) console.log(t.alias, t.published_version)
post/v1/templates

Créer un modèle

Permissionemail_templates:wSDK Node.jshonkio.templates.create()

Enregistre un brouillon avec une partie pour chaque canal sur lequel vous l’envoyez, en anglais, en français ou les deux. Un envoi de production utilise un modèle une fois publié; un envoi avec une clé de test utilise le brouillon, publié ou non. Un compte peut avoir jusqu’à 200 modèles, y compris ceux créés par /v1/email-templates.

Nécessite email_templates:w.

Corps de la requête

Un nouveau modèle. Il est enregistré comme brouillon : publiez-le avant de vous en servir pour envoyer avec une clé de production.

ChampTypeDescription
nameobligatoirestring

Un libellé pour vous, jusqu’à 200 caractères.

  • Au moins 1 caractères
  • Au plus 200 caractères
aliasstring

Pour envoyer avec lui plutôt qu’avec l’identifiant : de 1 à 63 lettres minuscules, chiffres, - ou _, commençant par une lettre ou un chiffre. null le retire.

  • Par défaut : null
  • Peut être null
default_languagestring

La langue qu’un envoi utilise quand il n’en nomme aucune, et celle dont les parties remplacent une partie qui manque à l’autre langue. en sauf si vous indiquez fr.

  • Une valeur parmi : en | fr
  • Par défaut : en
from_addressstring

L’expéditeur de courriel par défaut. Un envoi peut indiquer le sien.

  • Peut être null
reply_tostring | string[]

L’adresse de réponse de courriel par défaut : une chaîne ou un tableau. Un envoi peut indiquer la sienne.

variables[]object[]

Chaque variable que le modèle utilise, dans n’importe quelle partie ou langue, chacune avec une valeur de repli facultative. Un envoi qui en laisse une sans valeur ni valeur de repli est refusé.

  • Par défaut : []
keyobligatoirestring

Le nom de la variable : jusqu’à 64 caractères.

  • Au moins 1 caractères
  • Au plus 64 caractères
fallbackstring

Utilisée quand un envoi ne fournit aucune valeur : jusqu’à 1000 caractères.

  • Au plus 1000 caractères
partsobligatoireobject

Les parties du modèle par langue : en, fr ou les deux. La langue par défaut doit avoir au moins une partie, et l’autre langue ne peut avoir que des parties que la langue par défaut a. Un envoi dans une langue utilise la partie de cette langue pour le canal, sinon celle de la langue par défaut.

enobject

Les parties en anglais.

emailobject

La partie courriel : un objet et un corps html, un corps texte ou les deux.

  • Peut être null
subjectobligatoirestring

Jusqu’à 998 caractères sur une ligne. Les variables vont entre doubles accolades, comme {{ first_name }}.

  • Au moins 1 caractères
  • Au plus 998 caractères
htmlstring

Le corps HTML, jusqu’à 2 Mo. Les valeurs des variables sont toujours échappées pour le HTML.

  • Peut être null
textstring

Le corps en texte brut, jusqu’à 2 Mo.

  • Peut être null
smsobject

La partie SMS.

  • Peut être null
textobligatoirestring

Texte brut, jusqu’à 1600 caractères avant le remplacement des variables.

  • Au moins 1 caractères
  • Au plus 1600 caractères
pushobject

La partie notification push.

  • Peut être null
titlestring

Facultatif, jusqu’à 1 000 caractères.

  • Au moins 1 caractères
  • Au plus 1000 caractères
  • Par défaut : null
  • Peut être null
bodyobligatoirestring

Jusqu’à 4 000 caractères.

  • Au moins 1 caractères
  • Au plus 4000 caractères
frobject

Les parties en français.

emailobject

La partie courriel : un objet et un corps html, un corps texte ou les deux.

  • Peut être null
subjectobligatoirestring

Jusqu’à 998 caractères sur une ligne. Les variables vont entre doubles accolades, comme {{ first_name }}.

  • Au moins 1 caractères
  • Au plus 998 caractères
htmlstring

Le corps HTML, jusqu’à 2 Mo. Les valeurs des variables sont toujours échappées pour le HTML.

  • Peut être null
textstring

Le corps en texte brut, jusqu’à 2 Mo.

  • Peut être null
smsobject

La partie SMS.

  • Peut être null
textobligatoirestring

Texte brut, jusqu’à 1600 caractères avant le remplacement des variables.

  • Au moins 1 caractères
  • Au plus 1600 caractères
pushobject

La partie notification push.

  • Peut être null
titlestring

Facultatif, jusqu’à 1 000 caractères.

  • Au moins 1 caractères
  • Au plus 1000 caractères
  • Par défaut : null
  • Peut être null
bodyobligatoirestring

Jusqu’à 4 000 caractères.

  • Au moins 1 caractères
  • Au plus 4000 caractères

Réponses

  • 201Le modèle, en brouillon.
    ChampTypeDescription
    idobligatoirestring
    objectobligatoirestring
    • Une valeur parmi : template
    nameobligatoirestring
    aliasobligatoirestring
    • Peut être null
    default_languageobligatoirestring

    La langue qu’un envoi utilise quand il n’en nomme aucune, et celle dont les parties remplacent une partie qui manque à l’autre langue.

    • Une valeur parmi : en | fr
    variables[]obligatoireobject[]
    keyobligatoirestring
    fallbackstring

    Utilisée quand un envoi ne fournit aucune valeur. Absente quand la variable n’en a pas.

    from_addressobligatoirestring

    L’expéditeur de courriel par défaut.

    • Peut être null
    reply_toobligatoirestring[]
    partsobligatoireobject

    Les parties du brouillon par langue : la langue par défaut toujours, l’autre quand elle a une partie.

    enobject

    Les parties d’une langue. Un envoi dans cette langue utilise sa partie pour le canal quand elle en a une, sinon celle de la langue par défaut.

    emailobligatoireobject | any

    La partie courriel, ou null quand cette langue n’en a pas.

    smsobligatoireobject | any

    La partie SMS, ou null quand cette langue n’en a pas.

    pushobject | any

    La partie notification push, ou null quand cette langue n’en a pas.

    frobject

    Les parties d’une langue. Un envoi dans cette langue utilise sa partie pour le canal quand elle en a une, sinon celle de la langue par défaut.

    emailobligatoireobject | any

    La partie courriel, ou null quand cette langue n’en a pas.

    smsobligatoireobject | any

    La partie SMS, ou null quand cette langue n’en a pas.

    pushobject | any

    La partie notification push, ou null quand cette langue n’en a pas.

    published_versionobligatoireinteger

    La version qu’utilisent les envois de production. Null jusqu’à la première publication.

    • Peut être null
    has_unpublished_changesobligatoireboolean

    True quand le brouillon diffère de la version publiée dans une partie ou une langue.

    created_atobligatoirestring
    • Format : date-time
    updated_atobligatoirestring
    • Format : date-time
  • 401Clé API manquante, invalide, révoquée ou expirée.Le corps d’erreur standard.
  • 402Le compte n’a aucun solde, ou une clé LIVE a été utilisée avant la première recharge.Le corps d’erreur standard.
  • 403La clé API ne dispose pas de la permission requise pour cette opération, ou le compte est suspendu ou fermé.Le corps d’erreur standard.
  • 409EMAIL_TEMPLATE_ALIAS_TAKEN : un autre modèle de ce compte utilise déjà cet alias.Le corps d’erreur standard.
  • 422VALIDATION_ERROR (details nomme le champ, comme parts.en.sms.text), EMAIL_TEMPLATE_UNDECLARED_VARIABLE (details.keys) ou TEMPLATE_LIMIT_REACHED (200 modèles par compte, modèles de courriel compris).Le corps d’erreur standard.
  • 429Limite de débit atteinte : 100 requêtes par seconde et par compte, ou une limite propre à la route (Retry-After est défini le cas échéant).Le corps d’erreur standard.
  • 500Erreur de serveur inattendue.Le corps d’erreur standard.

Exemple

const { data: template, error } = await honkio.templates.create({
  name: 'Appointment reminder',
  alias: 'appointment-reminder',
  variables: [{ key: 'time' }],
  parts: {
    en: { sms: { text: 'Reminder: your appointment is at {{ time }}.' } },
    fr: { sms: { text: 'Rappel : votre rendez-vous est à {{ time }}.' } },
  },
})
if (error) throw new Error(error.message)
console.log(template.id)
get/v1/templates/{idOrAlias}

Obtenir un modèle par identifiant ou alias

Permissionemail_templates:rSDK Node.jshonkio.templates.get()

Nécessite email_templates:r.

Paramètres

ParamètreTypeDescription
idOrAliasobligatoirecheminstring
  • Au moins 1 caractères
  • Au plus 200 caractères

Réponses

  • 200Le modèle.
    ChampTypeDescription
    idobligatoirestring
    objectobligatoirestring
    • Une valeur parmi : template
    nameobligatoirestring
    aliasobligatoirestring
    • Peut être null
    default_languageobligatoirestring

    La langue qu’un envoi utilise quand il n’en nomme aucune, et celle dont les parties remplacent une partie qui manque à l’autre langue.

    • Une valeur parmi : en | fr
    variables[]obligatoireobject[]
    keyobligatoirestring
    fallbackstring

    Utilisée quand un envoi ne fournit aucune valeur. Absente quand la variable n’en a pas.

    from_addressobligatoirestring

    L’expéditeur de courriel par défaut.

    • Peut être null
    reply_toobligatoirestring[]
    partsobligatoireobject

    Les parties du brouillon par langue : la langue par défaut toujours, l’autre quand elle a une partie.

    enobject

    Les parties d’une langue. Un envoi dans cette langue utilise sa partie pour le canal quand elle en a une, sinon celle de la langue par défaut.

    emailobligatoireobject | any

    La partie courriel, ou null quand cette langue n’en a pas.

    smsobligatoireobject | any

    La partie SMS, ou null quand cette langue n’en a pas.

    pushobject | any

    La partie notification push, ou null quand cette langue n’en a pas.

    frobject

    Les parties d’une langue. Un envoi dans cette langue utilise sa partie pour le canal quand elle en a une, sinon celle de la langue par défaut.

    emailobligatoireobject | any

    La partie courriel, ou null quand cette langue n’en a pas.

    smsobligatoireobject | any

    La partie SMS, ou null quand cette langue n’en a pas.

    pushobject | any

    La partie notification push, ou null quand cette langue n’en a pas.

    published_versionobligatoireinteger

    La version qu’utilisent les envois de production. Null jusqu’à la première publication.

    • Peut être null
    has_unpublished_changesobligatoireboolean

    True quand le brouillon diffère de la version publiée dans une partie ou une langue.

    created_atobligatoirestring
    • Format : date-time
    updated_atobligatoirestring
    • Format : date-time
  • 401Clé API manquante, invalide, révoquée ou expirée.Le corps d’erreur standard.
  • 402Le compte n’a aucun solde, ou une clé LIVE a été utilisée avant la première recharge.Le corps d’erreur standard.
  • 403La clé API ne dispose pas de la permission requise pour cette opération, ou le compte est suspendu ou fermé.Le corps d’erreur standard.
  • 404NOT_FOUND : aucune ressource correspondante sur ce compte.Le corps d’erreur standard.
  • 429Limite de débit atteinte : 100 requêtes par seconde et par compte, ou une limite propre à la route (Retry-After est défini le cas échéant).Le corps d’erreur standard.
  • 500Erreur de serveur inattendue.Le corps d’erreur standard.

Exemple

cURL
curl https://api.honkio.ca/v1/templates/ID_OR_ALIAS \
  -H "Authorization: Bearer mk_live_YOUR_KEY"
patch/v1/templates/{idOrAlias}

Modifier le brouillon d’un modèle

Permissionemail_templates:mSDK Node.jshonkio.templates.update()

Modifie le brouillon. Les envois de production gardent la version publiée jusqu’à ce que vous publiiez de nouveau; un envoi avec une clé de test utilise le brouillon. L’alias ne fait pas partie du brouillon : sa modification s’applique aux envois immédiatement, de sorte qu’une clé de test ne peut pas le modifier sur un modèle qui a une version publiée (LIVE_KEY_REQUIRED).

Nécessite email_templates:m.

Paramètres

ParamètreTypeDescription
idOrAliasobligatoirecheminstring
  • Au moins 1 caractères
  • Au plus 200 caractères

Corps de la requête

Les champs à modifier dans le brouillon. Les envois de production continuent d’utiliser la version publiée jusqu’à ce que vous publiiez de nouveau.

ChampTypeDescription
namestring

Un libellé pour vous, jusqu’à 200 caractères.

  • Au moins 1 caractères
  • Au plus 200 caractères
aliasstring

Pour envoyer avec lui plutôt qu’avec l’identifiant : de 1 à 63 lettres minuscules, chiffres, - ou _, commençant par une lettre ou un chiffre. null le retire.

  • Peut être null
default_languagestring

La langue qu’un envoi utilise quand il n’en nomme aucune, et celle dont les parties remplacent une partie qui manque à l’autre langue. en sauf si vous indiquez fr.

  • Une valeur parmi : en | fr
from_addressstring

L’expéditeur de courriel par défaut. Un envoi peut indiquer le sien.

  • Peut être null
reply_tostring | string[]

L’adresse de réponse de courriel par défaut : une chaîne ou un tableau. Un envoi peut indiquer la sienne.

variables[]object[]

Chaque variable que le modèle utilise, dans n’importe quelle partie ou langue, chacune avec une valeur de repli facultative. Un envoi qui en laisse une sans valeur ni valeur de repli est refusé.

keyobligatoirestring

Le nom de la variable : jusqu’à 64 caractères.

  • Au moins 1 caractères
  • Au plus 64 caractères
fallbackstring

Utilisée quand un envoi ne fournit aucune valeur : jusqu’à 1000 caractères.

  • Au plus 1000 caractères
partsobject

Les parties du modèle par langue : en, fr ou les deux. La langue par défaut doit avoir au moins une partie, et l’autre langue ne peut avoir que des parties que la langue par défaut a. Un envoi dans une langue utilise la partie de cette langue pour le canal, sinon celle de la langue par défaut. Chaque partie que vous nommez remplace cette partie, null la retire, et les parties omises sont conservées. Une langue mise à null perd toutes ses parties.

enobject

Les parties en anglais.

  • Peut être null
emailobject

La partie courriel : un objet et un corps html, un corps texte ou les deux.

  • Peut être null
subjectobligatoirestring

Jusqu’à 998 caractères sur une ligne. Les variables vont entre doubles accolades, comme {{ first_name }}.

  • Au moins 1 caractères
  • Au plus 998 caractères
htmlstring

Le corps HTML, jusqu’à 2 Mo. Les valeurs des variables sont toujours échappées pour le HTML.

  • Peut être null
textstring

Le corps en texte brut, jusqu’à 2 Mo.

  • Peut être null
smsobject

La partie SMS.

  • Peut être null
textobligatoirestring

Texte brut, jusqu’à 1600 caractères avant le remplacement des variables.

  • Au moins 1 caractères
  • Au plus 1600 caractères
pushobject

La partie notification push.

  • Peut être null
titlestring

Facultatif, jusqu’à 1 000 caractères.

  • Au moins 1 caractères
  • Au plus 1000 caractères
  • Par défaut : null
  • Peut être null
bodyobligatoirestring

Jusqu’à 4 000 caractères.

  • Au moins 1 caractères
  • Au plus 4000 caractères
frobject

Les parties en français.

  • Peut être null
emailobject

La partie courriel : un objet et un corps html, un corps texte ou les deux.

  • Peut être null
subjectobligatoirestring

Jusqu’à 998 caractères sur une ligne. Les variables vont entre doubles accolades, comme {{ first_name }}.

  • Au moins 1 caractères
  • Au plus 998 caractères
htmlstring

Le corps HTML, jusqu’à 2 Mo. Les valeurs des variables sont toujours échappées pour le HTML.

  • Peut être null
textstring

Le corps en texte brut, jusqu’à 2 Mo.

  • Peut être null
smsobject

La partie SMS.

  • Peut être null
textobligatoirestring

Texte brut, jusqu’à 1600 caractères avant le remplacement des variables.

  • Au moins 1 caractères
  • Au plus 1600 caractères
pushobject

La partie notification push.

  • Peut être null
titlestring

Facultatif, jusqu’à 1 000 caractères.

  • Au moins 1 caractères
  • Au plus 1000 caractères
  • Par défaut : null
  • Peut être null
bodyobligatoirestring

Jusqu’à 4 000 caractères.

  • Au moins 1 caractères
  • Au plus 4000 caractères

Réponses

  • 200Le modèle avec son brouillon modifié.
    ChampTypeDescription
    idobligatoirestring
    objectobligatoirestring
    • Une valeur parmi : template
    nameobligatoirestring
    aliasobligatoirestring
    • Peut être null
    default_languageobligatoirestring

    La langue qu’un envoi utilise quand il n’en nomme aucune, et celle dont les parties remplacent une partie qui manque à l’autre langue.

    • Une valeur parmi : en | fr
    variables[]obligatoireobject[]
    keyobligatoirestring
    fallbackstring

    Utilisée quand un envoi ne fournit aucune valeur. Absente quand la variable n’en a pas.

    from_addressobligatoirestring

    L’expéditeur de courriel par défaut.

    • Peut être null
    reply_toobligatoirestring[]
    partsobligatoireobject

    Les parties du brouillon par langue : la langue par défaut toujours, l’autre quand elle a une partie.

    enobject

    Les parties d’une langue. Un envoi dans cette langue utilise sa partie pour le canal quand elle en a une, sinon celle de la langue par défaut.

    emailobligatoireobject | any

    La partie courriel, ou null quand cette langue n’en a pas.

    smsobligatoireobject | any

    La partie SMS, ou null quand cette langue n’en a pas.

    pushobject | any

    La partie notification push, ou null quand cette langue n’en a pas.

    frobject

    Les parties d’une langue. Un envoi dans cette langue utilise sa partie pour le canal quand elle en a une, sinon celle de la langue par défaut.

    emailobligatoireobject | any

    La partie courriel, ou null quand cette langue n’en a pas.

    smsobligatoireobject | any

    La partie SMS, ou null quand cette langue n’en a pas.

    pushobject | any

    La partie notification push, ou null quand cette langue n’en a pas.

    published_versionobligatoireinteger

    La version qu’utilisent les envois de production. Null jusqu’à la première publication.

    • Peut être null
    has_unpublished_changesobligatoireboolean

    True quand le brouillon diffère de la version publiée dans une partie ou une langue.

    created_atobligatoirestring
    • Format : date-time
    updated_atobligatoirestring
    • Format : date-time
  • 401Clé API manquante, invalide, révoquée ou expirée.Le corps d’erreur standard.
  • 402Le compte n’a aucun solde, ou une clé LIVE a été utilisée avant la première recharge.Le corps d’erreur standard.
  • 403LIVE_KEY_REQUIRED : une clé de test ne peut pas modifier l’alias d’un modèle qui a une version publiée, car des envois de production peuvent utiliser cet alias. Elle peut modifier tous les autres champs du brouillon. Aussi FORBIDDEN lorsque la clé ne dispose pas de la permission requise par cette opération, ou lorsque le compte est suspendu ou fermé.Le corps d’erreur standard.
  • 404NOT_FOUND : aucune ressource correspondante sur ce compte.Le corps d’erreur standard.
  • 409EMAIL_TEMPLATE_ALIAS_TAKEN : un autre modèle de ce compte utilise déjà cet alias.Le corps d’erreur standard.
  • 422VALIDATION_ERROR (details nomme le champ) ou EMAIL_TEMPLATE_UNDECLARED_VARIABLE (details.keys).Le corps d’erreur standard.
  • 429Limite de débit atteinte : 100 requêtes par seconde et par compte, ou une limite propre à la route (Retry-After est défini le cas échéant).Le corps d’erreur standard.
  • 500Erreur de serveur inattendue.Le corps d’erreur standard.

Exemple

const { error } = await honkio.templates.update('appointment-reminder', {
  parts: { fr: { sms: { text: 'Rappel : rendez-vous à {{ time }}.' } } },
})
if (error) throw new Error(error.message)
delete/v1/templates/{idOrAlias}

Supprimer un modèle et ses versions

Permissionemail_templates:dSDK Node.jshonkio.templates.remove()

Les envois qui nomment le modèle répondent ensuite NOT_FOUND. Refusé avec EMAIL_TEMPLATE_IN_USE tant qu’un courriel programmé l’utilise. Clés de production seulement (LIVE_KEY_REQUIRED).

Nécessite email_templates:d.

Paramètres

ParamètreTypeDescription
idOrAliasobligatoirecheminstring
  • Au moins 1 caractères
  • Au plus 200 caractères

Réponses

  • 204Supprimé, avec ses versions.
  • 401Clé API manquante, invalide, révoquée ou expirée.Le corps d’erreur standard.
  • 402Le compte n’a aucun solde, ou une clé LIVE a été utilisée avant la première recharge.Le corps d’erreur standard.
  • 403LIVE_KEY_REQUIRED : les modèles n’ont pas de mode test, et cette opération change ce que les envois de production reçoivent. Une clé de test peut créer un modèle, modifier son brouillon et envoyer des courriels de test qui utilisent le brouillon. Aussi FORBIDDEN lorsque la clé ne dispose pas de la permission requise par cette opération, ou lorsque le compte est suspendu ou fermé.Le corps d’erreur standard.
  • 404NOT_FOUND : aucune ressource correspondante sur ce compte.Le corps d’erreur standard.
  • 409EMAIL_TEMPLATE_IN_USE : un courriel programmé utilise ce modèle.Le corps d’erreur standard.
  • 429Limite de débit atteinte : 100 requêtes par seconde et par compte, ou une limite propre à la route (Retry-After est défini le cas échéant).Le corps d’erreur standard.
  • 500Erreur de serveur inattendue.Le corps d’erreur standard.

Exemple

cURL
curl -X DELETE https://api.honkio.ca/v1/templates/ID_OR_ALIAS \
  -H "Authorization: Bearer mk_live_YOUR_KEY"
post/v1/templates/{idOrAlias}/publish

Publier le brouillon en tant que nouvelle version

Permissionemail_templates:mSDK Node.jshonkio.templates.publish()

La nouvelle version contient chaque partie dans chaque langue. Les envois de production l’utilisent aussitôt. Clés de production seulement (LIVE_KEY_REQUIRED) : un envoi avec une clé de test utilise le brouillon et n’a pas besoin de publication.

Nécessite email_templates:m.

Paramètres

ParamètreTypeDescription
idOrAliasobligatoirecheminstring
  • Au moins 1 caractères
  • Au plus 200 caractères

Réponses

  • 200Le modèle, avec la nouvelle version publiée. Quand rien n’a changé depuis la dernière publication, le modèle tel quel, sans nouvelle version.
    ChampTypeDescription
    idobligatoirestring
    objectobligatoirestring
    • Une valeur parmi : template
    nameobligatoirestring
    aliasobligatoirestring
    • Peut être null
    default_languageobligatoirestring

    La langue qu’un envoi utilise quand il n’en nomme aucune, et celle dont les parties remplacent une partie qui manque à l’autre langue.

    • Une valeur parmi : en | fr
    variables[]obligatoireobject[]
    keyobligatoirestring
    fallbackstring

    Utilisée quand un envoi ne fournit aucune valeur. Absente quand la variable n’en a pas.

    from_addressobligatoirestring

    L’expéditeur de courriel par défaut.

    • Peut être null
    reply_toobligatoirestring[]
    partsobligatoireobject

    Les parties du brouillon par langue : la langue par défaut toujours, l’autre quand elle a une partie.

    enobject

    Les parties d’une langue. Un envoi dans cette langue utilise sa partie pour le canal quand elle en a une, sinon celle de la langue par défaut.

    emailobligatoireobject | any

    La partie courriel, ou null quand cette langue n’en a pas.

    smsobligatoireobject | any

    La partie SMS, ou null quand cette langue n’en a pas.

    pushobject | any

    La partie notification push, ou null quand cette langue n’en a pas.

    frobject

    Les parties d’une langue. Un envoi dans cette langue utilise sa partie pour le canal quand elle en a une, sinon celle de la langue par défaut.

    emailobligatoireobject | any

    La partie courriel, ou null quand cette langue n’en a pas.

    smsobligatoireobject | any

    La partie SMS, ou null quand cette langue n’en a pas.

    pushobject | any

    La partie notification push, ou null quand cette langue n’en a pas.

    published_versionobligatoireinteger

    La version qu’utilisent les envois de production. Null jusqu’à la première publication.

    • Peut être null
    has_unpublished_changesobligatoireboolean

    True quand le brouillon diffère de la version publiée dans une partie ou une langue.

    created_atobligatoirestring
    • Format : date-time
    updated_atobligatoirestring
    • Format : date-time
  • 401Clé API manquante, invalide, révoquée ou expirée.Le corps d’erreur standard.
  • 402Le compte n’a aucun solde, ou une clé LIVE a été utilisée avant la première recharge.Le corps d’erreur standard.
  • 403LIVE_KEY_REQUIRED : les modèles n’ont pas de mode test, et cette opération change ce que les envois de production reçoivent. Une clé de test peut créer un modèle, modifier son brouillon et envoyer des courriels de test qui utilisent le brouillon. Aussi FORBIDDEN lorsque la clé ne dispose pas de la permission requise par cette opération, ou lorsque le compte est suspendu ou fermé.Le corps d’erreur standard.
  • 404NOT_FOUND : aucune ressource correspondante sur ce compte.Le corps d’erreur standard.
  • 422VALIDATION_ERROR : la requête n’a pas passé la validation ; details indique les champs en cause.Le corps d’erreur standard.
  • 429Limite de débit atteinte : 100 requêtes par seconde et par compte, ou une limite propre à la route (Retry-After est défini le cas échéant).Le corps d’erreur standard.
  • 500Erreur de serveur inattendue.Le corps d’erreur standard.

Exemple

cURL
curl -X POST https://api.honkio.ca/v1/templates/ID_OR_ALIAS/publish \
  -H "Authorization: Bearer mk_live_YOUR_KEY"
post/v1/templates/{idOrAlias}/rollback

Republier une version antérieure en tant que nouvelle version

Permissionemail_templates:mSDK Node.jshonkio.templates.rollback()

Remplace le brouillon, chaque partie et chaque langue, par la version antérieure et la publie. Clés de production seulement (LIVE_KEY_REQUIRED).

Nécessite email_templates:m.

Paramètres

ParamètreTypeDescription
idOrAliasobligatoirecheminstring
  • Au moins 1 caractères
  • Au plus 200 caractères

Corps de la requête

La version à publier de nouveau.

ChampTypeDescription
versionobligatoireinteger

Un numéro de version publiée, tiré de GET /v1/templates/{idOrAlias}/versions.

  • Minimum : 1
  • Maximum : 9007199254740991

Réponses

  • 200Le modèle, avec la version antérieure publiée de nouveau comme nouvelle version.
    ChampTypeDescription
    idobligatoirestring
    objectobligatoirestring
    • Une valeur parmi : template
    nameobligatoirestring
    aliasobligatoirestring
    • Peut être null
    default_languageobligatoirestring

    La langue qu’un envoi utilise quand il n’en nomme aucune, et celle dont les parties remplacent une partie qui manque à l’autre langue.

    • Une valeur parmi : en | fr
    variables[]obligatoireobject[]
    keyobligatoirestring
    fallbackstring

    Utilisée quand un envoi ne fournit aucune valeur. Absente quand la variable n’en a pas.

    from_addressobligatoirestring

    L’expéditeur de courriel par défaut.

    • Peut être null
    reply_toobligatoirestring[]
    partsobligatoireobject

    Les parties du brouillon par langue : la langue par défaut toujours, l’autre quand elle a une partie.

    enobject

    Les parties d’une langue. Un envoi dans cette langue utilise sa partie pour le canal quand elle en a une, sinon celle de la langue par défaut.

    emailobligatoireobject | any

    La partie courriel, ou null quand cette langue n’en a pas.

    smsobligatoireobject | any

    La partie SMS, ou null quand cette langue n’en a pas.

    pushobject | any

    La partie notification push, ou null quand cette langue n’en a pas.

    frobject

    Les parties d’une langue. Un envoi dans cette langue utilise sa partie pour le canal quand elle en a une, sinon celle de la langue par défaut.

    emailobligatoireobject | any

    La partie courriel, ou null quand cette langue n’en a pas.

    smsobligatoireobject | any

    La partie SMS, ou null quand cette langue n’en a pas.

    pushobject | any

    La partie notification push, ou null quand cette langue n’en a pas.

    published_versionobligatoireinteger

    La version qu’utilisent les envois de production. Null jusqu’à la première publication.

    • Peut être null
    has_unpublished_changesobligatoireboolean

    True quand le brouillon diffère de la version publiée dans une partie ou une langue.

    created_atobligatoirestring
    • Format : date-time
    updated_atobligatoirestring
    • Format : date-time
  • 401Clé API manquante, invalide, révoquée ou expirée.Le corps d’erreur standard.
  • 402Le compte n’a aucun solde, ou une clé LIVE a été utilisée avant la première recharge.Le corps d’erreur standard.
  • 403LIVE_KEY_REQUIRED : les modèles n’ont pas de mode test, et cette opération change ce que les envois de production reçoivent. Une clé de test peut créer un modèle, modifier son brouillon et envoyer des courriels de test qui utilisent le brouillon. Aussi FORBIDDEN lorsque la clé ne dispose pas de la permission requise par cette opération, ou lorsque le compte est suspendu ou fermé.Le corps d’erreur standard.
  • 404NOT_FOUND : aucun modèle correspondant, ou aucune version correspondante de ce modèle.Le corps d’erreur standard.
  • 422VALIDATION_ERROR : la requête n’a pas passé la validation ; details indique les champs en cause.Le corps d’erreur standard.
  • 429Limite de débit atteinte : 100 requêtes par seconde et par compte, ou une limite propre à la route (Retry-After est défini le cas échéant).Le corps d’erreur standard.
  • 500Erreur de serveur inattendue.Le corps d’erreur standard.

Exemple

cURL
curl -X POST https://api.honkio.ca/v1/templates/ID_OR_ALIAS/rollback \
  -H "Authorization: Bearer mk_live_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "version": 2
  }'
get/v1/templates/{idOrAlias}/versions

Lister les versions publiées d’un modèle, de la plus récente à la plus ancienne

Permissionemail_templates:rSDK Node.jshonkio.templates.versions()

Nécessite email_templates:r.

Paramètres

ParamètreTypeDescription
idOrAliasobligatoirecheminstring
  • Au moins 1 caractères
  • Au plus 200 caractères

Réponses

  • 200Les versions publiées, de la plus récente à la plus ancienne.
    ChampTypeDescription
    data[]obligatoireobject[]
    versionobligatoireinteger
    published_atobligatoirestring
    • Format : date-time
    currentobligatoireboolean

    True pour la version qu’utilisent les envois de production.

  • 401Clé API manquante, invalide, révoquée ou expirée.Le corps d’erreur standard.
  • 402Le compte n’a aucun solde, ou une clé LIVE a été utilisée avant la première recharge.Le corps d’erreur standard.
  • 403La clé API ne dispose pas de la permission requise pour cette opération, ou le compte est suspendu ou fermé.Le corps d’erreur standard.
  • 404NOT_FOUND : aucune ressource correspondante sur ce compte.Le corps d’erreur standard.
  • 429Limite de débit atteinte : 100 requêtes par seconde et par compte, ou une limite propre à la route (Retry-After est défini le cas échéant).Le corps d’erreur standard.
  • 500Erreur de serveur inattendue.Le corps d’erreur standard.

Exemple

cURL
curl https://api.honkio.ca/v1/templates/ID_OR_ALIAS/versions \
  -H "Authorization: Bearer mk_live_YOUR_KEY"