Python
Das Paket adlass installieren und verwenden.
pip install adlassBenötigt Python 3.10 oder neuer. Das Paket hängt von httpx und pydantic ab.
Client erstellen
import os
from adlass import Adlass
client = Adlass(
os.environ["ADLASS_API_KEY"],
# base_url="https://dev.adlass.io/v1", # Entwicklungsumgebung, adl_test_-Schlüssel
# timeout=30.0, max_retries=3, max_retry_delay=60.0,
)Nutze den Client als Context-Manager oder rufe am Ende client.close() auf.
Lesen
space = client.request("GET", "/spaces/123e4567-e89b-42d3-a456-426614174000")
print(space["name"])request() liefert den geparsten JSON-Body. Fehler lösen AdlassError aus; error.problem enthält die Problem Details, error.status den HTTP-Status.
from adlass import AdlassError
try:
client.request("DELETE", "/spaces/123e4567-e89b-42d3-a456-426614174000")
except AdlassError as error:
print(error.status, error.problem.code, error.problem.request_id)Schreiben
space = client.request(
"POST",
"/spaces",
json={"name": "Kundendokumente"},
idempotency_key=order_id, # optional; sonst wird eine UUID erzeugt
)Paginieren
for document in client.paginate("/documents", params={"limit": 100}):
print(document["file_name"])paginate() liefert Einträge über alle Seiten, bis next_cursor null ist.
Generierte Operationen
client.generated stellt den vollständig typisierten Client von openapi-python-client bereit, ein Modul pro Operation unter adlass.generated.api. Nutze ihn, wenn du attrs-Modelle statt Dictionaries möchtest:
from adlass.generated.api.spaces import spaces_list
page = spaces_list.sync(client=client.generated, limit=10)Wiederholungen
429-Antworten werden bis zu max_retries-mal wiederholt; gewartet wird gemäß Retry-After oder exponentiell, nie länger als max_retry_delay Sekunden. Weiterleitungen werden nicht gefolgt.