Skip to content

Conversation

@tanya732
Copy link
Contributor

@tanya732 tanya732 commented Jan 9, 2026

🎉 Announcing Release 3.0.0

Overview

We’re excited to share that v3 of the Auth0 Java SDK is now GA! This major release represents a significant evolution of the Java client library for Auth0, designed to make integrating with Auth0’s Authentication and Management APIs simpler, clearer, and more robust for server-side JVM applications.

Changes in this PR

  • Updated .version file to v3.0.0
  • Added comprehensive v3.0.0 release notes to CHANGELOG.md
  • Updated Readme with v3.0.0 version

What’s New in v3

Added Features

  • New OpenAPI-generated Management API SDK: Complete rewrite of the Management API client using Fern code generation.
  • Improved type safety: using enums
  • Automatic pagination: SyncPagingIterable<T> for automatic pagination
  • Nullability annotations on generated POJOs
  • error handling: unified ManagementApiException class
  • Support for explicit null values in PATCH operations
  • HTTP client upgraded to OkHttp 5.2.1

⚠️ BREAKING CHANGES - Major Rewrite

The Management API client has been fully rewritten using Fern OpenAPI code generation. Users will need to update their code when migrating from v2.x to v3.0.0, refer

Key breaking changes include:

  • Hierarchical sub-clients replace flat entity APIs.
  • Manual pagination removed in favor of SyncPagingIterable
  • Unified exception handling via ManagementApiException
  • Client initialization updated to ManagementApi.builder()
  • Request and response models now use generated, immutable *RequestContent, *ResponseContent, and *RequestParameters types
  • Package structure updated across all Management API resources

Deprecated APIs have been removed:

  • AuthAPI constructors.
  • Legacy authentication and signup helpers.
  • Networking helpers, buildNetworkingClient.
  • Deprecated method from MultipartRequest.
  • Internal EmptyBodyVoidRequest
  • Deprecated HttpOptions
  • EXAMPLES.md with reference.md

Migration Example

Client Initialization
The Management API client initialization has changed from ManagementAPI to ManagementApi, and uses a different builder pattern.

Before (v2):

import com.auth0.client.mgmt.ManagementAPI;

// Using domain and token
ManagementAPI mgmt = ManagementAPI.newBuilder("{YOUR_DOMAIN}", "{YOUR_API_TOKEN}").build();

// Using TokenProvider
TokenProvider tokenProvider = SimpleTokenProvider.create("{YOUR_API_TOKEN}");
ManagementAPI mgmt = ManagementAPI.newBuilder("{YOUR_DOMAIN}", tokenProvider).build();

After (v3): Approach : Standard Token-Based

import com.auth0.client.mgmt.ManagementApi;

ManagementApi client = ManagementApi
    .builder()
    .url("https://{YOUR_DOMAIN}/api/v2")
    .token("{YOUR_API_TOKEN}")
    .build();

📓 Important Notes:

  • The Authentication API remains functionally compatible, with deprecated APIs removed
  • Complete migration guide available at MIGRATION_GUIDE.md
  • This is the stable GA release following V3.0.0-beta.0

@tanya732 tanya732 requested a review from a team as a code owner January 9, 2026 08:10
@tanya732 tanya732 merged commit bac258a into master Jan 9, 2026
5 checks passed
@tanya732 tanya732 deleted the release/3.0.0 branch January 9, 2026 10:44
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