diff --git a/docs/auth/CreatedSaasUser.md b/docs/auth/CreatedSaasUser.md
index 9705a3f5..d2b384e9 100644
--- a/docs/auth/CreatedSaasUser.md
+++ b/docs/auth/CreatedSaasUser.md
@@ -11,6 +11,7 @@
|**email** | **String** | E-mail. For sign-in ID authentication users, this field is an empty string. | |
|**signInId** | **String** | Sign-in ID. For email authentication users, this field is an empty string. | |
|**attributes** | **Map<String, Object>** | Attribute information | |
+|**lastLoginAt** | **Integer** | Last login date and time (unix timestamp). Null if the user has never logged in. | [optional] |
|**password** | **String** | Auto-generated password (only when sign_in_id authentication and password not specified) | [optional] |
diff --git a/docs/auth/SaasUser.md b/docs/auth/SaasUser.md
index b48ff2c9..234afbad 100644
--- a/docs/auth/SaasUser.md
+++ b/docs/auth/SaasUser.md
@@ -11,6 +11,7 @@
|**email** | **String** | E-mail. For sign-in ID authentication users, this field is an empty string. | |
|**signInId** | **String** | Sign-in ID. For email authentication users, this field is an empty string. | |
|**attributes** | **Map<String, Object>** | Attribute information | |
+|**lastLoginAt** | **Integer** | Last login date and time (unix timestamp). Null if the user has never logged in. | [optional] |
diff --git a/docs/auth/SaasUserApi.md b/docs/auth/SaasUserApi.md
index 55bc1bc2..18fe2755 100644
--- a/docs/auth/SaasUserApi.md
+++ b/docs/auth/SaasUserApi.md
@@ -13,6 +13,7 @@ All URIs are relative to *https://api.saasus.io/v1/auth*
| [**deleteSaasUser**](SaasUserApi.md#deleteSaasUser) | **DELETE** /users/{user_id} | Delete User |
| [**getSaasUser**](SaasUserApi.md#getSaasUser) | **GET** /users/{user_id} | Get User |
| [**getSaasUsers**](SaasUserApi.md#getSaasUsers) | **GET** /users | Get Users |
+| [**getSaasUsersCount**](SaasUserApi.md#getSaasUsersCount) | **GET** /users/count | Get SaaS Users Count |
| [**getUserMfaPreference**](SaasUserApi.md#getUserMfaPreference) | **GET** /users/{user_id}/mfa/preference | Get User's MFA Settings |
| [**linkAwsMarketplace**](SaasUserApi.md#linkAwsMarketplace) | **PATCH** /aws-marketplace/link | Link an existing tenant with AWS Marketplace |
| [**requestEmailUpdate**](SaasUserApi.md#requestEmailUpdate) | **POST** /users/{user_id}/email/request | Request User Email Update |
@@ -20,6 +21,8 @@ All URIs are relative to *https://api.saasus.io/v1/auth*
| [**resendSignUpConfirmationEmail**](SaasUserApi.md#resendSignUpConfirmationEmail) | **POST** /sign-up/resend | Resend Sign Up Confirmation Email |
| [**resetSaasUserPassword**](SaasUserApi.md#resetSaasUserPassword) | **POST** /users/{user_id}/password/reset | Reset Password |
| [**respondToSignInChallenge**](SaasUserApi.md#respondToSignInChallenge) | **POST** /sign-in/challenge | Respond to Sign In Challenge |
+| [**saveSaasUsersCount**](SaasUserApi.md#saveSaasUsersCount) | **POST** /users/count | Save SaaS Users Count |
+| [**searchSaasUsers**](SaasUserApi.md#searchSaasUsers) | **GET** /users/search | Search SaaS Users |
| [**signIn**](SaasUserApi.md#signIn) | **POST** /sign-in | Sign In |
| [**signUp**](SaasUserApi.md#signUp) | **POST** /sign-up | Sign Up |
| [**signUpWithAwsMarketplace**](SaasUserApi.md#signUpWithAwsMarketplace) | **POST** /aws-marketplace/sign-up | Sign Up with AWS Marketplace |
@@ -649,6 +652,70 @@ This endpoint does not need any parameter.
| **200** | OK | - |
| **500** | Internal Server Error | - |
+
+# **getSaasUsersCount**
+> SaasUsersCount getSaasUsersCount()
+
+Get SaaS Users Count
+
+Get the count of SaaS users.
+
+### Example
+```java
+// Import classes:
+import saasus.sdk.auth.ApiClient;
+import saasus.sdk.auth.ApiException;
+import saasus.sdk.auth.Configuration;
+import saasus.sdk.auth.auth.*;
+import saasus.sdk.auth.models.*;
+import saasus.sdk.auth.api.SaasUserApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setBasePath("https://api.saasus.io/v1/auth");
+
+ // Configure HTTP bearer authorization: Bearer
+ HttpBearerAuth Bearer = (HttpBearerAuth) defaultClient.getAuthentication("Bearer");
+ Bearer.setBearerToken("BEARER TOKEN");
+
+ SaasUserApi apiInstance = new SaasUserApi(defaultClient);
+ try {
+ SaasUsersCount result = apiInstance.getSaasUsersCount();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling SaasUserApi#getSaasUsersCount");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**SaasUsersCount**](SaasUsersCount.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | OK | - |
+| **500** | Internal Server Error | - |
+
# **getUserMfaPreference**
> MfaPreference getUserMfaPreference(userId)
@@ -1126,6 +1193,151 @@ public class Example {
| **401** | Unauthorized | - |
| **500** | Internal Server Error | - |
+
+# **saveSaasUsersCount**
+> saveSaasUsersCount(saveSaasUsersCountParam)
+
+Save SaaS Users Count
+
+Save the count of SaaS users.
+
+### Example
+```java
+// Import classes:
+import saasus.sdk.auth.ApiClient;
+import saasus.sdk.auth.ApiException;
+import saasus.sdk.auth.Configuration;
+import saasus.sdk.auth.auth.*;
+import saasus.sdk.auth.models.*;
+import saasus.sdk.auth.api.SaasUserApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setBasePath("https://api.saasus.io/v1/auth");
+
+ // Configure HTTP bearer authorization: Bearer
+ HttpBearerAuth Bearer = (HttpBearerAuth) defaultClient.getAuthentication("Bearer");
+ Bearer.setBearerToken("BEARER TOKEN");
+
+ SaasUserApi apiInstance = new SaasUserApi(defaultClient);
+ SaveSaasUsersCountParam saveSaasUsersCountParam = new SaveSaasUsersCountParam(); // SaveSaasUsersCountParam |
+ try {
+ apiInstance.saveSaasUsersCount(saveSaasUsersCountParam);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling SaasUserApi#saveSaasUsersCount");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------------- | ------------- | ------------- | -------------|
+| **saveSaasUsersCountParam** | [**SaveSaasUsersCountParam**](SaveSaasUsersCountParam.md)| | |
+
+### Return type
+
+null (empty response body)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | OK | - |
+| **400** | Bad Request | - |
+| **500** | Internal Server Error | - |
+
+
+# **searchSaasUsers**
+> SearchSaasUsersResult searchSaasUsers(id, email, signInId, limit, cursor)
+
+Search SaaS Users
+
+Search SaaS users by user ID, email, or sign-in ID.
+
+### Example
+```java
+// Import classes:
+import saasus.sdk.auth.ApiClient;
+import saasus.sdk.auth.ApiException;
+import saasus.sdk.auth.Configuration;
+import saasus.sdk.auth.auth.*;
+import saasus.sdk.auth.models.*;
+import saasus.sdk.auth.api.SaasUserApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setBasePath("https://api.saasus.io/v1/auth");
+
+ // Configure HTTP bearer authorization: Bearer
+ HttpBearerAuth Bearer = (HttpBearerAuth) defaultClient.getAuthentication("Bearer");
+ Bearer.setBearerToken("BEARER TOKEN");
+
+ SaasUserApi apiInstance = new SaasUserApi(defaultClient);
+ String id = "id_example"; // String | User ID
+ String email = "email_example"; // String | Email prefix
+ String signInId = "signInId_example"; // String | Sign-in ID prefix
+ Long limit = 56L; // Long | Maximum number of items to retrieve
+ String cursor = "cursor_example"; // String | Cursor for cursor pagination
+ try {
+ SearchSaasUsersResult result = apiInstance.searchSaasUsers(id, email, signInId, limit, cursor);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling SaasUserApi#searchSaasUsers");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------------- | ------------- | ------------- | -------------|
+| **id** | **String**| User ID | [optional] |
+| **email** | **String**| Email prefix | [optional] |
+| **signInId** | **String**| Sign-in ID prefix | [optional] |
+| **limit** | **Long**| Maximum number of items to retrieve | [optional] |
+| **cursor** | **String**| Cursor for cursor pagination | [optional] |
+
+### Return type
+
+[**SearchSaasUsersResult**](SearchSaasUsersResult.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | OK | - |
+| **400** | Bad Request | - |
+| **500** | Internal Server Error | - |
+
# **signIn**
> SignInResult signIn(signInParam)
diff --git a/docs/auth/SaasUsersCount.md b/docs/auth/SaasUsersCount.md
new file mode 100644
index 00000000..45dd2297
--- /dev/null
+++ b/docs/auth/SaasUsersCount.md
@@ -0,0 +1,14 @@
+
+
+# SaasUsersCount
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**count** | **Integer** | Count of SaaS users | |
+|**updatedAt** | **Long** | Unix timestamp (seconds) of the last update | |
+
+
+
diff --git a/docs/auth/SaveSaasUsersCountParam.md b/docs/auth/SaveSaasUsersCountParam.md
new file mode 100644
index 00000000..613a0883
--- /dev/null
+++ b/docs/auth/SaveSaasUsersCountParam.md
@@ -0,0 +1,13 @@
+
+
+# SaveSaasUsersCountParam
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**count** | **Integer** | Count of SaaS users | |
+
+
+
diff --git a/docs/auth/SaveTenantUserCountParam.md b/docs/auth/SaveTenantUserCountParam.md
new file mode 100644
index 00000000..6883b4e7
--- /dev/null
+++ b/docs/auth/SaveTenantUserCountParam.md
@@ -0,0 +1,14 @@
+
+
+# SaveTenantUserCountParam
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**tenantId** | **String** | | |
+|**count** | **Integer** | Count of tenant users | |
+
+
+
diff --git a/docs/auth/SaveTenantUsersCountsParam.md b/docs/auth/SaveTenantUsersCountsParam.md
new file mode 100644
index 00000000..4d5a59dc
--- /dev/null
+++ b/docs/auth/SaveTenantUsersCountsParam.md
@@ -0,0 +1,13 @@
+
+
+# SaveTenantUsersCountsParam
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**tenantUserCounts** | [**List<SaveTenantUserCountParam>**](SaveTenantUserCountParam.md) | | |
+
+
+
diff --git a/docs/auth/SearchSaasUsersResult.md b/docs/auth/SearchSaasUsersResult.md
new file mode 100644
index 00000000..6ff07f0b
--- /dev/null
+++ b/docs/auth/SearchSaasUsersResult.md
@@ -0,0 +1,14 @@
+
+
+# SearchSaasUsersResult
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**users** | [**List<SaasUser>**](SaasUser.md) | | |
+|**cursor** | **String** | Pagination cursor for the next page | [optional] |
+
+
+
diff --git a/docs/auth/SearchTenantUsersResult.md b/docs/auth/SearchTenantUsersResult.md
new file mode 100644
index 00000000..38e5dfb3
--- /dev/null
+++ b/docs/auth/SearchTenantUsersResult.md
@@ -0,0 +1,14 @@
+
+
+# SearchTenantUsersResult
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**users** | [**List<User>**](User.md) | | |
+|**cursor** | **String** | Pagination cursor for the next page | [optional] |
+
+
+
diff --git a/docs/auth/TenantUserApi.md b/docs/auth/TenantUserApi.md
index 2d92eec6..34929ba2 100644
--- a/docs/auth/TenantUserApi.md
+++ b/docs/auth/TenantUserApi.md
@@ -10,8 +10,11 @@ All URIs are relative to *https://api.saasus.io/v1/auth*
| [**deleteTenantUserRole**](TenantUserApi.md#deleteTenantUserRole) | **DELETE** /tenants/{tenant_id}/users/{user_id}/envs/{env_id}/roles/{role_name} | Remove Role From Tenant User |
| [**getAllTenantUser**](TenantUserApi.md#getAllTenantUser) | **GET** /tenants/all/users/{user_id} | Get User Info |
| [**getAllTenantUsers**](TenantUserApi.md#getAllTenantUsers) | **GET** /tenants/all/users | Get Users |
+| [**getAllTenantUsersCount**](TenantUserApi.md#getAllTenantUsersCount) | **GET** /tenants/all/users/count | Get Tenant Users Count |
| [**getTenantUser**](TenantUserApi.md#getTenantUser) | **GET** /tenants/{tenant_id}/users/{user_id} | Get Tenant User |
| [**getTenantUsers**](TenantUserApi.md#getTenantUsers) | **GET** /tenants/{tenant_id}/users | Get Tenant Users |
+| [**saveTenantUsersCounts**](TenantUserApi.md#saveTenantUsersCounts) | **POST** /tenants/all/users/count | Save Tenant Users Count |
+| [**searchTenantUsers**](TenantUserApi.md#searchTenantUsers) | **GET** /tenants/all/users/search | Search Tenant Users |
| [**updateTenantUser**](TenantUserApi.md#updateTenantUser) | **PATCH** /tenants/{tenant_id}/users/{user_id} | Update Tenant User Attribute |
@@ -435,6 +438,70 @@ This endpoint does not need any parameter.
| **200** | OK | - |
| **500** | Internal Server Error | - |
+
+# **getAllTenantUsersCount**
+> TenantUsersCounts getAllTenantUsersCount()
+
+Get Tenant Users Count
+
+Get the count of tenant users for each tenant.
+
+### Example
+```java
+// Import classes:
+import saasus.sdk.auth.ApiClient;
+import saasus.sdk.auth.ApiException;
+import saasus.sdk.auth.Configuration;
+import saasus.sdk.auth.auth.*;
+import saasus.sdk.auth.models.*;
+import saasus.sdk.auth.api.TenantUserApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setBasePath("https://api.saasus.io/v1/auth");
+
+ // Configure HTTP bearer authorization: Bearer
+ HttpBearerAuth Bearer = (HttpBearerAuth) defaultClient.getAuthentication("Bearer");
+ Bearer.setBearerToken("BEARER TOKEN");
+
+ TenantUserApi apiInstance = new TenantUserApi(defaultClient);
+ try {
+ TenantUsersCounts result = apiInstance.getAllTenantUsersCount();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling TenantUserApi#getAllTenantUsersCount");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**TenantUsersCounts**](TenantUsersCounts.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | OK | - |
+| **500** | Internal Server Error | - |
+
# **getTenantUser**
> User getTenantUser(tenantId, userId)
@@ -574,6 +641,157 @@ public class Example {
| **200** | OK | - |
| **500** | Internal Server Error | - |
+
+# **saveTenantUsersCounts**
+> saveTenantUsersCounts(saveTenantUsersCountsParam)
+
+Save Tenant Users Count
+
+Save the count of tenant users for each tenant.
+
+### Example
+```java
+// Import classes:
+import saasus.sdk.auth.ApiClient;
+import saasus.sdk.auth.ApiException;
+import saasus.sdk.auth.Configuration;
+import saasus.sdk.auth.auth.*;
+import saasus.sdk.auth.models.*;
+import saasus.sdk.auth.api.TenantUserApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setBasePath("https://api.saasus.io/v1/auth");
+
+ // Configure HTTP bearer authorization: Bearer
+ HttpBearerAuth Bearer = (HttpBearerAuth) defaultClient.getAuthentication("Bearer");
+ Bearer.setBearerToken("BEARER TOKEN");
+
+ TenantUserApi apiInstance = new TenantUserApi(defaultClient);
+ SaveTenantUsersCountsParam saveTenantUsersCountsParam = new SaveTenantUsersCountsParam(); // SaveTenantUsersCountsParam |
+ try {
+ apiInstance.saveTenantUsersCounts(saveTenantUsersCountsParam);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling TenantUserApi#saveTenantUsersCounts");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------------- | ------------- | ------------- | -------------|
+| **saveTenantUsersCountsParam** | [**SaveTenantUsersCountsParam**](SaveTenantUsersCountsParam.md)| | |
+
+### Return type
+
+null (empty response body)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | OK | - |
+| **400** | Bad Request | - |
+| **500** | Internal Server Error | - |
+
+
+# **searchTenantUsers**
+> SearchTenantUsersResult searchTenantUsers(tenantId, id, email, signInId, envId, roleName, limit, cursor)
+
+Search Tenant Users
+
+Search tenant users by user id, tenant id, email, sign-in ID, env, or role.
+
+### Example
+```java
+// Import classes:
+import saasus.sdk.auth.ApiClient;
+import saasus.sdk.auth.ApiException;
+import saasus.sdk.auth.Configuration;
+import saasus.sdk.auth.auth.*;
+import saasus.sdk.auth.models.*;
+import saasus.sdk.auth.api.TenantUserApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setBasePath("https://api.saasus.io/v1/auth");
+
+ // Configure HTTP bearer authorization: Bearer
+ HttpBearerAuth Bearer = (HttpBearerAuth) defaultClient.getAuthentication("Bearer");
+ Bearer.setBearerToken("BEARER TOKEN");
+
+ TenantUserApi apiInstance = new TenantUserApi(defaultClient);
+ String tenantId = "tenantId_example"; // String | Tenant ID
+ String id = "id_example"; // String | User ID
+ String email = "email_example"; // String | Email prefix
+ String signInId = "signInId_example"; // String | Sign-in ID prefix
+ Integer envId = 56; // Integer | Environment ID
+ String roleName = "roleName_example"; // String | Role Name
+ Long limit = 56L; // Long | Maximum number of items to retrieve
+ String cursor = "cursor_example"; // String | Cursor for cursor pagination
+ try {
+ SearchTenantUsersResult result = apiInstance.searchTenantUsers(tenantId, id, email, signInId, envId, roleName, limit, cursor);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling TenantUserApi#searchTenantUsers");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------------- | ------------- | ------------- | -------------|
+| **tenantId** | **String**| Tenant ID | [optional] |
+| **id** | **String**| User ID | [optional] |
+| **email** | **String**| Email prefix | [optional] |
+| **signInId** | **String**| Sign-in ID prefix | [optional] |
+| **envId** | **Integer**| Environment ID | [optional] |
+| **roleName** | **String**| Role Name | [optional] |
+| **limit** | **Long**| Maximum number of items to retrieve | [optional] |
+| **cursor** | **String**| Cursor for cursor pagination | [optional] |
+
+### Return type
+
+[**SearchTenantUsersResult**](SearchTenantUsersResult.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | OK | - |
+| **400** | Bad Request | - |
+| **500** | Internal Server Error | - |
+
# **updateTenantUser**
> updateTenantUser(tenantId, userId, updateTenantUserParam)
diff --git a/docs/auth/TenantUserCount.md b/docs/auth/TenantUserCount.md
new file mode 100644
index 00000000..57abcfd4
--- /dev/null
+++ b/docs/auth/TenantUserCount.md
@@ -0,0 +1,15 @@
+
+
+# TenantUserCount
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**tenantId** | **String** | | |
+|**count** | **Integer** | Count of tenant users | |
+|**updatedAt** | **Long** | Unix timestamp (seconds) of the last update | |
+
+
+
diff --git a/docs/auth/TenantUsersCounts.md b/docs/auth/TenantUsersCounts.md
new file mode 100644
index 00000000..34d1d857
--- /dev/null
+++ b/docs/auth/TenantUsersCounts.md
@@ -0,0 +1,13 @@
+
+
+# TenantUsersCounts
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**tenantUserCounts** | [**List<TenantUserCount>**](TenantUserCount.md) | | |
+
+
+
diff --git a/src/main/java/saasus/sdk/apilog/ApiException.java b/src/main/java/saasus/sdk/apilog/ApiException.java
index d15c5fb4..82134ea7 100644
--- a/src/main/java/saasus/sdk/apilog/ApiException.java
+++ b/src/main/java/saasus/sdk/apilog/ApiException.java
@@ -21,7 +21,7 @@
*
ApiException class.
*/
@SuppressWarnings("serial")
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:57.693800799Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:45.438238670Z[Etc/UTC]")
public class ApiException extends Exception {
private int code = 0;
private Map> responseHeaders = null;
diff --git a/src/main/java/saasus/sdk/apilog/Configuration.java b/src/main/java/saasus/sdk/apilog/Configuration.java
index 0d1179a7..bc471424 100644
--- a/src/main/java/saasus/sdk/apilog/Configuration.java
+++ b/src/main/java/saasus/sdk/apilog/Configuration.java
@@ -13,7 +13,7 @@
package saasus.sdk.apilog;
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:57.693800799Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:45.438238670Z[Etc/UTC]")
public class Configuration {
public static final String VERSION = "1.0.0";
diff --git a/src/main/java/saasus/sdk/apilog/Pair.java b/src/main/java/saasus/sdk/apilog/Pair.java
index 7fa38b10..503b6284 100644
--- a/src/main/java/saasus/sdk/apilog/Pair.java
+++ b/src/main/java/saasus/sdk/apilog/Pair.java
@@ -13,7 +13,7 @@
package saasus.sdk.apilog;
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:57.693800799Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:45.438238670Z[Etc/UTC]")
public class Pair {
private String name = "";
private String value = "";
diff --git a/src/main/java/saasus/sdk/apilog/StringUtil.java b/src/main/java/saasus/sdk/apilog/StringUtil.java
index 5ac1fa97..e4ca9ab8 100644
--- a/src/main/java/saasus/sdk/apilog/StringUtil.java
+++ b/src/main/java/saasus/sdk/apilog/StringUtil.java
@@ -16,7 +16,7 @@
import java.util.Collection;
import java.util.Iterator;
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:57.693800799Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:45.438238670Z[Etc/UTC]")
public class StringUtil {
/**
* Check if the given array contains the given value (with case-insensitive comparison).
diff --git a/src/main/java/saasus/sdk/apilog/auth/ApiKeyAuth.java b/src/main/java/saasus/sdk/apilog/auth/ApiKeyAuth.java
index 8fca6ecf..097b3a46 100644
--- a/src/main/java/saasus/sdk/apilog/auth/ApiKeyAuth.java
+++ b/src/main/java/saasus/sdk/apilog/auth/ApiKeyAuth.java
@@ -20,7 +20,7 @@
import java.util.Map;
import java.util.List;
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:57.693800799Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:45.438238670Z[Etc/UTC]")
public class ApiKeyAuth implements Authentication {
private final String location;
private final String paramName;
diff --git a/src/main/java/saasus/sdk/apilog/auth/HttpBearerAuth.java b/src/main/java/saasus/sdk/apilog/auth/HttpBearerAuth.java
index b5586a99..54bc2715 100644
--- a/src/main/java/saasus/sdk/apilog/auth/HttpBearerAuth.java
+++ b/src/main/java/saasus/sdk/apilog/auth/HttpBearerAuth.java
@@ -22,7 +22,7 @@
import java.util.Optional;
import java.util.function.Supplier;
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:57.693800799Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:45.438238670Z[Etc/UTC]")
public class HttpBearerAuth implements Authentication {
private final String scheme;
private Supplier tokenSupplier;
diff --git a/src/main/java/saasus/sdk/apilog/models/AbstractOpenApiSchema.java b/src/main/java/saasus/sdk/apilog/models/AbstractOpenApiSchema.java
index dee00175..ef1cd753 100644
--- a/src/main/java/saasus/sdk/apilog/models/AbstractOpenApiSchema.java
+++ b/src/main/java/saasus/sdk/apilog/models/AbstractOpenApiSchema.java
@@ -21,7 +21,7 @@
/**
* Abstract class for oneOf,anyOf schemas defined in OpenAPI spec
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:57.693800799Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:45.438238670Z[Etc/UTC]")
public abstract class AbstractOpenApiSchema {
// store the actual instance of the schema/object
diff --git a/src/main/java/saasus/sdk/apilog/models/ApiLog.java b/src/main/java/saasus/sdk/apilog/models/ApiLog.java
index 650fb564..3b0b6530 100644
--- a/src/main/java/saasus/sdk/apilog/models/ApiLog.java
+++ b/src/main/java/saasus/sdk/apilog/models/ApiLog.java
@@ -49,7 +49,7 @@
/**
* ApiLog
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:57.693800799Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:45.438238670Z[Etc/UTC]")
public class ApiLog {
public static final String SERIALIZED_NAME_TRACE_ID = "trace_id";
@SerializedName(SERIALIZED_NAME_TRACE_ID)
diff --git a/src/main/java/saasus/sdk/apilog/models/ApiLogs.java b/src/main/java/saasus/sdk/apilog/models/ApiLogs.java
index ca845bd4..82c52ca6 100644
--- a/src/main/java/saasus/sdk/apilog/models/ApiLogs.java
+++ b/src/main/java/saasus/sdk/apilog/models/ApiLogs.java
@@ -52,7 +52,7 @@
/**
* ApiLogs
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:57.693800799Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:45.438238670Z[Etc/UTC]")
public class ApiLogs {
public static final String SERIALIZED_NAME_API_LOGS = "api_logs";
@SerializedName(SERIALIZED_NAME_API_LOGS)
diff --git a/src/main/java/saasus/sdk/apilog/models/Error.java b/src/main/java/saasus/sdk/apilog/models/Error.java
index 72d49b7e..1b1c06e9 100644
--- a/src/main/java/saasus/sdk/apilog/models/Error.java
+++ b/src/main/java/saasus/sdk/apilog/models/Error.java
@@ -49,7 +49,7 @@
/**
* Error
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:57.693800799Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:45.438238670Z[Etc/UTC]")
public class Error {
public static final String SERIALIZED_NAME_TYPE = "type";
@SerializedName(SERIALIZED_NAME_TYPE)
diff --git a/src/main/java/saasus/sdk/auth/ApiException.java b/src/main/java/saasus/sdk/auth/ApiException.java
index 36123137..5a7adca9 100644
--- a/src/main/java/saasus/sdk/auth/ApiException.java
+++ b/src/main/java/saasus/sdk/auth/ApiException.java
@@ -21,7 +21,7 @@
* ApiException class.
*/
@SuppressWarnings("serial")
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class ApiException extends Exception {
private int code = 0;
private Map> responseHeaders = null;
diff --git a/src/main/java/saasus/sdk/auth/Configuration.java b/src/main/java/saasus/sdk/auth/Configuration.java
index cb849e17..d9be817e 100644
--- a/src/main/java/saasus/sdk/auth/Configuration.java
+++ b/src/main/java/saasus/sdk/auth/Configuration.java
@@ -13,7 +13,7 @@
package saasus.sdk.auth;
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class Configuration {
public static final String VERSION = "1.0.0";
diff --git a/src/main/java/saasus/sdk/auth/JSON.java b/src/main/java/saasus/sdk/auth/JSON.java
index 2286b735..489c8a3e 100644
--- a/src/main/java/saasus/sdk/auth/JSON.java
+++ b/src/main/java/saasus/sdk/auth/JSON.java
@@ -155,6 +155,12 @@ private static Class getClassByDiscriminator(Map classByDiscriminatorValue, Stri
gsonBuilder.registerTypeAdapterFactory(new saasus.sdk.auth.models.SaasUser.CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(new saasus.sdk.auth.models.SaasUserResetPasswordResult.CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(new saasus.sdk.auth.models.SaasUsers.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(new saasus.sdk.auth.models.SaasUsersCount.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(new saasus.sdk.auth.models.SaveSaasUsersCountParam.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(new saasus.sdk.auth.models.SaveTenantUserCountParam.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(new saasus.sdk.auth.models.SaveTenantUsersCountsParam.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(new saasus.sdk.auth.models.SearchSaasUsersResult.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(new saasus.sdk.auth.models.SearchTenantUsersResult.CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(new saasus.sdk.auth.models.SelfRegist.CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(new saasus.sdk.auth.models.SignInParam.CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(new saasus.sdk.auth.models.SignInResult.CustomTypeAdapterFactory());
@@ -171,6 +177,8 @@ private static Class getClassByDiscriminator(Map classByDiscriminatorValue, Stri
gsonBuilder.registerTypeAdapterFactory(new saasus.sdk.auth.models.TenantIdentityProviders.CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(new saasus.sdk.auth.models.TenantIdentityProvidersSaml.CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(new saasus.sdk.auth.models.TenantProps.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(new saasus.sdk.auth.models.TenantUserCount.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(new saasus.sdk.auth.models.TenantUsersCounts.CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(new saasus.sdk.auth.models.Tenants.CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(new saasus.sdk.auth.models.UpdateBasicInfoParam.CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(new saasus.sdk.auth.models.UpdateCustomizePageSettingsParam.CustomTypeAdapterFactory());
diff --git a/src/main/java/saasus/sdk/auth/Pair.java b/src/main/java/saasus/sdk/auth/Pair.java
index e07b22de..f7a33073 100644
--- a/src/main/java/saasus/sdk/auth/Pair.java
+++ b/src/main/java/saasus/sdk/auth/Pair.java
@@ -13,7 +13,7 @@
package saasus.sdk.auth;
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class Pair {
private String name = "";
private String value = "";
diff --git a/src/main/java/saasus/sdk/auth/StringUtil.java b/src/main/java/saasus/sdk/auth/StringUtil.java
index 31cbf0d2..9056dc7b 100644
--- a/src/main/java/saasus/sdk/auth/StringUtil.java
+++ b/src/main/java/saasus/sdk/auth/StringUtil.java
@@ -16,7 +16,7 @@
import java.util.Collection;
import java.util.Iterator;
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class StringUtil {
/**
* Check if the given array contains the given value (with case-insensitive comparison).
diff --git a/src/main/java/saasus/sdk/auth/api/SaasUserApi.java b/src/main/java/saasus/sdk/auth/api/SaasUserApi.java
index 7d960246..1b2c7b1d 100644
--- a/src/main/java/saasus/sdk/auth/api/SaasUserApi.java
+++ b/src/main/java/saasus/sdk/auth/api/SaasUserApi.java
@@ -46,6 +46,9 @@
import saasus.sdk.auth.models.SaasUser;
import saasus.sdk.auth.models.SaasUserResetPasswordResult;
import saasus.sdk.auth.models.SaasUsers;
+import saasus.sdk.auth.models.SaasUsersCount;
+import saasus.sdk.auth.models.SaveSaasUsersCountParam;
+import saasus.sdk.auth.models.SearchSaasUsersResult;
import saasus.sdk.auth.models.SignInParam;
import saasus.sdk.auth.models.SignInResult;
import saasus.sdk.auth.models.SignUpParam;
@@ -1242,6 +1245,123 @@ public okhttp3.Call getSaasUsersAsync(final ApiCallback _callback) th
localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
return localVarCall;
}
+ /**
+ * Build call for getSaasUsersCount
+ * @param _callback Callback for upload/download progress
+ * @return Call to execute
+ * @throws ApiException If fail to serialize the request body object
+ * @http.response.details
+
+ | Status Code | Description | Response Headers |
+ | 200 | OK | - |
+ | 500 | Internal Server Error | - |
+
+ */
+ public okhttp3.Call getSaasUsersCountCall(final ApiCallback _callback) throws ApiException {
+ String basePath = null;
+ // Operation Servers
+ String[] localBasePaths = new String[] { };
+
+ // Determine Base Path to Use
+ if (localCustomBaseUrl != null){
+ basePath = localCustomBaseUrl;
+ } else if ( localBasePaths.length > 0 ) {
+ basePath = localBasePaths[localHostIndex];
+ } else {
+ basePath = null;
+ }
+
+ Object localVarPostBody = null;
+
+ // create path and map variables
+ String localVarPath = "/users/count";
+
+ List localVarQueryParams = new ArrayList();
+ List localVarCollectionQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+ Map localVarCookieParams = new HashMap();
+ Map localVarFormParams = new HashMap();
+
+ final String[] localVarAccepts = {
+ "application/json"
+ };
+ final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
+ if (localVarAccept != null) {
+ localVarHeaderParams.put("Accept", localVarAccept);
+ }
+
+ final String[] localVarContentTypes = {
+ };
+ final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
+ if (localVarContentType != null) {
+ localVarHeaderParams.put("Content-Type", localVarContentType);
+ }
+
+ String[] localVarAuthNames = new String[] { "Bearer" };
+ return localVarApiClient.buildCall(basePath, localVarPath, "GET", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarCookieParams, localVarFormParams, localVarAuthNames, _callback);
+ }
+
+ @SuppressWarnings("rawtypes")
+ private okhttp3.Call getSaasUsersCountValidateBeforeCall(final ApiCallback _callback) throws ApiException {
+ return getSaasUsersCountCall(_callback);
+
+ }
+
+ /**
+ * Get SaaS Users Count
+ * Get the count of SaaS users.
+ * @return SaasUsersCount
+ * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
+ * @http.response.details
+
+ | Status Code | Description | Response Headers |
+ | 200 | OK | - |
+ | 500 | Internal Server Error | - |
+
+ */
+ public SaasUsersCount getSaasUsersCount() throws ApiException {
+ ApiResponse localVarResp = getSaasUsersCountWithHttpInfo();
+ return localVarResp.getData();
+ }
+
+ /**
+ * Get SaaS Users Count
+ * Get the count of SaaS users.
+ * @return ApiResponse<SaasUsersCount>
+ * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
+ * @http.response.details
+
+ | Status Code | Description | Response Headers |
+ | 200 | OK | - |
+ | 500 | Internal Server Error | - |
+
+ */
+ public ApiResponse getSaasUsersCountWithHttpInfo() throws ApiException {
+ okhttp3.Call localVarCall = getSaasUsersCountValidateBeforeCall(null);
+ Type localVarReturnType = new TypeToken(){}.getType();
+ return localVarApiClient.execute(localVarCall, localVarReturnType);
+ }
+
+ /**
+ * Get SaaS Users Count (asynchronously)
+ * Get the count of SaaS users.
+ * @param _callback The callback to be executed when the API call finishes
+ * @return The request call
+ * @throws ApiException If fail to process the API call, e.g. serializing the request body object
+ * @http.response.details
+
+ | Status Code | Description | Response Headers |
+ | 200 | OK | - |
+ | 500 | Internal Server Error | - |
+
+ */
+ public okhttp3.Call getSaasUsersCountAsync(final ApiCallback _callback) throws ApiException {
+
+ okhttp3.Call localVarCall = getSaasUsersCountValidateBeforeCall(_callback);
+ Type localVarReturnType = new TypeToken(){}.getType();
+ localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
+ return localVarCall;
+ }
/**
* Build call for getUserMfaPreference
* @param userId User ID (required)
@@ -2112,6 +2232,294 @@ public okhttp3.Call respondToSignInChallengeAsync(RespondToSignInChallengeParam
localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
return localVarCall;
}
+ /**
+ * Build call for saveSaasUsersCount
+ * @param saveSaasUsersCountParam (required)
+ * @param _callback Callback for upload/download progress
+ * @return Call to execute
+ * @throws ApiException If fail to serialize the request body object
+ * @http.response.details
+
+ | Status Code | Description | Response Headers |
+ | 200 | OK | - |
+ | 400 | Bad Request | - |
+ | 500 | Internal Server Error | - |
+
+ */
+ public okhttp3.Call saveSaasUsersCountCall(SaveSaasUsersCountParam saveSaasUsersCountParam, final ApiCallback _callback) throws ApiException {
+ String basePath = null;
+ // Operation Servers
+ String[] localBasePaths = new String[] { };
+
+ // Determine Base Path to Use
+ if (localCustomBaseUrl != null){
+ basePath = localCustomBaseUrl;
+ } else if ( localBasePaths.length > 0 ) {
+ basePath = localBasePaths[localHostIndex];
+ } else {
+ basePath = null;
+ }
+
+ Object localVarPostBody = saveSaasUsersCountParam;
+
+ // create path and map variables
+ String localVarPath = "/users/count";
+
+ List localVarQueryParams = new ArrayList();
+ List localVarCollectionQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+ Map localVarCookieParams = new HashMap();
+ Map localVarFormParams = new HashMap();
+
+ final String[] localVarAccepts = {
+ "application/json"
+ };
+ final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
+ if (localVarAccept != null) {
+ localVarHeaderParams.put("Accept", localVarAccept);
+ }
+
+ final String[] localVarContentTypes = {
+ "application/json"
+ };
+ final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
+ if (localVarContentType != null) {
+ localVarHeaderParams.put("Content-Type", localVarContentType);
+ }
+
+ String[] localVarAuthNames = new String[] { "Bearer" };
+ return localVarApiClient.buildCall(basePath, localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarCookieParams, localVarFormParams, localVarAuthNames, _callback);
+ }
+
+ @SuppressWarnings("rawtypes")
+ private okhttp3.Call saveSaasUsersCountValidateBeforeCall(SaveSaasUsersCountParam saveSaasUsersCountParam, final ApiCallback _callback) throws ApiException {
+ // verify the required parameter 'saveSaasUsersCountParam' is set
+ if (saveSaasUsersCountParam == null) {
+ throw new ApiException("Missing the required parameter 'saveSaasUsersCountParam' when calling saveSaasUsersCount(Async)");
+ }
+
+ return saveSaasUsersCountCall(saveSaasUsersCountParam, _callback);
+
+ }
+
+ /**
+ * Save SaaS Users Count
+ * Save the count of SaaS users.
+ * @param saveSaasUsersCountParam (required)
+ * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
+ * @http.response.details
+
+ | Status Code | Description | Response Headers |
+ | 200 | OK | - |
+ | 400 | Bad Request | - |
+ | 500 | Internal Server Error | - |
+
+ */
+ public void saveSaasUsersCount(SaveSaasUsersCountParam saveSaasUsersCountParam) throws ApiException {
+ saveSaasUsersCountWithHttpInfo(saveSaasUsersCountParam);
+ }
+
+ /**
+ * Save SaaS Users Count
+ * Save the count of SaaS users.
+ * @param saveSaasUsersCountParam (required)
+ * @return ApiResponse<Void>
+ * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
+ * @http.response.details
+
+ | Status Code | Description | Response Headers |
+ | 200 | OK | - |
+ | 400 | Bad Request | - |
+ | 500 | Internal Server Error | - |
+
+ */
+ public ApiResponse saveSaasUsersCountWithHttpInfo(SaveSaasUsersCountParam saveSaasUsersCountParam) throws ApiException {
+ okhttp3.Call localVarCall = saveSaasUsersCountValidateBeforeCall(saveSaasUsersCountParam, null);
+ return localVarApiClient.execute(localVarCall);
+ }
+
+ /**
+ * Save SaaS Users Count (asynchronously)
+ * Save the count of SaaS users.
+ * @param saveSaasUsersCountParam (required)
+ * @param _callback The callback to be executed when the API call finishes
+ * @return The request call
+ * @throws ApiException If fail to process the API call, e.g. serializing the request body object
+ * @http.response.details
+
+ | Status Code | Description | Response Headers |
+ | 200 | OK | - |
+ | 400 | Bad Request | - |
+ | 500 | Internal Server Error | - |
+
+ */
+ public okhttp3.Call saveSaasUsersCountAsync(SaveSaasUsersCountParam saveSaasUsersCountParam, final ApiCallback _callback) throws ApiException {
+
+ okhttp3.Call localVarCall = saveSaasUsersCountValidateBeforeCall(saveSaasUsersCountParam, _callback);
+ localVarApiClient.executeAsync(localVarCall, _callback);
+ return localVarCall;
+ }
+ /**
+ * Build call for searchSaasUsers
+ * @param id User ID (optional)
+ * @param email Email prefix (optional)
+ * @param signInId Sign-in ID prefix (optional)
+ * @param limit Maximum number of items to retrieve (optional)
+ * @param cursor Cursor for cursor pagination (optional)
+ * @param _callback Callback for upload/download progress
+ * @return Call to execute
+ * @throws ApiException If fail to serialize the request body object
+ * @http.response.details
+
+ | Status Code | Description | Response Headers |
+ | 200 | OK | - |
+ | 400 | Bad Request | - |
+ | 500 | Internal Server Error | - |
+
+ */
+ public okhttp3.Call searchSaasUsersCall(String id, String email, String signInId, Long limit, String cursor, final ApiCallback _callback) throws ApiException {
+ String basePath = null;
+ // Operation Servers
+ String[] localBasePaths = new String[] { };
+
+ // Determine Base Path to Use
+ if (localCustomBaseUrl != null){
+ basePath = localCustomBaseUrl;
+ } else if ( localBasePaths.length > 0 ) {
+ basePath = localBasePaths[localHostIndex];
+ } else {
+ basePath = null;
+ }
+
+ Object localVarPostBody = null;
+
+ // create path and map variables
+ String localVarPath = "/users/search";
+
+ List localVarQueryParams = new ArrayList();
+ List localVarCollectionQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+ Map localVarCookieParams = new HashMap();
+ Map localVarFormParams = new HashMap();
+
+ if (id != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("id", id));
+ }
+
+ if (email != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("email", email));
+ }
+
+ if (signInId != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("sign_in_id", signInId));
+ }
+
+ if (limit != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("limit", limit));
+ }
+
+ if (cursor != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("cursor", cursor));
+ }
+
+ final String[] localVarAccepts = {
+ "application/json"
+ };
+ final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
+ if (localVarAccept != null) {
+ localVarHeaderParams.put("Accept", localVarAccept);
+ }
+
+ final String[] localVarContentTypes = {
+ };
+ final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
+ if (localVarContentType != null) {
+ localVarHeaderParams.put("Content-Type", localVarContentType);
+ }
+
+ String[] localVarAuthNames = new String[] { "Bearer" };
+ return localVarApiClient.buildCall(basePath, localVarPath, "GET", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarCookieParams, localVarFormParams, localVarAuthNames, _callback);
+ }
+
+ @SuppressWarnings("rawtypes")
+ private okhttp3.Call searchSaasUsersValidateBeforeCall(String id, String email, String signInId, Long limit, String cursor, final ApiCallback _callback) throws ApiException {
+ return searchSaasUsersCall(id, email, signInId, limit, cursor, _callback);
+
+ }
+
+ /**
+ * Search SaaS Users
+ * Search SaaS users by user ID, email, or sign-in ID.
+ * @param id User ID (optional)
+ * @param email Email prefix (optional)
+ * @param signInId Sign-in ID prefix (optional)
+ * @param limit Maximum number of items to retrieve (optional)
+ * @param cursor Cursor for cursor pagination (optional)
+ * @return SearchSaasUsersResult
+ * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
+ * @http.response.details
+
+ | Status Code | Description | Response Headers |
+ | 200 | OK | - |
+ | 400 | Bad Request | - |
+ | 500 | Internal Server Error | - |
+
+ */
+ public SearchSaasUsersResult searchSaasUsers(String id, String email, String signInId, Long limit, String cursor) throws ApiException {
+ ApiResponse localVarResp = searchSaasUsersWithHttpInfo(id, email, signInId, limit, cursor);
+ return localVarResp.getData();
+ }
+
+ /**
+ * Search SaaS Users
+ * Search SaaS users by user ID, email, or sign-in ID.
+ * @param id User ID (optional)
+ * @param email Email prefix (optional)
+ * @param signInId Sign-in ID prefix (optional)
+ * @param limit Maximum number of items to retrieve (optional)
+ * @param cursor Cursor for cursor pagination (optional)
+ * @return ApiResponse<SearchSaasUsersResult>
+ * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
+ * @http.response.details
+
+ | Status Code | Description | Response Headers |
+ | 200 | OK | - |
+ | 400 | Bad Request | - |
+ | 500 | Internal Server Error | - |
+
+ */
+ public ApiResponse searchSaasUsersWithHttpInfo(String id, String email, String signInId, Long limit, String cursor) throws ApiException {
+ okhttp3.Call localVarCall = searchSaasUsersValidateBeforeCall(id, email, signInId, limit, cursor, null);
+ Type localVarReturnType = new TypeToken(){}.getType();
+ return localVarApiClient.execute(localVarCall, localVarReturnType);
+ }
+
+ /**
+ * Search SaaS Users (asynchronously)
+ * Search SaaS users by user ID, email, or sign-in ID.
+ * @param id User ID (optional)
+ * @param email Email prefix (optional)
+ * @param signInId Sign-in ID prefix (optional)
+ * @param limit Maximum number of items to retrieve (optional)
+ * @param cursor Cursor for cursor pagination (optional)
+ * @param _callback The callback to be executed when the API call finishes
+ * @return The request call
+ * @throws ApiException If fail to process the API call, e.g. serializing the request body object
+ * @http.response.details
+
+ | Status Code | Description | Response Headers |
+ | 200 | OK | - |
+ | 400 | Bad Request | - |
+ | 500 | Internal Server Error | - |
+
+ */
+ public okhttp3.Call searchSaasUsersAsync(String id, String email, String signInId, Long limit, String cursor, final ApiCallback _callback) throws ApiException {
+
+ okhttp3.Call localVarCall = searchSaasUsersValidateBeforeCall(id, email, signInId, limit, cursor, _callback);
+ Type localVarReturnType = new TypeToken(){}.getType();
+ localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
+ return localVarCall;
+ }
/**
* Build call for signIn
* @param signInParam (optional)
diff --git a/src/main/java/saasus/sdk/auth/api/TenantUserApi.java b/src/main/java/saasus/sdk/auth/api/TenantUserApi.java
index 4eed4f17..57c7022f 100644
--- a/src/main/java/saasus/sdk/auth/api/TenantUserApi.java
+++ b/src/main/java/saasus/sdk/auth/api/TenantUserApi.java
@@ -30,6 +30,9 @@
import saasus.sdk.auth.models.CreateTenantUserParam;
import saasus.sdk.auth.models.CreateTenantUserRolesParam;
import saasus.sdk.auth.models.Error;
+import saasus.sdk.auth.models.SaveTenantUsersCountsParam;
+import saasus.sdk.auth.models.SearchTenantUsersResult;
+import saasus.sdk.auth.models.TenantUsersCounts;
import saasus.sdk.auth.models.UpdateTenantUserParam;
import saasus.sdk.auth.models.User;
import saasus.sdk.auth.models.Users;
@@ -899,6 +902,123 @@ public okhttp3.Call getAllTenantUsersAsync(final ApiCallback _callback) t
localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
return localVarCall;
}
+ /**
+ * Build call for getAllTenantUsersCount
+ * @param _callback Callback for upload/download progress
+ * @return Call to execute
+ * @throws ApiException If fail to serialize the request body object
+ * @http.response.details
+
+ | Status Code | Description | Response Headers |
+ | 200 | OK | - |
+ | 500 | Internal Server Error | - |
+
+ */
+ public okhttp3.Call getAllTenantUsersCountCall(final ApiCallback _callback) throws ApiException {
+ String basePath = null;
+ // Operation Servers
+ String[] localBasePaths = new String[] { };
+
+ // Determine Base Path to Use
+ if (localCustomBaseUrl != null){
+ basePath = localCustomBaseUrl;
+ } else if ( localBasePaths.length > 0 ) {
+ basePath = localBasePaths[localHostIndex];
+ } else {
+ basePath = null;
+ }
+
+ Object localVarPostBody = null;
+
+ // create path and map variables
+ String localVarPath = "/tenants/all/users/count";
+
+ List localVarQueryParams = new ArrayList();
+ List localVarCollectionQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+ Map localVarCookieParams = new HashMap();
+ Map localVarFormParams = new HashMap();
+
+ final String[] localVarAccepts = {
+ "application/json"
+ };
+ final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
+ if (localVarAccept != null) {
+ localVarHeaderParams.put("Accept", localVarAccept);
+ }
+
+ final String[] localVarContentTypes = {
+ };
+ final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
+ if (localVarContentType != null) {
+ localVarHeaderParams.put("Content-Type", localVarContentType);
+ }
+
+ String[] localVarAuthNames = new String[] { "Bearer" };
+ return localVarApiClient.buildCall(basePath, localVarPath, "GET", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarCookieParams, localVarFormParams, localVarAuthNames, _callback);
+ }
+
+ @SuppressWarnings("rawtypes")
+ private okhttp3.Call getAllTenantUsersCountValidateBeforeCall(final ApiCallback _callback) throws ApiException {
+ return getAllTenantUsersCountCall(_callback);
+
+ }
+
+ /**
+ * Get Tenant Users Count
+ * Get the count of tenant users for each tenant.
+ * @return TenantUsersCounts
+ * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
+ * @http.response.details
+
+ | Status Code | Description | Response Headers |
+ | 200 | OK | - |
+ | 500 | Internal Server Error | - |
+
+ */
+ public TenantUsersCounts getAllTenantUsersCount() throws ApiException {
+ ApiResponse localVarResp = getAllTenantUsersCountWithHttpInfo();
+ return localVarResp.getData();
+ }
+
+ /**
+ * Get Tenant Users Count
+ * Get the count of tenant users for each tenant.
+ * @return ApiResponse<TenantUsersCounts>
+ * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
+ * @http.response.details
+
+ | Status Code | Description | Response Headers |
+ | 200 | OK | - |
+ | 500 | Internal Server Error | - |
+
+ */
+ public ApiResponse getAllTenantUsersCountWithHttpInfo() throws ApiException {
+ okhttp3.Call localVarCall = getAllTenantUsersCountValidateBeforeCall(null);
+ Type localVarReturnType = new TypeToken(){}.getType();
+ return localVarApiClient.execute(localVarCall, localVarReturnType);
+ }
+
+ /**
+ * Get Tenant Users Count (asynchronously)
+ * Get the count of tenant users for each tenant.
+ * @param _callback The callback to be executed when the API call finishes
+ * @return The request call
+ * @throws ApiException If fail to process the API call, e.g. serializing the request body object
+ * @http.response.details
+
+ | Status Code | Description | Response Headers |
+ | 200 | OK | - |
+ | 500 | Internal Server Error | - |
+
+ */
+ public okhttp3.Call getAllTenantUsersCountAsync(final ApiCallback _callback) throws ApiException {
+
+ okhttp3.Call localVarCall = getAllTenantUsersCountValidateBeforeCall(_callback);
+ Type localVarReturnType = new TypeToken(){}.getType();
+ localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
+ return localVarCall;
+ }
/**
* Build call for getTenantUser
* @param tenantId Tenant ID (required)
@@ -1167,6 +1287,318 @@ public okhttp3.Call getTenantUsersAsync(String tenantId, final ApiCallback
+ | Status Code | Description | Response Headers |
+ | 200 | OK | - |
+ | 400 | Bad Request | - |
+ | 500 | Internal Server Error | - |
+
+ */
+ public okhttp3.Call saveTenantUsersCountsCall(SaveTenantUsersCountsParam saveTenantUsersCountsParam, final ApiCallback _callback) throws ApiException {
+ String basePath = null;
+ // Operation Servers
+ String[] localBasePaths = new String[] { };
+
+ // Determine Base Path to Use
+ if (localCustomBaseUrl != null){
+ basePath = localCustomBaseUrl;
+ } else if ( localBasePaths.length > 0 ) {
+ basePath = localBasePaths[localHostIndex];
+ } else {
+ basePath = null;
+ }
+
+ Object localVarPostBody = saveTenantUsersCountsParam;
+
+ // create path and map variables
+ String localVarPath = "/tenants/all/users/count";
+
+ List localVarQueryParams = new ArrayList();
+ List localVarCollectionQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+ Map localVarCookieParams = new HashMap();
+ Map localVarFormParams = new HashMap();
+
+ final String[] localVarAccepts = {
+ "application/json"
+ };
+ final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
+ if (localVarAccept != null) {
+ localVarHeaderParams.put("Accept", localVarAccept);
+ }
+
+ final String[] localVarContentTypes = {
+ "application/json"
+ };
+ final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
+ if (localVarContentType != null) {
+ localVarHeaderParams.put("Content-Type", localVarContentType);
+ }
+
+ String[] localVarAuthNames = new String[] { "Bearer" };
+ return localVarApiClient.buildCall(basePath, localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarCookieParams, localVarFormParams, localVarAuthNames, _callback);
+ }
+
+ @SuppressWarnings("rawtypes")
+ private okhttp3.Call saveTenantUsersCountsValidateBeforeCall(SaveTenantUsersCountsParam saveTenantUsersCountsParam, final ApiCallback _callback) throws ApiException {
+ // verify the required parameter 'saveTenantUsersCountsParam' is set
+ if (saveTenantUsersCountsParam == null) {
+ throw new ApiException("Missing the required parameter 'saveTenantUsersCountsParam' when calling saveTenantUsersCounts(Async)");
+ }
+
+ return saveTenantUsersCountsCall(saveTenantUsersCountsParam, _callback);
+
+ }
+
+ /**
+ * Save Tenant Users Count
+ * Save the count of tenant users for each tenant.
+ * @param saveTenantUsersCountsParam (required)
+ * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
+ * @http.response.details
+
+ | Status Code | Description | Response Headers |
+ | 200 | OK | - |
+ | 400 | Bad Request | - |
+ | 500 | Internal Server Error | - |
+
+ */
+ public void saveTenantUsersCounts(SaveTenantUsersCountsParam saveTenantUsersCountsParam) throws ApiException {
+ saveTenantUsersCountsWithHttpInfo(saveTenantUsersCountsParam);
+ }
+
+ /**
+ * Save Tenant Users Count
+ * Save the count of tenant users for each tenant.
+ * @param saveTenantUsersCountsParam (required)
+ * @return ApiResponse<Void>
+ * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
+ * @http.response.details
+
+ | Status Code | Description | Response Headers |
+ | 200 | OK | - |
+ | 400 | Bad Request | - |
+ | 500 | Internal Server Error | - |
+
+ */
+ public ApiResponse saveTenantUsersCountsWithHttpInfo(SaveTenantUsersCountsParam saveTenantUsersCountsParam) throws ApiException {
+ okhttp3.Call localVarCall = saveTenantUsersCountsValidateBeforeCall(saveTenantUsersCountsParam, null);
+ return localVarApiClient.execute(localVarCall);
+ }
+
+ /**
+ * Save Tenant Users Count (asynchronously)
+ * Save the count of tenant users for each tenant.
+ * @param saveTenantUsersCountsParam (required)
+ * @param _callback The callback to be executed when the API call finishes
+ * @return The request call
+ * @throws ApiException If fail to process the API call, e.g. serializing the request body object
+ * @http.response.details
+
+ | Status Code | Description | Response Headers |
+ | 200 | OK | - |
+ | 400 | Bad Request | - |
+ | 500 | Internal Server Error | - |
+
+ */
+ public okhttp3.Call saveTenantUsersCountsAsync(SaveTenantUsersCountsParam saveTenantUsersCountsParam, final ApiCallback _callback) throws ApiException {
+
+ okhttp3.Call localVarCall = saveTenantUsersCountsValidateBeforeCall(saveTenantUsersCountsParam, _callback);
+ localVarApiClient.executeAsync(localVarCall, _callback);
+ return localVarCall;
+ }
+ /**
+ * Build call for searchTenantUsers
+ * @param tenantId Tenant ID (optional)
+ * @param id User ID (optional)
+ * @param email Email prefix (optional)
+ * @param signInId Sign-in ID prefix (optional)
+ * @param envId Environment ID (optional)
+ * @param roleName Role Name (optional)
+ * @param limit Maximum number of items to retrieve (optional)
+ * @param cursor Cursor for cursor pagination (optional)
+ * @param _callback Callback for upload/download progress
+ * @return Call to execute
+ * @throws ApiException If fail to serialize the request body object
+ * @http.response.details
+
+ | Status Code | Description | Response Headers |
+ | 200 | OK | - |
+ | 400 | Bad Request | - |
+ | 500 | Internal Server Error | - |
+
+ */
+ public okhttp3.Call searchTenantUsersCall(String tenantId, String id, String email, String signInId, Integer envId, String roleName, Long limit, String cursor, final ApiCallback _callback) throws ApiException {
+ String basePath = null;
+ // Operation Servers
+ String[] localBasePaths = new String[] { };
+
+ // Determine Base Path to Use
+ if (localCustomBaseUrl != null){
+ basePath = localCustomBaseUrl;
+ } else if ( localBasePaths.length > 0 ) {
+ basePath = localBasePaths[localHostIndex];
+ } else {
+ basePath = null;
+ }
+
+ Object localVarPostBody = null;
+
+ // create path and map variables
+ String localVarPath = "/tenants/all/users/search";
+
+ List localVarQueryParams = new ArrayList();
+ List localVarCollectionQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+ Map localVarCookieParams = new HashMap();
+ Map localVarFormParams = new HashMap();
+
+ if (tenantId != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("tenant_id", tenantId));
+ }
+
+ if (id != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("id", id));
+ }
+
+ if (email != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("email", email));
+ }
+
+ if (signInId != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("sign_in_id", signInId));
+ }
+
+ if (envId != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("env_id", envId));
+ }
+
+ if (roleName != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("role_name", roleName));
+ }
+
+ if (limit != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("limit", limit));
+ }
+
+ if (cursor != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("cursor", cursor));
+ }
+
+ final String[] localVarAccepts = {
+ "application/json"
+ };
+ final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
+ if (localVarAccept != null) {
+ localVarHeaderParams.put("Accept", localVarAccept);
+ }
+
+ final String[] localVarContentTypes = {
+ };
+ final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
+ if (localVarContentType != null) {
+ localVarHeaderParams.put("Content-Type", localVarContentType);
+ }
+
+ String[] localVarAuthNames = new String[] { "Bearer" };
+ return localVarApiClient.buildCall(basePath, localVarPath, "GET", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarCookieParams, localVarFormParams, localVarAuthNames, _callback);
+ }
+
+ @SuppressWarnings("rawtypes")
+ private okhttp3.Call searchTenantUsersValidateBeforeCall(String tenantId, String id, String email, String signInId, Integer envId, String roleName, Long limit, String cursor, final ApiCallback _callback) throws ApiException {
+ return searchTenantUsersCall(tenantId, id, email, signInId, envId, roleName, limit, cursor, _callback);
+
+ }
+
+ /**
+ * Search Tenant Users
+ * Search tenant users by user id, tenant id, email, sign-in ID, env, or role.
+ * @param tenantId Tenant ID (optional)
+ * @param id User ID (optional)
+ * @param email Email prefix (optional)
+ * @param signInId Sign-in ID prefix (optional)
+ * @param envId Environment ID (optional)
+ * @param roleName Role Name (optional)
+ * @param limit Maximum number of items to retrieve (optional)
+ * @param cursor Cursor for cursor pagination (optional)
+ * @return SearchTenantUsersResult
+ * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
+ * @http.response.details
+
+ | Status Code | Description | Response Headers |
+ | 200 | OK | - |
+ | 400 | Bad Request | - |
+ | 500 | Internal Server Error | - |
+
+ */
+ public SearchTenantUsersResult searchTenantUsers(String tenantId, String id, String email, String signInId, Integer envId, String roleName, Long limit, String cursor) throws ApiException {
+ ApiResponse localVarResp = searchTenantUsersWithHttpInfo(tenantId, id, email, signInId, envId, roleName, limit, cursor);
+ return localVarResp.getData();
+ }
+
+ /**
+ * Search Tenant Users
+ * Search tenant users by user id, tenant id, email, sign-in ID, env, or role.
+ * @param tenantId Tenant ID (optional)
+ * @param id User ID (optional)
+ * @param email Email prefix (optional)
+ * @param signInId Sign-in ID prefix (optional)
+ * @param envId Environment ID (optional)
+ * @param roleName Role Name (optional)
+ * @param limit Maximum number of items to retrieve (optional)
+ * @param cursor Cursor for cursor pagination (optional)
+ * @return ApiResponse<SearchTenantUsersResult>
+ * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
+ * @http.response.details
+
+ | Status Code | Description | Response Headers |
+ | 200 | OK | - |
+ | 400 | Bad Request | - |
+ | 500 | Internal Server Error | - |
+
+ */
+ public ApiResponse searchTenantUsersWithHttpInfo(String tenantId, String id, String email, String signInId, Integer envId, String roleName, Long limit, String cursor) throws ApiException {
+ okhttp3.Call localVarCall = searchTenantUsersValidateBeforeCall(tenantId, id, email, signInId, envId, roleName, limit, cursor, null);
+ Type localVarReturnType = new TypeToken(){}.getType();
+ return localVarApiClient.execute(localVarCall, localVarReturnType);
+ }
+
+ /**
+ * Search Tenant Users (asynchronously)
+ * Search tenant users by user id, tenant id, email, sign-in ID, env, or role.
+ * @param tenantId Tenant ID (optional)
+ * @param id User ID (optional)
+ * @param email Email prefix (optional)
+ * @param signInId Sign-in ID prefix (optional)
+ * @param envId Environment ID (optional)
+ * @param roleName Role Name (optional)
+ * @param limit Maximum number of items to retrieve (optional)
+ * @param cursor Cursor for cursor pagination (optional)
+ * @param _callback The callback to be executed when the API call finishes
+ * @return The request call
+ * @throws ApiException If fail to process the API call, e.g. serializing the request body object
+ * @http.response.details
+
+ | Status Code | Description | Response Headers |
+ | 200 | OK | - |
+ | 400 | Bad Request | - |
+ | 500 | Internal Server Error | - |
+
+ */
+ public okhttp3.Call searchTenantUsersAsync(String tenantId, String id, String email, String signInId, Integer envId, String roleName, Long limit, String cursor, final ApiCallback _callback) throws ApiException {
+
+ okhttp3.Call localVarCall = searchTenantUsersValidateBeforeCall(tenantId, id, email, signInId, envId, roleName, limit, cursor, _callback);
+ Type localVarReturnType = new TypeToken(){}.getType();
+ localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
+ return localVarCall;
+ }
/**
* Build call for updateTenantUser
* @param tenantId Tenant ID (required)
diff --git a/src/main/java/saasus/sdk/auth/auth/ApiKeyAuth.java b/src/main/java/saasus/sdk/auth/auth/ApiKeyAuth.java
index 2803697a..b4c62509 100644
--- a/src/main/java/saasus/sdk/auth/auth/ApiKeyAuth.java
+++ b/src/main/java/saasus/sdk/auth/auth/ApiKeyAuth.java
@@ -20,7 +20,7 @@
import java.util.Map;
import java.util.List;
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class ApiKeyAuth implements Authentication {
private final String location;
private final String paramName;
diff --git a/src/main/java/saasus/sdk/auth/auth/HttpBearerAuth.java b/src/main/java/saasus/sdk/auth/auth/HttpBearerAuth.java
index 54c77051..21f68275 100644
--- a/src/main/java/saasus/sdk/auth/auth/HttpBearerAuth.java
+++ b/src/main/java/saasus/sdk/auth/auth/HttpBearerAuth.java
@@ -22,7 +22,7 @@
import java.util.Optional;
import java.util.function.Supplier;
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class HttpBearerAuth implements Authentication {
private final String scheme;
private Supplier tokenSupplier;
diff --git a/src/main/java/saasus/sdk/auth/models/AbstractOpenApiSchema.java b/src/main/java/saasus/sdk/auth/models/AbstractOpenApiSchema.java
index 4a111ecd..30aee311 100644
--- a/src/main/java/saasus/sdk/auth/models/AbstractOpenApiSchema.java
+++ b/src/main/java/saasus/sdk/auth/models/AbstractOpenApiSchema.java
@@ -21,7 +21,7 @@
/**
* Abstract class for oneOf,anyOf schemas defined in OpenAPI spec
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public abstract class AbstractOpenApiSchema {
// store the actual instance of the schema/object
diff --git a/src/main/java/saasus/sdk/auth/models/AccountVerification.java b/src/main/java/saasus/sdk/auth/models/AccountVerification.java
index f6e8eb69..89cea0b8 100644
--- a/src/main/java/saasus/sdk/auth/models/AccountVerification.java
+++ b/src/main/java/saasus/sdk/auth/models/AccountVerification.java
@@ -49,7 +49,7 @@
/**
* Account authentication settings ※ This function is not yet provided, so it cannot be changed or saved.
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class AccountVerification {
/**
* code: verification code link: verification link ※ This function is not yet provided, so it cannot be changed or saved.
diff --git a/src/main/java/saasus/sdk/auth/models/ApiKeys.java b/src/main/java/saasus/sdk/auth/models/ApiKeys.java
index 73b45984..ff546725 100644
--- a/src/main/java/saasus/sdk/auth/models/ApiKeys.java
+++ b/src/main/java/saasus/sdk/auth/models/ApiKeys.java
@@ -51,7 +51,7 @@
/**
* ApiKeys
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class ApiKeys {
public static final String SERIALIZED_NAME_API_KEYS = "api_keys";
@SerializedName(SERIALIZED_NAME_API_KEYS)
diff --git a/src/main/java/saasus/sdk/auth/models/Attribute.java b/src/main/java/saasus/sdk/auth/models/Attribute.java
index 8bc02708..f9c38ea5 100644
--- a/src/main/java/saasus/sdk/auth/models/Attribute.java
+++ b/src/main/java/saasus/sdk/auth/models/Attribute.java
@@ -50,7 +50,7 @@
/**
* Attribute
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class Attribute {
public static final String SERIALIZED_NAME_ATTRIBUTE_NAME = "attribute_name";
@SerializedName(SERIALIZED_NAME_ATTRIBUTE_NAME)
diff --git a/src/main/java/saasus/sdk/auth/models/AuthInfo.java b/src/main/java/saasus/sdk/auth/models/AuthInfo.java
index 0f000831..bc112c8a 100644
--- a/src/main/java/saasus/sdk/auth/models/AuthInfo.java
+++ b/src/main/java/saasus/sdk/auth/models/AuthInfo.java
@@ -49,7 +49,7 @@
/**
* AuthInfo
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class AuthInfo {
public static final String SERIALIZED_NAME_CALLBACK_URL = "callback_url";
@SerializedName(SERIALIZED_NAME_CALLBACK_URL)
diff --git a/src/main/java/saasus/sdk/auth/models/AuthorizationTempCode.java b/src/main/java/saasus/sdk/auth/models/AuthorizationTempCode.java
index 6b52cce7..58fc4969 100644
--- a/src/main/java/saasus/sdk/auth/models/AuthorizationTempCode.java
+++ b/src/main/java/saasus/sdk/auth/models/AuthorizationTempCode.java
@@ -49,7 +49,7 @@
/**
* AuthorizationTempCode
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class AuthorizationTempCode {
public static final String SERIALIZED_NAME_CODE = "code";
@SerializedName(SERIALIZED_NAME_CODE)
diff --git a/src/main/java/saasus/sdk/auth/models/BasicInfo.java b/src/main/java/saasus/sdk/auth/models/BasicInfo.java
index 1cd56886..00d7bbdc 100644
--- a/src/main/java/saasus/sdk/auth/models/BasicInfo.java
+++ b/src/main/java/saasus/sdk/auth/models/BasicInfo.java
@@ -52,7 +52,7 @@
/**
* BasicInfo
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class BasicInfo {
public static final String SERIALIZED_NAME_DOMAIN_NAME = "domain_name";
@SerializedName(SERIALIZED_NAME_DOMAIN_NAME)
diff --git a/src/main/java/saasus/sdk/auth/models/BillingAddress.java b/src/main/java/saasus/sdk/auth/models/BillingAddress.java
index 33c8a36c..7423e11a 100644
--- a/src/main/java/saasus/sdk/auth/models/BillingAddress.java
+++ b/src/main/java/saasus/sdk/auth/models/BillingAddress.java
@@ -49,7 +49,7 @@
/**
* BillingAddress
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class BillingAddress {
public static final String SERIALIZED_NAME_STREET = "street";
@SerializedName(SERIALIZED_NAME_STREET)
diff --git a/src/main/java/saasus/sdk/auth/models/BillingInfo.java b/src/main/java/saasus/sdk/auth/models/BillingInfo.java
index 7c248f70..88014188 100644
--- a/src/main/java/saasus/sdk/auth/models/BillingInfo.java
+++ b/src/main/java/saasus/sdk/auth/models/BillingInfo.java
@@ -51,7 +51,7 @@
/**
* BillingInfo
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class BillingInfo {
public static final String SERIALIZED_NAME_NAME = "name";
@SerializedName(SERIALIZED_NAME_NAME)
diff --git a/src/main/java/saasus/sdk/auth/models/ClientSecret.java b/src/main/java/saasus/sdk/auth/models/ClientSecret.java
index 38478bea..c66c197e 100644
--- a/src/main/java/saasus/sdk/auth/models/ClientSecret.java
+++ b/src/main/java/saasus/sdk/auth/models/ClientSecret.java
@@ -49,7 +49,7 @@
/**
* ClientSecret
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class ClientSecret {
public static final String SERIALIZED_NAME_CLIENT_SECRET = "client_secret";
@SerializedName(SERIALIZED_NAME_CLIENT_SECRET)
diff --git a/src/main/java/saasus/sdk/auth/models/CloudFormationLaunchStackLink.java b/src/main/java/saasus/sdk/auth/models/CloudFormationLaunchStackLink.java
index a4e8184c..dbec2d22 100644
--- a/src/main/java/saasus/sdk/auth/models/CloudFormationLaunchStackLink.java
+++ b/src/main/java/saasus/sdk/auth/models/CloudFormationLaunchStackLink.java
@@ -49,7 +49,7 @@
/**
* CloudFormationLaunchStackLink
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class CloudFormationLaunchStackLink {
public static final String SERIALIZED_NAME_LINK = "link";
@SerializedName(SERIALIZED_NAME_LINK)
diff --git a/src/main/java/saasus/sdk/auth/models/ConfirmDeviceParam.java b/src/main/java/saasus/sdk/auth/models/ConfirmDeviceParam.java
index f1257d15..4b1c3434 100644
--- a/src/main/java/saasus/sdk/auth/models/ConfirmDeviceParam.java
+++ b/src/main/java/saasus/sdk/auth/models/ConfirmDeviceParam.java
@@ -50,7 +50,7 @@
/**
* Parameters required to confirm a device.
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class ConfirmDeviceParam {
public static final String SERIALIZED_NAME_ACCESS_TOKEN = "access_token";
@SerializedName(SERIALIZED_NAME_ACCESS_TOKEN)
diff --git a/src/main/java/saasus/sdk/auth/models/ConfirmDeviceResult.java b/src/main/java/saasus/sdk/auth/models/ConfirmDeviceResult.java
index af08d19c..204fdf2f 100644
--- a/src/main/java/saasus/sdk/auth/models/ConfirmDeviceResult.java
+++ b/src/main/java/saasus/sdk/auth/models/ConfirmDeviceResult.java
@@ -49,7 +49,7 @@
/**
* Result returned after confirming a device.
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class ConfirmDeviceResult {
public static final String SERIALIZED_NAME_USER_CONFIRMATION_NECESSARY = "user_confirmation_necessary";
@SerializedName(SERIALIZED_NAME_USER_CONFIRMATION_NECESSARY)
diff --git a/src/main/java/saasus/sdk/auth/models/ConfirmEmailUpdateParam.java b/src/main/java/saasus/sdk/auth/models/ConfirmEmailUpdateParam.java
index 6c685c24..beb5f79a 100644
--- a/src/main/java/saasus/sdk/auth/models/ConfirmEmailUpdateParam.java
+++ b/src/main/java/saasus/sdk/auth/models/ConfirmEmailUpdateParam.java
@@ -49,7 +49,7 @@
/**
* ConfirmEmailUpdateParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class ConfirmEmailUpdateParam {
public static final String SERIALIZED_NAME_CODE = "code";
@SerializedName(SERIALIZED_NAME_CODE)
diff --git a/src/main/java/saasus/sdk/auth/models/ConfirmExternalUserLinkParam.java b/src/main/java/saasus/sdk/auth/models/ConfirmExternalUserLinkParam.java
index 3b7a65ae..b749df31 100644
--- a/src/main/java/saasus/sdk/auth/models/ConfirmExternalUserLinkParam.java
+++ b/src/main/java/saasus/sdk/auth/models/ConfirmExternalUserLinkParam.java
@@ -49,7 +49,7 @@
/**
* ConfirmExternalUserLinkParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class ConfirmExternalUserLinkParam {
public static final String SERIALIZED_NAME_ACCESS_TOKEN = "access_token";
@SerializedName(SERIALIZED_NAME_ACCESS_TOKEN)
diff --git a/src/main/java/saasus/sdk/auth/models/ConfirmSignUpWithAwsMarketplaceParam.java b/src/main/java/saasus/sdk/auth/models/ConfirmSignUpWithAwsMarketplaceParam.java
index b10e477d..09507da0 100644
--- a/src/main/java/saasus/sdk/auth/models/ConfirmSignUpWithAwsMarketplaceParam.java
+++ b/src/main/java/saasus/sdk/auth/models/ConfirmSignUpWithAwsMarketplaceParam.java
@@ -49,7 +49,7 @@
/**
* ConfirmSignUpWithAwsMarketplaceParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class ConfirmSignUpWithAwsMarketplaceParam {
public static final String SERIALIZED_NAME_TENANT_NAME = "tenant_name";
@SerializedName(SERIALIZED_NAME_TENANT_NAME)
diff --git a/src/main/java/saasus/sdk/auth/models/CreateSaasUserParam.java b/src/main/java/saasus/sdk/auth/models/CreateSaasUserParam.java
index 1b4bb36f..4f5ffb88 100644
--- a/src/main/java/saasus/sdk/auth/models/CreateSaasUserParam.java
+++ b/src/main/java/saasus/sdk/auth/models/CreateSaasUserParam.java
@@ -49,7 +49,7 @@
/**
* Either email or sign_in_id must be specified, but not both. - If email is specified: Email authentication user will be created. When password is not specified, a temporary password will be sent by email. - If sign_in_id is specified: Sign-in ID authentication user will be created. When password is not specified, it will be auto-generated and returned in the response.
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class CreateSaasUserParam {
public static final String SERIALIZED_NAME_EMAIL = "email";
@SerializedName(SERIALIZED_NAME_EMAIL)
diff --git a/src/main/java/saasus/sdk/auth/models/CreateSecretCodeParam.java b/src/main/java/saasus/sdk/auth/models/CreateSecretCodeParam.java
index d0bb73bf..f436b065 100644
--- a/src/main/java/saasus/sdk/auth/models/CreateSecretCodeParam.java
+++ b/src/main/java/saasus/sdk/auth/models/CreateSecretCodeParam.java
@@ -49,7 +49,7 @@
/**
* CreateSecretCodeParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class CreateSecretCodeParam {
public static final String SERIALIZED_NAME_ACCESS_TOKEN = "access_token";
@SerializedName(SERIALIZED_NAME_ACCESS_TOKEN)
diff --git a/src/main/java/saasus/sdk/auth/models/CreateTenantInvitationParam.java b/src/main/java/saasus/sdk/auth/models/CreateTenantInvitationParam.java
index 768aa9e7..69b9a760 100644
--- a/src/main/java/saasus/sdk/auth/models/CreateTenantInvitationParam.java
+++ b/src/main/java/saasus/sdk/auth/models/CreateTenantInvitationParam.java
@@ -52,7 +52,7 @@
/**
* CreateTenantInvitationParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class CreateTenantInvitationParam {
public static final String SERIALIZED_NAME_EMAIL = "email";
@SerializedName(SERIALIZED_NAME_EMAIL)
diff --git a/src/main/java/saasus/sdk/auth/models/CreateTenantUserParam.java b/src/main/java/saasus/sdk/auth/models/CreateTenantUserParam.java
index 355d0694..51348e29 100644
--- a/src/main/java/saasus/sdk/auth/models/CreateTenantUserParam.java
+++ b/src/main/java/saasus/sdk/auth/models/CreateTenantUserParam.java
@@ -51,7 +51,7 @@
/**
* Either email or sign_in_id must be specified, but not both.
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class CreateTenantUserParam {
public static final String SERIALIZED_NAME_EMAIL = "email";
@SerializedName(SERIALIZED_NAME_EMAIL)
diff --git a/src/main/java/saasus/sdk/auth/models/CreateTenantUserRolesParam.java b/src/main/java/saasus/sdk/auth/models/CreateTenantUserRolesParam.java
index 8078d2a1..784c2aab 100644
--- a/src/main/java/saasus/sdk/auth/models/CreateTenantUserRolesParam.java
+++ b/src/main/java/saasus/sdk/auth/models/CreateTenantUserRolesParam.java
@@ -51,7 +51,7 @@
/**
* CreateTenantUserRolesParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class CreateTenantUserRolesParam {
public static final String SERIALIZED_NAME_ROLE_NAMES = "role_names";
@SerializedName(SERIALIZED_NAME_ROLE_NAMES)
diff --git a/src/main/java/saasus/sdk/auth/models/CreatedSaasUser.java b/src/main/java/saasus/sdk/auth/models/CreatedSaasUser.java
index fdd2466f..bd357b35 100644
--- a/src/main/java/saasus/sdk/auth/models/CreatedSaasUser.java
+++ b/src/main/java/saasus/sdk/auth/models/CreatedSaasUser.java
@@ -23,6 +23,7 @@
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
+import org.openapitools.jackson.nullable.JsonNullable;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
@@ -51,7 +52,7 @@
/**
* CreatedSaasUser
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class CreatedSaasUser {
public static final String SERIALIZED_NAME_ID = "id";
@SerializedName(SERIALIZED_NAME_ID)
@@ -69,6 +70,10 @@ public class CreatedSaasUser {
@SerializedName(SERIALIZED_NAME_ATTRIBUTES)
private Map attributes = new HashMap<>();
+ public static final String SERIALIZED_NAME_LAST_LOGIN_AT = "last_login_at";
+ @SerializedName(SERIALIZED_NAME_LAST_LOGIN_AT)
+ private Integer lastLoginAt;
+
public static final String SERIALIZED_NAME_PASSWORD = "password";
@SerializedName(SERIALIZED_NAME_PASSWORD)
private String password;
@@ -160,6 +165,25 @@ public void setAttributes(Map attributes) {
}
+ public CreatedSaasUser lastLoginAt(Integer lastLoginAt) {
+ this.lastLoginAt = lastLoginAt;
+ return this;
+ }
+
+ /**
+ * Last login date and time (unix timestamp). Null if the user has never logged in.
+ * @return lastLoginAt
+ **/
+ @javax.annotation.Nullable
+ public Integer getLastLoginAt() {
+ return lastLoginAt;
+ }
+
+ public void setLastLoginAt(Integer lastLoginAt) {
+ this.lastLoginAt = lastLoginAt;
+ }
+
+
public CreatedSaasUser password(String password) {
this.password = password;
return this;
@@ -237,13 +261,25 @@ public boolean equals(Object o) {
Objects.equals(this.email, createdSaasUser.email) &&
Objects.equals(this.signInId, createdSaasUser.signInId) &&
Objects.equals(this.attributes, createdSaasUser.attributes) &&
+ Objects.equals(this.lastLoginAt, createdSaasUser.lastLoginAt) &&
Objects.equals(this.password, createdSaasUser.password)&&
Objects.equals(this.additionalProperties, createdSaasUser.additionalProperties);
}
+ private static boolean equalsNullable(JsonNullable a, JsonNullable b) {
+ return a == b || (a != null && b != null && a.isPresent() && b.isPresent() && Objects.deepEquals(a.get(), b.get()));
+ }
+
@Override
public int hashCode() {
- return Objects.hash(id, email, signInId, attributes, password, additionalProperties);
+ return Objects.hash(id, email, signInId, attributes, lastLoginAt, password, additionalProperties);
+ }
+
+ private static int hashCodeNullable(JsonNullable a) {
+ if (a == null) {
+ return 1;
+ }
+ return a.isPresent() ? Arrays.deepHashCode(new Object[]{a.get()}) : 31;
}
@Override
@@ -254,6 +290,7 @@ public String toString() {
sb.append(" email: ").append(toIndentedString(email)).append("\n");
sb.append(" signInId: ").append(toIndentedString(signInId)).append("\n");
sb.append(" attributes: ").append(toIndentedString(attributes)).append("\n");
+ sb.append(" lastLoginAt: ").append(toIndentedString(lastLoginAt)).append("\n");
sb.append(" password: ").append(toIndentedString(password)).append("\n");
sb.append(" additionalProperties: ").append(toIndentedString(additionalProperties)).append("\n");
sb.append("}");
@@ -282,6 +319,7 @@ private String toIndentedString(Object o) {
openapiFields.add("email");
openapiFields.add("sign_in_id");
openapiFields.add("attributes");
+ openapiFields.add("last_login_at");
openapiFields.add("password");
// a set of required properties/fields (JSON key names)
diff --git a/src/main/java/saasus/sdk/auth/models/Credentials.java b/src/main/java/saasus/sdk/auth/models/Credentials.java
index acd0035f..a4b48498 100644
--- a/src/main/java/saasus/sdk/auth/models/Credentials.java
+++ b/src/main/java/saasus/sdk/auth/models/Credentials.java
@@ -49,7 +49,7 @@
/**
* Credentials
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class Credentials {
public static final String SERIALIZED_NAME_ID_TOKEN = "id_token";
@SerializedName(SERIALIZED_NAME_ID_TOKEN)
diff --git a/src/main/java/saasus/sdk/auth/models/CustomizePageProps.java b/src/main/java/saasus/sdk/auth/models/CustomizePageProps.java
index 0f801501..0cc38d10 100644
--- a/src/main/java/saasus/sdk/auth/models/CustomizePageProps.java
+++ b/src/main/java/saasus/sdk/auth/models/CustomizePageProps.java
@@ -49,7 +49,7 @@
/**
* CustomizePageProps
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class CustomizePageProps {
public static final String SERIALIZED_NAME_HTML_CONTENTS = "html_contents";
@SerializedName(SERIALIZED_NAME_HTML_CONTENTS)
diff --git a/src/main/java/saasus/sdk/auth/models/CustomizePageSettings.java b/src/main/java/saasus/sdk/auth/models/CustomizePageSettings.java
index 443c9220..e98fa63d 100644
--- a/src/main/java/saasus/sdk/auth/models/CustomizePageSettings.java
+++ b/src/main/java/saasus/sdk/auth/models/CustomizePageSettings.java
@@ -49,7 +49,7 @@
/**
* CustomizePageSettings
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class CustomizePageSettings {
public static final String SERIALIZED_NAME_TITLE = "title";
@SerializedName(SERIALIZED_NAME_TITLE)
diff --git a/src/main/java/saasus/sdk/auth/models/CustomizePageSettingsProps.java b/src/main/java/saasus/sdk/auth/models/CustomizePageSettingsProps.java
index e8c133c1..006b40b4 100644
--- a/src/main/java/saasus/sdk/auth/models/CustomizePageSettingsProps.java
+++ b/src/main/java/saasus/sdk/auth/models/CustomizePageSettingsProps.java
@@ -49,7 +49,7 @@
/**
* CustomizePageSettingsProps
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class CustomizePageSettingsProps {
public static final String SERIALIZED_NAME_TITLE = "title";
@SerializedName(SERIALIZED_NAME_TITLE)
diff --git a/src/main/java/saasus/sdk/auth/models/CustomizePages.java b/src/main/java/saasus/sdk/auth/models/CustomizePages.java
index 6193a62d..3183ab8c 100644
--- a/src/main/java/saasus/sdk/auth/models/CustomizePages.java
+++ b/src/main/java/saasus/sdk/auth/models/CustomizePages.java
@@ -50,7 +50,7 @@
/**
* CustomizePages
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class CustomizePages {
public static final String SERIALIZED_NAME_SIGN_UP_PAGE = "sign_up_page";
@SerializedName(SERIALIZED_NAME_SIGN_UP_PAGE)
diff --git a/src/main/java/saasus/sdk/auth/models/DeviceConfiguration.java b/src/main/java/saasus/sdk/auth/models/DeviceConfiguration.java
index 4933456f..266efa40 100644
--- a/src/main/java/saasus/sdk/auth/models/DeviceConfiguration.java
+++ b/src/main/java/saasus/sdk/auth/models/DeviceConfiguration.java
@@ -49,7 +49,7 @@
/**
* Settings for remembering trusted devices
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class DeviceConfiguration {
/**
* always: always remember userOptIn: user opt-in no: don't save
diff --git a/src/main/java/saasus/sdk/auth/models/DeviceSecretVerifierConfig.java b/src/main/java/saasus/sdk/auth/models/DeviceSecretVerifierConfig.java
index 5bc67c64..29947259 100644
--- a/src/main/java/saasus/sdk/auth/models/DeviceSecretVerifierConfig.java
+++ b/src/main/java/saasus/sdk/auth/models/DeviceSecretVerifierConfig.java
@@ -49,7 +49,7 @@
/**
* The configuration of the device secret verifier.
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class DeviceSecretVerifierConfig {
public static final String SERIALIZED_NAME_PASSWORD_VERIFIER = "password_verifier";
@SerializedName(SERIALIZED_NAME_PASSWORD_VERIFIER)
diff --git a/src/main/java/saasus/sdk/auth/models/DnsRecord.java b/src/main/java/saasus/sdk/auth/models/DnsRecord.java
index 1b437372..a9ff3464 100644
--- a/src/main/java/saasus/sdk/auth/models/DnsRecord.java
+++ b/src/main/java/saasus/sdk/auth/models/DnsRecord.java
@@ -49,7 +49,7 @@
/**
* DnsRecord
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class DnsRecord {
/**
* CNAME Resource Record
diff --git a/src/main/java/saasus/sdk/auth/models/Env.java b/src/main/java/saasus/sdk/auth/models/Env.java
index 6c05263b..6cf5e906 100644
--- a/src/main/java/saasus/sdk/auth/models/Env.java
+++ b/src/main/java/saasus/sdk/auth/models/Env.java
@@ -49,7 +49,7 @@
/**
* env info
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class Env {
public static final String SERIALIZED_NAME_ID = "id";
@SerializedName(SERIALIZED_NAME_ID)
diff --git a/src/main/java/saasus/sdk/auth/models/Envs.java b/src/main/java/saasus/sdk/auth/models/Envs.java
index 8005bf5c..f1a4a0e8 100644
--- a/src/main/java/saasus/sdk/auth/models/Envs.java
+++ b/src/main/java/saasus/sdk/auth/models/Envs.java
@@ -52,7 +52,7 @@
/**
* env list
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class Envs {
public static final String SERIALIZED_NAME_ENVS = "envs";
@SerializedName(SERIALIZED_NAME_ENVS)
diff --git a/src/main/java/saasus/sdk/auth/models/Error.java b/src/main/java/saasus/sdk/auth/models/Error.java
index be8dd57b..98b05e45 100644
--- a/src/main/java/saasus/sdk/auth/models/Error.java
+++ b/src/main/java/saasus/sdk/auth/models/Error.java
@@ -51,7 +51,7 @@
/**
* Error
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class Error {
public static final String SERIALIZED_NAME_TYPE = "type";
@SerializedName(SERIALIZED_NAME_TYPE)
diff --git a/src/main/java/saasus/sdk/auth/models/IdentityProviderConfiguration.java b/src/main/java/saasus/sdk/auth/models/IdentityProviderConfiguration.java
index f76e214a..e5c7271a 100644
--- a/src/main/java/saasus/sdk/auth/models/IdentityProviderConfiguration.java
+++ b/src/main/java/saasus/sdk/auth/models/IdentityProviderConfiguration.java
@@ -49,7 +49,7 @@
/**
* This information is required to set up sign-in using an external identity provider. It cannot be changed.
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class IdentityProviderConfiguration {
public static final String SERIALIZED_NAME_DOMAIN = "domain";
@SerializedName(SERIALIZED_NAME_DOMAIN)
diff --git a/src/main/java/saasus/sdk/auth/models/IdentityProviderProps.java b/src/main/java/saasus/sdk/auth/models/IdentityProviderProps.java
index 23936dd6..22696195 100644
--- a/src/main/java/saasus/sdk/auth/models/IdentityProviderProps.java
+++ b/src/main/java/saasus/sdk/auth/models/IdentityProviderProps.java
@@ -49,7 +49,7 @@
/**
* IdentityProviderProps
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class IdentityProviderProps {
public static final String SERIALIZED_NAME_APPLICATION_ID = "application_id";
@SerializedName(SERIALIZED_NAME_APPLICATION_ID)
diff --git a/src/main/java/saasus/sdk/auth/models/IdentityProviderSaml.java b/src/main/java/saasus/sdk/auth/models/IdentityProviderSaml.java
index 5d97a217..9641b8c0 100644
--- a/src/main/java/saasus/sdk/auth/models/IdentityProviderSaml.java
+++ b/src/main/java/saasus/sdk/auth/models/IdentityProviderSaml.java
@@ -49,7 +49,7 @@
/**
* IdentityProviderSaml
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class IdentityProviderSaml {
public static final String SERIALIZED_NAME_METADATA_URL = "metadata_url";
@SerializedName(SERIALIZED_NAME_METADATA_URL)
diff --git a/src/main/java/saasus/sdk/auth/models/IdentityProviders.java b/src/main/java/saasus/sdk/auth/models/IdentityProviders.java
index 33fe6e98..0a1a1404 100644
--- a/src/main/java/saasus/sdk/auth/models/IdentityProviders.java
+++ b/src/main/java/saasus/sdk/auth/models/IdentityProviders.java
@@ -50,7 +50,7 @@
/**
* IdentityProviders
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class IdentityProviders {
public static final String SERIALIZED_NAME_GOOGLE = "google";
@SerializedName(SERIALIZED_NAME_GOOGLE)
diff --git a/src/main/java/saasus/sdk/auth/models/Invitation.java b/src/main/java/saasus/sdk/auth/models/Invitation.java
index 272e86b3..87f007e5 100644
--- a/src/main/java/saasus/sdk/auth/models/Invitation.java
+++ b/src/main/java/saasus/sdk/auth/models/Invitation.java
@@ -53,7 +53,7 @@
/**
* Invitation
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class Invitation {
public static final String SERIALIZED_NAME_ID = "id";
@SerializedName(SERIALIZED_NAME_ID)
diff --git a/src/main/java/saasus/sdk/auth/models/InvitationValidity.java b/src/main/java/saasus/sdk/auth/models/InvitationValidity.java
index 137d9927..e4ceaac7 100644
--- a/src/main/java/saasus/sdk/auth/models/InvitationValidity.java
+++ b/src/main/java/saasus/sdk/auth/models/InvitationValidity.java
@@ -49,7 +49,7 @@
/**
* Invitation validity
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class InvitationValidity {
public static final String SERIALIZED_NAME_IS_VALID = "is_valid";
@SerializedName(SERIALIZED_NAME_IS_VALID)
diff --git a/src/main/java/saasus/sdk/auth/models/Invitations.java b/src/main/java/saasus/sdk/auth/models/Invitations.java
index dda12909..41793470 100644
--- a/src/main/java/saasus/sdk/auth/models/Invitations.java
+++ b/src/main/java/saasus/sdk/auth/models/Invitations.java
@@ -52,7 +52,7 @@
/**
* Invitations
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class Invitations {
public static final String SERIALIZED_NAME_INVITATIONS = "invitations";
@SerializedName(SERIALIZED_NAME_INVITATIONS)
diff --git a/src/main/java/saasus/sdk/auth/models/InvitedUserEnvironmentInformationInner.java b/src/main/java/saasus/sdk/auth/models/InvitedUserEnvironmentInformationInner.java
index b9b902d7..d7ee2c96 100644
--- a/src/main/java/saasus/sdk/auth/models/InvitedUserEnvironmentInformationInner.java
+++ b/src/main/java/saasus/sdk/auth/models/InvitedUserEnvironmentInformationInner.java
@@ -51,7 +51,7 @@
/**
* InvitedUserEnvironmentInformationInner
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class InvitedUserEnvironmentInformationInner {
public static final String SERIALIZED_NAME_ID = "id";
@SerializedName(SERIALIZED_NAME_ID)
diff --git a/src/main/java/saasus/sdk/auth/models/LinkAwsMarketplaceParam.java b/src/main/java/saasus/sdk/auth/models/LinkAwsMarketplaceParam.java
index 82372909..66aebc85 100644
--- a/src/main/java/saasus/sdk/auth/models/LinkAwsMarketplaceParam.java
+++ b/src/main/java/saasus/sdk/auth/models/LinkAwsMarketplaceParam.java
@@ -49,7 +49,7 @@
/**
* LinkAwsMarketplaceParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class LinkAwsMarketplaceParam {
public static final String SERIALIZED_NAME_TENANT_ID = "tenant_id";
@SerializedName(SERIALIZED_NAME_TENANT_ID)
diff --git a/src/main/java/saasus/sdk/auth/models/MessageTemplate.java b/src/main/java/saasus/sdk/auth/models/MessageTemplate.java
index 80e8f84d..48c3e8e1 100644
--- a/src/main/java/saasus/sdk/auth/models/MessageTemplate.java
+++ b/src/main/java/saasus/sdk/auth/models/MessageTemplate.java
@@ -49,7 +49,7 @@
/**
* MessageTemplate
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class MessageTemplate {
public static final String SERIALIZED_NAME_SUBJECT = "subject";
@SerializedName(SERIALIZED_NAME_SUBJECT)
diff --git a/src/main/java/saasus/sdk/auth/models/MfaConfiguration.java b/src/main/java/saasus/sdk/auth/models/MfaConfiguration.java
index 955b7727..8604ea51 100644
--- a/src/main/java/saasus/sdk/auth/models/MfaConfiguration.java
+++ b/src/main/java/saasus/sdk/auth/models/MfaConfiguration.java
@@ -49,7 +49,7 @@
/**
* MFA device authentication settings ※ This function is not yet provided, so it cannot be changed or saved.
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class MfaConfiguration {
/**
* on: apply when all users log in optional: apply to individual users with MFA factor enabled ※ The parameter is currently optional and fixed.
diff --git a/src/main/java/saasus/sdk/auth/models/MfaPreference.java b/src/main/java/saasus/sdk/auth/models/MfaPreference.java
index 3298b1dc..74771890 100644
--- a/src/main/java/saasus/sdk/auth/models/MfaPreference.java
+++ b/src/main/java/saasus/sdk/auth/models/MfaPreference.java
@@ -49,7 +49,7 @@
/**
* MfaPreference
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class MfaPreference {
public static final String SERIALIZED_NAME_ENABLED = "enabled";
@SerializedName(SERIALIZED_NAME_ENABLED)
diff --git a/src/main/java/saasus/sdk/auth/models/NewDeviceMetadata.java b/src/main/java/saasus/sdk/auth/models/NewDeviceMetadata.java
index 6ef74868..a5b07541 100644
--- a/src/main/java/saasus/sdk/auth/models/NewDeviceMetadata.java
+++ b/src/main/java/saasus/sdk/auth/models/NewDeviceMetadata.java
@@ -49,7 +49,7 @@
/**
* Metadata for a new device registered during authentication.
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class NewDeviceMetadata {
public static final String SERIALIZED_NAME_DEVICE_KEY = "device_key";
@SerializedName(SERIALIZED_NAME_DEVICE_KEY)
diff --git a/src/main/java/saasus/sdk/auth/models/NotificationMessages.java b/src/main/java/saasus/sdk/auth/models/NotificationMessages.java
index bac72ce0..901e2336 100644
--- a/src/main/java/saasus/sdk/auth/models/NotificationMessages.java
+++ b/src/main/java/saasus/sdk/auth/models/NotificationMessages.java
@@ -50,7 +50,7 @@
/**
* NotificationMessages
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class NotificationMessages {
public static final String SERIALIZED_NAME_SIGN_UP = "sign_up";
@SerializedName(SERIALIZED_NAME_SIGN_UP)
diff --git a/src/main/java/saasus/sdk/auth/models/PasswordPolicy.java b/src/main/java/saasus/sdk/auth/models/PasswordPolicy.java
index f7eee0a9..8a475cdf 100644
--- a/src/main/java/saasus/sdk/auth/models/PasswordPolicy.java
+++ b/src/main/java/saasus/sdk/auth/models/PasswordPolicy.java
@@ -49,7 +49,7 @@
/**
* Password Policy
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class PasswordPolicy {
public static final String SERIALIZED_NAME_MINIMUM_LENGTH = "minimum_length";
@SerializedName(SERIALIZED_NAME_MINIMUM_LENGTH)
diff --git a/src/main/java/saasus/sdk/auth/models/PlanHistories.java b/src/main/java/saasus/sdk/auth/models/PlanHistories.java
index 73d6a4ad..a5ef295b 100644
--- a/src/main/java/saasus/sdk/auth/models/PlanHistories.java
+++ b/src/main/java/saasus/sdk/auth/models/PlanHistories.java
@@ -52,7 +52,7 @@
/**
* PlanHistories
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class PlanHistories {
public static final String SERIALIZED_NAME_PLAN_HISTORIES = "plan_histories";
@SerializedName(SERIALIZED_NAME_PLAN_HISTORIES)
diff --git a/src/main/java/saasus/sdk/auth/models/PlanHistory.java b/src/main/java/saasus/sdk/auth/models/PlanHistory.java
index 04525baf..cc4ccd3e 100644
--- a/src/main/java/saasus/sdk/auth/models/PlanHistory.java
+++ b/src/main/java/saasus/sdk/auth/models/PlanHistory.java
@@ -50,7 +50,7 @@
/**
* PlanHistory
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class PlanHistory {
public static final String SERIALIZED_NAME_PLAN_ID = "plan_id";
@SerializedName(SERIALIZED_NAME_PLAN_ID)
diff --git a/src/main/java/saasus/sdk/auth/models/PlanReservation.java b/src/main/java/saasus/sdk/auth/models/PlanReservation.java
index d521fed6..a9ec7c1d 100644
--- a/src/main/java/saasus/sdk/auth/models/PlanReservation.java
+++ b/src/main/java/saasus/sdk/auth/models/PlanReservation.java
@@ -50,7 +50,7 @@
/**
* PlanReservation
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class PlanReservation {
public static final String SERIALIZED_NAME_NEXT_PLAN_ID = "next_plan_id";
@SerializedName(SERIALIZED_NAME_NEXT_PLAN_ID)
diff --git a/src/main/java/saasus/sdk/auth/models/RecaptchaProps.java b/src/main/java/saasus/sdk/auth/models/RecaptchaProps.java
index 4f57f381..3a0604be 100644
--- a/src/main/java/saasus/sdk/auth/models/RecaptchaProps.java
+++ b/src/main/java/saasus/sdk/auth/models/RecaptchaProps.java
@@ -49,7 +49,7 @@
/**
* reCAPTCHA authentication settings ※ This function is not yet provided, so it cannot be changed or saved.
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class RecaptchaProps {
public static final String SERIALIZED_NAME_SITE_KEY = "site_key";
@SerializedName(SERIALIZED_NAME_SITE_KEY)
diff --git a/src/main/java/saasus/sdk/auth/models/RequestEmailUpdateParam.java b/src/main/java/saasus/sdk/auth/models/RequestEmailUpdateParam.java
index 011d0527..f41aadcf 100644
--- a/src/main/java/saasus/sdk/auth/models/RequestEmailUpdateParam.java
+++ b/src/main/java/saasus/sdk/auth/models/RequestEmailUpdateParam.java
@@ -49,7 +49,7 @@
/**
* RequestEmailUpdateParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class RequestEmailUpdateParam {
public static final String SERIALIZED_NAME_EMAIL = "email";
@SerializedName(SERIALIZED_NAME_EMAIL)
diff --git a/src/main/java/saasus/sdk/auth/models/RequestExternalUserLinkParam.java b/src/main/java/saasus/sdk/auth/models/RequestExternalUserLinkParam.java
index d6ed9905..73fd67aa 100644
--- a/src/main/java/saasus/sdk/auth/models/RequestExternalUserLinkParam.java
+++ b/src/main/java/saasus/sdk/auth/models/RequestExternalUserLinkParam.java
@@ -49,7 +49,7 @@
/**
* RequestExternalUserLinkParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class RequestExternalUserLinkParam {
public static final String SERIALIZED_NAME_ACCESS_TOKEN = "access_token";
@SerializedName(SERIALIZED_NAME_ACCESS_TOKEN)
diff --git a/src/main/java/saasus/sdk/auth/models/ResendSignUpConfirmationEmailParam.java b/src/main/java/saasus/sdk/auth/models/ResendSignUpConfirmationEmailParam.java
index bac4567d..2d5b295c 100644
--- a/src/main/java/saasus/sdk/auth/models/ResendSignUpConfirmationEmailParam.java
+++ b/src/main/java/saasus/sdk/auth/models/ResendSignUpConfirmationEmailParam.java
@@ -49,7 +49,7 @@
/**
* ResendSignUpConfirmationEmailParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class ResendSignUpConfirmationEmailParam {
public static final String SERIALIZED_NAME_EMAIL = "email";
@SerializedName(SERIALIZED_NAME_EMAIL)
diff --git a/src/main/java/saasus/sdk/auth/models/RespondToSignInChallengeParam.java b/src/main/java/saasus/sdk/auth/models/RespondToSignInChallengeParam.java
index 0df37a8f..57484f46 100644
--- a/src/main/java/saasus/sdk/auth/models/RespondToSignInChallengeParam.java
+++ b/src/main/java/saasus/sdk/auth/models/RespondToSignInChallengeParam.java
@@ -52,7 +52,7 @@
/**
* Parameters required to respond to a sign-in challenge
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class RespondToSignInChallengeParam {
public static final String SERIALIZED_NAME_CHALLENGE_NAME = "challenge_name";
@SerializedName(SERIALIZED_NAME_CHALLENGE_NAME)
diff --git a/src/main/java/saasus/sdk/auth/models/RespondToSignInChallengeResult.java b/src/main/java/saasus/sdk/auth/models/RespondToSignInChallengeResult.java
index 4ce69ce1..efe279b3 100644
--- a/src/main/java/saasus/sdk/auth/models/RespondToSignInChallengeResult.java
+++ b/src/main/java/saasus/sdk/auth/models/RespondToSignInChallengeResult.java
@@ -54,7 +54,7 @@
/**
* Result returned after responding to a sign-in challenge
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class RespondToSignInChallengeResult {
public static final String SERIALIZED_NAME_CREDENTIALS = "credentials";
@SerializedName(SERIALIZED_NAME_CREDENTIALS)
diff --git a/src/main/java/saasus/sdk/auth/models/Role.java b/src/main/java/saasus/sdk/auth/models/Role.java
index f57931c6..a7c4c1bd 100644
--- a/src/main/java/saasus/sdk/auth/models/Role.java
+++ b/src/main/java/saasus/sdk/auth/models/Role.java
@@ -49,7 +49,7 @@
/**
* role info
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class Role {
public static final String SERIALIZED_NAME_ROLE_NAME = "role_name";
@SerializedName(SERIALIZED_NAME_ROLE_NAME)
diff --git a/src/main/java/saasus/sdk/auth/models/Roles.java b/src/main/java/saasus/sdk/auth/models/Roles.java
index c2f39a30..afa0bb4d 100644
--- a/src/main/java/saasus/sdk/auth/models/Roles.java
+++ b/src/main/java/saasus/sdk/auth/models/Roles.java
@@ -52,7 +52,7 @@
/**
* Roles
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class Roles {
public static final String SERIALIZED_NAME_ROLES = "roles";
@SerializedName(SERIALIZED_NAME_ROLES)
diff --git a/src/main/java/saasus/sdk/auth/models/SaasId.java b/src/main/java/saasus/sdk/auth/models/SaasId.java
index fada36ff..5b8d0965 100644
--- a/src/main/java/saasus/sdk/auth/models/SaasId.java
+++ b/src/main/java/saasus/sdk/auth/models/SaasId.java
@@ -49,7 +49,7 @@
/**
* SaasId
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class SaasId {
public static final String SERIALIZED_NAME_TENANT_ID = "tenant_id";
@SerializedName(SERIALIZED_NAME_TENANT_ID)
diff --git a/src/main/java/saasus/sdk/auth/models/SaasUser.java b/src/main/java/saasus/sdk/auth/models/SaasUser.java
index 7a71262f..f34c31a7 100644
--- a/src/main/java/saasus/sdk/auth/models/SaasUser.java
+++ b/src/main/java/saasus/sdk/auth/models/SaasUser.java
@@ -23,6 +23,7 @@
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
+import org.openapitools.jackson.nullable.JsonNullable;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
@@ -51,7 +52,7 @@
/**
* SaasUser
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class SaasUser {
public static final String SERIALIZED_NAME_ID = "id";
@SerializedName(SERIALIZED_NAME_ID)
@@ -69,6 +70,10 @@ public class SaasUser {
@SerializedName(SERIALIZED_NAME_ATTRIBUTES)
private Map attributes = new HashMap<>();
+ public static final String SERIALIZED_NAME_LAST_LOGIN_AT = "last_login_at";
+ @SerializedName(SERIALIZED_NAME_LAST_LOGIN_AT)
+ private Integer lastLoginAt;
+
public SaasUser() {
}
@@ -155,6 +160,25 @@ public void setAttributes(Map attributes) {
this.attributes = attributes;
}
+
+ public SaasUser lastLoginAt(Integer lastLoginAt) {
+ this.lastLoginAt = lastLoginAt;
+ return this;
+ }
+
+ /**
+ * Last login date and time (unix timestamp). Null if the user has never logged in.
+ * @return lastLoginAt
+ **/
+ @javax.annotation.Nullable
+ public Integer getLastLoginAt() {
+ return lastLoginAt;
+ }
+
+ public void setLastLoginAt(Integer lastLoginAt) {
+ this.lastLoginAt = lastLoginAt;
+ }
+
/**
* A container for additional, undeclared properties.
* This is a holder for any undeclared properties as specified with
@@ -213,13 +237,25 @@ public boolean equals(Object o) {
return Objects.equals(this.id, saasUser.id) &&
Objects.equals(this.email, saasUser.email) &&
Objects.equals(this.signInId, saasUser.signInId) &&
- Objects.equals(this.attributes, saasUser.attributes)&&
+ Objects.equals(this.attributes, saasUser.attributes) &&
+ Objects.equals(this.lastLoginAt, saasUser.lastLoginAt)&&
Objects.equals(this.additionalProperties, saasUser.additionalProperties);
}
+ private static boolean equalsNullable(JsonNullable a, JsonNullable b) {
+ return a == b || (a != null && b != null && a.isPresent() && b.isPresent() && Objects.deepEquals(a.get(), b.get()));
+ }
+
@Override
public int hashCode() {
- return Objects.hash(id, email, signInId, attributes, additionalProperties);
+ return Objects.hash(id, email, signInId, attributes, lastLoginAt, additionalProperties);
+ }
+
+ private static int hashCodeNullable(JsonNullable a) {
+ if (a == null) {
+ return 1;
+ }
+ return a.isPresent() ? Arrays.deepHashCode(new Object[]{a.get()}) : 31;
}
@Override
@@ -230,6 +266,7 @@ public String toString() {
sb.append(" email: ").append(toIndentedString(email)).append("\n");
sb.append(" signInId: ").append(toIndentedString(signInId)).append("\n");
sb.append(" attributes: ").append(toIndentedString(attributes)).append("\n");
+ sb.append(" lastLoginAt: ").append(toIndentedString(lastLoginAt)).append("\n");
sb.append(" additionalProperties: ").append(toIndentedString(additionalProperties)).append("\n");
sb.append("}");
return sb.toString();
@@ -257,6 +294,7 @@ private String toIndentedString(Object o) {
openapiFields.add("email");
openapiFields.add("sign_in_id");
openapiFields.add("attributes");
+ openapiFields.add("last_login_at");
// a set of required properties/fields (JSON key names)
openapiRequiredFields = new HashSet();
diff --git a/src/main/java/saasus/sdk/auth/models/SaasUserResetPasswordResult.java b/src/main/java/saasus/sdk/auth/models/SaasUserResetPasswordResult.java
index caec0fe0..aaf55e93 100644
--- a/src/main/java/saasus/sdk/auth/models/SaasUserResetPasswordResult.java
+++ b/src/main/java/saasus/sdk/auth/models/SaasUserResetPasswordResult.java
@@ -49,7 +49,7 @@
/**
* SaasUserResetPasswordResult
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class SaasUserResetPasswordResult {
public static final String SERIALIZED_NAME_PASSWORD = "password";
@SerializedName(SERIALIZED_NAME_PASSWORD)
diff --git a/src/main/java/saasus/sdk/auth/models/SaasUsers.java b/src/main/java/saasus/sdk/auth/models/SaasUsers.java
index 8a237d9e..20a6d500 100644
--- a/src/main/java/saasus/sdk/auth/models/SaasUsers.java
+++ b/src/main/java/saasus/sdk/auth/models/SaasUsers.java
@@ -52,7 +52,7 @@
/**
* SaasUsers
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class SaasUsers {
public static final String SERIALIZED_NAME_USERS = "users";
@SerializedName(SERIALIZED_NAME_USERS)
diff --git a/src/main/java/saasus/sdk/auth/models/SaasUsersCount.java b/src/main/java/saasus/sdk/auth/models/SaasUsersCount.java
new file mode 100644
index 00000000..dd332065
--- /dev/null
+++ b/src/main/java/saasus/sdk/auth/models/SaasUsersCount.java
@@ -0,0 +1,314 @@
+/*
+ * SaaSus Auth API Schema
+ * Schema
+ *
+ * The version of the OpenAPI document: 1.0.0
+ *
+ *
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+ * https://openapi-generator.tech
+ * Do not edit the class manually.
+ */
+
+
+package saasus.sdk.auth.models;
+
+import java.util.Objects;
+import com.google.gson.TypeAdapter;
+import com.google.gson.annotations.JsonAdapter;
+import com.google.gson.annotations.SerializedName;
+import com.google.gson.stream.JsonReader;
+import com.google.gson.stream.JsonWriter;
+import java.io.IOException;
+import java.util.Arrays;
+
+import com.google.gson.Gson;
+import com.google.gson.GsonBuilder;
+import com.google.gson.JsonArray;
+import com.google.gson.JsonDeserializationContext;
+import com.google.gson.JsonDeserializer;
+import com.google.gson.JsonElement;
+import com.google.gson.JsonObject;
+import com.google.gson.JsonParseException;
+import com.google.gson.TypeAdapterFactory;
+import com.google.gson.reflect.TypeToken;
+import com.google.gson.TypeAdapter;
+import com.google.gson.stream.JsonReader;
+import com.google.gson.stream.JsonWriter;
+import java.io.IOException;
+
+import java.lang.reflect.Type;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import saasus.sdk.auth.JSON;
+
+/**
+ * SaasUsersCount
+ */
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
+public class SaasUsersCount {
+ public static final String SERIALIZED_NAME_COUNT = "count";
+ @SerializedName(SERIALIZED_NAME_COUNT)
+ private Integer count;
+
+ public static final String SERIALIZED_NAME_UPDATED_AT = "updated_at";
+ @SerializedName(SERIALIZED_NAME_UPDATED_AT)
+ private Long updatedAt;
+
+ public SaasUsersCount() {
+ }
+
+ public SaasUsersCount count(Integer count) {
+ this.count = count;
+ return this;
+ }
+
+ /**
+ * Count of SaaS users
+ * @return count
+ **/
+ @javax.annotation.Nonnull
+ public Integer getCount() {
+ return count;
+ }
+
+ public void setCount(Integer count) {
+ this.count = count;
+ }
+
+
+ public SaasUsersCount updatedAt(Long updatedAt) {
+ this.updatedAt = updatedAt;
+ return this;
+ }
+
+ /**
+ * Unix timestamp (seconds) of the last update
+ * @return updatedAt
+ **/
+ @javax.annotation.Nonnull
+ public Long getUpdatedAt() {
+ return updatedAt;
+ }
+
+ public void setUpdatedAt(Long updatedAt) {
+ this.updatedAt = updatedAt;
+ }
+
+ /**
+ * A container for additional, undeclared properties.
+ * This is a holder for any undeclared properties as specified with
+ * the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value.
+ * If the property does not already exist, create it otherwise replace it.
+ *
+ * @param key name of the property
+ * @param value value of the property
+ * @return the SaasUsersCount instance itself
+ */
+ public SaasUsersCount putAdditionalProperty(String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return a map of objects
+ */
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key name of the property
+ * @return an object
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ SaasUsersCount saasUsersCount = (SaasUsersCount) o;
+ return Objects.equals(this.count, saasUsersCount.count) &&
+ Objects.equals(this.updatedAt, saasUsersCount.updatedAt)&&
+ Objects.equals(this.additionalProperties, saasUsersCount.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(count, updatedAt, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class SaasUsersCount {\n");
+ sb.append(" count: ").append(toIndentedString(count)).append("\n");
+ sb.append(" updatedAt: ").append(toIndentedString(updatedAt)).append("\n");
+ sb.append(" additionalProperties: ").append(toIndentedString(additionalProperties)).append("\n");
+ sb.append("}");
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces
+ * (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+
+
+ public static HashSet openapiFields;
+ public static HashSet openapiRequiredFields;
+
+ static {
+ // a set of all properties/fields (JSON key names)
+ openapiFields = new HashSet();
+ openapiFields.add("count");
+ openapiFields.add("updated_at");
+
+ // a set of required properties/fields (JSON key names)
+ openapiRequiredFields = new HashSet();
+ openapiRequiredFields.add("count");
+ openapiRequiredFields.add("updated_at");
+ }
+
+ /**
+ * Validates the JSON Element and throws an exception if issues found
+ *
+ * @param jsonElement JSON Element
+ * @throws IOException if the JSON Element is invalid with respect to SaasUsersCount
+ */
+ public static void validateJsonElement(JsonElement jsonElement) throws IOException {
+ if (jsonElement == null) {
+ if (!SaasUsersCount.openapiRequiredFields.isEmpty()) { // has required fields but JSON element is null
+ throw new IllegalArgumentException(String.format("The required field(s) %s in SaasUsersCount is not found in the empty JSON string", SaasUsersCount.openapiRequiredFields.toString()));
+ }
+ }
+
+ // check to make sure all required properties/fields are present in the JSON string
+ for (String requiredField : SaasUsersCount.openapiRequiredFields) {
+ if (jsonElement.getAsJsonObject().get(requiredField) == null) {
+ throw new IllegalArgumentException(String.format("The required field `%s` is not found in the JSON string: %s", requiredField, jsonElement.toString()));
+ }
+ }
+ JsonObject jsonObj = jsonElement.getAsJsonObject();
+ }
+
+ public static class CustomTypeAdapterFactory implements TypeAdapterFactory {
+ @SuppressWarnings("unchecked")
+ @Override
+ public TypeAdapter create(Gson gson, TypeToken type) {
+ if (!SaasUsersCount.class.isAssignableFrom(type.getRawType())) {
+ return null; // this class only serializes 'SaasUsersCount' and its subtypes
+ }
+ final TypeAdapter elementAdapter = gson.getAdapter(JsonElement.class);
+ final TypeAdapter thisAdapter
+ = gson.getDelegateAdapter(this, TypeToken.get(SaasUsersCount.class));
+
+ return (TypeAdapter) new TypeAdapter() {
+ @Override
+ public void write(JsonWriter out, SaasUsersCount value) throws IOException {
+ JsonObject obj = thisAdapter.toJsonTree(value).getAsJsonObject();
+ obj.remove("additionalProperties");
+ // serialize additional properties
+ if (value.getAdditionalProperties() != null) {
+ for (Map.Entry entry : value.getAdditionalProperties().entrySet()) {
+ if (entry.getValue() instanceof String)
+ obj.addProperty(entry.getKey(), (String) entry.getValue());
+ else if (entry.getValue() instanceof Number)
+ obj.addProperty(entry.getKey(), (Number) entry.getValue());
+ else if (entry.getValue() instanceof Boolean)
+ obj.addProperty(entry.getKey(), (Boolean) entry.getValue());
+ else if (entry.getValue() instanceof Character)
+ obj.addProperty(entry.getKey(), (Character) entry.getValue());
+ else {
+ obj.add(entry.getKey(), gson.toJsonTree(entry.getValue()).getAsJsonObject());
+ }
+ }
+ }
+ elementAdapter.write(out, obj);
+ }
+
+ @Override
+ public SaasUsersCount read(JsonReader in) throws IOException {
+ JsonElement jsonElement = elementAdapter.read(in);
+ validateJsonElement(jsonElement);
+ JsonObject jsonObj = jsonElement.getAsJsonObject();
+ // store additional fields in the deserialized instance
+ SaasUsersCount instance = thisAdapter.fromJsonTree(jsonObj);
+ for (Map.Entry entry : jsonObj.entrySet()) {
+ if (!openapiFields.contains(entry.getKey())) {
+ if (entry.getValue().isJsonPrimitive()) { // primitive type
+ if (entry.getValue().getAsJsonPrimitive().isString())
+ instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsString());
+ else if (entry.getValue().getAsJsonPrimitive().isNumber())
+ instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsNumber());
+ else if (entry.getValue().getAsJsonPrimitive().isBoolean())
+ instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsBoolean());
+ else
+ throw new IllegalArgumentException(String.format("The field `%s` has unknown primitive type. Value: %s", entry.getKey(), entry.getValue().toString()));
+ } else if (entry.getValue().isJsonArray()) {
+ instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), List.class));
+ } else { // JSON object
+ instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), HashMap.class));
+ }
+ }
+ }
+ return instance;
+ }
+
+ }.nullSafe();
+ }
+ }
+
+ /**
+ * Create an instance of SaasUsersCount given an JSON string
+ *
+ * @param jsonString JSON string
+ * @return An instance of SaasUsersCount
+ * @throws IOException if the JSON string is invalid with respect to SaasUsersCount
+ */
+ public static SaasUsersCount fromJson(String jsonString) throws IOException {
+ return JSON.getGson().fromJson(jsonString, SaasUsersCount.class);
+ }
+
+ /**
+ * Convert an instance of SaasUsersCount to an JSON string
+ *
+ * @return JSON string
+ */
+ public String toJson() {
+ return JSON.getGson().toJson(this);
+ }
+}
+
diff --git a/src/main/java/saasus/sdk/auth/models/SaveSaasUsersCountParam.java b/src/main/java/saasus/sdk/auth/models/SaveSaasUsersCountParam.java
new file mode 100644
index 00000000..969d3f89
--- /dev/null
+++ b/src/main/java/saasus/sdk/auth/models/SaveSaasUsersCountParam.java
@@ -0,0 +1,288 @@
+/*
+ * SaaSus Auth API Schema
+ * Schema
+ *
+ * The version of the OpenAPI document: 1.0.0
+ *
+ *
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+ * https://openapi-generator.tech
+ * Do not edit the class manually.
+ */
+
+
+package saasus.sdk.auth.models;
+
+import java.util.Objects;
+import com.google.gson.TypeAdapter;
+import com.google.gson.annotations.JsonAdapter;
+import com.google.gson.annotations.SerializedName;
+import com.google.gson.stream.JsonReader;
+import com.google.gson.stream.JsonWriter;
+import java.io.IOException;
+import java.util.Arrays;
+
+import com.google.gson.Gson;
+import com.google.gson.GsonBuilder;
+import com.google.gson.JsonArray;
+import com.google.gson.JsonDeserializationContext;
+import com.google.gson.JsonDeserializer;
+import com.google.gson.JsonElement;
+import com.google.gson.JsonObject;
+import com.google.gson.JsonParseException;
+import com.google.gson.TypeAdapterFactory;
+import com.google.gson.reflect.TypeToken;
+import com.google.gson.TypeAdapter;
+import com.google.gson.stream.JsonReader;
+import com.google.gson.stream.JsonWriter;
+import java.io.IOException;
+
+import java.lang.reflect.Type;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import saasus.sdk.auth.JSON;
+
+/**
+ * SaveSaasUsersCountParam
+ */
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
+public class SaveSaasUsersCountParam {
+ public static final String SERIALIZED_NAME_COUNT = "count";
+ @SerializedName(SERIALIZED_NAME_COUNT)
+ private Integer count;
+
+ public SaveSaasUsersCountParam() {
+ }
+
+ public SaveSaasUsersCountParam count(Integer count) {
+ this.count = count;
+ return this;
+ }
+
+ /**
+ * Count of SaaS users
+ * minimum: 0
+ * @return count
+ **/
+ @javax.annotation.Nonnull
+ public Integer getCount() {
+ return count;
+ }
+
+ public void setCount(Integer count) {
+ this.count = count;
+ }
+
+ /**
+ * A container for additional, undeclared properties.
+ * This is a holder for any undeclared properties as specified with
+ * the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value.
+ * If the property does not already exist, create it otherwise replace it.
+ *
+ * @param key name of the property
+ * @param value value of the property
+ * @return the SaveSaasUsersCountParam instance itself
+ */
+ public SaveSaasUsersCountParam putAdditionalProperty(String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return a map of objects
+ */
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key name of the property
+ * @return an object
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ SaveSaasUsersCountParam saveSaasUsersCountParam = (SaveSaasUsersCountParam) o;
+ return Objects.equals(this.count, saveSaasUsersCountParam.count)&&
+ Objects.equals(this.additionalProperties, saveSaasUsersCountParam.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(count, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class SaveSaasUsersCountParam {\n");
+ sb.append(" count: ").append(toIndentedString(count)).append("\n");
+ sb.append(" additionalProperties: ").append(toIndentedString(additionalProperties)).append("\n");
+ sb.append("}");
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces
+ * (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+
+
+ public static HashSet openapiFields;
+ public static HashSet openapiRequiredFields;
+
+ static {
+ // a set of all properties/fields (JSON key names)
+ openapiFields = new HashSet();
+ openapiFields.add("count");
+
+ // a set of required properties/fields (JSON key names)
+ openapiRequiredFields = new HashSet();
+ openapiRequiredFields.add("count");
+ }
+
+ /**
+ * Validates the JSON Element and throws an exception if issues found
+ *
+ * @param jsonElement JSON Element
+ * @throws IOException if the JSON Element is invalid with respect to SaveSaasUsersCountParam
+ */
+ public static void validateJsonElement(JsonElement jsonElement) throws IOException {
+ if (jsonElement == null) {
+ if (!SaveSaasUsersCountParam.openapiRequiredFields.isEmpty()) { // has required fields but JSON element is null
+ throw new IllegalArgumentException(String.format("The required field(s) %s in SaveSaasUsersCountParam is not found in the empty JSON string", SaveSaasUsersCountParam.openapiRequiredFields.toString()));
+ }
+ }
+
+ // check to make sure all required properties/fields are present in the JSON string
+ for (String requiredField : SaveSaasUsersCountParam.openapiRequiredFields) {
+ if (jsonElement.getAsJsonObject().get(requiredField) == null) {
+ throw new IllegalArgumentException(String.format("The required field `%s` is not found in the JSON string: %s", requiredField, jsonElement.toString()));
+ }
+ }
+ JsonObject jsonObj = jsonElement.getAsJsonObject();
+ }
+
+ public static class CustomTypeAdapterFactory implements TypeAdapterFactory {
+ @SuppressWarnings("unchecked")
+ @Override
+ public TypeAdapter create(Gson gson, TypeToken type) {
+ if (!SaveSaasUsersCountParam.class.isAssignableFrom(type.getRawType())) {
+ return null; // this class only serializes 'SaveSaasUsersCountParam' and its subtypes
+ }
+ final TypeAdapter elementAdapter = gson.getAdapter(JsonElement.class);
+ final TypeAdapter thisAdapter
+ = gson.getDelegateAdapter(this, TypeToken.get(SaveSaasUsersCountParam.class));
+
+ return (TypeAdapter) new TypeAdapter() {
+ @Override
+ public void write(JsonWriter out, SaveSaasUsersCountParam value) throws IOException {
+ JsonObject obj = thisAdapter.toJsonTree(value).getAsJsonObject();
+ obj.remove("additionalProperties");
+ // serialize additional properties
+ if (value.getAdditionalProperties() != null) {
+ for (Map.Entry entry : value.getAdditionalProperties().entrySet()) {
+ if (entry.getValue() instanceof String)
+ obj.addProperty(entry.getKey(), (String) entry.getValue());
+ else if (entry.getValue() instanceof Number)
+ obj.addProperty(entry.getKey(), (Number) entry.getValue());
+ else if (entry.getValue() instanceof Boolean)
+ obj.addProperty(entry.getKey(), (Boolean) entry.getValue());
+ else if (entry.getValue() instanceof Character)
+ obj.addProperty(entry.getKey(), (Character) entry.getValue());
+ else {
+ obj.add(entry.getKey(), gson.toJsonTree(entry.getValue()).getAsJsonObject());
+ }
+ }
+ }
+ elementAdapter.write(out, obj);
+ }
+
+ @Override
+ public SaveSaasUsersCountParam read(JsonReader in) throws IOException {
+ JsonElement jsonElement = elementAdapter.read(in);
+ validateJsonElement(jsonElement);
+ JsonObject jsonObj = jsonElement.getAsJsonObject();
+ // store additional fields in the deserialized instance
+ SaveSaasUsersCountParam instance = thisAdapter.fromJsonTree(jsonObj);
+ for (Map.Entry entry : jsonObj.entrySet()) {
+ if (!openapiFields.contains(entry.getKey())) {
+ if (entry.getValue().isJsonPrimitive()) { // primitive type
+ if (entry.getValue().getAsJsonPrimitive().isString())
+ instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsString());
+ else if (entry.getValue().getAsJsonPrimitive().isNumber())
+ instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsNumber());
+ else if (entry.getValue().getAsJsonPrimitive().isBoolean())
+ instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsBoolean());
+ else
+ throw new IllegalArgumentException(String.format("The field `%s` has unknown primitive type. Value: %s", entry.getKey(), entry.getValue().toString()));
+ } else if (entry.getValue().isJsonArray()) {
+ instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), List.class));
+ } else { // JSON object
+ instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), HashMap.class));
+ }
+ }
+ }
+ return instance;
+ }
+
+ }.nullSafe();
+ }
+ }
+
+ /**
+ * Create an instance of SaveSaasUsersCountParam given an JSON string
+ *
+ * @param jsonString JSON string
+ * @return An instance of SaveSaasUsersCountParam
+ * @throws IOException if the JSON string is invalid with respect to SaveSaasUsersCountParam
+ */
+ public static SaveSaasUsersCountParam fromJson(String jsonString) throws IOException {
+ return JSON.getGson().fromJson(jsonString, SaveSaasUsersCountParam.class);
+ }
+
+ /**
+ * Convert an instance of SaveSaasUsersCountParam to an JSON string
+ *
+ * @return JSON string
+ */
+ public String toJson() {
+ return JSON.getGson().toJson(this);
+ }
+}
+
diff --git a/src/main/java/saasus/sdk/auth/models/SaveTenantUserCountParam.java b/src/main/java/saasus/sdk/auth/models/SaveTenantUserCountParam.java
new file mode 100644
index 00000000..833c95aa
--- /dev/null
+++ b/src/main/java/saasus/sdk/auth/models/SaveTenantUserCountParam.java
@@ -0,0 +1,318 @@
+/*
+ * SaaSus Auth API Schema
+ * Schema
+ *
+ * The version of the OpenAPI document: 1.0.0
+ *
+ *
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+ * https://openapi-generator.tech
+ * Do not edit the class manually.
+ */
+
+
+package saasus.sdk.auth.models;
+
+import java.util.Objects;
+import com.google.gson.TypeAdapter;
+import com.google.gson.annotations.JsonAdapter;
+import com.google.gson.annotations.SerializedName;
+import com.google.gson.stream.JsonReader;
+import com.google.gson.stream.JsonWriter;
+import java.io.IOException;
+import java.util.Arrays;
+
+import com.google.gson.Gson;
+import com.google.gson.GsonBuilder;
+import com.google.gson.JsonArray;
+import com.google.gson.JsonDeserializationContext;
+import com.google.gson.JsonDeserializer;
+import com.google.gson.JsonElement;
+import com.google.gson.JsonObject;
+import com.google.gson.JsonParseException;
+import com.google.gson.TypeAdapterFactory;
+import com.google.gson.reflect.TypeToken;
+import com.google.gson.TypeAdapter;
+import com.google.gson.stream.JsonReader;
+import com.google.gson.stream.JsonWriter;
+import java.io.IOException;
+
+import java.lang.reflect.Type;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import saasus.sdk.auth.JSON;
+
+/**
+ * SaveTenantUserCountParam
+ */
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
+public class SaveTenantUserCountParam {
+ public static final String SERIALIZED_NAME_TENANT_ID = "tenant_id";
+ @SerializedName(SERIALIZED_NAME_TENANT_ID)
+ private String tenantId;
+
+ public static final String SERIALIZED_NAME_COUNT = "count";
+ @SerializedName(SERIALIZED_NAME_COUNT)
+ private Integer count;
+
+ public SaveTenantUserCountParam() {
+ }
+
+ public SaveTenantUserCountParam tenantId(String tenantId) {
+ this.tenantId = tenantId;
+ return this;
+ }
+
+ /**
+ * Get tenantId
+ * @return tenantId
+ **/
+ @javax.annotation.Nonnull
+ public String getTenantId() {
+ return tenantId;
+ }
+
+ public void setTenantId(String tenantId) {
+ this.tenantId = tenantId;
+ }
+
+
+ public SaveTenantUserCountParam count(Integer count) {
+ this.count = count;
+ return this;
+ }
+
+ /**
+ * Count of tenant users
+ * minimum: 0
+ * @return count
+ **/
+ @javax.annotation.Nonnull
+ public Integer getCount() {
+ return count;
+ }
+
+ public void setCount(Integer count) {
+ this.count = count;
+ }
+
+ /**
+ * A container for additional, undeclared properties.
+ * This is a holder for any undeclared properties as specified with
+ * the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value.
+ * If the property does not already exist, create it otherwise replace it.
+ *
+ * @param key name of the property
+ * @param value value of the property
+ * @return the SaveTenantUserCountParam instance itself
+ */
+ public SaveTenantUserCountParam putAdditionalProperty(String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return a map of objects
+ */
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key name of the property
+ * @return an object
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ SaveTenantUserCountParam saveTenantUserCountParam = (SaveTenantUserCountParam) o;
+ return Objects.equals(this.tenantId, saveTenantUserCountParam.tenantId) &&
+ Objects.equals(this.count, saveTenantUserCountParam.count)&&
+ Objects.equals(this.additionalProperties, saveTenantUserCountParam.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(tenantId, count, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class SaveTenantUserCountParam {\n");
+ sb.append(" tenantId: ").append(toIndentedString(tenantId)).append("\n");
+ sb.append(" count: ").append(toIndentedString(count)).append("\n");
+ sb.append(" additionalProperties: ").append(toIndentedString(additionalProperties)).append("\n");
+ sb.append("}");
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces
+ * (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+
+
+ public static HashSet openapiFields;
+ public static HashSet openapiRequiredFields;
+
+ static {
+ // a set of all properties/fields (JSON key names)
+ openapiFields = new HashSet();
+ openapiFields.add("tenant_id");
+ openapiFields.add("count");
+
+ // a set of required properties/fields (JSON key names)
+ openapiRequiredFields = new HashSet();
+ openapiRequiredFields.add("tenant_id");
+ openapiRequiredFields.add("count");
+ }
+
+ /**
+ * Validates the JSON Element and throws an exception if issues found
+ *
+ * @param jsonElement JSON Element
+ * @throws IOException if the JSON Element is invalid with respect to SaveTenantUserCountParam
+ */
+ public static void validateJsonElement(JsonElement jsonElement) throws IOException {
+ if (jsonElement == null) {
+ if (!SaveTenantUserCountParam.openapiRequiredFields.isEmpty()) { // has required fields but JSON element is null
+ throw new IllegalArgumentException(String.format("The required field(s) %s in SaveTenantUserCountParam is not found in the empty JSON string", SaveTenantUserCountParam.openapiRequiredFields.toString()));
+ }
+ }
+
+ // check to make sure all required properties/fields are present in the JSON string
+ for (String requiredField : SaveTenantUserCountParam.openapiRequiredFields) {
+ if (jsonElement.getAsJsonObject().get(requiredField) == null) {
+ throw new IllegalArgumentException(String.format("The required field `%s` is not found in the JSON string: %s", requiredField, jsonElement.toString()));
+ }
+ }
+ JsonObject jsonObj = jsonElement.getAsJsonObject();
+ if (!jsonObj.get("tenant_id").isJsonPrimitive()) {
+ throw new IllegalArgumentException(String.format("Expected the field `tenant_id` to be a primitive type in the JSON string but got `%s`", jsonObj.get("tenant_id").toString()));
+ }
+ }
+
+ public static class CustomTypeAdapterFactory implements TypeAdapterFactory {
+ @SuppressWarnings("unchecked")
+ @Override
+ public TypeAdapter create(Gson gson, TypeToken type) {
+ if (!SaveTenantUserCountParam.class.isAssignableFrom(type.getRawType())) {
+ return null; // this class only serializes 'SaveTenantUserCountParam' and its subtypes
+ }
+ final TypeAdapter elementAdapter = gson.getAdapter(JsonElement.class);
+ final TypeAdapter thisAdapter
+ = gson.getDelegateAdapter(this, TypeToken.get(SaveTenantUserCountParam.class));
+
+ return (TypeAdapter) new TypeAdapter() {
+ @Override
+ public void write(JsonWriter out, SaveTenantUserCountParam value) throws IOException {
+ JsonObject obj = thisAdapter.toJsonTree(value).getAsJsonObject();
+ obj.remove("additionalProperties");
+ // serialize additional properties
+ if (value.getAdditionalProperties() != null) {
+ for (Map.Entry entry : value.getAdditionalProperties().entrySet()) {
+ if (entry.getValue() instanceof String)
+ obj.addProperty(entry.getKey(), (String) entry.getValue());
+ else if (entry.getValue() instanceof Number)
+ obj.addProperty(entry.getKey(), (Number) entry.getValue());
+ else if (entry.getValue() instanceof Boolean)
+ obj.addProperty(entry.getKey(), (Boolean) entry.getValue());
+ else if (entry.getValue() instanceof Character)
+ obj.addProperty(entry.getKey(), (Character) entry.getValue());
+ else {
+ obj.add(entry.getKey(), gson.toJsonTree(entry.getValue()).getAsJsonObject());
+ }
+ }
+ }
+ elementAdapter.write(out, obj);
+ }
+
+ @Override
+ public SaveTenantUserCountParam read(JsonReader in) throws IOException {
+ JsonElement jsonElement = elementAdapter.read(in);
+ validateJsonElement(jsonElement);
+ JsonObject jsonObj = jsonElement.getAsJsonObject();
+ // store additional fields in the deserialized instance
+ SaveTenantUserCountParam instance = thisAdapter.fromJsonTree(jsonObj);
+ for (Map.Entry entry : jsonObj.entrySet()) {
+ if (!openapiFields.contains(entry.getKey())) {
+ if (entry.getValue().isJsonPrimitive()) { // primitive type
+ if (entry.getValue().getAsJsonPrimitive().isString())
+ instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsString());
+ else if (entry.getValue().getAsJsonPrimitive().isNumber())
+ instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsNumber());
+ else if (entry.getValue().getAsJsonPrimitive().isBoolean())
+ instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsBoolean());
+ else
+ throw new IllegalArgumentException(String.format("The field `%s` has unknown primitive type. Value: %s", entry.getKey(), entry.getValue().toString()));
+ } else if (entry.getValue().isJsonArray()) {
+ instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), List.class));
+ } else { // JSON object
+ instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), HashMap.class));
+ }
+ }
+ }
+ return instance;
+ }
+
+ }.nullSafe();
+ }
+ }
+
+ /**
+ * Create an instance of SaveTenantUserCountParam given an JSON string
+ *
+ * @param jsonString JSON string
+ * @return An instance of SaveTenantUserCountParam
+ * @throws IOException if the JSON string is invalid with respect to SaveTenantUserCountParam
+ */
+ public static SaveTenantUserCountParam fromJson(String jsonString) throws IOException {
+ return JSON.getGson().fromJson(jsonString, SaveTenantUserCountParam.class);
+ }
+
+ /**
+ * Convert an instance of SaveTenantUserCountParam to an JSON string
+ *
+ * @return JSON string
+ */
+ public String toJson() {
+ return JSON.getGson().toJson(this);
+ }
+}
+
diff --git a/src/main/java/saasus/sdk/auth/models/SaveTenantUsersCountsParam.java b/src/main/java/saasus/sdk/auth/models/SaveTenantUsersCountsParam.java
new file mode 100644
index 00000000..9665ff42
--- /dev/null
+++ b/src/main/java/saasus/sdk/auth/models/SaveTenantUsersCountsParam.java
@@ -0,0 +1,308 @@
+/*
+ * SaaSus Auth API Schema
+ * Schema
+ *
+ * The version of the OpenAPI document: 1.0.0
+ *
+ *
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+ * https://openapi-generator.tech
+ * Do not edit the class manually.
+ */
+
+
+package saasus.sdk.auth.models;
+
+import java.util.Objects;
+import com.google.gson.TypeAdapter;
+import com.google.gson.annotations.JsonAdapter;
+import com.google.gson.annotations.SerializedName;
+import com.google.gson.stream.JsonReader;
+import com.google.gson.stream.JsonWriter;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import saasus.sdk.auth.models.SaveTenantUserCountParam;
+
+import com.google.gson.Gson;
+import com.google.gson.GsonBuilder;
+import com.google.gson.JsonArray;
+import com.google.gson.JsonDeserializationContext;
+import com.google.gson.JsonDeserializer;
+import com.google.gson.JsonElement;
+import com.google.gson.JsonObject;
+import com.google.gson.JsonParseException;
+import com.google.gson.TypeAdapterFactory;
+import com.google.gson.reflect.TypeToken;
+import com.google.gson.TypeAdapter;
+import com.google.gson.stream.JsonReader;
+import com.google.gson.stream.JsonWriter;
+import java.io.IOException;
+
+import java.lang.reflect.Type;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import saasus.sdk.auth.JSON;
+
+/**
+ * SaveTenantUsersCountsParam
+ */
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
+public class SaveTenantUsersCountsParam {
+ public static final String SERIALIZED_NAME_TENANT_USER_COUNTS = "tenant_user_counts";
+ @SerializedName(SERIALIZED_NAME_TENANT_USER_COUNTS)
+ private List tenantUserCounts = new ArrayList<>();
+
+ public SaveTenantUsersCountsParam() {
+ }
+
+ public SaveTenantUsersCountsParam tenantUserCounts(List tenantUserCounts) {
+ this.tenantUserCounts = tenantUserCounts;
+ return this;
+ }
+
+ public SaveTenantUsersCountsParam addTenantUserCountsItem(SaveTenantUserCountParam tenantUserCountsItem) {
+ if (this.tenantUserCounts == null) {
+ this.tenantUserCounts = new ArrayList<>();
+ }
+ this.tenantUserCounts.add(tenantUserCountsItem);
+ return this;
+ }
+
+ /**
+ * Get tenantUserCounts
+ * @return tenantUserCounts
+ **/
+ @javax.annotation.Nonnull
+ public List getTenantUserCounts() {
+ return tenantUserCounts;
+ }
+
+ public void setTenantUserCounts(List tenantUserCounts) {
+ this.tenantUserCounts = tenantUserCounts;
+ }
+
+ /**
+ * A container for additional, undeclared properties.
+ * This is a holder for any undeclared properties as specified with
+ * the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value.
+ * If the property does not already exist, create it otherwise replace it.
+ *
+ * @param key name of the property
+ * @param value value of the property
+ * @return the SaveTenantUsersCountsParam instance itself
+ */
+ public SaveTenantUsersCountsParam putAdditionalProperty(String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return a map of objects
+ */
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key name of the property
+ * @return an object
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ SaveTenantUsersCountsParam saveTenantUsersCountsParam = (SaveTenantUsersCountsParam) o;
+ return Objects.equals(this.tenantUserCounts, saveTenantUsersCountsParam.tenantUserCounts)&&
+ Objects.equals(this.additionalProperties, saveTenantUsersCountsParam.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(tenantUserCounts, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class SaveTenantUsersCountsParam {\n");
+ sb.append(" tenantUserCounts: ").append(toIndentedString(tenantUserCounts)).append("\n");
+ sb.append(" additionalProperties: ").append(toIndentedString(additionalProperties)).append("\n");
+ sb.append("}");
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces
+ * (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+
+
+ public static HashSet openapiFields;
+ public static HashSet openapiRequiredFields;
+
+ static {
+ // a set of all properties/fields (JSON key names)
+ openapiFields = new HashSet();
+ openapiFields.add("tenant_user_counts");
+
+ // a set of required properties/fields (JSON key names)
+ openapiRequiredFields = new HashSet();
+ openapiRequiredFields.add("tenant_user_counts");
+ }
+
+ /**
+ * Validates the JSON Element and throws an exception if issues found
+ *
+ * @param jsonElement JSON Element
+ * @throws IOException if the JSON Element is invalid with respect to SaveTenantUsersCountsParam
+ */
+ public static void validateJsonElement(JsonElement jsonElement) throws IOException {
+ if (jsonElement == null) {
+ if (!SaveTenantUsersCountsParam.openapiRequiredFields.isEmpty()) { // has required fields but JSON element is null
+ throw new IllegalArgumentException(String.format("The required field(s) %s in SaveTenantUsersCountsParam is not found in the empty JSON string", SaveTenantUsersCountsParam.openapiRequiredFields.toString()));
+ }
+ }
+
+ // check to make sure all required properties/fields are present in the JSON string
+ for (String requiredField : SaveTenantUsersCountsParam.openapiRequiredFields) {
+ if (jsonElement.getAsJsonObject().get(requiredField) == null) {
+ throw new IllegalArgumentException(String.format("The required field `%s` is not found in the JSON string: %s", requiredField, jsonElement.toString()));
+ }
+ }
+ JsonObject jsonObj = jsonElement.getAsJsonObject();
+ // ensure the json data is an array
+ if (!jsonObj.get("tenant_user_counts").isJsonArray()) {
+ throw new IllegalArgumentException(String.format("Expected the field `tenant_user_counts` to be an array in the JSON string but got `%s`", jsonObj.get("tenant_user_counts").toString()));
+ }
+
+ JsonArray jsonArraytenantUserCounts = jsonObj.getAsJsonArray("tenant_user_counts");
+ // validate the required field `tenant_user_counts` (array)
+ for (int i = 0; i < jsonArraytenantUserCounts.size(); i++) {
+ SaveTenantUserCountParam.validateJsonElement(jsonArraytenantUserCounts.get(i));
+ };
+ }
+
+ public static class CustomTypeAdapterFactory implements TypeAdapterFactory {
+ @SuppressWarnings("unchecked")
+ @Override
+ public TypeAdapter create(Gson gson, TypeToken type) {
+ if (!SaveTenantUsersCountsParam.class.isAssignableFrom(type.getRawType())) {
+ return null; // this class only serializes 'SaveTenantUsersCountsParam' and its subtypes
+ }
+ final TypeAdapter elementAdapter = gson.getAdapter(JsonElement.class);
+ final TypeAdapter thisAdapter
+ = gson.getDelegateAdapter(this, TypeToken.get(SaveTenantUsersCountsParam.class));
+
+ return (TypeAdapter) new TypeAdapter() {
+ @Override
+ public void write(JsonWriter out, SaveTenantUsersCountsParam value) throws IOException {
+ JsonObject obj = thisAdapter.toJsonTree(value).getAsJsonObject();
+ obj.remove("additionalProperties");
+ // serialize additional properties
+ if (value.getAdditionalProperties() != null) {
+ for (Map.Entry entry : value.getAdditionalProperties().entrySet()) {
+ if (entry.getValue() instanceof String)
+ obj.addProperty(entry.getKey(), (String) entry.getValue());
+ else if (entry.getValue() instanceof Number)
+ obj.addProperty(entry.getKey(), (Number) entry.getValue());
+ else if (entry.getValue() instanceof Boolean)
+ obj.addProperty(entry.getKey(), (Boolean) entry.getValue());
+ else if (entry.getValue() instanceof Character)
+ obj.addProperty(entry.getKey(), (Character) entry.getValue());
+ else {
+ obj.add(entry.getKey(), gson.toJsonTree(entry.getValue()).getAsJsonObject());
+ }
+ }
+ }
+ elementAdapter.write(out, obj);
+ }
+
+ @Override
+ public SaveTenantUsersCountsParam read(JsonReader in) throws IOException {
+ JsonElement jsonElement = elementAdapter.read(in);
+ validateJsonElement(jsonElement);
+ JsonObject jsonObj = jsonElement.getAsJsonObject();
+ // store additional fields in the deserialized instance
+ SaveTenantUsersCountsParam instance = thisAdapter.fromJsonTree(jsonObj);
+ for (Map.Entry entry : jsonObj.entrySet()) {
+ if (!openapiFields.contains(entry.getKey())) {
+ if (entry.getValue().isJsonPrimitive()) { // primitive type
+ if (entry.getValue().getAsJsonPrimitive().isString())
+ instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsString());
+ else if (entry.getValue().getAsJsonPrimitive().isNumber())
+ instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsNumber());
+ else if (entry.getValue().getAsJsonPrimitive().isBoolean())
+ instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsBoolean());
+ else
+ throw new IllegalArgumentException(String.format("The field `%s` has unknown primitive type. Value: %s", entry.getKey(), entry.getValue().toString()));
+ } else if (entry.getValue().isJsonArray()) {
+ instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), List.class));
+ } else { // JSON object
+ instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), HashMap.class));
+ }
+ }
+ }
+ return instance;
+ }
+
+ }.nullSafe();
+ }
+ }
+
+ /**
+ * Create an instance of SaveTenantUsersCountsParam given an JSON string
+ *
+ * @param jsonString JSON string
+ * @return An instance of SaveTenantUsersCountsParam
+ * @throws IOException if the JSON string is invalid with respect to SaveTenantUsersCountsParam
+ */
+ public static SaveTenantUsersCountsParam fromJson(String jsonString) throws IOException {
+ return JSON.getGson().fromJson(jsonString, SaveTenantUsersCountsParam.class);
+ }
+
+ /**
+ * Convert an instance of SaveTenantUsersCountsParam to an JSON string
+ *
+ * @return JSON string
+ */
+ public String toJson() {
+ return JSON.getGson().toJson(this);
+ }
+}
+
diff --git a/src/main/java/saasus/sdk/auth/models/SearchSaasUsersResult.java b/src/main/java/saasus/sdk/auth/models/SearchSaasUsersResult.java
new file mode 100644
index 00000000..1ad06464
--- /dev/null
+++ b/src/main/java/saasus/sdk/auth/models/SearchSaasUsersResult.java
@@ -0,0 +1,337 @@
+/*
+ * SaaSus Auth API Schema
+ * Schema
+ *
+ * The version of the OpenAPI document: 1.0.0
+ *
+ *
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+ * https://openapi-generator.tech
+ * Do not edit the class manually.
+ */
+
+
+package saasus.sdk.auth.models;
+
+import java.util.Objects;
+import com.google.gson.TypeAdapter;
+import com.google.gson.annotations.JsonAdapter;
+import com.google.gson.annotations.SerializedName;
+import com.google.gson.stream.JsonReader;
+import com.google.gson.stream.JsonWriter;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import saasus.sdk.auth.models.SaasUser;
+
+import com.google.gson.Gson;
+import com.google.gson.GsonBuilder;
+import com.google.gson.JsonArray;
+import com.google.gson.JsonDeserializationContext;
+import com.google.gson.JsonDeserializer;
+import com.google.gson.JsonElement;
+import com.google.gson.JsonObject;
+import com.google.gson.JsonParseException;
+import com.google.gson.TypeAdapterFactory;
+import com.google.gson.reflect.TypeToken;
+import com.google.gson.TypeAdapter;
+import com.google.gson.stream.JsonReader;
+import com.google.gson.stream.JsonWriter;
+import java.io.IOException;
+
+import java.lang.reflect.Type;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import saasus.sdk.auth.JSON;
+
+/**
+ * SearchSaasUsersResult
+ */
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
+public class SearchSaasUsersResult {
+ public static final String SERIALIZED_NAME_USERS = "users";
+ @SerializedName(SERIALIZED_NAME_USERS)
+ private List users = new ArrayList<>();
+
+ public static final String SERIALIZED_NAME_CURSOR = "cursor";
+ @SerializedName(SERIALIZED_NAME_CURSOR)
+ private String cursor;
+
+ public SearchSaasUsersResult() {
+ }
+
+ public SearchSaasUsersResult users(List users) {
+ this.users = users;
+ return this;
+ }
+
+ public SearchSaasUsersResult addUsersItem(SaasUser usersItem) {
+ if (this.users == null) {
+ this.users = new ArrayList<>();
+ }
+ this.users.add(usersItem);
+ return this;
+ }
+
+ /**
+ * Get users
+ * @return users
+ **/
+ @javax.annotation.Nonnull
+ public List getUsers() {
+ return users;
+ }
+
+ public void setUsers(List users) {
+ this.users = users;
+ }
+
+
+ public SearchSaasUsersResult cursor(String cursor) {
+ this.cursor = cursor;
+ return this;
+ }
+
+ /**
+ * Pagination cursor for the next page
+ * @return cursor
+ **/
+ @javax.annotation.Nullable
+ public String getCursor() {
+ return cursor;
+ }
+
+ public void setCursor(String cursor) {
+ this.cursor = cursor;
+ }
+
+ /**
+ * A container for additional, undeclared properties.
+ * This is a holder for any undeclared properties as specified with
+ * the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value.
+ * If the property does not already exist, create it otherwise replace it.
+ *
+ * @param key name of the property
+ * @param value value of the property
+ * @return the SearchSaasUsersResult instance itself
+ */
+ public SearchSaasUsersResult putAdditionalProperty(String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return a map of objects
+ */
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key name of the property
+ * @return an object
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ SearchSaasUsersResult searchSaasUsersResult = (SearchSaasUsersResult) o;
+ return Objects.equals(this.users, searchSaasUsersResult.users) &&
+ Objects.equals(this.cursor, searchSaasUsersResult.cursor)&&
+ Objects.equals(this.additionalProperties, searchSaasUsersResult.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(users, cursor, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class SearchSaasUsersResult {\n");
+ sb.append(" users: ").append(toIndentedString(users)).append("\n");
+ sb.append(" cursor: ").append(toIndentedString(cursor)).append("\n");
+ sb.append(" additionalProperties: ").append(toIndentedString(additionalProperties)).append("\n");
+ sb.append("}");
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces
+ * (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+
+
+ public static HashSet openapiFields;
+ public static HashSet openapiRequiredFields;
+
+ static {
+ // a set of all properties/fields (JSON key names)
+ openapiFields = new HashSet();
+ openapiFields.add("users");
+ openapiFields.add("cursor");
+
+ // a set of required properties/fields (JSON key names)
+ openapiRequiredFields = new HashSet();
+ openapiRequiredFields.add("users");
+ }
+
+ /**
+ * Validates the JSON Element and throws an exception if issues found
+ *
+ * @param jsonElement JSON Element
+ * @throws IOException if the JSON Element is invalid with respect to SearchSaasUsersResult
+ */
+ public static void validateJsonElement(JsonElement jsonElement) throws IOException {
+ if (jsonElement == null) {
+ if (!SearchSaasUsersResult.openapiRequiredFields.isEmpty()) { // has required fields but JSON element is null
+ throw new IllegalArgumentException(String.format("The required field(s) %s in SearchSaasUsersResult is not found in the empty JSON string", SearchSaasUsersResult.openapiRequiredFields.toString()));
+ }
+ }
+
+ // check to make sure all required properties/fields are present in the JSON string
+ for (String requiredField : SearchSaasUsersResult.openapiRequiredFields) {
+ if (jsonElement.getAsJsonObject().get(requiredField) == null) {
+ throw new IllegalArgumentException(String.format("The required field `%s` is not found in the JSON string: %s", requiredField, jsonElement.toString()));
+ }
+ }
+ JsonObject jsonObj = jsonElement.getAsJsonObject();
+ // ensure the json data is an array
+ if (!jsonObj.get("users").isJsonArray()) {
+ throw new IllegalArgumentException(String.format("Expected the field `users` to be an array in the JSON string but got `%s`", jsonObj.get("users").toString()));
+ }
+
+ JsonArray jsonArrayusers = jsonObj.getAsJsonArray("users");
+ // validate the required field `users` (array)
+ for (int i = 0; i < jsonArrayusers.size(); i++) {
+ SaasUser.validateJsonElement(jsonArrayusers.get(i));
+ };
+ if ((jsonObj.get("cursor") != null && !jsonObj.get("cursor").isJsonNull()) && !jsonObj.get("cursor").isJsonPrimitive()) {
+ throw new IllegalArgumentException(String.format("Expected the field `cursor` to be a primitive type in the JSON string but got `%s`", jsonObj.get("cursor").toString()));
+ }
+ }
+
+ public static class CustomTypeAdapterFactory implements TypeAdapterFactory {
+ @SuppressWarnings("unchecked")
+ @Override
+ public TypeAdapter create(Gson gson, TypeToken type) {
+ if (!SearchSaasUsersResult.class.isAssignableFrom(type.getRawType())) {
+ return null; // this class only serializes 'SearchSaasUsersResult' and its subtypes
+ }
+ final TypeAdapter elementAdapter = gson.getAdapter(JsonElement.class);
+ final TypeAdapter thisAdapter
+ = gson.getDelegateAdapter(this, TypeToken.get(SearchSaasUsersResult.class));
+
+ return (TypeAdapter) new TypeAdapter() {
+ @Override
+ public void write(JsonWriter out, SearchSaasUsersResult value) throws IOException {
+ JsonObject obj = thisAdapter.toJsonTree(value).getAsJsonObject();
+ obj.remove("additionalProperties");
+ // serialize additional properties
+ if (value.getAdditionalProperties() != null) {
+ for (Map.Entry entry : value.getAdditionalProperties().entrySet()) {
+ if (entry.getValue() instanceof String)
+ obj.addProperty(entry.getKey(), (String) entry.getValue());
+ else if (entry.getValue() instanceof Number)
+ obj.addProperty(entry.getKey(), (Number) entry.getValue());
+ else if (entry.getValue() instanceof Boolean)
+ obj.addProperty(entry.getKey(), (Boolean) entry.getValue());
+ else if (entry.getValue() instanceof Character)
+ obj.addProperty(entry.getKey(), (Character) entry.getValue());
+ else {
+ obj.add(entry.getKey(), gson.toJsonTree(entry.getValue()).getAsJsonObject());
+ }
+ }
+ }
+ elementAdapter.write(out, obj);
+ }
+
+ @Override
+ public SearchSaasUsersResult read(JsonReader in) throws IOException {
+ JsonElement jsonElement = elementAdapter.read(in);
+ validateJsonElement(jsonElement);
+ JsonObject jsonObj = jsonElement.getAsJsonObject();
+ // store additional fields in the deserialized instance
+ SearchSaasUsersResult instance = thisAdapter.fromJsonTree(jsonObj);
+ for (Map.Entry entry : jsonObj.entrySet()) {
+ if (!openapiFields.contains(entry.getKey())) {
+ if (entry.getValue().isJsonPrimitive()) { // primitive type
+ if (entry.getValue().getAsJsonPrimitive().isString())
+ instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsString());
+ else if (entry.getValue().getAsJsonPrimitive().isNumber())
+ instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsNumber());
+ else if (entry.getValue().getAsJsonPrimitive().isBoolean())
+ instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsBoolean());
+ else
+ throw new IllegalArgumentException(String.format("The field `%s` has unknown primitive type. Value: %s", entry.getKey(), entry.getValue().toString()));
+ } else if (entry.getValue().isJsonArray()) {
+ instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), List.class));
+ } else { // JSON object
+ instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), HashMap.class));
+ }
+ }
+ }
+ return instance;
+ }
+
+ }.nullSafe();
+ }
+ }
+
+ /**
+ * Create an instance of SearchSaasUsersResult given an JSON string
+ *
+ * @param jsonString JSON string
+ * @return An instance of SearchSaasUsersResult
+ * @throws IOException if the JSON string is invalid with respect to SearchSaasUsersResult
+ */
+ public static SearchSaasUsersResult fromJson(String jsonString) throws IOException {
+ return JSON.getGson().fromJson(jsonString, SearchSaasUsersResult.class);
+ }
+
+ /**
+ * Convert an instance of SearchSaasUsersResult to an JSON string
+ *
+ * @return JSON string
+ */
+ public String toJson() {
+ return JSON.getGson().toJson(this);
+ }
+}
+
diff --git a/src/main/java/saasus/sdk/auth/models/SearchTenantUsersResult.java b/src/main/java/saasus/sdk/auth/models/SearchTenantUsersResult.java
new file mode 100644
index 00000000..52e2e7e8
--- /dev/null
+++ b/src/main/java/saasus/sdk/auth/models/SearchTenantUsersResult.java
@@ -0,0 +1,337 @@
+/*
+ * SaaSus Auth API Schema
+ * Schema
+ *
+ * The version of the OpenAPI document: 1.0.0
+ *
+ *
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+ * https://openapi-generator.tech
+ * Do not edit the class manually.
+ */
+
+
+package saasus.sdk.auth.models;
+
+import java.util.Objects;
+import com.google.gson.TypeAdapter;
+import com.google.gson.annotations.JsonAdapter;
+import com.google.gson.annotations.SerializedName;
+import com.google.gson.stream.JsonReader;
+import com.google.gson.stream.JsonWriter;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import saasus.sdk.auth.models.User;
+
+import com.google.gson.Gson;
+import com.google.gson.GsonBuilder;
+import com.google.gson.JsonArray;
+import com.google.gson.JsonDeserializationContext;
+import com.google.gson.JsonDeserializer;
+import com.google.gson.JsonElement;
+import com.google.gson.JsonObject;
+import com.google.gson.JsonParseException;
+import com.google.gson.TypeAdapterFactory;
+import com.google.gson.reflect.TypeToken;
+import com.google.gson.TypeAdapter;
+import com.google.gson.stream.JsonReader;
+import com.google.gson.stream.JsonWriter;
+import java.io.IOException;
+
+import java.lang.reflect.Type;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import saasus.sdk.auth.JSON;
+
+/**
+ * SearchTenantUsersResult
+ */
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
+public class SearchTenantUsersResult {
+ public static final String SERIALIZED_NAME_USERS = "users";
+ @SerializedName(SERIALIZED_NAME_USERS)
+ private List users = new ArrayList<>();
+
+ public static final String SERIALIZED_NAME_CURSOR = "cursor";
+ @SerializedName(SERIALIZED_NAME_CURSOR)
+ private String cursor;
+
+ public SearchTenantUsersResult() {
+ }
+
+ public SearchTenantUsersResult users(List users) {
+ this.users = users;
+ return this;
+ }
+
+ public SearchTenantUsersResult addUsersItem(User usersItem) {
+ if (this.users == null) {
+ this.users = new ArrayList<>();
+ }
+ this.users.add(usersItem);
+ return this;
+ }
+
+ /**
+ * Get users
+ * @return users
+ **/
+ @javax.annotation.Nonnull
+ public List getUsers() {
+ return users;
+ }
+
+ public void setUsers(List users) {
+ this.users = users;
+ }
+
+
+ public SearchTenantUsersResult cursor(String cursor) {
+ this.cursor = cursor;
+ return this;
+ }
+
+ /**
+ * Pagination cursor for the next page
+ * @return cursor
+ **/
+ @javax.annotation.Nullable
+ public String getCursor() {
+ return cursor;
+ }
+
+ public void setCursor(String cursor) {
+ this.cursor = cursor;
+ }
+
+ /**
+ * A container for additional, undeclared properties.
+ * This is a holder for any undeclared properties as specified with
+ * the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value.
+ * If the property does not already exist, create it otherwise replace it.
+ *
+ * @param key name of the property
+ * @param value value of the property
+ * @return the SearchTenantUsersResult instance itself
+ */
+ public SearchTenantUsersResult putAdditionalProperty(String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return a map of objects
+ */
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key name of the property
+ * @return an object
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ SearchTenantUsersResult searchTenantUsersResult = (SearchTenantUsersResult) o;
+ return Objects.equals(this.users, searchTenantUsersResult.users) &&
+ Objects.equals(this.cursor, searchTenantUsersResult.cursor)&&
+ Objects.equals(this.additionalProperties, searchTenantUsersResult.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(users, cursor, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class SearchTenantUsersResult {\n");
+ sb.append(" users: ").append(toIndentedString(users)).append("\n");
+ sb.append(" cursor: ").append(toIndentedString(cursor)).append("\n");
+ sb.append(" additionalProperties: ").append(toIndentedString(additionalProperties)).append("\n");
+ sb.append("}");
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces
+ * (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+
+
+ public static HashSet openapiFields;
+ public static HashSet openapiRequiredFields;
+
+ static {
+ // a set of all properties/fields (JSON key names)
+ openapiFields = new HashSet();
+ openapiFields.add("users");
+ openapiFields.add("cursor");
+
+ // a set of required properties/fields (JSON key names)
+ openapiRequiredFields = new HashSet();
+ openapiRequiredFields.add("users");
+ }
+
+ /**
+ * Validates the JSON Element and throws an exception if issues found
+ *
+ * @param jsonElement JSON Element
+ * @throws IOException if the JSON Element is invalid with respect to SearchTenantUsersResult
+ */
+ public static void validateJsonElement(JsonElement jsonElement) throws IOException {
+ if (jsonElement == null) {
+ if (!SearchTenantUsersResult.openapiRequiredFields.isEmpty()) { // has required fields but JSON element is null
+ throw new IllegalArgumentException(String.format("The required field(s) %s in SearchTenantUsersResult is not found in the empty JSON string", SearchTenantUsersResult.openapiRequiredFields.toString()));
+ }
+ }
+
+ // check to make sure all required properties/fields are present in the JSON string
+ for (String requiredField : SearchTenantUsersResult.openapiRequiredFields) {
+ if (jsonElement.getAsJsonObject().get(requiredField) == null) {
+ throw new IllegalArgumentException(String.format("The required field `%s` is not found in the JSON string: %s", requiredField, jsonElement.toString()));
+ }
+ }
+ JsonObject jsonObj = jsonElement.getAsJsonObject();
+ // ensure the json data is an array
+ if (!jsonObj.get("users").isJsonArray()) {
+ throw new IllegalArgumentException(String.format("Expected the field `users` to be an array in the JSON string but got `%s`", jsonObj.get("users").toString()));
+ }
+
+ JsonArray jsonArrayusers = jsonObj.getAsJsonArray("users");
+ // validate the required field `users` (array)
+ for (int i = 0; i < jsonArrayusers.size(); i++) {
+ User.validateJsonElement(jsonArrayusers.get(i));
+ };
+ if ((jsonObj.get("cursor") != null && !jsonObj.get("cursor").isJsonNull()) && !jsonObj.get("cursor").isJsonPrimitive()) {
+ throw new IllegalArgumentException(String.format("Expected the field `cursor` to be a primitive type in the JSON string but got `%s`", jsonObj.get("cursor").toString()));
+ }
+ }
+
+ public static class CustomTypeAdapterFactory implements TypeAdapterFactory {
+ @SuppressWarnings("unchecked")
+ @Override
+ public TypeAdapter create(Gson gson, TypeToken type) {
+ if (!SearchTenantUsersResult.class.isAssignableFrom(type.getRawType())) {
+ return null; // this class only serializes 'SearchTenantUsersResult' and its subtypes
+ }
+ final TypeAdapter elementAdapter = gson.getAdapter(JsonElement.class);
+ final TypeAdapter thisAdapter
+ = gson.getDelegateAdapter(this, TypeToken.get(SearchTenantUsersResult.class));
+
+ return (TypeAdapter) new TypeAdapter() {
+ @Override
+ public void write(JsonWriter out, SearchTenantUsersResult value) throws IOException {
+ JsonObject obj = thisAdapter.toJsonTree(value).getAsJsonObject();
+ obj.remove("additionalProperties");
+ // serialize additional properties
+ if (value.getAdditionalProperties() != null) {
+ for (Map.Entry entry : value.getAdditionalProperties().entrySet()) {
+ if (entry.getValue() instanceof String)
+ obj.addProperty(entry.getKey(), (String) entry.getValue());
+ else if (entry.getValue() instanceof Number)
+ obj.addProperty(entry.getKey(), (Number) entry.getValue());
+ else if (entry.getValue() instanceof Boolean)
+ obj.addProperty(entry.getKey(), (Boolean) entry.getValue());
+ else if (entry.getValue() instanceof Character)
+ obj.addProperty(entry.getKey(), (Character) entry.getValue());
+ else {
+ obj.add(entry.getKey(), gson.toJsonTree(entry.getValue()).getAsJsonObject());
+ }
+ }
+ }
+ elementAdapter.write(out, obj);
+ }
+
+ @Override
+ public SearchTenantUsersResult read(JsonReader in) throws IOException {
+ JsonElement jsonElement = elementAdapter.read(in);
+ validateJsonElement(jsonElement);
+ JsonObject jsonObj = jsonElement.getAsJsonObject();
+ // store additional fields in the deserialized instance
+ SearchTenantUsersResult instance = thisAdapter.fromJsonTree(jsonObj);
+ for (Map.Entry entry : jsonObj.entrySet()) {
+ if (!openapiFields.contains(entry.getKey())) {
+ if (entry.getValue().isJsonPrimitive()) { // primitive type
+ if (entry.getValue().getAsJsonPrimitive().isString())
+ instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsString());
+ else if (entry.getValue().getAsJsonPrimitive().isNumber())
+ instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsNumber());
+ else if (entry.getValue().getAsJsonPrimitive().isBoolean())
+ instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsBoolean());
+ else
+ throw new IllegalArgumentException(String.format("The field `%s` has unknown primitive type. Value: %s", entry.getKey(), entry.getValue().toString()));
+ } else if (entry.getValue().isJsonArray()) {
+ instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), List.class));
+ } else { // JSON object
+ instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), HashMap.class));
+ }
+ }
+ }
+ return instance;
+ }
+
+ }.nullSafe();
+ }
+ }
+
+ /**
+ * Create an instance of SearchTenantUsersResult given an JSON string
+ *
+ * @param jsonString JSON string
+ * @return An instance of SearchTenantUsersResult
+ * @throws IOException if the JSON string is invalid with respect to SearchTenantUsersResult
+ */
+ public static SearchTenantUsersResult fromJson(String jsonString) throws IOException {
+ return JSON.getGson().fromJson(jsonString, SearchTenantUsersResult.class);
+ }
+
+ /**
+ * Convert an instance of SearchTenantUsersResult to an JSON string
+ *
+ * @return JSON string
+ */
+ public String toJson() {
+ return JSON.getGson().toJson(this);
+ }
+}
+
diff --git a/src/main/java/saasus/sdk/auth/models/SelfRegist.java b/src/main/java/saasus/sdk/auth/models/SelfRegist.java
index ec3cf263..df5e9277 100644
--- a/src/main/java/saasus/sdk/auth/models/SelfRegist.java
+++ b/src/main/java/saasus/sdk/auth/models/SelfRegist.java
@@ -49,7 +49,7 @@
/**
* self sign-up permission
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class SelfRegist {
public static final String SERIALIZED_NAME_ENABLE = "enable";
@SerializedName(SERIALIZED_NAME_ENABLE)
diff --git a/src/main/java/saasus/sdk/auth/models/SignInParam.java b/src/main/java/saasus/sdk/auth/models/SignInParam.java
index a9ea3242..0affdb0e 100644
--- a/src/main/java/saasus/sdk/auth/models/SignInParam.java
+++ b/src/main/java/saasus/sdk/auth/models/SignInParam.java
@@ -51,7 +51,7 @@
/**
* Parameters required for user sign-in The required parameters vary depending on the sign_in_flow.
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class SignInParam {
/**
* The sign-in flow to use for authentication. Currently, only USER_SRP_AUTH is supported.
diff --git a/src/main/java/saasus/sdk/auth/models/SignInResult.java b/src/main/java/saasus/sdk/auth/models/SignInResult.java
index f8b6831a..be946bbe 100644
--- a/src/main/java/saasus/sdk/auth/models/SignInResult.java
+++ b/src/main/java/saasus/sdk/auth/models/SignInResult.java
@@ -52,7 +52,7 @@
/**
* Result returned after a sign-in attempt
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class SignInResult {
public static final String SERIALIZED_NAME_CHALLENGE_NAME = "challenge_name";
@SerializedName(SERIALIZED_NAME_CHALLENGE_NAME)
diff --git a/src/main/java/saasus/sdk/auth/models/SignInSettings.java b/src/main/java/saasus/sdk/auth/models/SignInSettings.java
index 4e445574..169c4274 100644
--- a/src/main/java/saasus/sdk/auth/models/SignInSettings.java
+++ b/src/main/java/saasus/sdk/auth/models/SignInSettings.java
@@ -56,7 +56,7 @@
/**
* SignInSettings
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class SignInSettings {
public static final String SERIALIZED_NAME_PASSWORD_POLICY = "password_policy";
@SerializedName(SERIALIZED_NAME_PASSWORD_POLICY)
diff --git a/src/main/java/saasus/sdk/auth/models/SignUpParam.java b/src/main/java/saasus/sdk/auth/models/SignUpParam.java
index d55d33f4..0e2af373 100644
--- a/src/main/java/saasus/sdk/auth/models/SignUpParam.java
+++ b/src/main/java/saasus/sdk/auth/models/SignUpParam.java
@@ -49,7 +49,7 @@
/**
* SignUpParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class SignUpParam {
public static final String SERIALIZED_NAME_EMAIL = "email";
@SerializedName(SERIALIZED_NAME_EMAIL)
diff --git a/src/main/java/saasus/sdk/auth/models/SignUpWithAwsMarketplaceParam.java b/src/main/java/saasus/sdk/auth/models/SignUpWithAwsMarketplaceParam.java
index 8a1c585f..ace4d27a 100644
--- a/src/main/java/saasus/sdk/auth/models/SignUpWithAwsMarketplaceParam.java
+++ b/src/main/java/saasus/sdk/auth/models/SignUpWithAwsMarketplaceParam.java
@@ -49,7 +49,7 @@
/**
* SignUpWithAwsMarketplaceParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class SignUpWithAwsMarketplaceParam {
public static final String SERIALIZED_NAME_EMAIL = "email";
@SerializedName(SERIALIZED_NAME_EMAIL)
diff --git a/src/main/java/saasus/sdk/auth/models/SingleTenantSettings.java b/src/main/java/saasus/sdk/auth/models/SingleTenantSettings.java
index 2ab7fd6c..2b7310c5 100644
--- a/src/main/java/saasus/sdk/auth/models/SingleTenantSettings.java
+++ b/src/main/java/saasus/sdk/auth/models/SingleTenantSettings.java
@@ -49,7 +49,7 @@
/**
* SingleTenantSettings
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class SingleTenantSettings {
public static final String SERIALIZED_NAME_ENABLED = "enabled";
@SerializedName(SERIALIZED_NAME_ENABLED)
diff --git a/src/main/java/saasus/sdk/auth/models/SoftwareTokenSecretCode.java b/src/main/java/saasus/sdk/auth/models/SoftwareTokenSecretCode.java
index 8bf2d340..bda15929 100644
--- a/src/main/java/saasus/sdk/auth/models/SoftwareTokenSecretCode.java
+++ b/src/main/java/saasus/sdk/auth/models/SoftwareTokenSecretCode.java
@@ -49,7 +49,7 @@
/**
* SoftwareTokenSecretCode
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class SoftwareTokenSecretCode {
public static final String SERIALIZED_NAME_SECRET_CODE = "secret_code";
@SerializedName(SERIALIZED_NAME_SECRET_CODE)
diff --git a/src/main/java/saasus/sdk/auth/models/StripeCustomer.java b/src/main/java/saasus/sdk/auth/models/StripeCustomer.java
index e3f0c16e..8d0c55bd 100644
--- a/src/main/java/saasus/sdk/auth/models/StripeCustomer.java
+++ b/src/main/java/saasus/sdk/auth/models/StripeCustomer.java
@@ -49,7 +49,7 @@
/**
* StripeCustomer
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class StripeCustomer {
public static final String SERIALIZED_NAME_CUSTOMER_ID = "customer_id";
@SerializedName(SERIALIZED_NAME_CUSTOMER_ID)
diff --git a/src/main/java/saasus/sdk/auth/models/Tenant.java b/src/main/java/saasus/sdk/auth/models/Tenant.java
index 389037b0..7f8468a0 100644
--- a/src/main/java/saasus/sdk/auth/models/Tenant.java
+++ b/src/main/java/saasus/sdk/auth/models/Tenant.java
@@ -56,7 +56,7 @@
/**
* Tenant
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class Tenant {
public static final String SERIALIZED_NAME_NAME = "name";
@SerializedName(SERIALIZED_NAME_NAME)
diff --git a/src/main/java/saasus/sdk/auth/models/TenantAttributes.java b/src/main/java/saasus/sdk/auth/models/TenantAttributes.java
index 1bc0e484..6402852f 100644
--- a/src/main/java/saasus/sdk/auth/models/TenantAttributes.java
+++ b/src/main/java/saasus/sdk/auth/models/TenantAttributes.java
@@ -52,7 +52,7 @@
/**
* TenantAttributes
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class TenantAttributes {
public static final String SERIALIZED_NAME_TENANT_ATTRIBUTES = "tenant_attributes";
@SerializedName(SERIALIZED_NAME_TENANT_ATTRIBUTES)
diff --git a/src/main/java/saasus/sdk/auth/models/TenantDetail.java b/src/main/java/saasus/sdk/auth/models/TenantDetail.java
index b1583f31..3022d045 100644
--- a/src/main/java/saasus/sdk/auth/models/TenantDetail.java
+++ b/src/main/java/saasus/sdk/auth/models/TenantDetail.java
@@ -56,7 +56,7 @@
/**
* TenantDetail
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class TenantDetail {
public static final String SERIALIZED_NAME_ID = "id";
@SerializedName(SERIALIZED_NAME_ID)
diff --git a/src/main/java/saasus/sdk/auth/models/TenantIdentityProviderProps.java b/src/main/java/saasus/sdk/auth/models/TenantIdentityProviderProps.java
index 04019181..857f4306 100644
--- a/src/main/java/saasus/sdk/auth/models/TenantIdentityProviderProps.java
+++ b/src/main/java/saasus/sdk/auth/models/TenantIdentityProviderProps.java
@@ -58,7 +58,7 @@
import saasus.sdk.auth.JSON;
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class TenantIdentityProviderProps extends AbstractOpenApiSchema {
private static final Logger log = Logger.getLogger(TenantIdentityProviderProps.class.getName());
diff --git a/src/main/java/saasus/sdk/auth/models/TenantIdentityProviders.java b/src/main/java/saasus/sdk/auth/models/TenantIdentityProviders.java
index 73a600df..308486de 100644
--- a/src/main/java/saasus/sdk/auth/models/TenantIdentityProviders.java
+++ b/src/main/java/saasus/sdk/auth/models/TenantIdentityProviders.java
@@ -50,7 +50,7 @@
/**
* TenantIdentityProviders
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class TenantIdentityProviders {
public static final String SERIALIZED_NAME_SAML = "saml";
@SerializedName(SERIALIZED_NAME_SAML)
diff --git a/src/main/java/saasus/sdk/auth/models/TenantIdentityProvidersSaml.java b/src/main/java/saasus/sdk/auth/models/TenantIdentityProvidersSaml.java
index 9ecc621f..64a9607c 100644
--- a/src/main/java/saasus/sdk/auth/models/TenantIdentityProvidersSaml.java
+++ b/src/main/java/saasus/sdk/auth/models/TenantIdentityProvidersSaml.java
@@ -49,7 +49,7 @@
/**
* TenantIdentityProvidersSaml
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class TenantIdentityProvidersSaml {
public static final String SERIALIZED_NAME_METADATA_URL = "metadata_url";
@SerializedName(SERIALIZED_NAME_METADATA_URL)
diff --git a/src/main/java/saasus/sdk/auth/models/TenantProps.java b/src/main/java/saasus/sdk/auth/models/TenantProps.java
index aaf83957..1dd75472 100644
--- a/src/main/java/saasus/sdk/auth/models/TenantProps.java
+++ b/src/main/java/saasus/sdk/auth/models/TenantProps.java
@@ -51,7 +51,7 @@
/**
* TenantProps
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class TenantProps {
public static final String SERIALIZED_NAME_NAME = "name";
@SerializedName(SERIALIZED_NAME_NAME)
diff --git a/src/main/java/saasus/sdk/auth/models/TenantUserCount.java b/src/main/java/saasus/sdk/auth/models/TenantUserCount.java
new file mode 100644
index 00000000..a7106fb9
--- /dev/null
+++ b/src/main/java/saasus/sdk/auth/models/TenantUserCount.java
@@ -0,0 +1,344 @@
+/*
+ * SaaSus Auth API Schema
+ * Schema
+ *
+ * The version of the OpenAPI document: 1.0.0
+ *
+ *
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+ * https://openapi-generator.tech
+ * Do not edit the class manually.
+ */
+
+
+package saasus.sdk.auth.models;
+
+import java.util.Objects;
+import com.google.gson.TypeAdapter;
+import com.google.gson.annotations.JsonAdapter;
+import com.google.gson.annotations.SerializedName;
+import com.google.gson.stream.JsonReader;
+import com.google.gson.stream.JsonWriter;
+import java.io.IOException;
+import java.util.Arrays;
+
+import com.google.gson.Gson;
+import com.google.gson.GsonBuilder;
+import com.google.gson.JsonArray;
+import com.google.gson.JsonDeserializationContext;
+import com.google.gson.JsonDeserializer;
+import com.google.gson.JsonElement;
+import com.google.gson.JsonObject;
+import com.google.gson.JsonParseException;
+import com.google.gson.TypeAdapterFactory;
+import com.google.gson.reflect.TypeToken;
+import com.google.gson.TypeAdapter;
+import com.google.gson.stream.JsonReader;
+import com.google.gson.stream.JsonWriter;
+import java.io.IOException;
+
+import java.lang.reflect.Type;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import saasus.sdk.auth.JSON;
+
+/**
+ * TenantUserCount
+ */
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
+public class TenantUserCount {
+ public static final String SERIALIZED_NAME_TENANT_ID = "tenant_id";
+ @SerializedName(SERIALIZED_NAME_TENANT_ID)
+ private String tenantId;
+
+ public static final String SERIALIZED_NAME_COUNT = "count";
+ @SerializedName(SERIALIZED_NAME_COUNT)
+ private Integer count;
+
+ public static final String SERIALIZED_NAME_UPDATED_AT = "updated_at";
+ @SerializedName(SERIALIZED_NAME_UPDATED_AT)
+ private Long updatedAt;
+
+ public TenantUserCount() {
+ }
+
+ public TenantUserCount tenantId(String tenantId) {
+ this.tenantId = tenantId;
+ return this;
+ }
+
+ /**
+ * Get tenantId
+ * @return tenantId
+ **/
+ @javax.annotation.Nonnull
+ public String getTenantId() {
+ return tenantId;
+ }
+
+ public void setTenantId(String tenantId) {
+ this.tenantId = tenantId;
+ }
+
+
+ public TenantUserCount count(Integer count) {
+ this.count = count;
+ return this;
+ }
+
+ /**
+ * Count of tenant users
+ * @return count
+ **/
+ @javax.annotation.Nonnull
+ public Integer getCount() {
+ return count;
+ }
+
+ public void setCount(Integer count) {
+ this.count = count;
+ }
+
+
+ public TenantUserCount updatedAt(Long updatedAt) {
+ this.updatedAt = updatedAt;
+ return this;
+ }
+
+ /**
+ * Unix timestamp (seconds) of the last update
+ * @return updatedAt
+ **/
+ @javax.annotation.Nonnull
+ public Long getUpdatedAt() {
+ return updatedAt;
+ }
+
+ public void setUpdatedAt(Long updatedAt) {
+ this.updatedAt = updatedAt;
+ }
+
+ /**
+ * A container for additional, undeclared properties.
+ * This is a holder for any undeclared properties as specified with
+ * the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value.
+ * If the property does not already exist, create it otherwise replace it.
+ *
+ * @param key name of the property
+ * @param value value of the property
+ * @return the TenantUserCount instance itself
+ */
+ public TenantUserCount putAdditionalProperty(String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return a map of objects
+ */
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key name of the property
+ * @return an object
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ TenantUserCount tenantUserCount = (TenantUserCount) o;
+ return Objects.equals(this.tenantId, tenantUserCount.tenantId) &&
+ Objects.equals(this.count, tenantUserCount.count) &&
+ Objects.equals(this.updatedAt, tenantUserCount.updatedAt)&&
+ Objects.equals(this.additionalProperties, tenantUserCount.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(tenantId, count, updatedAt, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class TenantUserCount {\n");
+ sb.append(" tenantId: ").append(toIndentedString(tenantId)).append("\n");
+ sb.append(" count: ").append(toIndentedString(count)).append("\n");
+ sb.append(" updatedAt: ").append(toIndentedString(updatedAt)).append("\n");
+ sb.append(" additionalProperties: ").append(toIndentedString(additionalProperties)).append("\n");
+ sb.append("}");
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces
+ * (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+
+
+ public static HashSet openapiFields;
+ public static HashSet openapiRequiredFields;
+
+ static {
+ // a set of all properties/fields (JSON key names)
+ openapiFields = new HashSet();
+ openapiFields.add("tenant_id");
+ openapiFields.add("count");
+ openapiFields.add("updated_at");
+
+ // a set of required properties/fields (JSON key names)
+ openapiRequiredFields = new HashSet();
+ openapiRequiredFields.add("tenant_id");
+ openapiRequiredFields.add("count");
+ openapiRequiredFields.add("updated_at");
+ }
+
+ /**
+ * Validates the JSON Element and throws an exception if issues found
+ *
+ * @param jsonElement JSON Element
+ * @throws IOException if the JSON Element is invalid with respect to TenantUserCount
+ */
+ public static void validateJsonElement(JsonElement jsonElement) throws IOException {
+ if (jsonElement == null) {
+ if (!TenantUserCount.openapiRequiredFields.isEmpty()) { // has required fields but JSON element is null
+ throw new IllegalArgumentException(String.format("The required field(s) %s in TenantUserCount is not found in the empty JSON string", TenantUserCount.openapiRequiredFields.toString()));
+ }
+ }
+
+ // check to make sure all required properties/fields are present in the JSON string
+ for (String requiredField : TenantUserCount.openapiRequiredFields) {
+ if (jsonElement.getAsJsonObject().get(requiredField) == null) {
+ throw new IllegalArgumentException(String.format("The required field `%s` is not found in the JSON string: %s", requiredField, jsonElement.toString()));
+ }
+ }
+ JsonObject jsonObj = jsonElement.getAsJsonObject();
+ if (!jsonObj.get("tenant_id").isJsonPrimitive()) {
+ throw new IllegalArgumentException(String.format("Expected the field `tenant_id` to be a primitive type in the JSON string but got `%s`", jsonObj.get("tenant_id").toString()));
+ }
+ }
+
+ public static class CustomTypeAdapterFactory implements TypeAdapterFactory {
+ @SuppressWarnings("unchecked")
+ @Override
+ public TypeAdapter create(Gson gson, TypeToken type) {
+ if (!TenantUserCount.class.isAssignableFrom(type.getRawType())) {
+ return null; // this class only serializes 'TenantUserCount' and its subtypes
+ }
+ final TypeAdapter elementAdapter = gson.getAdapter(JsonElement.class);
+ final TypeAdapter thisAdapter
+ = gson.getDelegateAdapter(this, TypeToken.get(TenantUserCount.class));
+
+ return (TypeAdapter) new TypeAdapter() {
+ @Override
+ public void write(JsonWriter out, TenantUserCount value) throws IOException {
+ JsonObject obj = thisAdapter.toJsonTree(value).getAsJsonObject();
+ obj.remove("additionalProperties");
+ // serialize additional properties
+ if (value.getAdditionalProperties() != null) {
+ for (Map.Entry entry : value.getAdditionalProperties().entrySet()) {
+ if (entry.getValue() instanceof String)
+ obj.addProperty(entry.getKey(), (String) entry.getValue());
+ else if (entry.getValue() instanceof Number)
+ obj.addProperty(entry.getKey(), (Number) entry.getValue());
+ else if (entry.getValue() instanceof Boolean)
+ obj.addProperty(entry.getKey(), (Boolean) entry.getValue());
+ else if (entry.getValue() instanceof Character)
+ obj.addProperty(entry.getKey(), (Character) entry.getValue());
+ else {
+ obj.add(entry.getKey(), gson.toJsonTree(entry.getValue()).getAsJsonObject());
+ }
+ }
+ }
+ elementAdapter.write(out, obj);
+ }
+
+ @Override
+ public TenantUserCount read(JsonReader in) throws IOException {
+ JsonElement jsonElement = elementAdapter.read(in);
+ validateJsonElement(jsonElement);
+ JsonObject jsonObj = jsonElement.getAsJsonObject();
+ // store additional fields in the deserialized instance
+ TenantUserCount instance = thisAdapter.fromJsonTree(jsonObj);
+ for (Map.Entry entry : jsonObj.entrySet()) {
+ if (!openapiFields.contains(entry.getKey())) {
+ if (entry.getValue().isJsonPrimitive()) { // primitive type
+ if (entry.getValue().getAsJsonPrimitive().isString())
+ instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsString());
+ else if (entry.getValue().getAsJsonPrimitive().isNumber())
+ instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsNumber());
+ else if (entry.getValue().getAsJsonPrimitive().isBoolean())
+ instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsBoolean());
+ else
+ throw new IllegalArgumentException(String.format("The field `%s` has unknown primitive type. Value: %s", entry.getKey(), entry.getValue().toString()));
+ } else if (entry.getValue().isJsonArray()) {
+ instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), List.class));
+ } else { // JSON object
+ instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), HashMap.class));
+ }
+ }
+ }
+ return instance;
+ }
+
+ }.nullSafe();
+ }
+ }
+
+ /**
+ * Create an instance of TenantUserCount given an JSON string
+ *
+ * @param jsonString JSON string
+ * @return An instance of TenantUserCount
+ * @throws IOException if the JSON string is invalid with respect to TenantUserCount
+ */
+ public static TenantUserCount fromJson(String jsonString) throws IOException {
+ return JSON.getGson().fromJson(jsonString, TenantUserCount.class);
+ }
+
+ /**
+ * Convert an instance of TenantUserCount to an JSON string
+ *
+ * @return JSON string
+ */
+ public String toJson() {
+ return JSON.getGson().toJson(this);
+ }
+}
+
diff --git a/src/main/java/saasus/sdk/auth/models/TenantUsersCounts.java b/src/main/java/saasus/sdk/auth/models/TenantUsersCounts.java
new file mode 100644
index 00000000..798c4cf2
--- /dev/null
+++ b/src/main/java/saasus/sdk/auth/models/TenantUsersCounts.java
@@ -0,0 +1,308 @@
+/*
+ * SaaSus Auth API Schema
+ * Schema
+ *
+ * The version of the OpenAPI document: 1.0.0
+ *
+ *
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+ * https://openapi-generator.tech
+ * Do not edit the class manually.
+ */
+
+
+package saasus.sdk.auth.models;
+
+import java.util.Objects;
+import com.google.gson.TypeAdapter;
+import com.google.gson.annotations.JsonAdapter;
+import com.google.gson.annotations.SerializedName;
+import com.google.gson.stream.JsonReader;
+import com.google.gson.stream.JsonWriter;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import saasus.sdk.auth.models.TenantUserCount;
+
+import com.google.gson.Gson;
+import com.google.gson.GsonBuilder;
+import com.google.gson.JsonArray;
+import com.google.gson.JsonDeserializationContext;
+import com.google.gson.JsonDeserializer;
+import com.google.gson.JsonElement;
+import com.google.gson.JsonObject;
+import com.google.gson.JsonParseException;
+import com.google.gson.TypeAdapterFactory;
+import com.google.gson.reflect.TypeToken;
+import com.google.gson.TypeAdapter;
+import com.google.gson.stream.JsonReader;
+import com.google.gson.stream.JsonWriter;
+import java.io.IOException;
+
+import java.lang.reflect.Type;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import saasus.sdk.auth.JSON;
+
+/**
+ * TenantUsersCounts
+ */
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
+public class TenantUsersCounts {
+ public static final String SERIALIZED_NAME_TENANT_USER_COUNTS = "tenant_user_counts";
+ @SerializedName(SERIALIZED_NAME_TENANT_USER_COUNTS)
+ private List tenantUserCounts = new ArrayList<>();
+
+ public TenantUsersCounts() {
+ }
+
+ public TenantUsersCounts tenantUserCounts(List tenantUserCounts) {
+ this.tenantUserCounts = tenantUserCounts;
+ return this;
+ }
+
+ public TenantUsersCounts addTenantUserCountsItem(TenantUserCount tenantUserCountsItem) {
+ if (this.tenantUserCounts == null) {
+ this.tenantUserCounts = new ArrayList<>();
+ }
+ this.tenantUserCounts.add(tenantUserCountsItem);
+ return this;
+ }
+
+ /**
+ * Get tenantUserCounts
+ * @return tenantUserCounts
+ **/
+ @javax.annotation.Nonnull
+ public List getTenantUserCounts() {
+ return tenantUserCounts;
+ }
+
+ public void setTenantUserCounts(List tenantUserCounts) {
+ this.tenantUserCounts = tenantUserCounts;
+ }
+
+ /**
+ * A container for additional, undeclared properties.
+ * This is a holder for any undeclared properties as specified with
+ * the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value.
+ * If the property does not already exist, create it otherwise replace it.
+ *
+ * @param key name of the property
+ * @param value value of the property
+ * @return the TenantUsersCounts instance itself
+ */
+ public TenantUsersCounts putAdditionalProperty(String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return a map of objects
+ */
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key name of the property
+ * @return an object
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ TenantUsersCounts tenantUsersCounts = (TenantUsersCounts) o;
+ return Objects.equals(this.tenantUserCounts, tenantUsersCounts.tenantUserCounts)&&
+ Objects.equals(this.additionalProperties, tenantUsersCounts.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(tenantUserCounts, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class TenantUsersCounts {\n");
+ sb.append(" tenantUserCounts: ").append(toIndentedString(tenantUserCounts)).append("\n");
+ sb.append(" additionalProperties: ").append(toIndentedString(additionalProperties)).append("\n");
+ sb.append("}");
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces
+ * (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+
+
+ public static HashSet openapiFields;
+ public static HashSet openapiRequiredFields;
+
+ static {
+ // a set of all properties/fields (JSON key names)
+ openapiFields = new HashSet();
+ openapiFields.add("tenant_user_counts");
+
+ // a set of required properties/fields (JSON key names)
+ openapiRequiredFields = new HashSet();
+ openapiRequiredFields.add("tenant_user_counts");
+ }
+
+ /**
+ * Validates the JSON Element and throws an exception if issues found
+ *
+ * @param jsonElement JSON Element
+ * @throws IOException if the JSON Element is invalid with respect to TenantUsersCounts
+ */
+ public static void validateJsonElement(JsonElement jsonElement) throws IOException {
+ if (jsonElement == null) {
+ if (!TenantUsersCounts.openapiRequiredFields.isEmpty()) { // has required fields but JSON element is null
+ throw new IllegalArgumentException(String.format("The required field(s) %s in TenantUsersCounts is not found in the empty JSON string", TenantUsersCounts.openapiRequiredFields.toString()));
+ }
+ }
+
+ // check to make sure all required properties/fields are present in the JSON string
+ for (String requiredField : TenantUsersCounts.openapiRequiredFields) {
+ if (jsonElement.getAsJsonObject().get(requiredField) == null) {
+ throw new IllegalArgumentException(String.format("The required field `%s` is not found in the JSON string: %s", requiredField, jsonElement.toString()));
+ }
+ }
+ JsonObject jsonObj = jsonElement.getAsJsonObject();
+ // ensure the json data is an array
+ if (!jsonObj.get("tenant_user_counts").isJsonArray()) {
+ throw new IllegalArgumentException(String.format("Expected the field `tenant_user_counts` to be an array in the JSON string but got `%s`", jsonObj.get("tenant_user_counts").toString()));
+ }
+
+ JsonArray jsonArraytenantUserCounts = jsonObj.getAsJsonArray("tenant_user_counts");
+ // validate the required field `tenant_user_counts` (array)
+ for (int i = 0; i < jsonArraytenantUserCounts.size(); i++) {
+ TenantUserCount.validateJsonElement(jsonArraytenantUserCounts.get(i));
+ };
+ }
+
+ public static class CustomTypeAdapterFactory implements TypeAdapterFactory {
+ @SuppressWarnings("unchecked")
+ @Override
+ public TypeAdapter create(Gson gson, TypeToken type) {
+ if (!TenantUsersCounts.class.isAssignableFrom(type.getRawType())) {
+ return null; // this class only serializes 'TenantUsersCounts' and its subtypes
+ }
+ final TypeAdapter elementAdapter = gson.getAdapter(JsonElement.class);
+ final TypeAdapter thisAdapter
+ = gson.getDelegateAdapter(this, TypeToken.get(TenantUsersCounts.class));
+
+ return (TypeAdapter) new TypeAdapter() {
+ @Override
+ public void write(JsonWriter out, TenantUsersCounts value) throws IOException {
+ JsonObject obj = thisAdapter.toJsonTree(value).getAsJsonObject();
+ obj.remove("additionalProperties");
+ // serialize additional properties
+ if (value.getAdditionalProperties() != null) {
+ for (Map.Entry entry : value.getAdditionalProperties().entrySet()) {
+ if (entry.getValue() instanceof String)
+ obj.addProperty(entry.getKey(), (String) entry.getValue());
+ else if (entry.getValue() instanceof Number)
+ obj.addProperty(entry.getKey(), (Number) entry.getValue());
+ else if (entry.getValue() instanceof Boolean)
+ obj.addProperty(entry.getKey(), (Boolean) entry.getValue());
+ else if (entry.getValue() instanceof Character)
+ obj.addProperty(entry.getKey(), (Character) entry.getValue());
+ else {
+ obj.add(entry.getKey(), gson.toJsonTree(entry.getValue()).getAsJsonObject());
+ }
+ }
+ }
+ elementAdapter.write(out, obj);
+ }
+
+ @Override
+ public TenantUsersCounts read(JsonReader in) throws IOException {
+ JsonElement jsonElement = elementAdapter.read(in);
+ validateJsonElement(jsonElement);
+ JsonObject jsonObj = jsonElement.getAsJsonObject();
+ // store additional fields in the deserialized instance
+ TenantUsersCounts instance = thisAdapter.fromJsonTree(jsonObj);
+ for (Map.Entry entry : jsonObj.entrySet()) {
+ if (!openapiFields.contains(entry.getKey())) {
+ if (entry.getValue().isJsonPrimitive()) { // primitive type
+ if (entry.getValue().getAsJsonPrimitive().isString())
+ instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsString());
+ else if (entry.getValue().getAsJsonPrimitive().isNumber())
+ instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsNumber());
+ else if (entry.getValue().getAsJsonPrimitive().isBoolean())
+ instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsBoolean());
+ else
+ throw new IllegalArgumentException(String.format("The field `%s` has unknown primitive type. Value: %s", entry.getKey(), entry.getValue().toString()));
+ } else if (entry.getValue().isJsonArray()) {
+ instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), List.class));
+ } else { // JSON object
+ instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), HashMap.class));
+ }
+ }
+ }
+ return instance;
+ }
+
+ }.nullSafe();
+ }
+ }
+
+ /**
+ * Create an instance of TenantUsersCounts given an JSON string
+ *
+ * @param jsonString JSON string
+ * @return An instance of TenantUsersCounts
+ * @throws IOException if the JSON string is invalid with respect to TenantUsersCounts
+ */
+ public static TenantUsersCounts fromJson(String jsonString) throws IOException {
+ return JSON.getGson().fromJson(jsonString, TenantUsersCounts.class);
+ }
+
+ /**
+ * Convert an instance of TenantUsersCounts to an JSON string
+ *
+ * @return JSON string
+ */
+ public String toJson() {
+ return JSON.getGson().toJson(this);
+ }
+}
+
diff --git a/src/main/java/saasus/sdk/auth/models/Tenants.java b/src/main/java/saasus/sdk/auth/models/Tenants.java
index 284b2dbd..0e7aaf00 100644
--- a/src/main/java/saasus/sdk/auth/models/Tenants.java
+++ b/src/main/java/saasus/sdk/auth/models/Tenants.java
@@ -52,7 +52,7 @@
/**
* Tenant Info
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class Tenants {
public static final String SERIALIZED_NAME_TENANTS = "tenants";
@SerializedName(SERIALIZED_NAME_TENANTS)
diff --git a/src/main/java/saasus/sdk/auth/models/UpdateBasicInfoParam.java b/src/main/java/saasus/sdk/auth/models/UpdateBasicInfoParam.java
index d512e4fd..61f09173 100644
--- a/src/main/java/saasus/sdk/auth/models/UpdateBasicInfoParam.java
+++ b/src/main/java/saasus/sdk/auth/models/UpdateBasicInfoParam.java
@@ -49,7 +49,7 @@
/**
* UpdateBasicInfoParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class UpdateBasicInfoParam {
public static final String SERIALIZED_NAME_DOMAIN_NAME = "domain_name";
@SerializedName(SERIALIZED_NAME_DOMAIN_NAME)
diff --git a/src/main/java/saasus/sdk/auth/models/UpdateCustomizePageSettingsParam.java b/src/main/java/saasus/sdk/auth/models/UpdateCustomizePageSettingsParam.java
index 26f889a0..847fa6bb 100644
--- a/src/main/java/saasus/sdk/auth/models/UpdateCustomizePageSettingsParam.java
+++ b/src/main/java/saasus/sdk/auth/models/UpdateCustomizePageSettingsParam.java
@@ -49,7 +49,7 @@
/**
* UpdateCustomizePageSettingsParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class UpdateCustomizePageSettingsParam {
public static final String SERIALIZED_NAME_TITLE = "title";
@SerializedName(SERIALIZED_NAME_TITLE)
diff --git a/src/main/java/saasus/sdk/auth/models/UpdateCustomizePagesParam.java b/src/main/java/saasus/sdk/auth/models/UpdateCustomizePagesParam.java
index 8b2039f1..187a27a8 100644
--- a/src/main/java/saasus/sdk/auth/models/UpdateCustomizePagesParam.java
+++ b/src/main/java/saasus/sdk/auth/models/UpdateCustomizePagesParam.java
@@ -50,7 +50,7 @@
/**
* UpdateCustomizePagesParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class UpdateCustomizePagesParam {
public static final String SERIALIZED_NAME_SIGN_UP_PAGE = "sign_up_page";
@SerializedName(SERIALIZED_NAME_SIGN_UP_PAGE)
diff --git a/src/main/java/saasus/sdk/auth/models/UpdateDeviceStatusParam.java b/src/main/java/saasus/sdk/auth/models/UpdateDeviceStatusParam.java
index c91c1104..96a08135 100644
--- a/src/main/java/saasus/sdk/auth/models/UpdateDeviceStatusParam.java
+++ b/src/main/java/saasus/sdk/auth/models/UpdateDeviceStatusParam.java
@@ -50,7 +50,7 @@
/**
* Parameters required to update a device status.
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class UpdateDeviceStatusParam {
public static final String SERIALIZED_NAME_ACCESS_TOKEN = "access_token";
@SerializedName(SERIALIZED_NAME_ACCESS_TOKEN)
diff --git a/src/main/java/saasus/sdk/auth/models/UpdateEnvParam.java b/src/main/java/saasus/sdk/auth/models/UpdateEnvParam.java
index 1e832791..f51f2ea8 100644
--- a/src/main/java/saasus/sdk/auth/models/UpdateEnvParam.java
+++ b/src/main/java/saasus/sdk/auth/models/UpdateEnvParam.java
@@ -49,7 +49,7 @@
/**
* UpdateEnvParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class UpdateEnvParam {
public static final String SERIALIZED_NAME_NAME = "name";
@SerializedName(SERIALIZED_NAME_NAME)
diff --git a/src/main/java/saasus/sdk/auth/models/UpdateIdentityProviderParam.java b/src/main/java/saasus/sdk/auth/models/UpdateIdentityProviderParam.java
index e76b61b6..68359003 100644
--- a/src/main/java/saasus/sdk/auth/models/UpdateIdentityProviderParam.java
+++ b/src/main/java/saasus/sdk/auth/models/UpdateIdentityProviderParam.java
@@ -51,7 +51,7 @@
/**
* UpdateIdentityProviderParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class UpdateIdentityProviderParam {
public static final String SERIALIZED_NAME_PROVIDER = "provider";
@SerializedName(SERIALIZED_NAME_PROVIDER)
diff --git a/src/main/java/saasus/sdk/auth/models/UpdateNotificationMessagesParam.java b/src/main/java/saasus/sdk/auth/models/UpdateNotificationMessagesParam.java
index 05a7e84d..386e2c88 100644
--- a/src/main/java/saasus/sdk/auth/models/UpdateNotificationMessagesParam.java
+++ b/src/main/java/saasus/sdk/auth/models/UpdateNotificationMessagesParam.java
@@ -50,7 +50,7 @@
/**
* UpdateNotificationMessagesParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class UpdateNotificationMessagesParam {
public static final String SERIALIZED_NAME_SIGN_UP = "sign_up";
@SerializedName(SERIALIZED_NAME_SIGN_UP)
diff --git a/src/main/java/saasus/sdk/auth/models/UpdateRoleParam.java b/src/main/java/saasus/sdk/auth/models/UpdateRoleParam.java
index b703b912..2e8d79db 100644
--- a/src/main/java/saasus/sdk/auth/models/UpdateRoleParam.java
+++ b/src/main/java/saasus/sdk/auth/models/UpdateRoleParam.java
@@ -49,7 +49,7 @@
/**
* UpdateRoleParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class UpdateRoleParam {
public static final String SERIALIZED_NAME_DISPLAY_NAME = "display_name";
@SerializedName(SERIALIZED_NAME_DISPLAY_NAME)
diff --git a/src/main/java/saasus/sdk/auth/models/UpdateSaasUserAttributesParam.java b/src/main/java/saasus/sdk/auth/models/UpdateSaasUserAttributesParam.java
index 57d5f155..b0965039 100644
--- a/src/main/java/saasus/sdk/auth/models/UpdateSaasUserAttributesParam.java
+++ b/src/main/java/saasus/sdk/auth/models/UpdateSaasUserAttributesParam.java
@@ -51,7 +51,7 @@
/**
* UpdateSaasUserAttributesParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class UpdateSaasUserAttributesParam {
public static final String SERIALIZED_NAME_ATTRIBUTES = "attributes";
@SerializedName(SERIALIZED_NAME_ATTRIBUTES)
diff --git a/src/main/java/saasus/sdk/auth/models/UpdateSaasUserEmailParam.java b/src/main/java/saasus/sdk/auth/models/UpdateSaasUserEmailParam.java
index c3bae2ad..d835519d 100644
--- a/src/main/java/saasus/sdk/auth/models/UpdateSaasUserEmailParam.java
+++ b/src/main/java/saasus/sdk/auth/models/UpdateSaasUserEmailParam.java
@@ -49,7 +49,7 @@
/**
* UpdateSaasUserEmailParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class UpdateSaasUserEmailParam {
public static final String SERIALIZED_NAME_EMAIL = "email";
@SerializedName(SERIALIZED_NAME_EMAIL)
diff --git a/src/main/java/saasus/sdk/auth/models/UpdateSaasUserPasswordParam.java b/src/main/java/saasus/sdk/auth/models/UpdateSaasUserPasswordParam.java
index 28bc5255..31fca3b9 100644
--- a/src/main/java/saasus/sdk/auth/models/UpdateSaasUserPasswordParam.java
+++ b/src/main/java/saasus/sdk/auth/models/UpdateSaasUserPasswordParam.java
@@ -49,7 +49,7 @@
/**
* UpdateSaasUserPasswordParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class UpdateSaasUserPasswordParam {
public static final String SERIALIZED_NAME_PASSWORD = "password";
@SerializedName(SERIALIZED_NAME_PASSWORD)
diff --git a/src/main/java/saasus/sdk/auth/models/UpdateSaasUserSignInIdParam.java b/src/main/java/saasus/sdk/auth/models/UpdateSaasUserSignInIdParam.java
index 2e6f4d85..7accb79a 100644
--- a/src/main/java/saasus/sdk/auth/models/UpdateSaasUserSignInIdParam.java
+++ b/src/main/java/saasus/sdk/auth/models/UpdateSaasUserSignInIdParam.java
@@ -49,7 +49,7 @@
/**
* UpdateSaasUserSignInIdParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class UpdateSaasUserSignInIdParam {
public static final String SERIALIZED_NAME_SIGN_IN_ID = "sign_in_id";
@SerializedName(SERIALIZED_NAME_SIGN_IN_ID)
diff --git a/src/main/java/saasus/sdk/auth/models/UpdateSignInSettingsParam.java b/src/main/java/saasus/sdk/auth/models/UpdateSignInSettingsParam.java
index 08808608..a05d95b5 100644
--- a/src/main/java/saasus/sdk/auth/models/UpdateSignInSettingsParam.java
+++ b/src/main/java/saasus/sdk/auth/models/UpdateSignInSettingsParam.java
@@ -55,7 +55,7 @@
/**
* UpdateSignInSettingsParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class UpdateSignInSettingsParam {
public static final String SERIALIZED_NAME_PASSWORD_POLICY = "password_policy";
@SerializedName(SERIALIZED_NAME_PASSWORD_POLICY)
diff --git a/src/main/java/saasus/sdk/auth/models/UpdateSingleTenantSettingsParam.java b/src/main/java/saasus/sdk/auth/models/UpdateSingleTenantSettingsParam.java
index b45a4b21..0c6510ab 100644
--- a/src/main/java/saasus/sdk/auth/models/UpdateSingleTenantSettingsParam.java
+++ b/src/main/java/saasus/sdk/auth/models/UpdateSingleTenantSettingsParam.java
@@ -49,7 +49,7 @@
/**
* UpdateSingleTenantSettingsParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class UpdateSingleTenantSettingsParam {
public static final String SERIALIZED_NAME_ENABLED = "enabled";
@SerializedName(SERIALIZED_NAME_ENABLED)
diff --git a/src/main/java/saasus/sdk/auth/models/UpdateSoftwareTokenParam.java b/src/main/java/saasus/sdk/auth/models/UpdateSoftwareTokenParam.java
index 368f9e81..f39ffd36 100644
--- a/src/main/java/saasus/sdk/auth/models/UpdateSoftwareTokenParam.java
+++ b/src/main/java/saasus/sdk/auth/models/UpdateSoftwareTokenParam.java
@@ -49,7 +49,7 @@
/**
* UpdateSoftwareTokenParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class UpdateSoftwareTokenParam {
public static final String SERIALIZED_NAME_ACCESS_TOKEN = "access_token";
@SerializedName(SERIALIZED_NAME_ACCESS_TOKEN)
diff --git a/src/main/java/saasus/sdk/auth/models/UpdateTenantIdentityProviderParam.java b/src/main/java/saasus/sdk/auth/models/UpdateTenantIdentityProviderParam.java
index 006764a6..c7805a53 100644
--- a/src/main/java/saasus/sdk/auth/models/UpdateTenantIdentityProviderParam.java
+++ b/src/main/java/saasus/sdk/auth/models/UpdateTenantIdentityProviderParam.java
@@ -51,7 +51,7 @@
/**
* If identity_provider_props is null, the sign-in information for the external identity provider specified in provider_type is disabled.
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class UpdateTenantIdentityProviderParam {
public static final String SERIALIZED_NAME_PROVIDER_TYPE = "provider_type";
@SerializedName(SERIALIZED_NAME_PROVIDER_TYPE)
diff --git a/src/main/java/saasus/sdk/auth/models/UpdateTenantUserParam.java b/src/main/java/saasus/sdk/auth/models/UpdateTenantUserParam.java
index ddeac2a0..2072b851 100644
--- a/src/main/java/saasus/sdk/auth/models/UpdateTenantUserParam.java
+++ b/src/main/java/saasus/sdk/auth/models/UpdateTenantUserParam.java
@@ -51,7 +51,7 @@
/**
* UpdateTenantUserParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class UpdateTenantUserParam {
public static final String SERIALIZED_NAME_ATTRIBUTES = "attributes";
@SerializedName(SERIALIZED_NAME_ATTRIBUTES)
diff --git a/src/main/java/saasus/sdk/auth/models/User.java b/src/main/java/saasus/sdk/auth/models/User.java
index bc9d384d..e54271d4 100644
--- a/src/main/java/saasus/sdk/auth/models/User.java
+++ b/src/main/java/saasus/sdk/auth/models/User.java
@@ -54,7 +54,7 @@
/**
* User
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class User {
public static final String SERIALIZED_NAME_ID = "id";
@SerializedName(SERIALIZED_NAME_ID)
diff --git a/src/main/java/saasus/sdk/auth/models/UserAttributes.java b/src/main/java/saasus/sdk/auth/models/UserAttributes.java
index 0f9709d5..b129e6ef 100644
--- a/src/main/java/saasus/sdk/auth/models/UserAttributes.java
+++ b/src/main/java/saasus/sdk/auth/models/UserAttributes.java
@@ -52,7 +52,7 @@
/**
* UserAttributes
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class UserAttributes {
public static final String SERIALIZED_NAME_USER_ATTRIBUTES = "user_attributes";
@SerializedName(SERIALIZED_NAME_USER_ATTRIBUTES)
diff --git a/src/main/java/saasus/sdk/auth/models/UserAvailableEnv.java b/src/main/java/saasus/sdk/auth/models/UserAvailableEnv.java
index b0a91581..94b4b07f 100644
--- a/src/main/java/saasus/sdk/auth/models/UserAvailableEnv.java
+++ b/src/main/java/saasus/sdk/auth/models/UserAvailableEnv.java
@@ -52,7 +52,7 @@
/**
* UserAvailableEnv
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class UserAvailableEnv {
public static final String SERIALIZED_NAME_ID = "id";
@SerializedName(SERIALIZED_NAME_ID)
diff --git a/src/main/java/saasus/sdk/auth/models/UserAvailableTenant.java b/src/main/java/saasus/sdk/auth/models/UserAvailableTenant.java
index 08bfb8be..eba356e9 100644
--- a/src/main/java/saasus/sdk/auth/models/UserAvailableTenant.java
+++ b/src/main/java/saasus/sdk/auth/models/UserAvailableTenant.java
@@ -54,7 +54,7 @@
/**
* UserAvailableTenant
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class UserAvailableTenant {
public static final String SERIALIZED_NAME_ID = "id";
@SerializedName(SERIALIZED_NAME_ID)
diff --git a/src/main/java/saasus/sdk/auth/models/UserInfo.java b/src/main/java/saasus/sdk/auth/models/UserInfo.java
index ddad34e2..3fa14f3c 100644
--- a/src/main/java/saasus/sdk/auth/models/UserInfo.java
+++ b/src/main/java/saasus/sdk/auth/models/UserInfo.java
@@ -54,7 +54,7 @@
/**
* UserInfo
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class UserInfo {
public static final String SERIALIZED_NAME_ID = "id";
@SerializedName(SERIALIZED_NAME_ID)
diff --git a/src/main/java/saasus/sdk/auth/models/Users.java b/src/main/java/saasus/sdk/auth/models/Users.java
index 1ec12754..04906eb6 100644
--- a/src/main/java/saasus/sdk/auth/models/Users.java
+++ b/src/main/java/saasus/sdk/auth/models/Users.java
@@ -52,7 +52,7 @@
/**
* Users
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class Users {
public static final String SERIALIZED_NAME_USERS = "users";
@SerializedName(SERIALIZED_NAME_USERS)
diff --git a/src/main/java/saasus/sdk/auth/models/ValidateInvitationParam.java b/src/main/java/saasus/sdk/auth/models/ValidateInvitationParam.java
index 377abb1a..9185ecd4 100644
--- a/src/main/java/saasus/sdk/auth/models/ValidateInvitationParam.java
+++ b/src/main/java/saasus/sdk/auth/models/ValidateInvitationParam.java
@@ -49,7 +49,7 @@
/**
* Access token is required for existing users, and email and password is required for new users.
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:42.076013416Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:31.141622148Z[Etc/UTC]")
public class ValidateInvitationParam {
public static final String SERIALIZED_NAME_ACCESS_TOKEN = "access_token";
@SerializedName(SERIALIZED_NAME_ACCESS_TOKEN)
diff --git a/src/main/java/saasus/sdk/awsmarketplace/ApiException.java b/src/main/java/saasus/sdk/awsmarketplace/ApiException.java
index 836043f7..13aa654e 100644
--- a/src/main/java/saasus/sdk/awsmarketplace/ApiException.java
+++ b/src/main/java/saasus/sdk/awsmarketplace/ApiException.java
@@ -21,7 +21,7 @@
* ApiException class.
*/
@SuppressWarnings("serial")
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:52.397055709Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:40.737890243Z[Etc/UTC]")
public class ApiException extends Exception {
private int code = 0;
private Map> responseHeaders = null;
diff --git a/src/main/java/saasus/sdk/awsmarketplace/Configuration.java b/src/main/java/saasus/sdk/awsmarketplace/Configuration.java
index 1113bc02..539ebc3e 100644
--- a/src/main/java/saasus/sdk/awsmarketplace/Configuration.java
+++ b/src/main/java/saasus/sdk/awsmarketplace/Configuration.java
@@ -13,7 +13,7 @@
package saasus.sdk.awsmarketplace;
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:52.397055709Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:40.737890243Z[Etc/UTC]")
public class Configuration {
public static final String VERSION = "1.0.0";
diff --git a/src/main/java/saasus/sdk/awsmarketplace/Pair.java b/src/main/java/saasus/sdk/awsmarketplace/Pair.java
index 02b674bf..9c31c62c 100644
--- a/src/main/java/saasus/sdk/awsmarketplace/Pair.java
+++ b/src/main/java/saasus/sdk/awsmarketplace/Pair.java
@@ -13,7 +13,7 @@
package saasus.sdk.awsmarketplace;
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:52.397055709Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:40.737890243Z[Etc/UTC]")
public class Pair {
private String name = "";
private String value = "";
diff --git a/src/main/java/saasus/sdk/awsmarketplace/StringUtil.java b/src/main/java/saasus/sdk/awsmarketplace/StringUtil.java
index adfd6a3e..6cb370f4 100644
--- a/src/main/java/saasus/sdk/awsmarketplace/StringUtil.java
+++ b/src/main/java/saasus/sdk/awsmarketplace/StringUtil.java
@@ -16,7 +16,7 @@
import java.util.Collection;
import java.util.Iterator;
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:52.397055709Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:40.737890243Z[Etc/UTC]")
public class StringUtil {
/**
* Check if the given array contains the given value (with case-insensitive comparison).
diff --git a/src/main/java/saasus/sdk/awsmarketplace/auth/ApiKeyAuth.java b/src/main/java/saasus/sdk/awsmarketplace/auth/ApiKeyAuth.java
index 822ecc66..28f79f24 100644
--- a/src/main/java/saasus/sdk/awsmarketplace/auth/ApiKeyAuth.java
+++ b/src/main/java/saasus/sdk/awsmarketplace/auth/ApiKeyAuth.java
@@ -20,7 +20,7 @@
import java.util.Map;
import java.util.List;
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:52.397055709Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:40.737890243Z[Etc/UTC]")
public class ApiKeyAuth implements Authentication {
private final String location;
private final String paramName;
diff --git a/src/main/java/saasus/sdk/awsmarketplace/auth/HttpBearerAuth.java b/src/main/java/saasus/sdk/awsmarketplace/auth/HttpBearerAuth.java
index 881d3877..0882de2b 100644
--- a/src/main/java/saasus/sdk/awsmarketplace/auth/HttpBearerAuth.java
+++ b/src/main/java/saasus/sdk/awsmarketplace/auth/HttpBearerAuth.java
@@ -22,7 +22,7 @@
import java.util.Optional;
import java.util.function.Supplier;
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:52.397055709Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:40.737890243Z[Etc/UTC]")
public class HttpBearerAuth implements Authentication {
private final String scheme;
private Supplier tokenSupplier;
diff --git a/src/main/java/saasus/sdk/awsmarketplace/models/AbstractOpenApiSchema.java b/src/main/java/saasus/sdk/awsmarketplace/models/AbstractOpenApiSchema.java
index 84ab9a0f..92f8d879 100644
--- a/src/main/java/saasus/sdk/awsmarketplace/models/AbstractOpenApiSchema.java
+++ b/src/main/java/saasus/sdk/awsmarketplace/models/AbstractOpenApiSchema.java
@@ -21,7 +21,7 @@
/**
* Abstract class for oneOf,anyOf schemas defined in OpenAPI spec
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:52.397055709Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:40.737890243Z[Etc/UTC]")
public abstract class AbstractOpenApiSchema {
// store the actual instance of the schema/object
diff --git a/src/main/java/saasus/sdk/awsmarketplace/models/CatalogEntityVisibility.java b/src/main/java/saasus/sdk/awsmarketplace/models/CatalogEntityVisibility.java
index 1a97369b..2a20d522 100644
--- a/src/main/java/saasus/sdk/awsmarketplace/models/CatalogEntityVisibility.java
+++ b/src/main/java/saasus/sdk/awsmarketplace/models/CatalogEntityVisibility.java
@@ -50,7 +50,7 @@
/**
* CatalogEntityVisibility
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:52.397055709Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:40.737890243Z[Etc/UTC]")
public class CatalogEntityVisibility {
public static final String SERIALIZED_NAME_VISIBILITY = "visibility";
@SerializedName(SERIALIZED_NAME_VISIBILITY)
diff --git a/src/main/java/saasus/sdk/awsmarketplace/models/CloudFormationLaunchStackLink.java b/src/main/java/saasus/sdk/awsmarketplace/models/CloudFormationLaunchStackLink.java
index c65b34ea..81932603 100644
--- a/src/main/java/saasus/sdk/awsmarketplace/models/CloudFormationLaunchStackLink.java
+++ b/src/main/java/saasus/sdk/awsmarketplace/models/CloudFormationLaunchStackLink.java
@@ -49,7 +49,7 @@
/**
* CloudFormationLaunchStackLink
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:52.397055709Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:40.737890243Z[Etc/UTC]")
public class CloudFormationLaunchStackLink {
public static final String SERIALIZED_NAME_LINK = "link";
@SerializedName(SERIALIZED_NAME_LINK)
diff --git a/src/main/java/saasus/sdk/awsmarketplace/models/CreateCustomerParam.java b/src/main/java/saasus/sdk/awsmarketplace/models/CreateCustomerParam.java
index 8707a984..6b6f0ee5 100644
--- a/src/main/java/saasus/sdk/awsmarketplace/models/CreateCustomerParam.java
+++ b/src/main/java/saasus/sdk/awsmarketplace/models/CreateCustomerParam.java
@@ -49,7 +49,7 @@
/**
* CreateCustomerParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:52.397055709Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:40.737890243Z[Etc/UTC]")
public class CreateCustomerParam {
public static final String SERIALIZED_NAME_TENANT_ID = "tenant_id";
@SerializedName(SERIALIZED_NAME_TENANT_ID)
diff --git a/src/main/java/saasus/sdk/awsmarketplace/models/Customer.java b/src/main/java/saasus/sdk/awsmarketplace/models/Customer.java
index 395e1a36..64904e6e 100644
--- a/src/main/java/saasus/sdk/awsmarketplace/models/Customer.java
+++ b/src/main/java/saasus/sdk/awsmarketplace/models/Customer.java
@@ -49,7 +49,7 @@
/**
* Customer
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:52.397055709Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:40.737890243Z[Etc/UTC]")
public class Customer {
public static final String SERIALIZED_NAME_CUSTOMER_IDENTIFIER = "customer_identifier";
@SerializedName(SERIALIZED_NAME_CUSTOMER_IDENTIFIER)
diff --git a/src/main/java/saasus/sdk/awsmarketplace/models/Customers.java b/src/main/java/saasus/sdk/awsmarketplace/models/Customers.java
index bbf43b03..f8e9db94 100644
--- a/src/main/java/saasus/sdk/awsmarketplace/models/Customers.java
+++ b/src/main/java/saasus/sdk/awsmarketplace/models/Customers.java
@@ -52,7 +52,7 @@
/**
* Customers
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:52.397055709Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:40.737890243Z[Etc/UTC]")
public class Customers {
public static final String SERIALIZED_NAME_CUSTOMERS = "customers";
@SerializedName(SERIALIZED_NAME_CUSTOMERS)
diff --git a/src/main/java/saasus/sdk/awsmarketplace/models/Error.java b/src/main/java/saasus/sdk/awsmarketplace/models/Error.java
index 458cad56..5da31eeb 100644
--- a/src/main/java/saasus/sdk/awsmarketplace/models/Error.java
+++ b/src/main/java/saasus/sdk/awsmarketplace/models/Error.java
@@ -49,7 +49,7 @@
/**
* Error
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:52.397055709Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:40.737890243Z[Etc/UTC]")
public class Error {
public static final String SERIALIZED_NAME_TYPE = "type";
@SerializedName(SERIALIZED_NAME_TYPE)
diff --git a/src/main/java/saasus/sdk/awsmarketplace/models/GetListingStatusResult.java b/src/main/java/saasus/sdk/awsmarketplace/models/GetListingStatusResult.java
index 4ad93adf..df2822b1 100644
--- a/src/main/java/saasus/sdk/awsmarketplace/models/GetListingStatusResult.java
+++ b/src/main/java/saasus/sdk/awsmarketplace/models/GetListingStatusResult.java
@@ -50,7 +50,7 @@
/**
* GetListingStatusResult
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:52.397055709Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:40.737890243Z[Etc/UTC]")
public class GetListingStatusResult {
public static final String SERIALIZED_NAME_LISTING_STATUS = "listing_status";
@SerializedName(SERIALIZED_NAME_LISTING_STATUS)
diff --git a/src/main/java/saasus/sdk/awsmarketplace/models/Plan.java b/src/main/java/saasus/sdk/awsmarketplace/models/Plan.java
index 32ea17da..6011b115 100644
--- a/src/main/java/saasus/sdk/awsmarketplace/models/Plan.java
+++ b/src/main/java/saasus/sdk/awsmarketplace/models/Plan.java
@@ -49,7 +49,7 @@
/**
* Plan
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:52.397055709Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:40.737890243Z[Etc/UTC]")
public class Plan {
public static final String SERIALIZED_NAME_PLAN_ID = "plan_id";
@SerializedName(SERIALIZED_NAME_PLAN_ID)
diff --git a/src/main/java/saasus/sdk/awsmarketplace/models/Plans.java b/src/main/java/saasus/sdk/awsmarketplace/models/Plans.java
index 768a5867..ed4ebc53 100644
--- a/src/main/java/saasus/sdk/awsmarketplace/models/Plans.java
+++ b/src/main/java/saasus/sdk/awsmarketplace/models/Plans.java
@@ -52,7 +52,7 @@
/**
* Plans
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:52.397055709Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:40.737890243Z[Etc/UTC]")
public class Plans {
public static final String SERIALIZED_NAME_PLANS = "plans";
@SerializedName(SERIALIZED_NAME_PLANS)
diff --git a/src/main/java/saasus/sdk/awsmarketplace/models/SavePlanParam.java b/src/main/java/saasus/sdk/awsmarketplace/models/SavePlanParam.java
index 3666be3e..5139136e 100644
--- a/src/main/java/saasus/sdk/awsmarketplace/models/SavePlanParam.java
+++ b/src/main/java/saasus/sdk/awsmarketplace/models/SavePlanParam.java
@@ -49,7 +49,7 @@
/**
* SavePlanParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:52.397055709Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:40.737890243Z[Etc/UTC]")
public class SavePlanParam {
public static final String SERIALIZED_NAME_PLAN_ID = "plan_id";
@SerializedName(SERIALIZED_NAME_PLAN_ID)
diff --git a/src/main/java/saasus/sdk/awsmarketplace/models/Settings.java b/src/main/java/saasus/sdk/awsmarketplace/models/Settings.java
index b3e63f7e..158e30ae 100644
--- a/src/main/java/saasus/sdk/awsmarketplace/models/Settings.java
+++ b/src/main/java/saasus/sdk/awsmarketplace/models/Settings.java
@@ -49,7 +49,7 @@
/**
* Settings
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:52.397055709Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:40.737890243Z[Etc/UTC]")
public class Settings {
public static final String SERIALIZED_NAME_PRODUCT_CODE = "product_code";
@SerializedName(SERIALIZED_NAME_PRODUCT_CODE)
diff --git a/src/main/java/saasus/sdk/awsmarketplace/models/UpdateListingStatusParam.java b/src/main/java/saasus/sdk/awsmarketplace/models/UpdateListingStatusParam.java
index 168c0411..dc6e8cae 100644
--- a/src/main/java/saasus/sdk/awsmarketplace/models/UpdateListingStatusParam.java
+++ b/src/main/java/saasus/sdk/awsmarketplace/models/UpdateListingStatusParam.java
@@ -50,7 +50,7 @@
/**
* UpdateListingStatusParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:52.397055709Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:40.737890243Z[Etc/UTC]")
public class UpdateListingStatusParam {
public static final String SERIALIZED_NAME_LISTING_STATUS = "listing_status";
@SerializedName(SERIALIZED_NAME_LISTING_STATUS)
diff --git a/src/main/java/saasus/sdk/awsmarketplace/models/UpdateSettingsParam.java b/src/main/java/saasus/sdk/awsmarketplace/models/UpdateSettingsParam.java
index 90f650dd..6a31e3e6 100644
--- a/src/main/java/saasus/sdk/awsmarketplace/models/UpdateSettingsParam.java
+++ b/src/main/java/saasus/sdk/awsmarketplace/models/UpdateSettingsParam.java
@@ -49,7 +49,7 @@
/**
* UpdateSettingsParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:52.397055709Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:40.737890243Z[Etc/UTC]")
public class UpdateSettingsParam {
public static final String SERIALIZED_NAME_PRODUCT_CODE = "product_code";
@SerializedName(SERIALIZED_NAME_PRODUCT_CODE)
diff --git a/src/main/java/saasus/sdk/awsmarketplace/models/VerifyRegistrationTokenParam.java b/src/main/java/saasus/sdk/awsmarketplace/models/VerifyRegistrationTokenParam.java
index e345ec41..0e353177 100644
--- a/src/main/java/saasus/sdk/awsmarketplace/models/VerifyRegistrationTokenParam.java
+++ b/src/main/java/saasus/sdk/awsmarketplace/models/VerifyRegistrationTokenParam.java
@@ -49,7 +49,7 @@
/**
* VerifyRegistrationTokenParam
*/
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:52.397055709Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:40.737890243Z[Etc/UTC]")
public class VerifyRegistrationTokenParam {
public static final String SERIALIZED_NAME_REGISTRATION_TOKEN = "registration_token";
@SerializedName(SERIALIZED_NAME_REGISTRATION_TOKEN)
diff --git a/src/main/java/saasus/sdk/billing/ApiException.java b/src/main/java/saasus/sdk/billing/ApiException.java
index 695d7e06..bb6e8a85 100644
--- a/src/main/java/saasus/sdk/billing/ApiException.java
+++ b/src/main/java/saasus/sdk/billing/ApiException.java
@@ -21,7 +21,7 @@
* ApiException class.
*/
@SuppressWarnings("serial")
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:49.925806961Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:38.540761335Z[Etc/UTC]")
public class ApiException extends Exception {
private int code = 0;
private Map> responseHeaders = null;
diff --git a/src/main/java/saasus/sdk/billing/Configuration.java b/src/main/java/saasus/sdk/billing/Configuration.java
index ec76251a..38e87c61 100644
--- a/src/main/java/saasus/sdk/billing/Configuration.java
+++ b/src/main/java/saasus/sdk/billing/Configuration.java
@@ -13,7 +13,7 @@
package saasus.sdk.billing;
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:49.925806961Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:38.540761335Z[Etc/UTC]")
public class Configuration {
public static final String VERSION = "1.0.0";
diff --git a/src/main/java/saasus/sdk/billing/Pair.java b/src/main/java/saasus/sdk/billing/Pair.java
index 94f724d5..83bfeba6 100644
--- a/src/main/java/saasus/sdk/billing/Pair.java
+++ b/src/main/java/saasus/sdk/billing/Pair.java
@@ -13,7 +13,7 @@
package saasus.sdk.billing;
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:49.925806961Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:38.540761335Z[Etc/UTC]")
public class Pair {
private String name = "";
private String value = "";
diff --git a/src/main/java/saasus/sdk/billing/StringUtil.java b/src/main/java/saasus/sdk/billing/StringUtil.java
index 01416cc2..4f57765a 100644
--- a/src/main/java/saasus/sdk/billing/StringUtil.java
+++ b/src/main/java/saasus/sdk/billing/StringUtil.java
@@ -16,7 +16,7 @@
import java.util.Collection;
import java.util.Iterator;
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:49.925806961Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:38.540761335Z[Etc/UTC]")
public class StringUtil {
/**
* Check if the given array contains the given value (with case-insensitive comparison).
diff --git a/src/main/java/saasus/sdk/billing/auth/ApiKeyAuth.java b/src/main/java/saasus/sdk/billing/auth/ApiKeyAuth.java
index 350f2ec1..ee722418 100644
--- a/src/main/java/saasus/sdk/billing/auth/ApiKeyAuth.java
+++ b/src/main/java/saasus/sdk/billing/auth/ApiKeyAuth.java
@@ -20,7 +20,7 @@
import java.util.Map;
import java.util.List;
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:49.925806961Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:38.540761335Z[Etc/UTC]")
public class ApiKeyAuth implements Authentication {
private final String location;
private final String paramName;
diff --git a/src/main/java/saasus/sdk/billing/auth/HttpBearerAuth.java b/src/main/java/saasus/sdk/billing/auth/HttpBearerAuth.java
index fad245d1..846f2020 100644
--- a/src/main/java/saasus/sdk/billing/auth/HttpBearerAuth.java
+++ b/src/main/java/saasus/sdk/billing/auth/HttpBearerAuth.java
@@ -22,7 +22,7 @@
import java.util.Optional;
import java.util.function.Supplier;
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-04-03T08:53:49.925806961Z[Etc/UTC]")
+@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2026-05-30T13:08:38.540761335Z[Etc/UTC]")
public class HttpBearerAuth implements Authentication {
private final String scheme;
private Supplier