Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Le service de rapports est utilisé pour fournir l’accès à de nombreux types de rapports différents. Il garantit également que chaque type d’utilisateur peut uniquement accéder aux rapports appropriés pour ce type. Par exemple, les utilisateurs réseau ont accès à tous les types de rapports, tandis que les utilisateurs annonceurs et éditeurs n’ont accès qu’à quelques-uns.
Les métriques disponibles varient en fonction du type de rapport, mais peuvent inclure le montant dépensé pour l’inventaire, le nombre d’impressions vues et/ou vendues, les revenus gagnés, etc. Ce document explique comment demander et télécharger des données à partir du service de rapports. Il explique également comment obtenir plus d’informations sur chacun des types de rapports pris en charge, ainsi que des liens vers une documentation supplémentaire sur chaque type de rapport.
Remarque
- Pour plus d’informations sur la synchronisation des données Xandr avec votre base de données de rapports, consultez Flux de création de rapports en bloc.
- Il s’agit d’un service en lecture seule ; vous allez demander
POSTun rapport au format JSON, mais cela ne modifiera aucune des données stockées sur nos serveurs.
Types de rapports
| Type de rapport | Type d’utilisateur | Description | Conservation des données |
|---|---|---|---|
Analyse réseaunetwork_analytics |
Réseau | Vue d’ensemble générale de ce qui se passe. Ce qui sert, ce qui se passe bien, à la fois côté achat et vente. | Durée de vie : certaines données à granularité réduite après 100 jours. |
Facturation réseaunetwork_billing |
Réseau | Ce dont vous pourriez avoir besoin pour facturer les annonceurs, ce qui peut vous être facturé par les éditeurs ou Xandr. | Durée de vie : certaines données à granularité réduite après 100 jours. |
Rapport de facturation d’achatbuyer_invoice_report |
Réseau | Rapports pour le rapprochement financier avec les frais liés à l’achat. | 1095 jours |
Rapport de facturation de venteseller_invoice_report |
Réseau | Rapports pour le rapprochement financier avec les frais liés à la vente. | 1095 jours |
Network Advertiser Analyticsnetwork_advertiser_analytics |
Réseau | Rapports réseau sur les annonceurs. | Durée de vie : certaines données à granularité réduite après 100 jours. |
Network Publisher Analyticsnetwork_publisher_analytics |
Réseau | Rapports réseau sur les éditeurs. | Durée de vie : certaines données à granularité réduite après 100 jours. |
Publisher Analyticspublisher_analytics |
Réseau, Serveur de publication | Création de rapports sur ce qu’un éditeur doit voir. | Durée de vie : certaines données à granularité réduite après 100 jours. |
Analyse des annonceursadvertiser_analytics |
Réseau, Annonceur | Création de rapports sur ce qu’un annonceur doit voir. | Durée de vie : certaines données à granularité réduite après 100 jours. |
Network Video Analyticsvideo_analytics_network |
Réseau | Rapports d’événements vidéo entre les annonceurs et les éditeurs. | 420 jours |
Network Advertiser Video Analyticsvideo_analytics_network_advertiser |
Réseau | Rapports d’événements vidéo pour un seul annonceur. | 420 jours |
Network Publisher Video Analyticsvideo_analytics_network_publisher |
Réseau | Rapports d’événements vidéo pour un seul éditeur. | 420 jours |
Rapport sur les performances du segment acheteurbuyer_segment_performance |
Réseau | Création de rapports sur les performances des segments entre les campagnes et plusieurs annonceurs. | 45 jours |
Rapport d’évaluation de la marque du vendeurseller_brand_review |
Réseau | Création de rapports sur les performances de la marque dans l’ensemble de l’inventaire du réseau. | 428 jours |
Rapport d’évaluation de la marque de l’éditeurpublisher_brand_review |
Éditeur | Création de rapports sur les performances de la marque dans l’ensemble de l’inventaire de l’éditeur. | 428 jours |
Fréquence de création réseau & récurrencenetwork_advertiser_frequency_recency |
Réseau | Rapports réseau sur la fréquence de création et la récence pour un seul annonceur. | 120 jours |
Fréquence créative de l’annonceur & Récenceadvertiser_frequency_recency |
Réseau, Annonceur | Création de rapports sur ce qu’un annonceur doit voir sur sa fréquence de création et sa récurrence. | 120 jours |
Performances du domaine de site réseaunetwork_site_domain_performance |
Réseau | Rapports réseau sur les performances du domaine entre les annonceurs. | 45 jours |
Rapport sur les performances du domaine de sitesite_domain_performance |
Réseau, Annonceur | Création de rapports sur les performances du domaine pour un seul annonceur. | 45 jours |
Domaine du site vendeurseller_site_domain |
Réseau | Création de rapports sur l’inventaire provenant d’un éditeur. | 60 jours |
Rapport de chargement de segmentssegment_load |
Réseau | Création de rapports réseau sur les segments. | 30 jours |
Conversions attributs de l’annonceurattributed_conversions |
Réseau | Rapports réseau sur les conversions attributées des annonceurs. | 90 jours |
Rapport d’analyse géographiquegeo_analytics |
Réseau | Décomposez la livraison et les performances des campagnes par zone géographique. | 45 jours |
Analyse de l’opérateur réseaunetwork_carrier_analytics |
Réseau | Générer des rapports sur les données de performances côté achat et côté vente en fonction des opérateurs d’appareils mobiles. | 46 jours |
Network Device Analyticsnetwork_device_analytics |
Réseau | Rapportez les données de performances côté achat et côté vente en fonction des appareils où les impressions ont été servies. | 428 jours |
Dernier feu du pixel de conversionpixel_fired |
Réseau | Rapports réseau sur la date et l’heure du dernier incendie des pixels de conversion des annonceurs. | Vie |
Rapport d’audits créatifs terminécompleted_creative_audits |
Réseau | Rapport réseau conçu pour vous donner des informations sur la façon dont vos créatifs passent par le processus d’audit | 365 jours |
Flux de création de rapports en blocnetwork_analytics_feedclicktrackers |
Réseau | La possibilité de synchroniser nos rapports agrégés avec votre base de données de rapports. | 30 jours |
Rapport d’utilisation des donnéesbuyer_data_usage_analytics |
Réseau | Rapport réseau qui fournit des détails sur votre utilisation des données fournies par des tiers (par exemple, les fournisseurs de segments d’utilisateurs), les coûts de cette utilisation des données et les éléments de ligne/campagnes dans lesquels ces données ont été utilisées pour cibler les utilisateurs. | 60 jours |
Rapport d’utilisation du fournisseurbuyer_vendor_usage_analytics |
Réseau | Rapport réseau qui fournit des détails sur votre utilisation des données ou de la plateforme alimentée par des fournisseurs tiers (par exemple, des fournisseurs de segments d’utilisateurs), les coûts de l’utilisation de ces données ou fonctionnalités et les éléments/campagnes de ligne où les coûts du fournisseur étaient applicables. | 60 jours |
Rapport d’engagement de l’acheteur buyer_engagement_report |
Annonceur | Fournit des informations sur la durée d’affichage de vos créations vidéo et d’affichage. | Cinq dernières semaines |
Métriques des transactions d’acheteurbuyer_deal_metrics |
Annonceur, Réseau | Informations clés sur les métriques de transaction, les performances et les raisons de rejet pertinentes pour les acheteurs. | 30 jours |
Métriques des transactions de vendeurseller_deal_metrics |
Serveur de publication, réseau | Informations clés sur les métriques de transaction, les performances et les raisons de rejet pertinentes pour les vendeurs. | 30 jours |
Métriques des transactions des vendeurs multi-acheteursmulti_buyer_seller_deal_metrics |
Serveur de publication, réseau | Informations clés sur les métriques de transaction, les performances et les raisons de rejet pertinentes pour le vendeur. | 30 jours |
Analyse des valeurs cléskey_value_analytics |
Réseau | Création de rapports réseau sur les informations associées aux valeurs et clés de ciblage définies de votre réseau. Les impressions avec ciblage clé/valeur serviront et seront signalées uniquement pour les impressions qui ont été enregistrées par une balise de placement contenant le préfixe kw_ sur le nom de clé. | 428 jours |
Rapport d’analyse des conservateurscurator_analytics |
Conservateur | Fournit aux conservateurs des informations sur la façon dont l’argent circule de la demande à l’offre au sein de leur place de marché organisée. | 14 mois |
Rapport sur les performances des segments de conservateurcurator_segment_performance |
Conservateur | Fournit aux conservateurs des insights sur la façon dont leurs segments ciblés contribuent aux performances globales de leurs transactions organisées. | 14 mois |
Rapport de fréquence et de portée de l’acheteurbuyer_approximate_unique_users_hourly |
Réseau | Fournit les informations associées à « reach », c’est-à-dire le nombre d’appareils ou de personnes uniques exposés à des publicités et la « fréquence », qui est le nombre moyen de fois que chaque appareil ou personne unique a été exposé à des publicités. | 90 jours |
Rapport d’attribution hors connexionoffline_attribution |
Annonceur | Fournit des informations sur les performances de votre élément de ligne en ce qui a trait à l’influence des achats en magasin auprès de vos publics cibles. Le rapport Attribution hors connexion n’est accessible qu’aux clients dont l’attribution des ventes hors connexion est activée pour leurs éléments de ligne. | 120 jours |
Rapport d’analyse CMP vendeurcmp_analytics |
Réseau | Fournit des informations sur le nombre, la validité et le contenu des chaînes IAB Transparency & Consent Framework (IAB TCF) sur les demandes d’annonces des vendeurs adressées à nos points de terminaison. | 30 jours |
Rapport d’analytique vendeur Prebid Server Premiumprebid_server_analytics |
Réseau | Le rapport Analyse vendeur Prebid Server Premium contient des informations sur les performances des partenaires à la demande Prebid Server Premium (PSP) configurés. Utilisez pour la livraison et les performances finales. | 30 jours |
Rapport Prebid Server Premium Health Analyticspsp_health_analytics |
Réseau | Données relatives aux demandes et transactions d’enchères Prebid Server Premium . Utile pour la résolution des problèmes et l’optimisation. Le rapport est basé sur des exemples de données multipliées pour estimer le volume complet de l’activité PSP. Utilisez prebid Server Premium Analytics Report et d’autres rapports Microsoft Monetize à ces fins. | 99 jours |
Rapport de disponibilité de l’inventaireplatform_inventory_availability |
Annonceur, Éditeur | Les rapports de disponibilité d’inventaire fournissent des informations sur les types d’inventaire disponibles sur la plateforme. | 30 jours |
API REST pour l’affichage des métadonnées
| HTTP, méthode | Endpoint | Description |
|---|---|---|
GET |
https://api.appnexus.com/report?meta | Retourne des métadonnées pour tous les rapports. |
GET |
https://api.appnexus.com/report?meta=REPORT_TYPE | Retourne des métadonnées pour un type de rapport particulier. |
Champs JSON pour l’affichage des métadonnées
Le meta array comprend les champs suivants :
| Champ | Description |
|---|---|
time_granularity |
Granularité de la durée pendant laquelle le rapport peut fournir des données. Valeurs possibles : - "hourly" - "daily" - "monthly" - "yearly" - "lifetime"Si "hourly" ou "lifetime", les données sont disponibles pour l’année, le mois, le jour et l’heure. Si "daily", "monthly"ou "yearly", les données sont disponibles uniquement pour l’année, le mois et le jour. |
columns |
Colonnes qui peuvent être demandées. Pour chaque colonne, le nom et le type sont répertoriés dans la réponse JSON. |
filters |
Colonnes qui peuvent être utilisées comme filtres. Pour chaque colonne, le nom et le type sont répertoriés dans la réponse JSON. |
time_intervals |
Intervalles de temps pendant lesquels le rapport peut être exécuté. |
Remarque
Certains types de rapports vous permettent d’exécuter un rapport pour une période personnalisée. Pour ce faire, définissez les start_date champs et end_date dans votre demande de rapport.
Exemple de réponse aux métadonnées (à l’aide du network_analytics rapport)
$ curl -b cookies -c cookies 'https://api.appnexus.com/report?meta=network_analytics'
{
"response": {
"status": "OK",
"meta": {
"time_granularity": "hourly",
"columns": [
{
"column": "month",
"type": "date"
},
{
"column": "day",
"type": "date"
},
{
"column": "hour",
"type": "date"
},
{
"column": "buyer_member_id",
"type": "int"
},
{
"column": "seller_member_id",
"type": "int"
},
{
"column": "seller_member_name",
"type": "string"
},
{
"column": "seller_member",
"type": "string"
},
{
"column": "advertiser_id",
"type": "int"
},
...
],
"filters": [
{
"column": "hour",
"type": "date"
},
{
"column": "day",
"type": "date"
},
{
"column": "month",
"type": "date"
},
{
"column": "buyer_member_id",
"type": "int"
},
{
"column": "seller_member_id",
"type": "int"
},
...
],
"havings": [
{
"column": "imps"
},
{
"column": "clicks"
},
{
"column": "cost"
},
{
"column": "revenue"
},
{
"column": "booked_revenue"
},
{
"column": "reseller_revenue"
},
{
"column": "profit"
},
...
],
"time_intervals": [
"current_hour",
"last_hour",
"last_48_hours",
"today",
"yesterday",
"last_7_days",
"month_to_date",
"quarter_to_date",
"last_month",
"lifetime",
"mtd"
]
}
}
}
API REST pour la récupération de données
| HTTP, méthode | Endpoint | Description |
|---|---|---|
POST |
https://api.appnexus.com/report (rapport JSON) |
Demander un rapport. |
GET |
https://api.appnexus.com/report?id=REPORT_ID | Demandez la status d’un rapport. |
GET |
https://api.appnexus.com/report-download?id=REPORT_ID | Récupérer des données de rapport. |
Remarque
Les utilisateurs réseau peuvent exécuter des rapports au niveau de l’annonceur et de l’éditeur en ajoutant advertiser_id=ADVERTISER_ID ou publisher_id=PUBLISHER_ID à la chaîne de requête.
Champs JSON pour la récupération des données
| Champ | Obligatoire le POST |
Type | Description |
|---|---|---|---|
report_type |
oui | enum | Cela détermine les informations qui seront retournées. Valeurs possibles : - "network_analytics"- "network_billing"- "buyer_invoice_report"- "seller_invoice_report"- "network_advertiser_analytics"- "network_publisher_analytics"- "network_site_domain_performance"- "advertiser_analytics"- "video_analytics_network"- "video_analytics_network_advertiser"- "video_analytics_network_publisher"- "buyer_segment_performance"- "seller_brand_review"- "publisher_brand_review"- "publisher_analytics"- "network_creative_search"- "publisher_creative_search"- "network_advertiser_frequency_recency"- "advertiser_frequency_recency"- "site_domain_performance"- "seller_site_domain"- "inventory_domain_analytics"- "inventory_source_analytics"- "inventory_daily_uniques"- "segment_load"- "attributed_conversions"- "pixel_fired"- "network_analytics_feed"- "clicktrackers"- "key_value_analytics"- "prebid_server_analytics"- "psp_health_analytics" |
timezone |
Non | string (50) | Cela détermine le fuseau horaire dans lequel les données seront signalées. Pour obtenir la liste des valeurs de fuseau horaire possibles, consultez Fuseaux horaires d’API. Note: Pour les network_billingtypes de rapports , network_analyticsnetwork_advertiser_analytics, network_publisher_analytics, advertiser_analytics, et publisher_analytics , les données antérieures à 100 jours sont signalées au format UTC. En outre, les types de rapports qui n’offrent pas de données horaires, tels que network_site_domain_performance, site_domain_performanceet seller_site_domain seront signalés au format UTC. |
filters |
Non | tableau | Liste des objets de filtre à appliquer au rapport. Consultez l’étape 1 de la section Comment exécuter un rapport ci-dessous. |
group_filters |
Non | tableau d’objets | Vous permet de spécifier une opération à effectuer sur un ou plusieurs filtres. Par exemple, si vous sélectionnez le nombre total d’impressions regroupées par campagne, vous pouvez utiliser ce champ pour filtrer les campagnes qui n’ont pas au moins 10 000 impressions. |
columns |
oui | tableau de chaînes | Liste des colonnes à inclure dans le rapport. Consultez Create une demande de rapport au format JSON ci-dessous. Au moins une colonne doit être spécifiée. |
row_per OU groups |
Non | tableau |
Remarque :Déconseillé. Par défaut, les résultats des rapports sont automatiquement regroupés par dimensions dans columns. La transmission de ces champs n’a aucun effet.Pour la plupart des rapports, les dimensions sélectionnées sont regroupées automatiquement. Par exemple, si vous incluez les colonnes "advertiser_id", "campaign_id", "creative_id"et "imps", chaque ligne de données de rapport affiche les impressions par annonceur, campagne et combinaison créative. |
start_date |
Non | chaîne | Date de début du rapport. - Pour les types de rapports qui offrent des données horaires, il doit être au "YYYY-MM-DD HH:MM:SS"format .Note: MM:SS doit être 00:00, car les données ne sont pas disponibles pendant des minutes et des secondes.- Pour les types de rapports qui n’offrent pas de données horaires, il doit être mis en forme comme "YYYY-MM-DD". |
end_date |
Non | string | Date de fin du rapport. Note: n’est end_date pas inclusif. Par exemple, si vous commencez un rapport à "2017-07-01 00:00:00" et terminez le rapport à "2017-07-01 23:00:00", votre rapport n’inclut pas les données de la dernière heure de la journée. La façon correcte de récupérer ces données consiste à terminer le rapport à l’adresse "2017-07-02 00:00:00".- Pour les types de rapports qui offrent des données horaires, il doit être au "YYYY-MM-DD HH:MM:SS"format . Toutefois, MM:SS doit être 00:00, car les données ne sont pas disponibles pendant les minutes et les secondes. Par exemple, "2017-07-01 00:00:00" pour "2017-07-02 00:00:00" récupérer les données d’une journée entière.- Pour les rapports agrégés sur des intervalles plus longs que toutes les heures (par exemple, quotidien, hebdomadaire, etc.), le format doit être "YYYY-MM-DD". Par exemple, "2017-07-01" pour "2017-07-02" récupérer les données d’une journée entière. |
report_interval |
Non | enum | Intervalle de temps pour le rapport. Tous les rapports n’acceptent pas tous les intervalles. Pour plus d’informations, consultez la documentation et les métadonnées de chaque rapport. Valeurs possibles : - current_hour- last_hour- today- yesterday- last_48_hours- last_2_days- last_7_days- last_14_days- month_to_yesterday- month_to_date- quarter_to_date- last_month- lifetime- 30_days |
orders |
Non | tableau d’objets | Liste des colonnes à trier. Consultez Comment exécuter un rapport ci-dessous. |
format |
Non | enum | Format dans lequel les données du rapport seront retournées. Si ce champ n’est pas spécifié, la valeur par défaut "csv"est .Valeurs possibles : - "csv": valeurs séparées par des virgules- "excel": valeurs séparées par des tabulations- "html" |
reporting_decimal_type |
Non | enum | Marque décimale utilisée dans le rapport. Valeurs possibles : - "comma"- "decimal" (point)Si ce champ est transmis, il remplace les préférences décimales de création de rapports définies au niveau de l’utilisateur et du membre. |
emails |
Non | tableau | Liste des adresses e-mail auxquelles les données de rapport seront envoyées. Les données de rapport sont envoyées sous forme de pièce jointe, et le corps de l’e-mail contient les informations ci-dessous. - Type de rapport - Nom et ID du membre, de l’annonceur ou de l’éditeur - Date d’exécution - Date de début - Date de fin -Timezone - Utilisateur qui a généré le rapport. Note: Les résultats de rapport d’une taille supérieure à 15 Mo ne seront pas envoyées par e-mail. Pour savoir comment empêcher les résultats d’être trop volumineux, consultez Meilleures pratiques en matière de création de rapports. |
escape_fields |
Non | valeur booléenne | Quand truela valeur est , elle ajoute des guillemets autour de chaque champ dans la sortie du rapport pour permettre une importation plus sûre dans Excel. Cela s’applique uniquement aux rapports CSV et délimités par des tabulations. |
group_filters Exemple
{
"group_filters": [
{
"imps": {
"value": 10000,
"operator": ">="
}
}
]
}
Comment exécuter un rapport ?
- Étape 1. Create une demande de rapport au format JSON
- Étape 2.
POSTla demande adressée au service de rapports - Étape 3.
GETle rapport status à partir du service de rapports - Étape 4.
GETles données de rapport du service de téléchargement de rapports
Étape 1 : Create une demande de rapport au format JSON
Le fichier JSON doit inclure le spécifique report_type que vous souhaitez exécuter, ainsi que les columns (dimensions et métriques) et report_interval ("today", , "yesterday""month_to_date", etc.) que vous souhaitez récupérer. Vous pouvez également inclure pour les filters dimensions, définir la granularité (year, month, day) et spécifier le format dans lequel les données doivent être retournées. Les format options sont les suivantes :
-
"csv"- Fichier séparé par des virgules -
"excel"- Fichier séparé par des tabulations -
"xlsx"- Format Excel compatible XML moderne (compressé)
Remarque
Pour filtrer une dimension par plusieurs valeurs, utilisez un tableau. Par exemple :
Correcte:
"filters": [{"bid_type": ["learn","optimized"]},
{"geo_country":"US"}]
Incorrect:
"filters": [{"bid_type":"learn"},
{"bid_type":"optimized"},`` {"geo_country":"US"}]
Pour plus d’informations sur les champs qui peuvent être inclus dans la demande, consultez champs JSON ci-dessus. Pour obtenir la liste complète des dimensions et métriques disponibles, consultez la documentation relative au type de rapport spécifique que vous souhaitez exécuter, ou extrayez les métadonnées de ce rapport, comme décrit dans API REST pour l’affichage des métadonnées.
$ cat report_request
{
"report": {
"report_type": "network_analytics",
"report_interval": "last_48_hours",
"columns": ["day","imps","clicks"],
"filters": [{"geo_country":"US"}],
"orders": [{"order_by":"day", "direction":"ASC"},{"order_by":"imps", "direction":"DESC"}],
"format": "csv"
}
}
Étape 2 : POST la demande au service de rapports
Vous POST la demande JSON et récupérez un ID de rapport.
$ curl -b cookies -c cookies -X POST -d @report_request 'https://api.appnexus.com/report'
{
"response": {
"status": "OK",
"report_id": "ca9955709eade9a0e89f5cda5345c12r"
}
}
Vous pouvez également obtenir un ID de rapport via une POST requête à l’aide d’un ID de rapport enregistré. Pour plus d’informations, consultez Le service de rapports enregistrés :
curl -c cookies -b cookies -X POST 'https://api.appnexus.com/report?saved_report_id=30'
Étape 3 : GET le rapport status à partir du service De rapport
Effectuez un GET appel avec l’ID de rapport pour récupérer les status du rapport. Continuez à effectuer cet appel jusqu’à ce que soit execution_status"ready". Utilisez ensuite le report-download service pour enregistrer les données de création de rapports dans un fichier. (Ceci est décrit à l’étape suivante.)
$ curl -b cookies -c cookies 'https://api.appnexus.com/report?id=ca9955709eade9a0e89f5cda5345c12r'
{
"response": {
"status": "OK",
"report": {
"name": null,
"created_on": "2017-03-13 18:15:48",
"cache_hit": false,
"fact_cache_hit": false,
"json_request": "{\"report\":{\"report_type\":\"network_analytics\",\"report_interval\":
\"last_48_hours\",\"columns\":[\"day\",\"imps\",\"clicks\"],\"filters\":[{\"geo_country\":
\"US\"},{\"entity_member_id\":\"514\"},{\"entity_member_id\":null}],\"orders\":
[{\"order_by\":\"day\",\"direction\":\"ASC\"},{\"order_by\":\"imps\",\"direction\":
\"DESC\"}]}}",
"header_info": "Report type:,network_analytics\r\n,\r\nRun at:,2017-03-13 18:15:48\r\nStart date:,
\r\nEnd date:,\r\nTimezone:,\r\nUser:,John Smith (9385)\r\n",
"report_size": "10",
"row_count": "35",
"url": "report-download?id=ca9955709eade9a0e89f5cda5345c12r"
},
"execution_status": "ready"
}
}
Étape 4 : GET les données de rapport du service de téléchargement de rapports
Pour télécharger les données du rapport dans un fichier, effectuez un autre GET appel avec l’ID de rapport, mais cette fois au report-download service. Vous trouverez le service et l’ID de rapport dans le champ URL de la réponse précédente GET . Lorsque vous identifiez le fichier dans lequel vous souhaitez enregistrer, veillez à utiliser l’extension de fichier du "format" que vous avez spécifié dans votre initial POST.
Remarque
Si une erreur se produit pendant le téléchargement, l’en-tête de réponse inclut un code d’erreur HTTP et un message. Utilisez -i ou -v dans votre demande pour exposer l’en-tête de réponse.
curl -i -b cookies -c cookies 'https://api.appnexus.com/report-download?id=ca9955709eade9a0e89f5cda5345c12r' > /tmp/network_analytics.csv
Vous pouvez ensuite ouvrir le fichier csv à l’aide de Microsoft Excel ou d’un logiciel similaire.
Limitations de la taille des données de rapport
Les résultats de rapport supérieurs à 15 Mo ne seront pas envoyé par e-mail aux destinataires spécifiés dans la requête JSON.
Les rapports dont le traitement prend plus de 15 minutes expirent et retournent une erreur status. Cette durée de traitement correspond approximativement à 1MM lignes de données. Si vos rapports expirent régulièrement, envisagez l’une des options suivantes :
- Vérifiez que vous avez vraiment besoin de toutes ces données. Si ce n’est pas le cas, mettez à jour vos demandes de rapport avec un intervalle de temps plus court ou moins de dimensions. Pour obtenir des conseils sur la façon d’empêcher les rapports d’être inutilement volumineux ou trop longs à traiter, consultez Meilleures pratiques de création de rapports ci-dessous.
- Si vous avez vraiment besoin de toutes ces données, suivez les instructions fournies dans Pagination de rapports.
Limitation des rapports
Afin de garantir que nos systèmes fonctionnent aussi bien que possible pour tous les utilisateurs, le service de rapports limite les demandes de rapport au niveau des membres et des utilisateurs. Cette page décrit comment les limites sont déterminées et comment nous gérons les demandes qui dépassent les limites définies pour chaque membre et chaque utilisateur.
Limites de l’utilisateur
Lorsqu’un rapport est soumis par l’utilisateur A, une case activée est effectuée pour voir si l’utilisateur A a envoyé 5 demandes de rapport au cours des 15 dernières minutes qui sont en attente de status ou en cours de traitement. Si c’est le cas, une erreur est signalée.
Limites des membres
Un membre donné est limité à n demandes de rapport en cours de traitement en même temps, où n est déterminé par le contrat du membre (il est spécifié en interne par le max_concurrent_reports_processing champ de la table api.member.) Toutes les demandes de rapport envoyées une fois la limite atteinte sont placées dans une file d’attente. Aucun avertissement ou alerte n’est fourni.
Exemple
Les limitations au niveau de l’utilisateur et des membres interagissent entre elles, comme illustré dans l’exemple suivant. Supposons que l’utilisateur A et l’utilisateur B sont associés au même membre ; ce membre a une limite de 5 demandes de rapport simultanées. Pour cet exemple, nous supposons que les demandes de rapport suivantes sont toutes envoyées dans un intervalle de temps de 15 minutes :
| Demande de rapport | Utilisateur | Résultat |
|---|---|---|
| 1 | Utilisateur A | Traitement |
| 2 | Utilisateur A | Traitement |
| 3 | Utilisateur B | Traitement |
| 4 | Utilisateur B | Traitement |
| 5 | Utilisateur B | Traitement |
| 6 | Utilisateur A | Mis en file d’attente |
| 7 | Utilisateur A | Mis en file d’attente |
| 8 | Utilisateur A | Mis en file d’attente |
| 9 | Utilisateur A | Erreur |
La demande de rapport n° 6 est placée dans la file d’attente, car 5 demandes de rapport sont déjà traitées pour ce membre. Pour la même raison, les demandes 6 à 8 sont également placées dans la file d’attente. Enfin, nous pouvons voir que la requête n° 9 provoque un signal d’erreur, car l’utilisateur A a envoyé sa 6e demande de rapport dans un délai de 15 minutes.
Données de conversion
Les conversions (et les données associées) dans les rapports sont traitées de manière asynchrone. Par conséquent, les rapports sont disponibles plus rapidement, tandis que certaines données liées à la conversion sont toujours traitées en arrière-plan. Pour plus d’informations, consultez « Attribution de conversion asynchrone » dans la page Disponibilité des données de création de rapports .
Meilleures pratiques en matière de création de rapports
Voici quelques conseils pour éviter que vos rapports soient inutilement volumineux ou qu’ils prennent beaucoup de temps à traiter :
- Raccourcissez le
report_interval(par exemple, de"lifetime"à"last_48_hours"). - Ajoutez d’autres filtres de niveau supérieur (par exemple, pour un éditeur, un annonceur, une campagne, etc.).
- Évitez de combiner des dimensions granulaires côté achat et côté vente (par exemple, créatif et placement), car cela augmente le nombre de lignes de façon exponentielle. Si vous avez besoin de créer des rapports sur ces combinaisons, envisagez d’utiliser des flux de création de rapports en bloc ou desflux de données au niveau du journal (LLD).
Si vous devez extraire des rapports volumineux dont le traitement prend beaucoup de temps, suivez les instructions fournies dans Pagination de rapports.
Pour déterminer quand un rapport a été mis à jour pour la dernière fois, utilisez le service d’état du rapport.