import requests import argparse import os import datetime PLAUSIBLE_HOSTNAME = os.environ.get("PLAUSIBLE_HOSTNAME", "plausible.io") def parse_args(): parser = argparse.ArgumentParser() parser.add_argument("site_id", type=str) return parser.parse_args() def main(): args = parse_args() session = requests.Session() session.headers["Authorization"] = "Bearer " + os.environ["PLAUSIBLE_API_TOKEN"] response = session.get(f"https://{PLAUSIBLE_HOSTNAME}/api/v1/stats/breakdown", params={ "site_id": args.site_id, "period": "custom", "date": "2000-01-01," + datetime.datetime.now().date().isoformat(), "property": "event:page" }) response.raise_for_status() print(response.json()) if __name__ == "__main__": main()