Created
November 30, 2023 21:22
-
-
Save ryandhubbard/370441d8f7a9088c6e1e0d5122394012 to your computer and use it in GitHub Desktop.
AppsFlyer Get Modeled Conversion Value by Campaign and App
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import requests | |
import datetime | |
import pandas as pd | |
import time | |
from io import StringIO | |
app_ids = [] | |
#set start date to 7 days ago as a date formatted yyyy-mm-dd | |
start_date = datetime.datetime.today() - datetime.timedelta(days=7) | |
# set end date to yesterday | |
end_date = datetime.datetime.today() - datetime.timedelta(days=1) | |
modeled_conversion_values = 'false' | |
# for loop to iterate through app_ids | |
for app_id in app_ids: | |
# Replace 'YOUR_API_KEY' with your actual API key. | |
api_key = '' | |
url = f"https://hq1.appsflyer.com/api/skadnetworks/v3/data/app/{app_id}?start_date={start_date.date()}&end_date={end_date.date()}&modeled_conversion_values={modeled_conversion_values}" | |
headers = { | |
"accept": "application/json", | |
"Authorization": f"Bearer {api_key}" # Bearer authentication is commonly used, but adjust if necessary | |
} | |
response = requests.get(url, headers=headers) | |
# parse the response.text into seperate csv files grouped by each "Date" column | |
# Assuming response.text contains CSV formatted data | |
data = StringIO(response.text) | |
df = pd.read_csv(data) | |
for date in df['Date'].unique(): | |
df[df['Date'] == date].to_csv(fr"C:\\Users\{app_id}_{date}.csv", index=False) | |
print(f"Saved {app_id}_{date}.csv") | |
# sleep for 30 seconds to avoid rate limiting | |
time.sleep(30) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment