List rules script

This script shows how to list and extract global information from your rules.
 1import os
 2from datetime import datetime
 3
 4import dotenv
 5from cf_rules import Cloudflare
 6
 7dotenv.load_dotenv(".env")
 8
 9cf = Cloudflare("my_expressions")
10cf.auth_key(os.environ.get("EMAIL"), os.environ.get("KEY"))
11
12# Get rules
13
14rules = cf.get_rules("example.com")
15
16print(f"There are {rules['count']} rules available for your account:")
17
18print(" ".join([x["description"] for x in rules["result"]]))
19
20# Same as
21
22rules = cf.rules("example.com")
23
24print(f"There are {len(rules)} domains available for your account:")
25
26print(" ".join([x.description for x in rules]))
27
28
29
30for rule in rules:
31    print(f"{rule['description']} is {'active' if rule['enabled'] else 'inactive'}")
32    updated = datetime.fromisoformat(rule['last_updated'].replace("Z", ""))
33    print("Created on " + updated.strftime("%Y-%m-%d %H:%M:%S"))