L’API de statistiques Digiteka vous permet d’importer directement dans vos outils de dataviz les données statistiques liées à votre activité vidéo.
La première étape pour l’utilisation de cette API de statistiques est de gérer la connexion en utilisant les identifiants qui vous ont été communiqués par notre équipe Médias.
curl https://ws.digiteka.com/api/auth/login -k -H "Content-Type: application/json" -d '{"email": "email@example.com", "password": "MotDePasse"}'
La réponse est au format suivant :
{"token_type":"Bearer","access_token":"xxxxx","expires_at":"yyyyy","refresh_token":"zzzzz"}
La récupération des données s’effectue en requêtant notre API à l’aide des paramètres suivants :
Le paramètre “context” permet de définir le contexte général de l'export statistique qui doit être réalisé (players classiques ou Videofeed).
Valeur | Explication |
instream | Afin d'obtenir les stats de tous les players classiques instream Digiteka |
videofeed | Afin d'obtenir les stats spécifiques au Videofeed Digiteka |
Le paramètre “subcontext” permet de définir le sous-contexte général de l'export statistique qui doit être réalisé (diffuseur, producteur ou les 2 réunis).
Valeur | Explication |
editor | Permet d'obtenir les statistiques dans un contexte de site diffuseur (tous catalogues confondus) |
owner | Permet d'obtenir les statistiques dans un contexte de producteur vidéo (sites tiers uniquement) |
tout | Permet d'obtenir les statistiques dans un contexte de producteur vidéo (tous sites confondus) |
Les paramètres présents dans la section “ranges” vous permettent de définir la période sur laquelle l'export des statistiques sera réalisé.
Paramètre | Explication |
period | Prend toujours la valeur "P" |
startDate | Date de début au format AAAA-MM-JJ |
endDate | Date de fin au format AAAA-MM-JJ |
Le paramètre “granularity” permet de définir quelle granularité temporelle donner à l'export statistique.
Valeur | Explication |
none | Permet d'obtenir les statistiques consolidées sur toute la période |
day | Permet d'obtenir les statistiques jour par jour sur la période sélectionnée |
month | Permet d'obtenir les statistiques mois par mois sur la période sélectionnée |
year | Permet d'obtenir les statistiques année par année sur la période sélectionnée |
Le paramètre “data” vous permet de définir les données que vous souhaitez récupérer via l’API. Si plusieurs données vous intéressent, elles doivent être séparées par une virgule.
Voici la liste exhaustive des données qu’il est possible de récupérer via l’API pour ce qui est du contexte “instream” :
Valeurs | Explication |
taux_de_declenchement | Taux de déclenchement des players |
inventory_player | Inventaire Player |
inventory_player_hors_adb | Inventaire Player hors Adblock |
taux_de_adblock | Pourcentage d'inventaire adblocké |
displays | Nombre d'affichage (chargement) des players |
triggers | Nombre de déclenchement des player |
appels_aux_tag_pub | Nombre d'appels aux tags publicitaires |
impressions_pub | Nombre d'impressions publicitaires |
taux_de_remplissage_hab | Taux de remplissage publicitaire hors Adblock |
revenus | Revenus générés estimatifs |
cpm_moyen | CPM moyen estimatif |
visibilite_pub | Taux de visibilité IAB publicitaire (50% - 2 secondes) |
completion_pub_25_per | Taux de complétion publicitaire à 25% |
completion_pub_50_per | Taux de complétion publicitaire à 50% |
completion_pub_75_per | Taux de complétion publicitaire à 75% |
completion_pub_100_per | Taux de complétion publicitaire à 100% |
complete_visibles | Taux d'impressions complètes à 100% et visibles |
taux_de_click | Taux de clic sur la pub |
skips_pub | Taux de skip sur la pub |
streams | Nombre de streams vidéo édito |
completion_video_25_per | Taux de complétion édito à 25% |
completion_video_50_per | Taux de complétion édito à 50% |
completion_video_75_per | Taux de complétion édito à 75% |
completion_video_100_per | Taux de complétion édito à 100% |
video_duration | Durée de visionnage cumulée (en heures) |
percent_completed | Taux de complétion édito moyen |
average_video_duration | Durée moyenne de visionnage (en minutes) |
owner_number_published_videos | Nombre de vidéos publiées (sous-contextes "owner" et "tout" uniquement) |
Voici la liste exhaustive des données qu’il est possible de récupérer via l’API pour ce qui est du contexte “videofeed” :
Valeurs | Explication |
nb_opened | Nombre d'ouvertures du Videofeed (= sessions Videofeed) |
nb_closed | Nombre de fermetures du Videofeed |
streams_session | Nombre de streams moyen par session |
video_duration_session | Durée de visionnage moyenne par session (en secondes) |
streams | Nombre de streams vidéo édito |
completion_video_25_per | Taux de complétion édito à 25% |
completion_video_50_per | Taux de complétion édito à 50% |
completion_video_75_per | Taux de complétion édito à 75% |
completion_video_100_per | Taux de complétion édito à 100% |
completion_video_3_sec | Taux de complétion édito à 3 secondes |
completion_video_6_sec | Taux de complétion édito à 6 secondes |
completion_video_9_sec | Taux de complétion édito à 9 secondes |
completion_video_12_sec | Taux de complétion édito à 12 secondes |
video_duration | Durée de visionnage cumulée (en heures) |
percent_completed | Taux de complétion vidéo moyen |
links_open | Nombre de clics sur les liens |
inventory_player | Nombre d'inventaire généré |
appels_aux_tag_pub | Nombre d'appels aux tags publicitaires |
impressions_pub | Nombre d'impressions publicitaires |
taux_de_remplissage_hab | Taux de remplissage publicitaire hors Adblock |
completion_pub_25_per | Taux de complétion publicitaire à 25% |
completion_pub_50_per | Taux de complétion publicitaire à 50% |
completion_pub_75_per | Taux de complétion publicitaire à 75% |
completion_pub_100_per | Taux de complétion publicitaire à 100% |
number_clic | Nombre de clics sur les pubs |
complete_visibles | Taux d'impressions complètes à 100% et visibles |
skips_pub | Taux de skip sur la pub |
completion_pub_3_sec | Taux de complétion publicitaire à 3 secondes |
completion_pub_6_sec | Taux de complétion publicitaire à 6 secondes |
completion_pub_9_sec | Taux de complétion publicitaire à 9 secondes |
completion_pub_10_sec | Taux de complétion publicitaire à 10 secondes |
completion_pub_15_sec | Taux de complétion publicitaire à 15 secondes |
completion_pub_20_sec | Taux de complétion publicitaire à 20 secondes |
completion_pub_25_sec | Taux de complétion publicitaire à 25 secondes |
completion_pub_30_sec | Taux de complétion publicitaire à 30 secondes |
completion_pub_60_sec | Taux de complétion publicitaire à 60 secondes |
completion_pub_90_sec | Taux de complétion publicitaire à 90 secondes |
Le paramètre “dimensions” vous permet d’ajouter une ou plusieurs dimensions à votre analyse si vous souhaitez par exemple mettre en avant une répartition dans les données.
Si plusieurs dimensions vous intéressent, elles doivent être séparées par une virgule.
Voici la liste exhaustive des dimensions qu’il est possible de récupérer via l’API :
Valeur | Explication |
adblock | Retourne les statistiques avec une granularité avec / sans Adblock |
country | Retourne les statistiques avec une granularité par pays (IP) |
device | Retourne les statistiques avec une granularité par device (Desktop / Mobile / Tablette) |
os | Retourne les statistiques avec une granularité par système d'exploitation |
navigator | Retourne les statistiques avec une granularité par navigateur |
cspa1 | Retourne les statistiques avec une granularité avec / sans consentement |
sound | Retourne les statistiques avec une granularité sur le statut du son (OFF / ON) |
siteName | Retourne les statistiques avec une granularité par site |
zoneName | Retourne les statistiques avec une granularité par zone |
siteCompanyName | Retourne les statistiques avec une granularité par société |
typePlayer | Retourne les statistiques avec une granularité par type de player (Simple / Smart / Inread) |
videoTopicName | Retourne les statistiques avec une granularité par thématique vidéo |
ownerName | Retourne les statistiques avec une granularité par catalogue |
videoDuration | Retourne les statistiques avec une granularité par durée de vidéo |
regieName | Retourne les statistiques avec une granularité par régie publicitaire |
position | Retourne les statistiques avec une granularité par format pub |
videoTitle | Retourne les statistiques avec une granularité par vidéo (titre) |
video | Retourne les statistiques avec une granularité par vidéo (ID) |
videolistName | Retourne les statistiques avec une granularité par playlist |
videoCreationTime | Retourne les statistiques avec une granularité par date de création de la vidéo |
videoAuthors | Retourne les statistiques avec une granularité par auteur vidéo |
tags | Retourne les statistiques avec une granularité par tag vidéo |
videofeedOpenSource | Retourne les statistiques avec une granularité par source d'ouverture du Videofeed (contexte Videofeed uniquement) |
Le paramètre “filters” permet de restreindre ou de cibler les données renvoyées par l'API en fonction de critères précis.
Si plusieurs filtres vous intéressent, ils doivent être séparés par une virgule.
Le plus simple pour récupérer l'ensemble des filtres disponibles et les valeurs qu'ils peuvent prendre est de générer un export statistique depuis notre plateforme et d'analyser la construction de la requête à l'API “generate” :
Certaines données, dimensions et filtres sont incompatibles entre elles et ne peuvent donc pas aboutir à un résultat.
Là encore, le mieux est d'observer les incompatibilités signalées directement sur notre plateforme afin de ne pas les inclure dans vos requêtes à l'API :
curl https://ws.digiteka.com/api/studio/generate -k -H "Content-Type: application/json" -H "authorization: Bearer xxxxx" -d '{"ranges":[{"startDate":"2021-11-17","endDate":"2021-11-17","period":"P"},null],"data":["impressions_pub","streams"],"dimensions":["device","typePlayer"],"filters":["adblock_0","country_FR"],"granularity":"day","context":"instream","subcontext":"editor"}'
{"dimensions":[{"id":"device","category_id":"2","label":"device"},{"id":"typePlayer","category_id":"3","label":"type-de-player"},{"id":"day","category_id":"1","label":"jour"}],"columns":[{"id":"impressions_pub","category_id":"2","label":"impressions-pub"},{"id":"streams","category_id":"4","label":"streams"}],"body":[{"headers":["Desktop","Smart","2021-11-16"],"body":[[82458,155884]]},{"headers":["Desktop","Smart","2021-11-17"],"body":[[81923,148687]]},{"headers":["Desktop","Smart","2021-11-15"],"body":[[59749,121381]]},{"headers":["Mobile","Simple","2021-11-16"],"body":[[35221,81080]]},{"headers":["Mobile","Simple","2021-11-17"],"body":[[20279,40502]]},{"headers":["Mobile","Simple","2021-11-15"],"body":[[20162,40039]]},{"headers":["Mobile","Smart","2021-11-17"],"body":[[10985,20566]]},{"headers":["Mobile","Smart","2021-11-16"],"body":[[11303,16938]]},{"headers":["Mobile","Smart","2021-11-15"],"body":[[8761,13868]]},{"headers":["Tablet","Simple","2021-11-16"],"body":[[1278,3653]]},{"headers":["Desktop","Simple","2021-11-16"],"body":[[1812,3213]]},{"headers":["Desktop","Simple","2021-11-15"],"body":[[1432,2593]]},{"headers":["Tablet","Simple","2021-11-17"],"body":[[791,2030]]},{"headers":["Tablet","Simple","2021-11-15"],"body":[[724,1846]]},{"headers":["Tablet","Smart","2021-11-17"],"body":[[445,1172]]},{"headers":["Desktop","Simple","2021-11-17"],"body":[[666,1115]]},{"headers":["Tablet","Smart","2021-11-16"],"body":[[447,949]]},{"headers":["Tablet","Smart","2021-11-15"],"body":[[374,938]]}],"totals":[338810,656454]}