Skip to main content

Python

Start with the REST guide to create a Platform API token. This example uses Python's standard library and needs no generated client.

Save as example.py:

import json
import os
from urllib.parse import quote, urlencode
from urllib.request import Request, urlopen

base_url = os.getenv("CR_RECONSTRUCT_REST_URL", "https://reconstruct.dev/api/v1/platform")
token = os.environ["CR_RECONSTRUCT_API_TOKEN"]


def get_json(path):
request = Request(
f"{base_url.rstrip('/')}{path}",
headers={"Authorization": f"Bearer {token}"},
)
with urlopen(request, timeout=10) as response:
return json.load(response)


page = get_json("/catalogs?" + urlencode({"pageSize": 10}))
for catalog in page.get("catalogs", []):
detail = get_json("/catalogs/" + quote(catalog["catalogId"], safe=""))
print(detail["catalogId"], detail.get("description", ""))

if page.get("nextPageToken"):
print("Next page token:", page["nextPageToken"])

Run python example.py. Pass nextPageToken back as a pageToken query parameter to continue through the list.