From 812b8ca16fc2740001f9839ce5c88f85fed87c6e Mon Sep 17 00:00:00 2001 From: fern-api <115122769+fern-api[bot]@users.noreply.github.com> Date: Tue, 19 May 2026 12:25:03 +0000 Subject: [PATCH 1/2] [fern-generated] Update SDK Generated by Fern CLI Version: unknown Generators: - fernapi/fern-python-sdk: 5.12.10 --- reference.md | 16 ++++++ src/auth0/management/__init__.py | 17 +++---- src/auth0/management/clients/client.py | 17 +++++++ src/auth0/management/clients/raw_client.py | 25 +++++++++ src/auth0/management/core/client_wrapper.py | 51 ++++++++++--------- src/auth0/management/types/__init__.py | 6 +++ src/auth0/management/types/fed_cm_login.py | 24 +++++++++ .../management/types/fed_cm_login_google.py | 26 ++++++++++ 8 files changed, 148 insertions(+), 34 deletions(-) create mode 100644 src/auth0/management/types/fed_cm_login.py create mode 100644 src/auth0/management/types/fed_cm_login_google.py diff --git a/reference.md b/reference.md index 422c88b5..fb6bfb5a 100644 --- a/reference.md +++ b/reference.md @@ -1902,6 +1902,14 @@ client.clients.create(
+**fedcm_login:** `typing.Optional[FedCmLogin]` + +
+
+ +
+
+ **refresh_token:** `typing.Optional[ClientRefreshTokenConfiguration]`
@@ -2783,6 +2791,14 @@ client.clients.update(
+**fedcm_login:** `typing.Optional[FedCmLogin]` + +
+
+ +
+
+ **refresh_token:** `typing.Optional[ClientRefreshTokenConfiguration]`
diff --git a/src/auth0/management/__init__.py b/src/auth0/management/__init__.py index 64a3587b..46338c37 100644 --- a/src/auth0/management/__init__.py +++ b/src/auth0/management/__init__.py @@ -1468,6 +1468,8 @@ ExpressConfiguration, ExpressConfigurationOrNull, ExtensibilityEmailProviderCredentials, + FedCmLogin, + FedCmLoginGoogle, FederatedConnectionTokenSet, FlowAction, FlowActionActivecampaign, @@ -2741,8 +2743,6 @@ from .environment import Auth0Environment from .event_streams import EventStreamsCreateRequest from .version import __version__ - from .management_client import AsyncManagementClient, CustomDomainHeader, ManagementClient - from .token_provider import AsyncTokenProvider, TokenProvider _dynamic_imports: typing.Dict[str, str] = { "Action": ".types", "ActionBase": ".types", @@ -2803,8 +2803,6 @@ "AssociateOrganizationClientGrantResponseContent": ".types", "AsyncApprovalNotificationsChannelsEnum": ".types", "AsyncAuth0": ".client", - "AsyncManagementClient": ".management_client", - "AsyncTokenProvider": ".token_provider", "AttackProtectionCaptchaArkoseResponseContent": ".types", "AttackProtectionCaptchaAuthChallengeRequest": ".types", "AttackProtectionCaptchaAuthChallengeResponseContent": ".types", @@ -3763,7 +3761,6 @@ "CredentialDeviceTypeEnum": ".types", "CredentialId": ".types", "CustomDomain": ".types", - "CustomDomainHeader": ".management_client", "CustomDomainCustomClientIpHeader": ".types", "CustomDomainCustomClientIpHeaderEnum": ".types", "CustomDomainProvisioningTypeEnum": ".types", @@ -4217,6 +4214,8 @@ "ExpressConfiguration": ".types", "ExpressConfigurationOrNull": ".types", "ExtensibilityEmailProviderCredentials": ".types", + "FedCmLogin": ".types", + "FedCmLoginGoogle": ".types", "FederatedConnectionTokenSet": ".types", "FlowAction": ".types", "FlowActionActivecampaign": ".types", @@ -5021,7 +5020,6 @@ "LogStreamSumoEnum": ".types", "LogStreamSumoResponseSchema": ".types", "LogStreamSumoSink": ".types", - "ManagementClient": ".management_client", "MdlPresentationProperties": ".types", "MdlPresentationRequest": ".types", "MdlPresentationRequestProperties": ".types", @@ -5248,7 +5246,6 @@ "TokenQuota": ".types", "TokenQuotaClientCredentials": ".types", "TokenQuotaConfiguration": ".types", - "TokenProvider": ".token_provider", "TooManyRequestsError": ".errors", "TooManyRequestsSchema": ".types", "TooManyRequestsSchemaError": ".types", @@ -5564,8 +5561,6 @@ def __dir__(): "AssociateOrganizationClientGrantResponseContent", "AsyncApprovalNotificationsChannelsEnum", "AsyncAuth0", - "AsyncManagementClient", - "AsyncTokenProvider", "AttackProtectionCaptchaArkoseResponseContent", "AttackProtectionCaptchaAuthChallengeRequest", "AttackProtectionCaptchaAuthChallengeResponseContent", @@ -6977,6 +6972,8 @@ def __dir__(): "ExpressConfiguration", "ExpressConfigurationOrNull", "ExtensibilityEmailProviderCredentials", + "FedCmLogin", + "FedCmLoginGoogle", "FederatedConnectionTokenSet", "FlowAction", "FlowActionActivecampaign", @@ -7781,7 +7778,6 @@ def __dir__(): "LogStreamSumoEnum", "LogStreamSumoResponseSchema", "LogStreamSumoSink", - "ManagementClient", "MdlPresentationProperties", "MdlPresentationRequest", "MdlPresentationRequestProperties", @@ -8005,7 +8001,6 @@ def __dir__(): "TestEventDataContent", "TokenExchangeProfileResponseContent", "TokenExchangeProfileTypeEnum", - "TokenProvider", "TokenQuota", "TokenQuotaClientCredentials", "TokenQuotaConfiguration", diff --git a/src/auth0/management/clients/client.py b/src/auth0/management/clients/client.py index 4a570ee1..475c1fe7 100644 --- a/src/auth0/management/clients/client.py +++ b/src/auth0/management/clients/client.py @@ -46,6 +46,7 @@ from ..types.create_token_quota import CreateTokenQuota from ..types.express_configuration import ExpressConfiguration from ..types.express_configuration_or_null import ExpressConfigurationOrNull +from ..types.fed_cm_login import FedCmLogin from ..types.get_client_response_content import GetClientResponseContent from ..types.list_clients_offset_paginated_response_content import ListClientsOffsetPaginatedResponseContent from ..types.native_social_login import NativeSocialLogin @@ -246,6 +247,7 @@ def create( mobile: typing.Optional[ClientMobile] = OMIT, initiate_login_uri: typing.Optional[str] = OMIT, native_social_login: typing.Optional[NativeSocialLogin] = OMIT, + fedcm_login: typing.Optional[FedCmLogin] = OMIT, refresh_token: typing.Optional[ClientRefreshTokenConfiguration] = OMIT, default_organization: typing.Optional[ClientDefaultOrganization] = OMIT, organization_usage: typing.Optional[ClientOrganizationUsageEnum] = OMIT, @@ -377,6 +379,8 @@ def create( native_social_login : typing.Optional[NativeSocialLogin] + fedcm_login : typing.Optional[FedCmLogin] + refresh_token : typing.Optional[ClientRefreshTokenConfiguration] default_organization : typing.Optional[ClientDefaultOrganization] @@ -478,6 +482,7 @@ def create( mobile=mobile, initiate_login_uri=initiate_login_uri, native_social_login=native_social_login, + fedcm_login=fedcm_login, refresh_token=refresh_token, default_organization=default_organization, organization_usage=organization_usage, @@ -735,6 +740,7 @@ def update( mobile: typing.Optional[ClientMobile] = OMIT, initiate_login_uri: typing.Optional[str] = OMIT, native_social_login: typing.Optional[NativeSocialLogin] = OMIT, + fedcm_login: typing.Optional[FedCmLogin] = OMIT, refresh_token: typing.Optional[ClientRefreshTokenConfiguration] = OMIT, default_organization: typing.Optional[ClientDefaultOrganization] = OMIT, organization_usage: typing.Optional[ClientOrganizationUsagePatchEnum] = OMIT, @@ -869,6 +875,8 @@ def update( native_social_login : typing.Optional[NativeSocialLogin] + fedcm_login : typing.Optional[FedCmLogin] + refresh_token : typing.Optional[ClientRefreshTokenConfiguration] default_organization : typing.Optional[ClientDefaultOrganization] @@ -968,6 +976,7 @@ def update( mobile=mobile, initiate_login_uri=initiate_login_uri, native_social_login=native_social_login, + fedcm_login=fedcm_login, refresh_token=refresh_token, default_organization=default_organization, organization_usage=organization_usage, @@ -1236,6 +1245,7 @@ async def create( mobile: typing.Optional[ClientMobile] = OMIT, initiate_login_uri: typing.Optional[str] = OMIT, native_social_login: typing.Optional[NativeSocialLogin] = OMIT, + fedcm_login: typing.Optional[FedCmLogin] = OMIT, refresh_token: typing.Optional[ClientRefreshTokenConfiguration] = OMIT, default_organization: typing.Optional[ClientDefaultOrganization] = OMIT, organization_usage: typing.Optional[ClientOrganizationUsageEnum] = OMIT, @@ -1367,6 +1377,8 @@ async def create( native_social_login : typing.Optional[NativeSocialLogin] + fedcm_login : typing.Optional[FedCmLogin] + refresh_token : typing.Optional[ClientRefreshTokenConfiguration] default_organization : typing.Optional[ClientDefaultOrganization] @@ -1476,6 +1488,7 @@ async def main() -> None: mobile=mobile, initiate_login_uri=initiate_login_uri, native_social_login=native_social_login, + fedcm_login=fedcm_login, refresh_token=refresh_token, default_organization=default_organization, organization_usage=organization_usage, @@ -1765,6 +1778,7 @@ async def update( mobile: typing.Optional[ClientMobile] = OMIT, initiate_login_uri: typing.Optional[str] = OMIT, native_social_login: typing.Optional[NativeSocialLogin] = OMIT, + fedcm_login: typing.Optional[FedCmLogin] = OMIT, refresh_token: typing.Optional[ClientRefreshTokenConfiguration] = OMIT, default_organization: typing.Optional[ClientDefaultOrganization] = OMIT, organization_usage: typing.Optional[ClientOrganizationUsagePatchEnum] = OMIT, @@ -1899,6 +1913,8 @@ async def update( native_social_login : typing.Optional[NativeSocialLogin] + fedcm_login : typing.Optional[FedCmLogin] + refresh_token : typing.Optional[ClientRefreshTokenConfiguration] default_organization : typing.Optional[ClientDefaultOrganization] @@ -2006,6 +2022,7 @@ async def main() -> None: mobile=mobile, initiate_login_uri=initiate_login_uri, native_social_login=native_social_login, + fedcm_login=fedcm_login, refresh_token=refresh_token, default_organization=default_organization, organization_usage=organization_usage, diff --git a/src/auth0/management/clients/raw_client.py b/src/auth0/management/clients/raw_client.py index 1a190b89..8d2b434e 100644 --- a/src/auth0/management/clients/raw_client.py +++ b/src/auth0/management/clients/raw_client.py @@ -58,6 +58,7 @@ from ..types.create_token_quota import CreateTokenQuota from ..types.express_configuration import ExpressConfiguration from ..types.express_configuration_or_null import ExpressConfigurationOrNull +from ..types.fed_cm_login import FedCmLogin from ..types.get_client_response_content import GetClientResponseContent from ..types.list_clients_offset_paginated_response_content import ListClientsOffsetPaginatedResponseContent from ..types.native_social_login import NativeSocialLogin @@ -299,6 +300,7 @@ def create( mobile: typing.Optional[ClientMobile] = OMIT, initiate_login_uri: typing.Optional[str] = OMIT, native_social_login: typing.Optional[NativeSocialLogin] = OMIT, + fedcm_login: typing.Optional[FedCmLogin] = OMIT, refresh_token: typing.Optional[ClientRefreshTokenConfiguration] = OMIT, default_organization: typing.Optional[ClientDefaultOrganization] = OMIT, organization_usage: typing.Optional[ClientOrganizationUsageEnum] = OMIT, @@ -430,6 +432,8 @@ def create( native_social_login : typing.Optional[NativeSocialLogin] + fedcm_login : typing.Optional[FedCmLogin] + refresh_token : typing.Optional[ClientRefreshTokenConfiguration] default_organization : typing.Optional[ClientDefaultOrganization] @@ -541,6 +545,9 @@ def create( "native_social_login": convert_and_respect_annotation_metadata( object_=native_social_login, annotation=NativeSocialLogin, direction="write" ), + "fedcm_login": convert_and_respect_annotation_metadata( + object_=fedcm_login, annotation=FedCmLogin, direction="write" + ), "refresh_token": convert_and_respect_annotation_metadata( object_=refresh_token, annotation=typing.Optional[ClientRefreshTokenConfiguration], @@ -1151,6 +1158,7 @@ def update( mobile: typing.Optional[ClientMobile] = OMIT, initiate_login_uri: typing.Optional[str] = OMIT, native_social_login: typing.Optional[NativeSocialLogin] = OMIT, + fedcm_login: typing.Optional[FedCmLogin] = OMIT, refresh_token: typing.Optional[ClientRefreshTokenConfiguration] = OMIT, default_organization: typing.Optional[ClientDefaultOrganization] = OMIT, organization_usage: typing.Optional[ClientOrganizationUsagePatchEnum] = OMIT, @@ -1285,6 +1293,8 @@ def update( native_social_login : typing.Optional[NativeSocialLogin] + fedcm_login : typing.Optional[FedCmLogin] + refresh_token : typing.Optional[ClientRefreshTokenConfiguration] default_organization : typing.Optional[ClientDefaultOrganization] @@ -1395,6 +1405,9 @@ def update( "native_social_login": convert_and_respect_annotation_metadata( object_=native_social_login, annotation=NativeSocialLogin, direction="write" ), + "fedcm_login": convert_and_respect_annotation_metadata( + object_=fedcm_login, annotation=FedCmLogin, direction="write" + ), "refresh_token": convert_and_respect_annotation_metadata( object_=refresh_token, annotation=typing.Optional[ClientRefreshTokenConfiguration], @@ -1855,6 +1868,7 @@ async def create( mobile: typing.Optional[ClientMobile] = OMIT, initiate_login_uri: typing.Optional[str] = OMIT, native_social_login: typing.Optional[NativeSocialLogin] = OMIT, + fedcm_login: typing.Optional[FedCmLogin] = OMIT, refresh_token: typing.Optional[ClientRefreshTokenConfiguration] = OMIT, default_organization: typing.Optional[ClientDefaultOrganization] = OMIT, organization_usage: typing.Optional[ClientOrganizationUsageEnum] = OMIT, @@ -1986,6 +2000,8 @@ async def create( native_social_login : typing.Optional[NativeSocialLogin] + fedcm_login : typing.Optional[FedCmLogin] + refresh_token : typing.Optional[ClientRefreshTokenConfiguration] default_organization : typing.Optional[ClientDefaultOrganization] @@ -2097,6 +2113,9 @@ async def create( "native_social_login": convert_and_respect_annotation_metadata( object_=native_social_login, annotation=NativeSocialLogin, direction="write" ), + "fedcm_login": convert_and_respect_annotation_metadata( + object_=fedcm_login, annotation=FedCmLogin, direction="write" + ), "refresh_token": convert_and_respect_annotation_metadata( object_=refresh_token, annotation=typing.Optional[ClientRefreshTokenConfiguration], @@ -2709,6 +2728,7 @@ async def update( mobile: typing.Optional[ClientMobile] = OMIT, initiate_login_uri: typing.Optional[str] = OMIT, native_social_login: typing.Optional[NativeSocialLogin] = OMIT, + fedcm_login: typing.Optional[FedCmLogin] = OMIT, refresh_token: typing.Optional[ClientRefreshTokenConfiguration] = OMIT, default_organization: typing.Optional[ClientDefaultOrganization] = OMIT, organization_usage: typing.Optional[ClientOrganizationUsagePatchEnum] = OMIT, @@ -2843,6 +2863,8 @@ async def update( native_social_login : typing.Optional[NativeSocialLogin] + fedcm_login : typing.Optional[FedCmLogin] + refresh_token : typing.Optional[ClientRefreshTokenConfiguration] default_organization : typing.Optional[ClientDefaultOrganization] @@ -2953,6 +2975,9 @@ async def update( "native_social_login": convert_and_respect_annotation_metadata( object_=native_social_login, annotation=NativeSocialLogin, direction="write" ), + "fedcm_login": convert_and_respect_annotation_metadata( + object_=fedcm_login, annotation=FedCmLogin, direction="write" + ), "refresh_token": convert_and_respect_annotation_metadata( object_=refresh_token, annotation=typing.Optional[ClientRefreshTokenConfiguration], diff --git a/src/auth0/management/core/client_wrapper.py b/src/auth0/management/core/client_wrapper.py index 16c24e6b..3172bf3e 100644 --- a/src/auth0/management/core/client_wrapper.py +++ b/src/auth0/management/core/client_wrapper.py @@ -1,11 +1,6 @@ # This file was auto-generated by Fern from our API Definition. -# Modified by Auth0 to use Auth0 telemetry format with dynamic versioning -import base64 -import platform -import sys import typing -from json import dumps import httpx from .http_client import AsyncHttpClient, HttpClient @@ -20,27 +15,26 @@ def __init__( headers: typing.Optional[typing.Dict[str, str]] = None, base_url: str, timeout: typing.Optional[float] = None, + max_retries: int = 2, + logging: typing.Optional[typing.Union[LogConfig, Logger]] = None, ): self._token = token self._headers = headers self._base_url = base_url self._timeout = timeout + self._max_retries = max_retries + self._logging = logging def get_headers(self) -> typing.Dict[str, str]: - # Dynamically get version from package metadata - py_version = platform.python_version() - version = sys.modules["auth0"].__version__ - - # Build Auth0 telemetry in standard format - auth0_client = dumps({ - "name": "auth0-python", - "version": version, - "env": {"python": py_version} - }).encode("utf-8") + import platform headers: typing.Dict[str, str] = { - "User-Agent": f"Python/{py_version}", - "Auth0-Client": base64.b64encode(auth0_client).decode(), + "User-Agent": "auth0-python/5.4.0", + "X-Fern-Language": "Python", + "X-Fern-Runtime": f"python/{platform.python_version()}", + "X-Fern-Platform": f"{platform.system().lower()}/{platform.release()}", + "X-Fern-SDK-Name": "auth0-python", + "X-Fern-SDK-Version": "5.4.0", **(self.get_custom_headers() or {}), } headers["Authorization"] = f"Bearer {self._get_token()}" @@ -61,6 +55,9 @@ def get_base_url(self) -> str: def get_timeout(self) -> typing.Optional[float]: return self._timeout + def get_max_retries(self) -> int: + return self._max_retries + class SyncClientWrapper(BaseClientWrapper): def __init__( @@ -70,16 +67,20 @@ def __init__( headers: typing.Optional[typing.Dict[str, str]] = None, base_url: str, timeout: typing.Optional[float] = None, - httpx_client: httpx.Client, + max_retries: int = 2, logging: typing.Optional[typing.Union[LogConfig, Logger]] = None, + httpx_client: httpx.Client, ): - super().__init__(token=token, headers=headers, base_url=base_url, timeout=timeout) + super().__init__( + token=token, headers=headers, base_url=base_url, timeout=timeout, max_retries=max_retries, logging=logging + ) self.httpx_client = HttpClient( httpx_client=httpx_client, base_headers=self.get_headers, base_timeout=self.get_timeout, base_url=self.get_base_url, - logging_config=logging, + base_max_retries=self.get_max_retries(), + logging_config=self._logging, ) @@ -91,19 +92,23 @@ def __init__( headers: typing.Optional[typing.Dict[str, str]] = None, base_url: str, timeout: typing.Optional[float] = None, + max_retries: int = 2, + logging: typing.Optional[typing.Union[LogConfig, Logger]] = None, async_token: typing.Optional[typing.Callable[[], typing.Awaitable[str]]] = None, httpx_client: httpx.AsyncClient, - logging: typing.Optional[typing.Union[LogConfig, Logger]] = None, ): - super().__init__(token=token, headers=headers, base_url=base_url, timeout=timeout) + super().__init__( + token=token, headers=headers, base_url=base_url, timeout=timeout, max_retries=max_retries, logging=logging + ) self._async_token = async_token self.httpx_client = AsyncHttpClient( httpx_client=httpx_client, base_headers=self.get_headers, base_timeout=self.get_timeout, base_url=self.get_base_url, + base_max_retries=self.get_max_retries(), async_base_headers=self.async_get_headers, - logging_config=logging, + logging_config=self._logging, ) async def async_get_headers(self) -> typing.Dict[str, str]: diff --git a/src/auth0/management/types/__init__.py b/src/auth0/management/types/__init__.py index 33d2200c..191ef50b 100644 --- a/src/auth0/management/types/__init__.py +++ b/src/auth0/management/types/__init__.py @@ -1981,6 +1981,8 @@ from .express_configuration import ExpressConfiguration from .express_configuration_or_null import ExpressConfigurationOrNull from .extensibility_email_provider_credentials import ExtensibilityEmailProviderCredentials + from .fed_cm_login import FedCmLogin + from .fed_cm_login_google import FedCmLoginGoogle from .federated_connection_token_set import FederatedConnectionTokenSet from .flow_action import FlowAction from .flow_action_activecampaign import FlowActionActivecampaign @@ -4774,6 +4776,8 @@ "ExpressConfiguration": ".express_configuration", "ExpressConfigurationOrNull": ".express_configuration_or_null", "ExtensibilityEmailProviderCredentials": ".extensibility_email_provider_credentials", + "FedCmLogin": ".fed_cm_login", + "FedCmLoginGoogle": ".fed_cm_login_google", "FederatedConnectionTokenSet": ".federated_connection_token_set", "FlowAction": ".flow_action", "FlowActionActivecampaign": ".flow_action_activecampaign", @@ -7467,6 +7471,8 @@ def __dir__(): "ExpressConfiguration", "ExpressConfigurationOrNull", "ExtensibilityEmailProviderCredentials", + "FedCmLogin", + "FedCmLoginGoogle", "FederatedConnectionTokenSet", "FlowAction", "FlowActionActivecampaign", diff --git a/src/auth0/management/types/fed_cm_login.py b/src/auth0/management/types/fed_cm_login.py new file mode 100644 index 00000000..4541ab6e --- /dev/null +++ b/src/auth0/management/types/fed_cm_login.py @@ -0,0 +1,24 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .fed_cm_login_google import FedCmLoginGoogle + + +class FedCmLogin(UniversalBaseModel): + """ + Configure FedCM login settings for New Universal Login + """ + + google: typing.Optional[FedCmLoginGoogle] = None + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/auth0/management/types/fed_cm_login_google.py b/src/auth0/management/types/fed_cm_login_google.py new file mode 100644 index 00000000..01c7e43b --- /dev/null +++ b/src/auth0/management/types/fed_cm_login_google.py @@ -0,0 +1,26 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel + + +class FedCmLoginGoogle(UniversalBaseModel): + """ + Google FedCM configuration for this client + """ + + is_enabled: typing.Optional[bool] = pydantic.Field(default=None) + """ + When true, shows the Google FedCM prompt on New Universal Login for this client + """ + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow From 1082df4cf43995e6093ee45b88a6c9690a8fec78 Mon Sep 17 00:00:00 2001 From: fern-api <115122769+fern-api[bot]@users.noreply.github.com> Date: Tue, 19 May 2026 12:25:07 +0000 Subject: [PATCH 2/2] [fern-replay] Applied customizations Patches applied (4): - patch-4894603d: chore: Restore custom wiring in management/__init__.py - patch-f182694f: fix: Add top-level `py.typed` marker to resolve IDE import errors (#829) - patch-1026b4d8: Release 5.4.0 (#838) - patch-18f283e9: chore: drop Python 3.9 support, add Python 3.13 (#843) Patches absorbed by generator (1): - patch-1bdc0394: fix: resolve [fern-replay] conflict in management/__init__.py (#842) The generator now produces these customizations natively. --- .fern/replay.lock | 55 +++++++++++++++++--------------- .fernignore | 6 ++++ src/auth0/management/__init__.py | 11 +++++++ 3 files changed, 46 insertions(+), 26 deletions(-) diff --git a/.fern/replay.lock b/.fern/replay.lock index 2235bfe8..eb9e8fea 100644 --- a/.fern/replay.lock +++ b/.fern/replay.lock @@ -19,22 +19,28 @@ generations: generator_versions: fernapi/fern-python-sdk: 5.12.10 base_branch_head: 3b19ca9899d758100ca38524af2cb079832fdc56 -current_generation: c1c18146c845e6c7916d0490f7ef02807f9bfebf + - commit_sha: 812b8ca16fc2740001f9839ce5c88f85fed87c6e + tree_hash: 24be5645b7a89574a130a72ceec1f410c757ae6c + timestamp: 2026-05-19T12:25:04.138Z + cli_version: unknown + generator_versions: + fernapi/fern-python-sdk: 5.12.10 +current_generation: 812b8ca16fc2740001f9839ce5c88f85fed87c6e patches: - id: patch-4894603d - content_hash: sha256:2ca56f02c24fc60f076b081eb5d06f4848d08c24003b591d61421d753128b106 + content_hash: sha256:85d8e392938ef0338e526c1cc9abe95cc3b51986f1145d7b25ceef95605d282c original_commit: 4894603d03409962bc60a34712de8abffe919e2c original_message: "chore: Restore custom wiring in management/__init__.py" original_author: Kunal Dawar - base_generation: c1c18146c845e6c7916d0490f7ef02807f9bfebf + base_generation: 812b8ca16fc2740001f9839ce5c88f85fed87c6e files: - src/auth0/management/__init__.py patch_content: | diff --git a/src/auth0/management/__init__.py b/src/auth0/management/__init__.py - index 2822ff3..e537579 100644 + index 46338c3..4fd6baf 100644 --- a/src/auth0/management/__init__.py +++ b/src/auth0/management/__init__.py - @@ -2741,6 +2741,8 @@ if typing.TYPE_CHECKING: + @@ -2743,6 +2743,8 @@ if typing.TYPE_CHECKING: from .environment import Auth0Environment from .event_streams import EventStreamsCreateRequest from .version import __version__ @@ -43,7 +49,7 @@ patches: _dynamic_imports: typing.Dict[str, str] = { "Action": ".types", "ActionBase": ".types", - @@ -2801,6 +2803,8 @@ _dynamic_imports: typing.Dict[str, str] = { + @@ -2803,6 +2805,8 @@ _dynamic_imports: typing.Dict[str, str] = { "AssociateOrganizationClientGrantResponseContent": ".types", "AsyncApprovalNotificationsChannelsEnum": ".types", "AsyncAuth0": ".client", @@ -52,18 +58,15 @@ patches: "AttackProtectionCaptchaArkoseResponseContent": ".types", "AttackProtectionCaptchaAuthChallengeRequest": ".types", "AttackProtectionCaptchaAuthChallengeResponseContent": ".types", - @@ -3756,9 +3760,9 @@ _dynamic_imports: typing.Dict[str, str] = { - "CreateVerificationEmailResponseContent": ".types", - "CreatedAuthenticationMethodTypeEnum": ".types", - "CreatedUserAuthenticationMethodTypeEnum": ".types", - - "CredentialDeviceTypeEnum": ".types", + @@ -3761,6 +3765,7 @@ _dynamic_imports: typing.Dict[str, str] = { + "CredentialDeviceTypeEnum": ".types", "CredentialId": ".types", "CustomDomain": ".types", + "CustomDomainHeader": ".management_client", "CustomDomainCustomClientIpHeader": ".types", "CustomDomainCustomClientIpHeaderEnum": ".types", "CustomDomainProvisioningTypeEnum": ".types", - @@ -5016,6 +5020,7 @@ _dynamic_imports: typing.Dict[str, str] = { + @@ -5020,6 +5025,7 @@ _dynamic_imports: typing.Dict[str, str] = { "LogStreamSumoEnum": ".types", "LogStreamSumoResponseSchema": ".types", "LogStreamSumoSink": ".types", @@ -71,18 +74,15 @@ patches: "MdlPresentationProperties": ".types", "MdlPresentationRequest": ".types", "MdlPresentationRequestProperties": ".types", - @@ -5242,9 +5247,9 @@ _dynamic_imports: typing.Dict[str, str] = { + @@ -5246,6 +5252,7 @@ _dynamic_imports: typing.Dict[str, str] = { "TokenQuota": ".types", "TokenQuotaClientCredentials": ".types", "TokenQuotaConfiguration": ".types", + "TokenProvider": ".token_provider", "TooManyRequestsError": ".errors", "TooManyRequestsSchema": ".types", - - "TooManyRequestsSchemaError": ".types", - "TwilioProviderConfiguration": ".types", - "TwilioProviderCredentials": ".types", - "TwilioProviderDeliveryMethodEnum": ".types", - @@ -5557,6 +5562,8 @@ __all__ = [ + "TooManyRequestsSchemaError": ".types", + @@ -5561,6 +5568,8 @@ __all__ = [ "AssociateOrganizationClientGrantResponseContent", "AsyncApprovalNotificationsChannelsEnum", "AsyncAuth0", @@ -91,18 +91,15 @@ patches: "AttackProtectionCaptchaArkoseResponseContent", "AttackProtectionCaptchaAuthChallengeRequest", "AttackProtectionCaptchaAuthChallengeResponseContent", - @@ -7769,9 +7776,9 @@ __all__ = [ - "LogStreamSplunkResponseSchema", - "LogStreamSplunkSink", - "LogStreamStatusEnum", - - "LogStreamSumoEnum", + @@ -7778,6 +7787,7 @@ __all__ = [ + "LogStreamSumoEnum", "LogStreamSumoResponseSchema", "LogStreamSumoSink", + "ManagementClient", "MdlPresentationProperties", "MdlPresentationRequest", "MdlPresentationRequestProperties", - @@ -7995,6 +8002,7 @@ __all__ = [ + @@ -8001,6 +8011,7 @@ __all__ = [ "TestEventDataContent", "TokenExchangeProfileResponseContent", "TokenExchangeProfileTypeEnum", @@ -1582,6 +1579,8 @@ patches: ExpressConfiguration, ExpressConfigurationOrNull, ExtensibilityEmailProviderCredentials, + FedCmLogin, + FedCmLoginGoogle, FederatedConnectionTokenSet, FlowAction, FlowActionActivecampaign, @@ -4331,6 +4330,8 @@ patches: "ExpressConfiguration": ".types", "ExpressConfigurationOrNull": ".types", "ExtensibilityEmailProviderCredentials": ".types", + "FedCmLogin": ".types", + "FedCmLoginGoogle": ".types", "FederatedConnectionTokenSet": ".types", "FlowAction": ".types", "FlowActionActivecampaign": ".types", @@ -7091,6 +7092,8 @@ patches: "ExpressConfiguration", "ExpressConfigurationOrNull", "ExtensibilityEmailProviderCredentials", + "FedCmLogin", + "FedCmLoginGoogle", "FederatedConnectionTokenSet", "FlowAction", "FlowActionActivecampaign", @@ -8360,7 +8363,7 @@ patches: original_commit: f182694f50720cacb568ff5c7a1894b0dd972373 original_message: "fix: Add top-level `py.typed` marker to resolve IDE import errors (#829)" original_author: Snehil Kishore - base_generation: c1c18146c845e6c7916d0490f7ef02807f9bfebf + base_generation: 812b8ca16fc2740001f9839ce5c88f85fed87c6e files: - src/auth0/py.typed patch_content: |+ @@ -8419,7 +8422,7 @@ patches: original_commit: 1026b4d84790f1037f99df904ddf58d68f944224 original_message: Release 5.4.0 (#838) original_author: Snehil Kishore - base_generation: c1c18146c845e6c7916d0490f7ef02807f9bfebf + base_generation: 812b8ca16fc2740001f9839ce5c88f85fed87c6e files: - .version - CHANGELOG.md diff --git a/.fernignore b/.fernignore index 6d1ab409..b3bec987 100644 --- a/.fernignore +++ b/.fernignore @@ -19,6 +19,12 @@ tests/authentication/ # Root auth0 __init__.py and py.typed marker src/auth0/__init__.py src/auth0/py.typed +<<<<<<< ours +======= + +# Telemetry customization (Auth0 format with dynamic versioning) +src/auth0/management/core/client_wrapper.py +>>>>>>> theirs # Files edited to incorporate both APIs pyproject.toml diff --git a/src/auth0/management/__init__.py b/src/auth0/management/__init__.py index 46338c37..4fd6bafa 100644 --- a/src/auth0/management/__init__.py +++ b/src/auth0/management/__init__.py @@ -2743,6 +2743,8 @@ from .environment import Auth0Environment from .event_streams import EventStreamsCreateRequest from .version import __version__ + from .management_client import AsyncManagementClient, CustomDomainHeader, ManagementClient + from .token_provider import AsyncTokenProvider, TokenProvider _dynamic_imports: typing.Dict[str, str] = { "Action": ".types", "ActionBase": ".types", @@ -2803,6 +2805,8 @@ "AssociateOrganizationClientGrantResponseContent": ".types", "AsyncApprovalNotificationsChannelsEnum": ".types", "AsyncAuth0": ".client", + "AsyncManagementClient": ".management_client", + "AsyncTokenProvider": ".token_provider", "AttackProtectionCaptchaArkoseResponseContent": ".types", "AttackProtectionCaptchaAuthChallengeRequest": ".types", "AttackProtectionCaptchaAuthChallengeResponseContent": ".types", @@ -3761,6 +3765,7 @@ "CredentialDeviceTypeEnum": ".types", "CredentialId": ".types", "CustomDomain": ".types", + "CustomDomainHeader": ".management_client", "CustomDomainCustomClientIpHeader": ".types", "CustomDomainCustomClientIpHeaderEnum": ".types", "CustomDomainProvisioningTypeEnum": ".types", @@ -5020,6 +5025,7 @@ "LogStreamSumoEnum": ".types", "LogStreamSumoResponseSchema": ".types", "LogStreamSumoSink": ".types", + "ManagementClient": ".management_client", "MdlPresentationProperties": ".types", "MdlPresentationRequest": ".types", "MdlPresentationRequestProperties": ".types", @@ -5246,6 +5252,7 @@ "TokenQuota": ".types", "TokenQuotaClientCredentials": ".types", "TokenQuotaConfiguration": ".types", + "TokenProvider": ".token_provider", "TooManyRequestsError": ".errors", "TooManyRequestsSchema": ".types", "TooManyRequestsSchemaError": ".types", @@ -5561,6 +5568,8 @@ def __dir__(): "AssociateOrganizationClientGrantResponseContent", "AsyncApprovalNotificationsChannelsEnum", "AsyncAuth0", + "AsyncManagementClient", + "AsyncTokenProvider", "AttackProtectionCaptchaArkoseResponseContent", "AttackProtectionCaptchaAuthChallengeRequest", "AttackProtectionCaptchaAuthChallengeResponseContent", @@ -7778,6 +7787,7 @@ def __dir__(): "LogStreamSumoEnum", "LogStreamSumoResponseSchema", "LogStreamSumoSink", + "ManagementClient", "MdlPresentationProperties", "MdlPresentationRequest", "MdlPresentationRequestProperties", @@ -8001,6 +8011,7 @@ def __dir__(): "TestEventDataContent", "TokenExchangeProfileResponseContent", "TokenExchangeProfileTypeEnum", + "TokenProvider", "TokenQuota", "TokenQuotaClientCredentials", "TokenQuotaConfiguration",