#!/usr/bin/env python3 """Read Sites from the Muninn API. Usage: python3 sites.py list [--name NAME] python3 sites.py get SITE_ID Base URL defaults to http://localhost:8001, override with the MUNINN_API_URL environment variable. """ import argparse import _client def main() -> None: parser = argparse.ArgumentParser(description="Sites API client") subparsers = parser.add_subparsers(dest="command", required=True) list_parser = subparsers.add_parser("list", help="List all sites") list_parser.add_argument("--name", help="Partial match filter on name") get_parser = subparsers.add_parser("get", help="Get a single site") get_parser.add_argument("site_id", type=int) args = parser.parse_args() if args.command == "list": _client.request("GET", "/api/sites", params={"name": args.name}) elif args.command == "get": _client.request("GET", f"/api/sites/{args.site_id}") if __name__ == "__main__": main()