Per le magnifique guide de @sam, j’ai trouvé le bon point de terminaison pour ma requête souhaitée :
https://domain.com/admin/reports/bulk?reports[dau_by_mau][facets][]=prev_period&reports[dau_by_mau][start_date]=2022-07-27&reports[dau_by_mau][end_date]=2022-08-28&reports[dau_by_mau][limit]=50
Je n’ai trouvé aucun en-tête de formulaire, et j’ai supposé qu’aucun n’était nécessaire. Cette requête dans les outils de développement renvoie une réponse JSON, exactement celle que je veux/besoin. J’essaie de faire une requête GET en python :
url = "https://domain.com/admin/reports/bulk?reports[dau_by_mau][facets][]=prev_period&reports[dau_by_mau][start_date]=2022-07-27&reports[dau_by_mau][end_date]=2022-08-28&reports[dau_by_mau][limit]=50.json"
headers = CaseInsensitiveDict()
headers["Content-Type"] = "multipart/form-data"
headers["Content-Type"] = "application/json"
headers["Api-Key"] = SECRET.API
headers["Api-Username"] = "system"
resp = requests.get(url, headers=headers)
print(resp.status_code)
print(resp.headers)
J’obtiens un 200, mais il renvoie avec un 'Content-Type': 'text/html, et non un JSON (ce que je veux). Et je ne suis même pas sûr que le texte qu’il renvoie soit la version texte des données souhaitées.
Cela n’a pas non plus aidé.
Alors, qu’est-ce que je fais de mal ?