SDKs
Python
Use riptide-admin to call the Admin API from Python. The SDK provides synchronous and asynchronous operations, retries, timeouts, idempotency keys, structured errors, and pagination.
Install and call
Use the Python SDK for scripts that prepare or inspect workspace configuration. This example creates a publisher, then prints the public IDs from the tenant's publisher list, following pagination automatically. Replace the URL and tenant ID with your sandbox and use a key with the required supply permissions before running the create call.
pip install riptide-admin
from riptide_admin import APIError, Client
from riptide_admin_client.api.supply import create_publisher, list_publishers
from riptide_admin_client.models import PublisherCreate
rt = Client("https://app.acme.example", api_key=os.environ["RIPTIDE_API_KEY"])
try:
pub = rt.call(create_publisher, tenant_id, body=PublisherCreate(public_id="acme-pub", name="Acme"),
idempotency_key="acme-pub-create") # any key you can replay; omit for a generated one
except APIError as err:
print(err.status, err.code, err.hint, err.request_id)
for pub in rt.paginate(list_publishers, tenant_id):
print(pub.public_id)
Every generated operation module works unchanged with client=rt.raw; rt.call
returns the parsed body and rt.paginate yields items across pages. A non-2xx raises
APIError from an httpx response hook, so direct generated calls get the typed error too.
Async callers use the generated asyncio styles with the same client.
Retries, timeouts and idempotency keys
Client(base_url, api_key=..., bearer=..., timeout=30.0, retry=RetryPolicy(...), transport=...).
Four attempts, 250 ms base doubling with full jitter, 5 s cap; a Retry-After in seconds or
HTTP-date replaces the computed wait and is capped too. 429, 502, 503, 504 and transport errors are
retried: reads always, mutations because the request hook gave them an Idempotency-Key that is
re-sent unchanged.
Regenerate from the contract
In a customer checkout, run make gen-sdk-python to regenerate the operation
package from OpenAPI. The Admin API page links to the contract
and describes versioning.
Use the same API from Go or the terminal
Choose the Go SDK for a Go service or the CLI for scripts and manual checks. Both use the same API contracts and retry conventions as the Python client.