REST - Exportation de statistiques

Introduction

De nombreux clients ont besoin d’exporter des contacts et diverses données de la plateforme.

Vous trouverez ici un bref aperçu des services web:

http://net.tutsplus.com/tutorials/other/a-beginners-introduction-to-http-and-rest/

Flux de travail général

Pour lancer une exportation, vous devez décider quelles données vous voulez et pour combien de temps. Comme les données sont par message, le fichier peut devenir volumineux si vous choisissez une grande période de temps. La manière recommandée est d’exporter les données une fois par jour.

Les valeurs possibles de la période de temps sont :

  • AUJOURD’HUI
  • DERNIER_JOUR
  • 3_DERNIERS_JOURS
  • DERNIÈRE_SEMAINE

Les valeurs d’exportation possibles sont :

  • LISTES
  • CAMPAIGNES
  • MESSAGES
  • OUVERT
  • ENVOYÉ
  • CLIQUÉS
  • PROJETS
  • HARD_BOUNCES
  • SOFT_BOUNCES
  • OPTOUTS

Les deux valeurs doivent être placées dans une structure json qui sera envoyée avec la demande POST.

  • Une fois que toutes ces informations ont été recueillies, il est temps de faire la demande. La réponse, si tout s’est bien passé, contiendra un identifiant unique qui sera utilisé plus tard. Pour démarrer l’exportation, une requête POST avec des métadonnées décrivant l’importation est envoyée :

    POST <server>/rest/<customerId>/batches/exports/statistics

{

“exportType”: “OPENED”,

“period”: “LAST_2_WEEKS”

}

Exemple de corps de réponse
{
“batchId”: “101111”

}

  • Vous pouvez interroger l’API pour suivre l’avancement de l’exportation. Utilisez le batchId de la requête précédente :

GET <server>/rest/<customerId>/batches/<batchId>

Corps de réponse

{

“id”: 101111,

“type”: ” STAT_EXPORT”,

“customerId”: 0,

“startTime”: 1394636797030,

“endTime”: 1394636799710,

“affected”: 500,

“processed”: 500,

“total”: 501,

“status”: ” PENDING|IN_PROGRESS|FINISHED”

}

  • Lorsque vous obtenez un status=FINISHED, le fichier est disponible pour la récupération.

GET <server>/rest/<customerId>/batches/<batchId>/result/url

Il en résultera une URL que vous pourrez utiliser pour récupérer le fichier exporté. L’url ressemblera à ceci :

https://carma-filetransfer.s3-eu-west-1.amazonaws.com/result/5004/3232465_result.json?Expires=1403187484&AWSAccessKeyId=AKIAJNJRZJQCQ3W66YIQ&Signature=FWZp8noVyxcOflH27k2W7MuNcmM%3D

NOTE : Les données de retour sont en texte, donc assurez-vous de ne pas utiliser l’application/json comme en-tête Accepter pour l’appel.

Vous pouvez également utiliser l’URL suivante pour être redirigé vers le résultat stocké sur amazon s3.

GET <server>/rest/<customerId>/batches/<batchId>/result