Référence de l’API
Modèles de courriel
Stocker des modèles de courriel et publier des versions à envoyer par identifiant ou par alias.
/v1/email-templatesLister les modèles de courriel
email_templates:rSDK Node.jshonkio.templates.list()Nécessite email_templates:r.
Réponses
- 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.
- 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)curl https://api.honkio.ca/v1/email-templates \
-H "Authorization: Bearer mk_live_YOUR_KEY"/v1/email-templatesCréer un modèle de courriel
email_templates:wSDK Node.jshonkio.templates.create()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.
| Champ | Type | Description |
|---|---|---|
nameobligatoire | string | Un libellé pour vous, jusqu’à 200 caractères.
|
alias | string | 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.
|
subjectobligatoire | string | Jusqu’à 998 caractères. Les variables se placent entre doubles accolades, par exemple {{ first_name }}.
|
html | string | Le corps HTML. Un modèle exige html, text ou les deux. Les valeurs des variables sont toujours échappées en HTML.
|
text | string | Le corps en texte brut.
|
from | string | L’expéditeur par défaut. Un envoi peut définir le sien.
|
reply_to | string | string[] | L’adresse de réponse par défaut : une chaîne ou un tableau. Un envoi peut définir la sienne. |
variables[] | object[] | Chaque variable qu’utilise le modèle, avec une valeur de repli au besoin. Un envoi qui en laisse une sans valeur ni valeur de repli est refusé.
|
keyobligatoire | string | Le nom de la variable : jusqu’à 64 caractères.
|
fallback | string | Utilisée quand un envoi ne fournit aucune valeur : jusqu’à 1000 caractères.
|
Réponses
- 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.
- 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: 'Shipping update',
alias: 'shipping-update',
subject: 'Your order is on its way, {{ firstName }}',
html: '<p>Hi {{ firstName }}, your order has shipped.</p>',
variables: [{ key: 'firstName', fallback: 'there' }],
})
if (error) throw new Error(error.message)
console.log(template.id)curl -X POST https://api.honkio.ca/v1/email-templates \
-H "Authorization: Bearer mk_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Shipping update",
"alias": "shipping-update",
"subject": "Your order is on its way, {{ firstName }}",
"html": "<p>Hi {{ firstName }}, your order has shipped.</p>",
"variables": [
{
"key": "firstName",
"fallback": "there"
}
]
}'/v1/email-templates/{idOrAlias}Obtenir un modèle de courriel par identifiant ou par alias
email_templates:rSDK Node.jshonkio.templates.get()Nécessite email_templates:r.
Paramètres
| Paramètre | Type | Description |
|---|---|---|
idOrAliasobligatoirechemin | string |
|
Réponses
- 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.
- 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.get('shipping-update')
if (error) throw new Error(error.message)
console.log(data.published_version, data.has_unpublished_changes)curl https://api.honkio.ca/v1/email-templates/ID_OR_ALIAS \
-H "Authorization: Bearer mk_live_YOUR_KEY"/v1/email-templates/{idOrAlias}Modifier le brouillon d’un modèle de courriel
email_templates:mSDK Node.jshonkio.templates.update()Nécessite email_templates:m.
Paramètres
| Paramètre | Type | Description |
|---|---|---|
idOrAliasobligatoirechemin | string |
|
Corps de la requête
Les champs à modifier dans le brouillon. Les envois continuent d’utiliser la version publiée jusqu’à ce que vous publiiez de nouveau.
| Champ | Type | Description |
|---|---|---|
name | string | Un libellé pour vous, jusqu’à 200 caractères.
|
alias | string | 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.
|
subject | string | Jusqu’à 998 caractères. Les variables se placent entre doubles accolades, par exemple {{ first_name }}.
|
html | string | Le corps HTML. Un modèle exige html, text ou les deux. Les valeurs des variables sont toujours échappées en HTML.
|
text | string | Le corps en texte brut.
|
from | string | L’expéditeur par défaut. Un envoi peut définir le sien.
|
reply_to | string | string[] | L’adresse de réponse par défaut : une chaîne ou un tableau. Un envoi peut définir la sienne. |
variables[] | object[] | Chaque variable qu’utilise le modèle, avec une valeur de repli au besoin. Un envoi qui en laisse une sans valeur ni valeur de repli est refusé. |
keyobligatoire | string | Le nom de la variable : jusqu’à 64 caractères.
|
fallback | string | Utilisée quand un envoi ne fournit aucune valeur : jusqu’à 1000 caractères.
|
Réponses
- 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.
- 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('shipping-update', { subject: 'Shipped: your order, {{ firstName }}' })
if (error) throw new Error(error.message)curl -X PATCH https://api.honkio.ca/v1/email-templates/ID_OR_ALIAS \
-H "Authorization: Bearer mk_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"subject": "Shipped: your order, {{ firstName }}"
}'/v1/email-templates/{idOrAlias}Supprimer un modèle de courriel et ses versions
email_templates:dSDK Node.jshonkio.templates.remove()Nécessite email_templates:d.
Paramètres
| Paramètre | Type | Description |
|---|---|---|
idOrAliasobligatoirechemin | string |
|
Réponses
- 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.
- 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.remove('shipping-update')
if (error) throw new Error(error.message)curl -X DELETE https://api.honkio.ca/v1/email-templates/ID_OR_ALIAS \
-H "Authorization: Bearer mk_live_YOUR_KEY"/v1/email-templates/{idOrAlias}/publishPublier le brouillon en tant que nouvelle version
email_templates:mSDK Node.jshonkio.templates.publish()Nécessite email_templates:m.
Paramètres
| Paramètre | Type | Description |
|---|---|---|
idOrAliasobligatoirechemin | string |
|
Réponses
- 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.
- 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.publish('shipping-update')
if (error) throw new Error(error.message)
console.log(data.published_version)curl -X POST https://api.honkio.ca/v1/email-templates/ID_OR_ALIAS/publish \
-H "Authorization: Bearer mk_live_YOUR_KEY"/v1/email-templates/{idOrAlias}/rollbackRepublier une version antérieure en tant que nouvelle version
email_templates:mSDK Node.jshonkio.templates.rollback()Nécessite email_templates:m.
Paramètres
| Paramètre | Type | Description |
|---|---|---|
idOrAliasobligatoirechemin | string |
|
Corps de la requête
La version à publier de nouveau.
| Champ | Type | Description |
|---|---|---|
versionobligatoire | integer | Un numéro de version publiée, tiré de GET /v1/email-templates/{idOrAlias}/versions.
|
Réponses
- 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.
- 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.rollback('shipping-update', { version: 2 })
if (error) throw new Error(error.message)
console.log(data.published_version)curl -X POST https://api.honkio.ca/v1/email-templates/ID_OR_ALIAS/rollback \
-H "Authorization: Bearer mk_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"version": 2
}'/v1/email-templates/{idOrAlias}/versionsLister les versions publiées, des plus récentes aux plus anciennes
email_templates:rSDK Node.jshonkio.templates.versions()Nécessite email_templates:r.
Paramètres
| Paramètre | Type | Description |
|---|---|---|
idOrAliasobligatoirechemin | string |
|
Réponses
- 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.
- 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.versions('shipping-update')
if (error) throw new Error(error.message)
for (const v of data.data) console.log(v.version, v.current)curl https://api.honkio.ca/v1/email-templates/ID_OR_ALIAS/versions \
-H "Authorization: Bearer mk_live_YOUR_KEY"
HonkIO