Passer au contenu principal

Comment fonctionne l’API de CIsionOne ?

Dans cet article, nous vous expliquons comment fonctionne l’API de CisionOne

C
Écrit par CX Enablement
Mis à jour il y a plus de 4 mois

CisionOne dispose d'une API (Application Programming Interface) pour son module de Surveillance et d’Analyse qui vous permet de connecter les données RP de votre compte à d'autres ensembles de données internes auxquels elle a accès. La connexion de ces données via l'API vous permet de voir un impact plus large sur le ROI et de faire des liens entre les actions effectuées par d'autres départements et les RP.

La connexion API a un code spécifique que les développeurs utilisent pour extraire des données vers d'autres systèmes.

En utilisant notre API, vous pouvez obtenir les informations précieuses dont vous avez besoin dans CisionOne pour rendre compte de vos efforts RP dans vos propres outils de reporting et d'analyse internes. L'API de CisionOne fonctionne à partir de recherches déjà créées dans CisionOne et offre la possibilité de renvoyer ce qui suit :

  1. Une liste de tous les articles et leurs métadonnées correspondant à une recherche.

  2. Une liste de données agrégées à partir d'un ensemble d'articles correspondant à une recherche.

Quelles sont les métriques fournies par l'API ?

Au niveau de l'article, nous avons les métriques suivantes disponibles par article dans une recherche :

  • Date

  • Type de média

  • Titre

  • URL

  • Auteur

  • Sentiment

  • Équivalence publicitaire

Au niveau agrégé, nous avons les statistiques suivantes disponibles pour l'ensemble des articles correspondant à une recherche :

  • Mentions totales

  • Partages Sociaux

  • Équivalence publicitaire

Comment fonctionne l'API de CisionOne ?

Nous respectons notre partenariat et ne fournissons pas de lectorat via l'API.

Afin de prendre en charge la plus large gamme d'outils de business intelligence (BI), nous avons développé notre API de sorte que vous puissiez extraire des données de Cision dans vos applications. Nous n'avons pas de connecteurs directs pour d'autres outils avec notre API CisionOne, donc l'effort de développement pour extraire les données de l'API Cision et les importer dans le système de votre choix vous incombe, ainsi qu'à vos développeurs.

Pour les développeurs

L'API CisionOne utilise des points de terminaison REST pour renvoyer des données formatées en JSON ou CSV. Nous utilisons une authentification basée sur des jetons, qui nécessite qu'un jeton soit défini dans l'en-tête de chaque requête.

Taux de limitation des requêtes:

Les requêtes à l'API sur tous les points de terminaison PEUVENT être limitées à un maximum de 10 requêtes par minute (1 requête toutes les 6 secondes). Les requêtes dépassant la limite de taux PEUVENT recevoir le code de réponse HTTP standard 429 (Trop de requêtes). Les systèmes mettant en œuvre une connexion à l'API CisionOne devront gérer cette réponse de manière appropriée.

Accès à l'API:

L'API utilise une authentification par jeton, fournie en utilisant vos informations d'identification client. Vous avez d'abord besoin d'un jeton d'authentification à transmettre en tant qu'en-tête HTTP pour chaque requête API. Pour obtenir ce jeton, POSTEZ sur https://api.cisionone.com/api/login avec le corps de la requête contenant votre nom d'utilisateur et mot de passe de connexion Cision. Par exemple : {"username":, "password":}

Un exemple de requête CURL pour obtenir un jeton d'authentification :

curl -X POST -H "Content-Type: application/json" -d '{"username":"monnomdutilisateur","password":"monmotdepasse"}' https://api.cisionone.com/api/login

Si tout est configuré correctement, la réponse sera un JSON contenant une chaîne de jeton telle que : {...,"access_token":"o4g0v7a9750d86odujul3o6kauidndbc"}

Pour les appels API ultérieurs, utilisez ce jeton en tant qu'en-tête X-Auth-Token

Exemple : curl -H "X-Auth-Token: o4g0v7a9750d86odujul3o6kauidndbc" ...

Jsonp n'est pas pris en charge mais l'alternative plus moderne et sécurisée CORS l'est : http://en.wikipedia.org/wiki/Cross-origin_resource_sharing

Exemple

"https://api.cisionone.com/api/v2.2/totalmentions?s=4045&range-start=2016-07- 01T12:08:56.235-0700&range-end=2016-08-01T12:08:56.235-0700&page-num=0&page-

size=10&sort=asc"

En consultant les informations renvoyées, vous remarquerez que le lectorat pour les articles en ligne (non diffusés et non imprimés) sera toujours de 0.

En plus des informations renvoyées, il y aura une URL de message HTTP où vous pourrez prendre l'URL de l'en-tête dans la réponse et la suivre pour obtenir un téléchargement incluant les données de lectorat.

Cette URL expire pour des raisons de sécurité, vous aurez donc 5 minutes pour télécharger les données.

En-tête de réponse exemple :

La valeur d'URL dans la propriété d'en-tête x-additional-info renverra un fichier CSV avec les mêmes valeurs que la réponse, plus la valeur réelle du lectorat.

Notez que le fichier expirera après 5 minutes pour des raisons de sécurité. Il suffit d'appeler à nouveau le point de terminaison pour obtenir une nouvelle URL valide.

OBTENIR: /api/v2.2/totalmentions

Paramètres d'URL :

s (obligatoire) : ID de recherche CisionOne (à obtenir à partir de l'URL dans la page de gestion des recherches).

range-start (obligatoire) : date de début de la requête de recherche
range-end (obligatoire) : date de fin de la requête de recherche

page-num (facultatif) : lors de la demande de résultats par page, le numéro de page à renvoyer. S'il est omis, la valeur par défaut est page-num=0, qui est la première page.

page-size (facultatif) : lors de la demande de résultats par page, le nombre maximal de résultats par page. S'il est omis, la valeur par défaut est de 100 enregistrements. Utilisez ce paramètre pour obtenir plus de résultats par page.

sort (facultatif) : {asc | desc} l'ordre de tri des résultats par date (par défaut est décroissant) format (facultatif) : {csv | json} le type de sortie à renvoyer (par défaut est json)

ga-id (facultatif) : Ajoutez des données Google Analytics aux mentions si possible. Cet identifiant Google Analytics correspond à la colonne ga_id de la table google_analytics.

OBTENIR Exemple d'usage:

curl -H "X-Auth-Token: " "https://api.cisionone.com/api/v2.2/totalmentions? s=4045&range-start=2016-07-01T12:08:56.235-0700&range-end=2016-08-01T12:08:56.235-
0700&page-num=0&page-size=10&sort=asc"

OBTENIR Exemple de réponse:

[

{

"adEquivalency": 0.0,

"author": "Audacy",

"avgSessionDuration": 0.0,

"bounceRate": 0.0,

“city": "",

"country": "",

"date": "03/01/22", "goalCompletions": 0,
"goalConversionRate": 0,

"goalValue": 0.0, "impactScore": "low",
"link": "http://staging.cisionone.com/redir?s=300000004916679", "mediaOutlet": "Bernstein & Rahimi Show",
"mediaType": "podcast", "newUsers": 0,
"pageViews": 0,

"pageViewsPerSession": 0.0,

"percentNewSessions": 0.0, "prAttrVisitBreakdown": {}, "prAttrVisitCompetitorBreakdown": {}, "prAttrVisitCompetitorTotal": null, "prAttrVisitData": null,
"readership": 0, // set to 0 or viewership/circulation values in the default response. Check the response header for an url with the complete readership

"sentiment": "neutral", "seoImpact": 0,
"sessions": 0,

"shares": 0,

"socialFacebook": 0,

"socialGoogleplus": 0,

“socialLinkedin": 0,

"socialPinterest": 0,

"socialReddit": 0,

"socialTwitter": 0, "state": "",
"title": "Transition: Station promos are out of control", "transactionRevenue": 0.0,
"url": "https://traffic.omny.fm/d/clips/4b5f9d6d-9214-48cb-"

}

]

OBTENIR Exemple d’en-tête de réponse:

x-additional-info: https://wag-readership-data.s3.amazonaws.com/b571afb7-ec55-403d- b0ec-0dd93e4354bb.csv?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz- Date=20220323T204229Z&X-Amz-SignedHeaders=host&X-Amz-Expires=299&X-Amz- Credential=AKIAQXPAVLA2XAQAG36E%2F20220323%2Fus-east-
1%2Fs3%2Faws4_request&X-Amz- Signature=1314bdda1406e085ddf8041dce5d9928501a71e7dad8465d6117ef5c2dfbbf69

REMARQUE: La valeur URL dans la propriété d’en-tête x-additional-info renverra un fichier CSV avec les mêmes valeurs que la réponse plus la valeur réelle de lectorat. Le fichier expirera après 5 min. Il suffit d’appeler à nouveau le point de terminaison pour obtenir une nouvelle URL valide.

OBTENIR : /api/v2.2/searches

Paramètres d'URL :

shared (optional): true - ajoute un paramètre et définissez-le sur true pour voir les recherches partagées avec l’utilisateur de l’API

OBTENIR Exemple d’usage:

OBTENIR Exemple de réponse:

{

searches": [

{

"id": 12345678,

"title": "My Company", "taxonomy": "COMPANY"

},

{

"id": 12345679,

"title": "My Product", "taxonomy": "CUSTOM"

}

}

OBTENIR : /api/v2.2/stats

Paramètres d'URL:

s (required): cisionone search id (obtain from URL in Search Management page). For example: http://app.cisionone.com/search#/edit/4050

range-start (required): date of search query begin range-end (required): date of search query end

type (optional): {all | ave | readership | totalMentions | socialShares} Either get back all stats, or specify which stat you want returned.

OBTENIR Exemple d'usage:

curl -H "X-Auth-Token: " "http://api.cisionone.com/api/v2.2/stats?s=225993&range- start=2018-02-09T00:00:00.000Z&range-end=2018-05-10T00:00:00.000Z"

OBTENIR Exemple de réponse:

[

{

"status": "Success", "searchId": "1111111",
"searchName": "My Example Search Name", "startDate": "2018-08-01T00:00:00.000-0000", "endDate": "2018-08-31T00:00:00.000-0000",
"data": [

{

"ave": [

{

"isoCode": "$",

"name": "Newspaper", "value": 1954819401
},

{

"isoCode": "$",

"name": "Blog", "value": 56812094
},

{

"isoCode": "$", "name": "Television", "value": 248053677
}

],

“totalAVE": 2259685172

},

{

"readership": [

{

"isoCode": "$",

"name": "Newspaper", "value": 1039797554246
},

{

"isoCode": "$",

"name": "Blog", "value": 30219199437
},

{

"isoCode": "$", "name": "Television", "value": 4907611275
}

],

"totalReadership": 0

},

{

"totalMentions": 527025

},

{

"socialShares": {

"socialFacebookComments": 0,

"socialFacebookLike": 0,

"socialFacebookShare": 0,

"socialFacebookTotal": 15608524,

"socialGoogleplus": 0,

"socialLinkedin": 60531,

"socialPinterest": 34091,

"socialSum": 16265130,

"socialTwitter": 561984

},

"totalSocialShares": 16265130

Avez-vous trouvé la réponse à votre question ?