Developers » Data API » API de reporting v3 » Bien commencer » Faites votre premier appel API
Faites votre premier appel API
Exemple simple
Vous trouverez dans ce tableau l’explication des principaux paramètres. Si vous souhaitez plus d’informations, vous pouvez les trouver dans les articles correspondants de la documentation dans la catégorie Paramètres.
Paramètre | Requis | Description |
---|---|---|
space | oui | Périmètre d’analyse (site ou multi-sites) |
columns | oui | Liste des propriétés et métriques dans l’appel (séparés par des virgules) |
period | oui | Période d’analyse (simple, multiple, relative) |
filter | non | Filtres à appliquer aux propriétés et métriques |
evo | non | Obtenir l’évolution d’un groupe de métriques sur une certaine période de temps. |
sort | oui | Liste des propriétés / métriques selon lesquelles les résultats seront triés. |
max-results | oui | Nombre de résultats dans la page de résultats. |
page-num | oui | Numéro de page de l’ensemble de données. |
options | non | Paramètres supplémentaires: ignored_null_properties : Valeur possible « true » pour spécifier si une ligne dont toutes les propriétés sont nulles ne doit pas apparaître dans le résultat eco_mode : Valeur possible « true » pour activer le mode éco |
Syntaxe des paramètres
Paramètre | Syntaxe |
---|---|
space | « space »: { « s »:[547656] } |
columns | « columns »: [ « visit_device_type », « m_visits » ] |
period | « period »: { « p1 »: [ { « type »: « D », « start »: « 2019-10-20 », « end »: « 2019-10-24 » } ] } |
filter | « filter »: { « metric »: { « m_visits »: { « $eq »: 19 } }, } |
evo | « evo »: { « granularity »: « D », « top »: { « max-results »: 5, « page-num »: 1, « sort »: [« -m_visits »] } } |
sort-by | « sort »: [ « m_visits » ] |
max-results | « max-results »: 50 |
page-num | « page-num »: 1 |
options | « options »: {« ignore_null_properties »: true, « eco_mode »: true} |
Vous trouverez ci-dessous quelques exemples complets pour voir comment cela pourrait fonctionner.
var data = JSON.stringify({ "columns": [ "device_type", "m_visits", "m_users" ], "sort": [ "-m_visits" ], "space": { "s": [429023] }, "period": { "p1": [ { "type": "D", "start": "2019-10-24", "end": "2019-10-24" } ] }, "max-results": 50, "page-num": 1 }); var xhr = new XMLHttpRequest(); xhr.withCredentials = true; xhr.addEventListener("readystatechange", function () { if (this.readyState === 4) { console.log(this.responseText); } }); xhr.open("POST", "https://api.atinternet.io/v3/data/getData"); xhr.setRequestHeader("x-api-key", "YOURAPIKEY"); xhr.send(data);
curl -X POST \ https://api.atinternet.io/v3/data/getData \ -H 'x-api-key: YOURAPIKEY' \ -H 'Content-Type: application/json' \ -d '{ "columns": [ "device_type", "m_visits", "m_users" ], "sort": [ "-m_visits" ], "space": { "s": [429023] }, "period": { "p1": [ { "type": "D", "start": "2019-10-24", "end": "2019-10-24" } ] }, "max-results": 50, "page-num": 1 }'
import http.client conn = http.client.HTTPSConnection("api.atinternet.io") payload = '''{ "columns": [ "device_type", "m_visits", "m_users" ], "sort": [ "-m_visits" ], "space": { "s": [547656] }, "period": { "p1": [ { "type": "D", "start": "2019-10-24", "end": "2019-10-24" } ] }, "max-results": 50, "page-num": 1 } ''' headers = { 'x-api-key': "YOURAPIKEY", 'Content-type': "application/json" } conn.request("POST", "/v3/data/getData", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
request["x-api-key"] = 'YOURAPIKEY' request.body = "{\n \"columns\": [\n \"device_type\",\n \"m_visits\",\n \"m_users\"\n ],\n \"sort\": [\n \"-m_visits\"\n ],\n\"space\": {\n \"s\": [\n 429023\n ]\n },\n \"period\": {\n \"p1\": [\n {\n \"type\": \"D\",\n \"start\": \"2019-10-24\",\n \"end\": \"2019-10-24\"\n }\n ]\n },\n \"max-results\": 50,\n \"page-num\": 1\n}" response = http.request(request) puts response.read_body
Format de sortie
Cette API de reporting v3 vous permet d’obtenir une réponse soit en csv
ou en json
(par défaut) :
- JSON :
https://api.atinternet.io/v3/data/getData
ouhttps://api.atinternet.io/v3/data/json/getData
- CSV :
https://api.atinternet.io/v3/data/csv/getData
POST ou GET ?
La Reporting API v3.0 est conçue pour être utilisée avec la méthode POST. Comme vous l’avez peut-être remarqué, le contenu de l’appel API est de plus en plus long car tous les champs sont bien décrits, et la méthode GET peut être limitée en raison de la longueur de la requête http.
Dernière mise à jour : 20/12/2021