Ceci est un wrapper Python non officiel pour l'API REST ADGL.COM. Je ne suis en aucun cas affilié à ajustement.com, utilisez à vos propres risques.
Ce projet a été inspiré par l'ajustement
Veuillez trouver la documentation officielle par: https://help.adjust.com/en/article/kpi-service
Votre accès au service KPI est lié à votre compte d'utilisateur Ajuster. Chaque compte d'utilisateur a un jeton utilisateur associé, pour vous permettre de contrôler individuellement l'accès à vos KPI.
Vous pouvez trouver votre propre jeton utilisateur dans le tableau de bord, sous Paramètres de compte> Vos données> Détails de l'utilisateur . Il s'agit du jeton utilisateur auquel nous ferons référence pour votre authentification ci-dessous.
pip install python-adjust
Récupérons la liste des applications accessibles à vous
from adjustapi . api import AdjustApi
api = AdjustApi ( 'USER_TOKEN' )
apps = api . list_apps ()
print ( apps [ 0 ]. name , apps [ 0 ]. token , apps [ 0 ]. id )
# Prints something like: "MyTestApp ft5popkfebns com.mytest.app"C'est ainsi que fonctionne l'API KPI
kpis_api = api . kpi_service ( trackers = trackers ,
start_date = start_date ,
end_date = end_date ,
countries = countries ,
app_tokens = app_tokens ,
kpis = kpis )
print ( str ( kpis_api . fetch_kpi ()))
# prints: KpiResult(result_parameters=ResultParameters(kpis=['revenue'], start_date=datetime.date(2020, 4, 4), end_date=datetime.date(2020, 5, 4), sandbox=False, countries=['us'], events=None, trackers=[TrackerResultParameters(token='tsrdag', name='Facebook Installs::Expired Attributions', currency=None, has_subtrackers=False)], grouping=['trackers'], period=None, attribution_type='click', utc_offset='00:00', cohort_period_filter=None, day_def=None, attribution_source='dynamic'), result_set={'token': 'thomki', 'name': 'Facebook Installs', 'currency': 'USD', 'trackers': [{'token': 'tsodkg', 'kpi_values': [3627.54]}]})
print ( str ( kpis_api . fetch_events ()))
# prints: KpiResult(result_parameters=ResultParameters(kpis=['revenue'], start_date=datetime.date(2020, 4, 4), end_date=datetime.date(2020, 5, 4), sandbox=False, countries=['us'], events=[EventParameter(name='com.test.subscription.name', token='s6p2ub'), EventParameter(name='event_name', token='eakvze'), EventParameter(name='event.name.2', token='5a6u7u'), EventParameter(name='event_name_3', token='e34v0e')], trackers=[TrackerResultParameters(token='6tcrta', name='Facebook Installs::Expired Attributions', currency=None, has_subtrackers=False)], grouping=['trackers', 'event_types'], period=None, attribution_type='click', utc_offset='00:00', cohort_period_filter=None, day_def=None, attribution_source='dynamic'), result_set={'token': 'thamsi', 'name': 'Facebook Installs', 'currency': 'USD', 'trackers': [{'token': 'tsrdta', 'events': [{'token': 'e6e2v1', 'kpi_values': [1149.77]}, {'token': 'ea3vpe', 'kpi_values': [95.88]}, {'token': 'e34v0e', 'kpi_values': [17.99]}, {'token': 'eovy8e', 'kpi_values': [147.63]}}]}]})
print ( str ( kpis_api . fetch_cohorts ()))
# KpiResult(result_parameters=ResultParameters(kpis=['revenue'], start_date=datetime.date(2020, 4, 4), end_date=datetime.date(2020, 5, 4), sandbox=False, countries=['us'], events=None, trackers=[TrackerResultParameters(token='csodbh', name='Facebook Installs::Expired Attributions', currency=None, has_subtrackers=False)], grouping=['trackers', 'periods'], period='day', attribution_type='click', utc_offset='00:00', cohort_period_filter=None, day_def='24h', attribution_source='dynamic'), result_set={'token': 'chamsh', 'name': 'Facebook Installs', 'currency': 'USD', 'trackers': [{'token': 'cscoth', 'periods': [{'period': '0', 'kpi_values': [109.89]}}]}]})Mais la plupart du temps, vous avez besoin de ces données en tant que table, vous pouvez donc les récupérer en tant que Pandas DataFrame
kpis_api = api . kpi_service ( trackers = trackers ,
start_date = start_date ,
end_date = end_date ,
countries = countries ,
app_tokens = app_tokens ,
kpis = kpis )
print ( str ( kpis_api . fetch_kpi ( as_df = True )))
# ' tracker_token tracker_name revenue
# 0 tsrdag Facebook Installs::Expired Attributions 3627.54'Pour plus, consultez la documentation.
Si vous avez des questions, n'hésitez pas à ajouter des problèmes ou à m'écrire.
TODO: Ajouter un lien à Airflow Hook and Operator pour RADIGAPI