Python

Das Paket adlass installieren und verwenden.

pip install adlass

Benö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.

Auf dieser Seite