L’API Manadge Extract est une fonctionnalité facultative disponible moyennant des frais supplémentaires. Pour plus d'informations, adressez-vous à votre responsable de la réussite client Triton Digital.
L’API Manadge Extract vous permet d’extraire et d’exporter des données à partir d’un espace de travail Manadge de manière sécurisée et efficace. Cette documentation couvre les points de terminaison disponibles, les formats de réponse et les méthodes d’authentification.
L’API d’extraction est basée sur la fonction d’exportation de l’espace de travail Manadge. Les limites restent les mêmes.
Authentification et accès par jeton
L’API utilise l’authentification par jeton pour garantir un accès sécurisé. Les jetons sont générés sur l’espace de travail de l’interface utilisateur Manadge et sont dédiés à chaque utilisateur. Ces jetons constituent le principal moyen d’authentification pour accéder à l’API.
Utilisation du jeton
Une fois généré, le jeton doit être enregistré manuellement par vous (l’utilisateur) car il ne sera pas accessible par la suite. Vous devez inclure votre jeton en tant qu’authentification de base avec :
Adresse courriel utilisée pour vous connecter à votre espace de travail
Jeton d’API généré sur votre espace de travail
Cycle de vie du jeton
Expiration : les jetons expirent tous les trois mois, pour des raisons de sécurité.
Actualisation : les jetons peuvent être actualisés pour prolonger leur validité de trois mois supplémentaires. Ce processus est géré uniquement dans l’espace de travail de l’interface utilisateur Manadge et ne peut pas être effectué via l’API.
Révocation : les jetons peuvent être révoqués si nécessaire. Encore une fois, cette action est gérée uniquement dans l’espace de travail de l’interface utilisateur Manadge.
Important : Étant donné que la gestion des jetons (actualisation ou révocation) est gérée exclusivement dans l’espace de travail de l’interface utilisateur Manadge et non via l’API, vous devez vous assurer d’actualiser ou de révoquer les jetons si nécessaire via la page appropriée.
Terminaux
GET /config
L’API fournit un point de terminaison pour récupérer les possibilités de configuration d’un rapport. Ce point de terminaison vous permet d’obtenir des informations sur les dimensions, les mesures, les devises, les frais et les autres critères disponibles.
Récupérer la configuration de l’extraction des données
Terminaison :
GET /api/stats/extract/config
Description : récupère des informations sur les dimensions, les mesures, les devises, les frais et les autres critères disponibles concernant l’extraction des données.
Exemple de requête :
curl 'https://<workspace>.manadge.tritondigital.com/api/stats/extract/config'
-u '<your email adress>:<your access token from api key>'
-H 'Content-Type: application/json'
Exemple de réponse :
"views": {
"auction": {
"groups": [
"_all"
],
"id": "auction",
"name": "Auction",
"dimensions": [
{
"name": "Creative Language",
"null_name": "Creative Language Undefined",
"id": "creative_language",
"type": "dimension",
"source": "dimension",
"description": "Language of the creative (provided on the bid response)",
"can_filter": true
},
{
"name": "Device Global Region",
"null_name": "Device Global Region Undefined",
"id": "device_global_region",
"type": "dimension",
"source": "dimension",
"description": "Global territory of bid, retrieved from the IP address",
"can_filter": true
},
{
"name": "App Store URL",
"null_name": "App Store URL Undefined",
"id": "app_store_url",
"type": "dimension",
"source": "dimension",
"description": null,
"can_filter": true
},
...
},
"bid": {
"groups": [
"_all"
],
"id": "bid",
"name": "Bid",
"dimensions": [
{
"name": "Bid Response Status",
"null_name": "Bid Response Status Undefined",
"id": "bid_response_status",
"type": "dimension",
"source": "dimension",
"description": null,
"can_filter": true
},
{
"name": "Creative Language",
"null_name": "Creative Language Undefined",
"id": "creative_language",
"type": "dimension",
"source": "dimension",
"description": "Language of the creative (provided on the bid response)",
"can_filter": true
},
{
"name": "Device Global Region",
"null_name": "Device Global Region Undefined",
"id": "device_global_region",
"type": "dimension",
"source": "dimension",
"description": "Global territory of bid, retrieved from the IP address",
"can_filter": true
},"
},
...
}
}
}
Vous devez utiliser la route
/config
pour collecter les dimensions et les indicateurs de votre requête. N’utilisez pas les dimensions et les indicateurs de l’exemple ci-dessus, car ils peuvent changer en fonction de l’évolution de l’API et certains éléments peuvent être spécifiques à des comptes individuels.
PUBLICATION /extract
L’API fournit un point de terminaison pour générer des rapports en extrayant des fichiers ZIP, notamment :
Les métadonnées du rapport (date, filtres, dimensions, période, etc.)
Les fichiers CSV avec les données.
Ce point de terminaison vous permet de définir des paramètres tels que les dates, la devise, les dimensions, les mesures, le tri par, les filtres et le type de vue, pour générer le rapport.
Générer un rapport
Point de terminaison :
POST /api/stats/extract
Méthode : POST
Description : génère un rapport en extrayant des données au format Parquet en fonction de paramètres spécifiés.
Corps de la demande :
dates
*: UnDateQuery
représentant la plage de dates du rapport.dimensions
*: Une liste deDimension
objets spécifiant les dimensions du rapport.Doit spécifier le
id
de la dimension extraite à partir de la requête/config
.top
*: le nombre de valeurs supérieures par dimension est limité (valeur maximale 2000).
metrics
*: une liste de chaînes représentant les mesures à inclure dans le rapport.Doit spécifier le
id
de la dimension extraite à partir de la requête/config
.
filters
*: un dictionnaire contenant des paires clé-valeur permettant d’appliquer des filtres aux données du rapport. Il peut être vide si aucun filtre n’est appliqué.order_by
*: une chaîne spécifiant le champ pour commander les données du rapport.view
*: une chaîne spécifiant le type d’affichage des données du rapport (c’est-à-dire enchère ou offre)fee
(facultatif) : une chaîne représentant les frais associés aux données du rapport.currency
(facultatif) : une chaîne représentant la devise des données du rapport.
* champs obligatoires
Exemple de requête :
curl --location 'https://{workspace}.manadge.tritondigital.com/api/stats/extract' \
-u '<your email adress>:<your access token from api key>'
--header 'Content-Type: application/json' \
--data '{
"dates": {"from":"2024-04-29T00:00:00Z","to":"2024-04-30T00:00:00Z"},
"dimensions":[{"name":"advertiser","top":100}],
"metrics":["sumImpressions"],
"order_by":"sumImpressions",
"filters":{},
"view":"auction"
}'
Exemple du corps d’une requête :
{
"dates": {"from":"2024-04-29T00:00:00Z","to":"2024-04-30T00:00:00Z"},
"currency":"USD",
"dimensions":[{"name":"advertiser","top":10}],
"metrics":["sumImpressions"],
"order_by":"sumImpressions",
"filters":{},
"view":"bid"
}
Limites et quotas
Lorsque vous utilisez l’API d’exportation de données, vous devez tenir compte des limites et des quotas suivants :
30 rapports par entreprise et par jour : chaque entreprise peut générer jusqu’à 30 rapports par jour à l’aide de l’API d’exportation de données.
Maximum de 5 dimensions par rapport : chaque rapport peut inclure un maximum de cinq dimensions.
Mesures illimitées par rapport : il n’y a pas de limite au nombre de mesures pouvant être incluses dans un rapport.
Des limites de sécurité et des quotas supplémentaires sont en cours de mise en place.