Releases: auth0/myorganization-python
Releases · auth0/myorganization-python
1.0.0
v1.0.0 is the first stable release of the Auth0 My Organization Python SDK - a Fern-generated SDK for the Auth0 My Organization API. The API surface is now stable.
Added
MyOrganizationClientandAsyncMyOrganizationClienthigh-level wrappers with domain-based URL derivationTokenProviderandAsyncTokenProviderfor automatic OAuth 2.0 client credentials token management with caching and auto-refresh- Organization Details API - get and update org display name and branding
- Organization Domains API - list, create, get, delete, and verify custom domains with cursor-based pagination
- Organization Identity Providers API - create, get, list, update, delete, and detach IDPs; refresh attribute mappings
- Organization Members API - list and get organization members #13
- Organization Member Roles API - list, assign, and unassign roles for a member #13
- Organization Memberships API - remove members from the organization #13
- Organization Roles API - list roles available in the organization #13
- Organization Member Invitations API - list, create, get, and delete invitations #13
- Provisioning API - create, get, delete provisioning configs; refresh provisioning attribute mappings
- SCIM Tokens API - list, create, and revoke SCIM tokens per IDP
- Configuration API - retrieve API configuration
- Raw HTTP response access via
.with_raw_responsefor status codes, headers, and response data - Automatic retries with exponential backoff on 408, 429, and 5XX responses
- Configurable timeouts, retries, and custom headers at client and per-request level
Changed
- Dropped support for Python 3.9; the minimum supported version is now Python 3.10 #13
Installation
poetry add myorganization-python==1.0.0Requirements
- Python >= 3.10
1.0.0b0
Change Log
1.0.0b0 (2026-04-09)
v1.0.0b0 is the first release of the Auth0 My Organization Python SDK - a Fern-generated SDK for the Auth0 My Organization API, built with Fern:
- 🔑 Automatic Token Management:
MyOrganizationClientandAsyncMyOrganizationClientwrappers handle token acquisition, caching, and refresh automatically - no manual token management needed. - 🔒 Flexible Authentication: Supports client credentials (OAuth 2.0 client_credentials grant) and static tokens out of the box.
AsyncTokenProviderensures non-blocking token acquisition in async contexts. - 📂 Organized Sub-Clients: API operations are grouped into logical hierarchical sub-clients -
organization_details,organization.domains,organization.identity_providers,organization.configuration, and more - for clear discoverability. - 🛡️ Strong Type Safety: All API operations use typed Pydantic request/response models with full type annotation support.
- ⚡ Typed Exception Handling: Specific exception types for each HTTP error status -
BadRequestError,UnauthorizedError,ForbiddenError,NotFoundError,ConflictError,TooManyRequestsError. - 📡 Raw HTTP Response Access: Access status codes, headers, and URL alongside your parsed data via
.with_raw_response. - 📄 Cursor-Based Pagination: Automatic pagination via
SyncPagerandAsyncPagerwith.itemsand.has_nextsupport. - 🔃 Automatic Retries: Exponential backoff on
408,429, and5XXresponses with configurablemax_retries. - 🧩 Per-Request Options: Override timeout, retries, and headers on any individual call via
request_options. - 📋 Auth0-Client Telemetry: The
Auth0-Clientheader is sent automatically on every request with SDK name, version, and Python runtime version.
📦 Installation
poetry add myorganization-python==1.0.0b0Requirements
- Python >= 3.9
🚀 Quick Start
from auth0.myorganization import MyOrganizationClient
client = MyOrganizationClient(
domain="mytenant.auth0.com",
client_id="YOUR_CLIENT_ID",
client_secret="YOUR_CLIENT_SECRET",
organization="YOUR_ORG_ID",
)
details = client.organization_details.get()
print(details.display_name)Async Usage
import asyncio
from auth0.myorganization import AsyncMyOrganizationClient
client = AsyncMyOrganizationClient(
domain="mytenant.auth0.com",
client_id="YOUR_CLIENT_ID",
client_secret="YOUR_CLIENT_SECRET",
organization="YOUR_ORG_ID",
)
async def main():
details = await client.organization_details.get()
print(details.display_name)
asyncio.run(main())⚠️ Beta Notice
This is a beta release. The API surface may change before the GA release based on feedback. We encourage you to try it out and share your thoughts.
🙏 Thank You
Thank you to everyone who has been testing early builds and providing feedback — it's been invaluable in shaping this release.
We'd love to hear how it works for your use case. Please open an issue if you run into anything or have suggestions.