Skip to content

Conversation

@fern-api
Copy link
Contributor

@fern-api fern-api bot commented Jan 13, 2026

Changes

Change Type Method Endpoint SDK Method
NEW GET /api/v2/organizations/{id}/discovery-domains/name/{discovery_domain} client.organizations.discoveryDomains.getByName()
MODIFIED GET /api/v2/organizations/{id}/discovery-domains/{discovery_domain_id} Added use_for_organization_discovery response property
MODIFIED GET /api/v2/organizations/{id}/discovery-domains Added use_for_organization_discovery response property
MODIFIED PATCH /api/v2/organizations/{id}/discovery-domains/{discovery_domain_id} Added use_for_organization_discovery request/response property
MODIFIED POST /api/v2/organizations/{id}/discovery-domains Added use_for_organization_discovery request/response property
MODIFIED POST /api/v2/self-service-profiles/{id}/sso-ticket Added use_for_organization_discovery request property

Manual Testing Snippets

  • Fetch accessToken from Auth0-dashboard or using AuthAPI.
  • Create ManagementApi instance with access token
ManagementApi client = ManagementApi
                .builder()
                .url(audience)
                .token(accessToken)
                .build();

Organization Discovery Domains Changes

// ===== Organization Discovery Domains Changes =======

// Create a new domain for the specified {org_id}. Allows setting `status` directly to `verified` or `pending` in the request body and `status` is required and is not defaulted. Note - The optional use_for_organization_discovery attribute (true by default).
CreateOrganizationDiscoveryDomainResponseContent createOrganizationDiscoveryDomainResponseContent = client.organizations().discoveryDomains().create(
    "<ORG_ID>",
    CreateOrganizationDiscoveryDomainRequestContent
        .builder()
        .domain("acme.com")
        .status(OrganizationDiscoveryDomainStatus.VERIFIED)
        .build()
);
System.out.println("Created Domain ID: " + createOrganizationDiscoveryDomainResponseContent.toString());

// Update a domain's properties. use_for_organization_discovery to false
UpdateOrganizationDiscoveryDomainResponseContent updateOrganizationDiscoveryDomainResponseContent = client.organizations().discoveryDomains().update(
    "<ORG_ID>",
    createOrganizationDiscoveryDomainResponseContent.getId(),
    UpdateOrganizationDiscoveryDomainRequestContent
        .builder()
        .useForOrganizationDiscovery(false)
        .build()
);
System.out.println("Updated Domain ID: " + updateOrganizationDiscoveryDomainResponseContent.toString());

// Retrieve a specific domain by its ID for the specified {org_id}.
GetOrganizationDiscoveryDomainResponseContent getOrganizationDiscoveryDomainResponseContent = client.organizations().discoveryDomains().get(
    "<ORG_ID>",
    createOrganizationDiscoveryDomainResponseContent.getId()
);
System.out.println("Retrieved Domain ID: " + getOrganizationDiscoveryDomainResponseContent.toString());

// Retrieve all domains for the specified {org_id}.
SyncPagingIterable<OrganizationDiscoveryDomain> organizationDiscoveryDomains = client.organizations().discoveryDomains().list(
    "<ORG_ID>"
);

for (OrganizationDiscoveryDomain domain : organizationDiscoveryDomains) {
    System.out.println("Listed Domain ID: " + domain.toString());
}

// Retrieve a specific domain by its name for the specified {org_id}.
GetOrganizationDiscoveryDomainByNameResponseContent getOrganizationDiscoveryDomainByNameResponseContent = client.organizations().discoveryDomains().getByName(
    "<ORG_ID>",
    "acme.com"
);
System.out.println("Retrieved Domain By Name ID: " + getOrganizationDiscoveryDomainByNameResponseContent.toString());

Create SS-SSO Ticket changes

use_for_organization_discovery: The optional use_for_organization_discovery attribute (true by default).


// Create UserAttributeProfile
Map<String, UserAttributeProfileUserAttributeAdditionalProperties> userAttributesMap = new HashMap<>();

UserAttributeProfileUserAttributeAdditionalProperties userAttributes =
    UserAttributeProfileUserAttributeAdditionalProperties
        .builder()
        .description("This is just a test")
        .label("test user")
        .profileRequired(false)
        .auth0Mapping("testUser")
        .oidcMapping(
            UserAttributeProfileOidcMapping
                .builder()
                .mapping("preferred_username")
                .displayName("User")
                .build()
        )
        .build();
userAttributesMap.put("username", userAttributes);

UserAttributeProfileUserId userId = UserAttributeProfileUserId
    .builder()
    .samlMapping(Arrays.asList("urn:oid:0.9.2342.100.100.1.1"))
    .oidcMapping("sub")
    .scimMapping("userName")
    .build();

CreateUserAttributeProfileRequestContent createPayload = CreateUserAttributeProfileRequestContent
    .builder()
    .name("User-Profile-2")
        .userAttributes(userAttributesMap)
        .userId(userId)
            .build();


CreateUserAttributeProfileResponseContent createdUserAttributeProfile = client.userAttributeProfiles().create(createPayload);


// Create a self-service profile
CreateSelfServiceProfileRequestContent requestContent = CreateSelfServiceProfileRequestContent
    .builder()
    .name("Test SSP-2")
    .userAttributeProfileId(createdUserAttributeProfile.getId())
    .build();


CreateSelfServiceProfileResponseContent createdSSP = client.selfServiceProfiles().create(requestContent);

// Create an SSO Access Ticket
List<SelfServiceProfileSsoTicketProvisioningScopeEnum> list = Arrays.asList(SelfServiceProfileSsoTicketProvisioningScopeEnum.GET_USERS);

CreateSelfServiceProfileSsoTicketRequestContent ticketRequestContent = CreateSelfServiceProfileSsoTicketRequestContent
    .builder()
    .connectionConfig(SelfServiceProfileSsoTicketConnectionConfig.builder().name("Test-Con").build())
    .provisioningConfig(SelfServiceProfileSsoTicketProvisioningConfig
        .builder()
        .scopes(list)
        .tokenLifetime(1000)
        .googleWorkspace(
            SelfServiceProfileSsoTicketGoogleWorkspaceConfig
                .builder()
                .syncUsers(true)
                .build()
        )
        .build()
    )
    .useForOrganizationDiscovery(true)
    .build();

CreateSelfServiceProfileSsoTicketResponseContent resp = client.selfServiceProfiles().ssoTicket().create(createdSSP.getId().get(), ticketRequestContent);
System.out.println("SSO Ticket ID: " + resp.getTicket());

📢 Fixes Applied

Fixed Event Stream Paginated Endpoint

Earlier it was ListEventStreamsResponseContent and now it is changed to SyncPagingIterable<EventStreamResponseContent>

SyncPagingIterable<EventStreamResponseContent> eventStreamResponseContents = client.eventStreams().list();

Fixed Prompts Rendering Paginated Endpoint

Earlier it was AculResponseContent now it is changed to ListAculsResponseContentItem

SyncPagingIterable<ListAculsResponseContentItem> listAculsResponseContentItems = client.prompts().rendering().list();

@fern-api fern-api bot requested a review from a team as a code owner January 13, 2026 07:36
@semgrepcode-auth0
Copy link

Semgrep found 6 android_sensitive_data_storage findings:

  • src/main/java/com/auth0/client/mgmt/types/ListGroupsRequestParameters.java
  • src/main/java/com/auth0/client/mgmt/types/GetGroupResponseContent.java
  • src/main/java/com/auth0/client/mgmt/RawGroupsClient.java
  • src/main/java/com/auth0/client/mgmt/AsyncRawGroupsClient.java

The application could store sensitive data outside of the application container or system credential storage facilities.

@tanya732 tanya732 merged commit 6f8c26a into master Jan 21, 2026
5 checks passed
@tanya732 tanya732 deleted the fern-bot/2026-01-13T07-36Z branch January 21, 2026 10:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants