Hébergement automatiques des images
Cette étude de cas a pour but de vous montrer comment héberger automatiquement vos images sur Mindbaz lors de la création de votre campagne.
Rappel de la fonctionnalité sur Mindbaz :
- Lors de la création de votre campagne, dans la partie HTML, il est possible de demander l'hébergement automatique des images. Si vous décidez d'utiliser cette fonctionnalité, il vous sera demandé de choisir un dossier pour héberger les images.
- Il est maintenant possible de le faire également via l'API.
Récupérer les dossiers
Pour héberger automatiquement les images, nous aurons besoin de l'identifiant du répertoire dans lequel les images seront uploadées. L'api permet de récupérer la liste des dossiers en faisant un appel GET sur le endpoint suivant : https://api.mindbaz.com/api/{idsite}/directories/Image/all
Voici un exemple de retour que l'on peut récuperer
{
"success": true,
"data": [
{
"id": 1,
"name": "Mon répertoire",
"isSystem": true,
"idParent": 0,
"dirType": "Image"
}
],
"error": "string",
"typeName": "string"
}
Nous gardons l'id de côté. Celui-ci nous sera utile plus tard.
Création de la campagne
Maintenant créons notre campagne. Si vous souhaitez créer une campagne simple, une documentation complète est disponible ici
Nous allons voir la liste des paramètres à ajouter si vous souhaitez héberger automatiquement les images.
Voici la liste des nouveaux champs:
Nom | Description | Type |
---|---|---|
AutoHostPictures | Héberger automatiquement les images | Booléen |
idDirectory | Identifiant du répertoire pour héberger les images (-1 pour la racine) | Nombre entier |
Gestion des images
Si vous souhaitez héberger automatiquement les images, il vous suffit de renseigner le paramètres AutoHostPictures à true et renseigner l'idDirectory avec l'identifiant que nous avons récupéré plus tôt via l'appel https://api.mindbaz.com/api/{idsite}/directories/Image/all
Si l'hébergement automatique est sélectionné, Mindbaz va lire l'ensemble du HTML de la campagne pour y trouver l'ensemble des images. Pour chacune de ces images, nous allons la télécharger et l'héberger sur nos serveurs.
De plus, Mindbaz s'occupera de modifier votre HTML avec les nouvelles URLS.
Nous avons également modifié le retour pour y ajouter le statut des images. Vous pourrez y voir pour chacune de vos images l'ancienne url, la nouvelle url et le statut.
- Les extensions autorisées sont : jpg jpeg png gif svg
- Le poids max d’une image ne peut dépasser 800ko
Attention, si une image avec le même nom de fichier existe déjà dans le répertoire d’image Mindbaz, elle sera automatiquement supprimée avant d’être reuploadée. Et cela peut importe dans quel répertoire d’origine elle se trouvait!
Exemple
Par exemple, avec le contenu html suivant
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<body>Hello [[FIELD.15]] [[FIELD.14]]
<img src="https://www.mindbaz.com/wp-content/uploads/2021/02/ico-mail@2x-124.png" /><br /><img src="https://www.mindbaz.com/wp-content/uploads/2021/02/mindbaz-bleu@2x-540.png" /><br /></body>
</html>
...et un répertoire d'image (id 1489) nommé ”campApi”, il faut faire à un appel POST /api/{idsite}/campaigns avec comme paramètres d'entrée:
{
"parameters": {
"idConfiguration": 1,
"idTestTarget": 7037,
"mode": 0,
"name": "test API",
"sendingSpeed": 100,
"subject": "Ceci est un test",
"type": 2
},
"htmlContent": "<!DOCTYPE html PUBLIC ""-//W3C//DTD XHTML 1.0 Transitional//EN"" ""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"">
<html>
<body>Hello [[FIELD.15]] [[FIELD.14]]
<img src=""https://www.mindbaz.com/wp-content/uploads/2021/02/ico-mail@2x-124.png"" /><br /><img src=""https://www.mindbaz.com/wp-content/uploads/2021/02/mindbaz-bleu@2x-540.png"" /><br /></body>
</html>",
"AutoHostPictures" : true,
"idDirectory" : 1489
}
On obtient comme réponse dans autoHostPicturesResult :
[{
"currentUrl" : "https://www.mindbaz.com/wp-content/uploads/2021/02/ico-mail@2x-124.png",
"newUrl": "https://imgrp.mindbaz.com/100/campApi/ico-mail@2x-124.png",
"status": "uploaded"
},{
"currentUrl":"https://www.mindbaz.com/wp-content/uploads/2021/02/mindbaz-bleu@2x-540.png" ,
"newUrl" : "https://imgrp.mindbaz.com/100/campApi/mindbaz-bleu@2x-540.png" ,
"status" : "uploaded"
}]
On remarque que toutes les images se trouvent maintenant dans le répertoire “campApi” et que l’arborescence des sous-répertoires d’origine n’est pas conservée.
Et par conséquent, si dans votre HTML, vous avez plusieurs images différentes avec le même nom mais dans des sous-répertoires différents, les images seront importés dans le même répertoire mindbaz et donc seront écrasées dans un même fichier.