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
 5
 6from cf_rules import Cloudflare
 7
 8dotenv.load_dotenv(".env")
 9
10cf = Cloudflare("my_expressions")
11cf.auth_key(os.environ.get("EMAIL"), os.environ.get("KEY"))
12
13# Get rules
14
15rules = cf.get_rules("example.com")
16
17print(f"There are {rules['count']} rules available for your account:")
18
19print(" ".join([x["description"] for x in rules["result"]]))
20
21# Same as
22
23rules = cf.rules("example.com")
24
25print(f"There are {len(rules)} rules available for your account:")
26
27print(" ".join([x.description for x in rules]))
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"))