From ec39d5571ec6f4eb79d421394d14cb5b6b02cd58 Mon Sep 17 00:00:00 2001 From: "fern-api[bot]" <115122769+fern-api[bot]@users.noreply.github.com> Date: Tue, 13 Jan 2026 07:25:09 +0000 Subject: [PATCH] SDK regeneration --- LICENSE | 2 +- package.json | 2 +- reference.md | 367 +++- src/management/Client.ts | 6 + src/management/api/requests/requests.ts | 75 + .../resources/eventStreams/client/Client.ts | 147 +- .../api/resources/groups/client/Client.ts | 238 +++ .../api/resources/groups/client/index.ts | 1 + src/management/api/resources/groups/index.ts | 2 + .../api/resources/groups/resources/index.ts | 1 + .../groups/resources/members/client/Client.ts | 138 ++ .../groups/resources/members/client/index.ts | 1 + .../groups/resources/members/index.ts | 1 + src/management/api/resources/index.ts | 1 + .../resources/rendering/client/Client.ts | 7 +- .../api/resources/users/client/Client.ts | 6 + .../users/resources/groups/client/Client.ts | 138 ++ .../users/resources/groups/client/index.ts | 1 + .../resources/users/resources/groups/index.ts | 1 + .../api/resources/users/resources/index.ts | 1 + src/management/api/types/types.ts | 1530 +++++++++++++++-- src/management/tests/wire/actions.test.ts | 72 + .../tests/wire/actions/versions.test.ts | 34 + .../tests/wire/customDomains.test.ts | 6 + .../tests/wire/eventStreams.test.ts | 123 +- src/management/tests/wire/groups.test.ts | 236 +++ .../tests/wire/groups/members.test.ts | 128 ++ .../tests/wire/prompts/rendering.test.ts | 18 +- .../tests/wire/tenants/settings.test.ts | 4 + .../tests/wire/users/groups.test.ts | 144 ++ src/management/version.ts | 2 +- yarn.lock | 296 ++-- 32 files changed, 3349 insertions(+), 380 deletions(-) create mode 100644 src/management/api/resources/groups/client/Client.ts create mode 100644 src/management/api/resources/groups/client/index.ts create mode 100644 src/management/api/resources/groups/index.ts create mode 100644 src/management/api/resources/groups/resources/index.ts create mode 100644 src/management/api/resources/groups/resources/members/client/Client.ts create mode 100644 src/management/api/resources/groups/resources/members/client/index.ts create mode 100644 src/management/api/resources/groups/resources/members/index.ts create mode 100644 src/management/api/resources/users/resources/groups/client/Client.ts create mode 100644 src/management/api/resources/users/resources/groups/client/index.ts create mode 100644 src/management/api/resources/users/resources/groups/index.ts create mode 100644 src/management/tests/wire/groups.test.ts create mode 100644 src/management/tests/wire/groups/members.test.ts create mode 100644 src/management/tests/wire/users/groups.test.ts diff --git a/LICENSE b/LICENSE index e836aa4a78..143ed57b53 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2025 Auth0. +Copyright (c) 2026 Auth0. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/package.json b/package.json index d1477575d3..e909a17c73 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "auth0", - "version": "5.3.0", + "version": "5.2.0", "private": false, "repository": { "type": "git", diff --git a/reference.md b/reference.md index 02103aebad..0b72536e9e 100644 --- a/reference.md +++ b/reference.md @@ -3347,7 +3347,7 @@ await client.emailTemplates.update("verify_email"); ## EventStreams -
client.eventStreams.list({ ...params }) -> Management.EventStreamResponseContent[] +
client.eventStreams.list({ ...params }) -> core.Page
@@ -3360,10 +3360,25 @@ await client.emailTemplates.update("verify_email");
```typescript -await client.eventStreams.list({ +const pageableResponse = await client.eventStreams.list({ from: "from", take: 1, }); +for await (const item of pageableResponse) { + console.log(item); +} + +// Or you can manually iterate page-by-page +let page = await client.eventStreams.list({ + from: "from", + take: 1, +}); +while (page.hasNextPage()) { + page = page.getNextPage(); +} + +// You can also access the underlying response +const response = page.response; ```
@@ -4448,6 +4463,162 @@ await client.userGrants.delete("id");
+## Groups + +
client.groups.list({ ...params }) -> core.Page +
+
+ +#### 📝 Description + +
+
+ +
+
+ +List all groups in your tenant. + +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```typescript +const pageableResponse = await client.groups.list({ + connection_id: "connection_id", + name: "name", + external_id: "external_id", + fields: "fields", + include_fields: true, + from: "from", + take: 1, +}); +for await (const item of pageableResponse) { + console.log(item); +} + +// Or you can manually iterate page-by-page +let page = await client.groups.list({ + connection_id: "connection_id", + name: "name", + external_id: "external_id", + fields: "fields", + include_fields: true, + from: "from", + take: 1, +}); +while (page.hasNextPage()) { + page = page.getNextPage(); +} + +// You can also access the underlying response +const response = page.response; +``` + +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**request:** `Management.ListGroupsRequestParameters` + +
+
+ +
+
+ +**requestOptions:** `GroupsClient.RequestOptions` + +
+
+
+
+ +
+
+
+ +
client.groups.get(id) -> Management.GetGroupResponseContent +
+
+ +#### 📝 Description + +
+
+ +
+
+ +Retrieve a group by its ID. + +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```typescript +await client.groups.get("id"); +``` + +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**id:** `string` — Unique identifier for the group (service-generated). + +
+
+ +
+
+ +**requestOptions:** `GroupsClient.RequestOptions` + +
+
+
+
+ +
+
+
+ ## Hooks
client.hooks.list({ ...params }) -> core.Page @@ -16485,6 +16656,101 @@ await client.flows.vault.connections.update("id");
+## Groups Members + +
client.groups.members.get(id, { ...params }) -> core.Page +
+
+ +#### 📝 Description + +
+
+ +
+
+ +List all users that are a member of this group. + +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```typescript +const pageableResponse = await client.groups.members.get("id", { + fields: "fields", + include_fields: true, + from: "from", + take: 1, +}); +for await (const item of pageableResponse) { + console.log(item); +} + +// Or you can manually iterate page-by-page +let page = await client.groups.members.get("id", { + fields: "fields", + include_fields: true, + from: "from", + take: 1, +}); +while (page.hasNextPage()) { + page = page.getNextPage(); +} + +// You can also access the underlying response +const response = page.response; +``` + +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**id:** `string` — Unique identifier for the group (service-generated). + +
+
+ +
+
+ +**request:** `Management.GetGroupMembersRequestParameters` + +
+
+ +
+
+ +**requestOptions:** `MembersClient.RequestOptions` + +
+
+
+
+ +
+
+
+ ## Guardian Enrollments
client.guardian.enrollments.createTicket({ ...params }) -> Management.CreateGuardianEnrollmentTicketResponseContent @@ -21991,7 +22257,7 @@ await client.organizations.members.roles.delete("id", "user_id", { ## Prompts Rendering -
client.prompts.rendering.list({ ...params }) -> core.Page +
client.prompts.rendering.list({ ...params }) -> core.Page
@@ -24575,6 +24841,101 @@ await client.users.federatedConnectionsTokensets.delete("id", "tokenset_id");
+## Users Groups + +
client.users.groups.get(id, { ...params }) -> core.Page +
+
+ +#### 📝 Description + +
+
+ +
+
+ +List all groups to which this user belongs. + +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```typescript +const pageableResponse = await client.users.groups.get("id", { + fields: "fields", + include_fields: true, + from: "from", + take: 1, +}); +for await (const item of pageableResponse) { + console.log(item); +} + +// Or you can manually iterate page-by-page +let page = await client.users.groups.get("id", { + fields: "fields", + include_fields: true, + from: "from", + take: 1, +}); +while (page.hasNextPage()) { + page = page.getNextPage(); +} + +// You can also access the underlying response +const response = page.response; +``` + +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**id:** `string` — ID of the user to list groups for. + +
+
+ +
+
+ +**request:** `Management.GetUserGroupsRequestParameters` + +
+
+ +
+
+ +**requestOptions:** `GroupsClient.RequestOptions` + +
+
+
+
+ +
+
+
+ ## Users Identities
client.users.identities.link(id, { ...params }) -> Management.UserIdentity[] diff --git a/src/management/Client.ts b/src/management/Client.ts index 70f69c1a58..4f58da9ea3 100644 --- a/src/management/Client.ts +++ b/src/management/Client.ts @@ -15,6 +15,7 @@ import { EmailTemplatesClient } from "./api/resources/emailTemplates/client/Clie import { EventStreamsClient } from "./api/resources/eventStreams/client/Client.js"; import { FlowsClient } from "./api/resources/flows/client/Client.js"; import { FormsClient } from "./api/resources/forms/client/Client.js"; +import { GroupsClient } from "./api/resources/groups/client/Client.js"; import { GuardianClient } from "./api/resources/guardian/client/Client.js"; import { HooksClient } from "./api/resources/hooks/client/Client.js"; import { JobsClient } from "./api/resources/jobs/client/Client.js"; @@ -68,6 +69,7 @@ export class ManagementClient { protected _flows: FlowsClient | undefined; protected _forms: FormsClient | undefined; protected _userGrants: UserGrantsClient | undefined; + protected _groups: GroupsClient | undefined; protected _hooks: HooksClient | undefined; protected _jobs: JobsClient | undefined; protected _logStreams: LogStreamsClient | undefined; @@ -154,6 +156,10 @@ export class ManagementClient { return (this._userGrants ??= new UserGrantsClient(this._options)); } + public get groups(): GroupsClient { + return (this._groups ??= new GroupsClient(this._options)); + } + public get hooks(): HooksClient { return (this._hooks ??= new HooksClient(this._options)); } diff --git a/src/management/api/requests/requests.ts b/src/management/api/requests/requests.ts index 01d0042354..7d269b1bbc 100644 --- a/src/management/api/requests/requests.ts +++ b/src/management/api/requests/requests.ts @@ -52,6 +52,8 @@ export interface CreateActionRequestContent { runtime?: string; /** The list of secrets that are included in an action or a version of an action. */ secrets?: Management.ActionSecretRequest[]; + /** The list of action modules and their versions used by this action. */ + modules?: Management.ActionModuleReference[]; /** True if the action should be deployed after creation. */ deploy?: boolean; } @@ -84,6 +86,8 @@ export interface UpdateActionRequestContent { runtime?: string; /** The list of secrets that are included in an action or a version of an action. */ secrets?: Management.ActionSecretRequest[]; + /** The list of action modules and their versions used by this action. */ + modules?: Management.ActionModuleReference[]; } /** @@ -896,6 +900,35 @@ export interface DeleteUserGrantByUserIdRequestParameters { user_id: string; } +/** + * @example + * { + * connection_id: "connection_id", + * name: "name", + * external_id: "external_id", + * fields: "fields", + * include_fields: true, + * from: "from", + * take: 1 + * } + */ +export interface ListGroupsRequestParameters { + /** Filter groups by connection ID. */ + connection_id?: string | null; + /** Filter groups by name. */ + name?: string | null; + /** Filter groups by external ID. */ + external_id?: string | null; + /** A comma separated list of fields to include or exclude (depending on include_fields) from the result, empty to retrieve all fields */ + fields?: string | null; + /** Whether specified fields are to be included (true) or excluded (false). */ + include_fields?: boolean | null; + /** Optional Id from which to start selection. */ + from?: string | null; + /** Number of results per page. Defaults to 50. */ + take?: number | null; +} + /** * @example * { @@ -2470,6 +2503,26 @@ export interface UpdateFlowsVaultConnectionRequestContent { setup?: Management.UpdateFlowsVaultConnectionSetup; } +/** + * @example + * { + * fields: "fields", + * include_fields: true, + * from: "from", + * take: 1 + * } + */ +export interface GetGroupMembersRequestParameters { + /** A comma separated list of fields to include or exclude (depending on include_fields) from the result, empty to retrieve all fields */ + fields?: string | null; + /** Whether specified fields are to be included (true) or excluded (false). */ + include_fields?: boolean | null; + /** Optional Id from which to start selection. */ + from?: string | null; + /** Number of results per page. Defaults to 50. */ + take?: number | null; +} + /** * @example * { @@ -3316,6 +3369,8 @@ export interface UpdateTenantSettingsRequestContent { */ skip_non_verifiable_callback_uri_confirmation_prompt?: boolean | null; resource_parameter_profile?: Management.TenantSettingsResourceParameterProfile; + /** Whether Auth0 Guide (AI-powered assistance) is enabled for this tenant. */ + enable_ai_guide?: boolean; } export namespace UpdateTenantSettingsRequestContent { @@ -3475,6 +3530,26 @@ export interface GetUserConnectedAccountsRequestParameters { take?: number | null; } +/** + * @example + * { + * fields: "fields", + * include_fields: true, + * from: "from", + * take: 1 + * } + */ +export interface GetUserGroupsRequestParameters { + /** A comma separated list of fields to include or exclude (depending on include_fields) from the result, empty to retrieve all fields */ + fields?: string | null; + /** Whether specified fields are to be included (true) or excluded (false). */ + include_fields?: boolean | null; + /** Optional Id from which to start selection. */ + from?: string | null; + /** Number of results per page. Defaults to 50. */ + take?: number | null; +} + /** * @example * {} diff --git a/src/management/api/resources/eventStreams/client/Client.ts b/src/management/api/resources/eventStreams/client/Client.ts index 68e731f7a8..3b7f06bd2f 100644 --- a/src/management/api/resources/eventStreams/client/Client.ts +++ b/src/management/api/resources/eventStreams/client/Client.ts @@ -49,76 +49,91 @@ export class EventStreamsClient { * take: 1 * }) */ - public list( + public async list( request: Management.ListEventStreamsRequestParameters = {}, requestOptions?: EventStreamsClient.RequestOptions, - ): core.HttpResponsePromise { - return core.HttpResponsePromise.fromPromise(this.__list(request, requestOptions)); - } - - private async __list( - request: Management.ListEventStreamsRequestParameters = {}, - requestOptions?: EventStreamsClient.RequestOptions, - ): Promise> { - const { from: from_, take = 50 } = request; - const _queryParams: Record = {}; - if (from_ !== undefined) { - _queryParams["from"] = from_; - } - - if (take !== undefined) { - _queryParams["take"] = take?.toString() ?? null; - } - - const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); - let _headers: core.Fetcher.Args["headers"] = mergeHeaders( - _authRequest.headers, - this._options?.headers, - requestOptions?.headers, + ): Promise> { + const list = core.HttpResponsePromise.interceptFunction( + async ( + request: Management.ListEventStreamsRequestParameters, + ): Promise> => { + const { from: from_, take = 50 } = request; + const _queryParams: Record = {}; + if (from_ !== undefined) { + _queryParams["from"] = from_; + } + if (take !== undefined) { + _queryParams["take"] = take?.toString() ?? null; + } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); + let _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, + this._options?.headers, + requestOptions?.headers, + ); + const _response = await (this._options.fetcher ?? core.fetcher)({ + url: core.url.join( + (await core.Supplier.get(this._options.baseUrl)) ?? + (await core.Supplier.get(this._options.environment)) ?? + environments.ManagementEnvironment.Default, + "event-streams", + ), + method: "GET", + headers: _headers, + queryParameters: { ..._queryParams, ...requestOptions?.queryParams }, + timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000, + maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries, + abortSignal: requestOptions?.abortSignal, + fetchFn: this._options?.fetch, + logging: this._options.logging, + }); + if (_response.ok) { + return { + data: _response.body as Management.ListEventStreamsResponseContent, + rawResponse: _response.rawResponse, + }; + } + if (_response.error.reason === "status-code") { + switch (_response.error.statusCode) { + case 400: + throw new Management.BadRequestError( + _response.error.body as unknown, + _response.rawResponse, + ); + case 401: + throw new Management.UnauthorizedError( + _response.error.body as unknown, + _response.rawResponse, + ); + case 403: + throw new Management.ForbiddenError(_response.error.body as unknown, _response.rawResponse); + case 429: + throw new Management.TooManyRequestsError( + _response.error.body as unknown, + _response.rawResponse, + ); + default: + throw new errors.ManagementError({ + statusCode: _response.error.statusCode, + body: _response.error.body, + rawResponse: _response.rawResponse, + }); + } + } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/event-streams"); + }, ); - const _response = await (this._options.fetcher ?? core.fetcher)({ - url: core.url.join( - (await core.Supplier.get(this._options.baseUrl)) ?? - (await core.Supplier.get(this._options.environment)) ?? - environments.ManagementEnvironment.Default, - "event-streams", - ), - method: "GET", - headers: _headers, - queryParameters: { ..._queryParams, ...requestOptions?.queryParams }, - timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000, - maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries, - abortSignal: requestOptions?.abortSignal, - fetchFn: this._options?.fetch, - logging: this._options.logging, + const dataWithRawResponse = await list(request).withRawResponse(); + return new core.Page({ + response: dataWithRawResponse.data, + rawResponse: dataWithRawResponse.rawResponse, + hasNextPage: (response) => + response?.next != null && !(typeof response?.next === "string" && response?.next === ""), + getItems: (response) => response?.eventStreams ?? [], + loadPage: (response) => { + return list(core.setObjectProperty(request, "from", response?.next)); + }, }); - if (_response.ok) { - return { - data: _response.body as Management.EventStreamResponseContent[], - rawResponse: _response.rawResponse, - }; - } - - if (_response.error.reason === "status-code") { - switch (_response.error.statusCode) { - case 400: - throw new Management.BadRequestError(_response.error.body as unknown, _response.rawResponse); - case 401: - throw new Management.UnauthorizedError(_response.error.body as unknown, _response.rawResponse); - case 403: - throw new Management.ForbiddenError(_response.error.body as unknown, _response.rawResponse); - case 429: - throw new Management.TooManyRequestsError(_response.error.body as unknown, _response.rawResponse); - default: - throw new errors.ManagementError({ - statusCode: _response.error.statusCode, - body: _response.error.body, - rawResponse: _response.rawResponse, - }); - } - } - - return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/event-streams"); } /** diff --git a/src/management/api/resources/groups/client/Client.ts b/src/management/api/resources/groups/client/Client.ts new file mode 100644 index 0000000000..0dbc18c892 --- /dev/null +++ b/src/management/api/resources/groups/client/Client.ts @@ -0,0 +1,238 @@ +// This file was auto-generated by Fern from our API Definition. + +import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient.js"; +import { normalizeClientOptionsWithAuth, type NormalizedClientOptionsWithAuth } from "../../../../BaseClient.js"; +import * as core from "../../../../core/index.js"; +import { mergeHeaders } from "../../../../core/headers.js"; +import * as environments from "../../../../environments.js"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError.js"; +import * as errors from "../../../../errors/index.js"; +import * as Management from "../../../index.js"; +import { MembersClient } from "../resources/members/client/Client.js"; + +export declare namespace GroupsClient { + export type Options = BaseClientOptions; + + export interface RequestOptions extends BaseRequestOptions {} +} + +export class GroupsClient { + protected readonly _options: NormalizedClientOptionsWithAuth; + protected _members: MembersClient | undefined; + + constructor(options: GroupsClient.Options) { + this._options = normalizeClientOptionsWithAuth(options); + } + + public get members(): MembersClient { + return (this._members ??= new MembersClient(this._options)); + } + + /** + * List all groups in your tenant. + * + * @param {Management.ListGroupsRequestParameters} request + * @param {GroupsClient.RequestOptions} requestOptions - Request-specific configuration. + * + * @throws {@link Management.BadRequestError} + * @throws {@link Management.UnauthorizedError} + * @throws {@link Management.ForbiddenError} + * @throws {@link Management.TooManyRequestsError} + * + * @example + * await client.groups.list({ + * connection_id: "connection_id", + * name: "name", + * external_id: "external_id", + * fields: "fields", + * include_fields: true, + * from: "from", + * take: 1 + * }) + */ + public async list( + request: Management.ListGroupsRequestParameters = {}, + requestOptions?: GroupsClient.RequestOptions, + ): Promise> { + const list = core.HttpResponsePromise.interceptFunction( + async ( + request: Management.ListGroupsRequestParameters, + ): Promise> => { + const { + connection_id: connectionId, + name, + external_id: externalId, + fields, + include_fields: includeFields, + from: from_, + take = 50, + } = request; + const _queryParams: Record = {}; + if (connectionId !== undefined) { + _queryParams["connection_id"] = connectionId; + } + if (name !== undefined) { + _queryParams["name"] = name; + } + if (externalId !== undefined) { + _queryParams["external_id"] = externalId; + } + if (fields !== undefined) { + _queryParams["fields"] = fields; + } + if (includeFields !== undefined) { + _queryParams["include_fields"] = includeFields?.toString() ?? null; + } + if (from_ !== undefined) { + _queryParams["from"] = from_; + } + if (take !== undefined) { + _queryParams["take"] = take?.toString() ?? null; + } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); + let _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, + this._options?.headers, + requestOptions?.headers, + ); + const _response = await (this._options.fetcher ?? core.fetcher)({ + url: core.url.join( + (await core.Supplier.get(this._options.baseUrl)) ?? + (await core.Supplier.get(this._options.environment)) ?? + environments.ManagementEnvironment.Default, + "groups", + ), + method: "GET", + headers: _headers, + queryParameters: { ..._queryParams, ...requestOptions?.queryParams }, + timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000, + maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries, + abortSignal: requestOptions?.abortSignal, + fetchFn: this._options?.fetch, + logging: this._options.logging, + }); + if (_response.ok) { + return { + data: _response.body as Management.ListGroupsPaginatedResponseContent, + rawResponse: _response.rawResponse, + }; + } + if (_response.error.reason === "status-code") { + switch (_response.error.statusCode) { + case 400: + throw new Management.BadRequestError( + _response.error.body as unknown, + _response.rawResponse, + ); + case 401: + throw new Management.UnauthorizedError( + _response.error.body as unknown, + _response.rawResponse, + ); + case 403: + throw new Management.ForbiddenError(_response.error.body as unknown, _response.rawResponse); + case 429: + throw new Management.TooManyRequestsError( + _response.error.body as unknown, + _response.rawResponse, + ); + default: + throw new errors.ManagementError({ + statusCode: _response.error.statusCode, + body: _response.error.body, + rawResponse: _response.rawResponse, + }); + } + } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/groups"); + }, + ); + const dataWithRawResponse = await list(request).withRawResponse(); + return new core.Page({ + response: dataWithRawResponse.data, + rawResponse: dataWithRawResponse.rawResponse, + hasNextPage: (response) => + response?.next != null && !(typeof response?.next === "string" && response?.next === ""), + getItems: (response) => response?.groups ?? [], + loadPage: (response) => { + return list(core.setObjectProperty(request, "from", response?.next)); + }, + }); + } + + /** + * Retrieve a group by its ID. + * + * @param {string} id - Unique identifier for the group (service-generated). + * @param {GroupsClient.RequestOptions} requestOptions - Request-specific configuration. + * + * @throws {@link Management.BadRequestError} + * @throws {@link Management.UnauthorizedError} + * @throws {@link Management.ForbiddenError} + * @throws {@link Management.NotFoundError} + * @throws {@link Management.TooManyRequestsError} + * + * @example + * await client.groups.get("id") + */ + public get( + id: string, + requestOptions?: GroupsClient.RequestOptions, + ): core.HttpResponsePromise { + return core.HttpResponsePromise.fromPromise(this.__get(id, requestOptions)); + } + + private async __get( + id: string, + requestOptions?: GroupsClient.RequestOptions, + ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); + let _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, + this._options?.headers, + requestOptions?.headers, + ); + const _response = await (this._options.fetcher ?? core.fetcher)({ + url: core.url.join( + (await core.Supplier.get(this._options.baseUrl)) ?? + (await core.Supplier.get(this._options.environment)) ?? + environments.ManagementEnvironment.Default, + `groups/${core.url.encodePathParam(id)}`, + ), + method: "GET", + headers: _headers, + queryParameters: requestOptions?.queryParams, + timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000, + maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries, + abortSignal: requestOptions?.abortSignal, + fetchFn: this._options?.fetch, + logging: this._options.logging, + }); + if (_response.ok) { + return { data: _response.body as Management.GetGroupResponseContent, rawResponse: _response.rawResponse }; + } + + if (_response.error.reason === "status-code") { + switch (_response.error.statusCode) { + case 400: + throw new Management.BadRequestError(_response.error.body as unknown, _response.rawResponse); + case 401: + throw new Management.UnauthorizedError(_response.error.body as unknown, _response.rawResponse); + case 403: + throw new Management.ForbiddenError(_response.error.body as unknown, _response.rawResponse); + case 404: + throw new Management.NotFoundError(_response.error.body as unknown, _response.rawResponse); + case 429: + throw new Management.TooManyRequestsError(_response.error.body as unknown, _response.rawResponse); + default: + throw new errors.ManagementError({ + statusCode: _response.error.statusCode, + body: _response.error.body, + rawResponse: _response.rawResponse, + }); + } + } + + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/groups/{id}"); + } +} diff --git a/src/management/api/resources/groups/client/index.ts b/src/management/api/resources/groups/client/index.ts new file mode 100644 index 0000000000..cb0ff5c3b5 --- /dev/null +++ b/src/management/api/resources/groups/client/index.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/management/api/resources/groups/index.ts b/src/management/api/resources/groups/index.ts new file mode 100644 index 0000000000..9eb1192dcc --- /dev/null +++ b/src/management/api/resources/groups/index.ts @@ -0,0 +1,2 @@ +export * from "./client/index.js"; +export * from "./resources/index.js"; diff --git a/src/management/api/resources/groups/resources/index.ts b/src/management/api/resources/groups/resources/index.ts new file mode 100644 index 0000000000..88a930fad1 --- /dev/null +++ b/src/management/api/resources/groups/resources/index.ts @@ -0,0 +1 @@ +export * as members from "./members/index.js"; diff --git a/src/management/api/resources/groups/resources/members/client/Client.ts b/src/management/api/resources/groups/resources/members/client/Client.ts new file mode 100644 index 0000000000..41fff22594 --- /dev/null +++ b/src/management/api/resources/groups/resources/members/client/Client.ts @@ -0,0 +1,138 @@ +// This file was auto-generated by Fern from our API Definition. + +import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient.js"; +import { normalizeClientOptionsWithAuth, type NormalizedClientOptionsWithAuth } from "../../../../../../BaseClient.js"; +import * as core from "../../../../../../core/index.js"; +import { mergeHeaders } from "../../../../../../core/headers.js"; +import * as environments from "../../../../../../environments.js"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError.js"; +import * as errors from "../../../../../../errors/index.js"; +import * as Management from "../../../../../index.js"; + +export declare namespace MembersClient { + export type Options = BaseClientOptions; + + export interface RequestOptions extends BaseRequestOptions {} +} + +export class MembersClient { + protected readonly _options: NormalizedClientOptionsWithAuth; + + constructor(options: MembersClient.Options) { + this._options = normalizeClientOptionsWithAuth(options); + } + + /** + * List all users that are a member of this group. + * + * @param {string} id - Unique identifier for the group (service-generated). + * @param {Management.GetGroupMembersRequestParameters} request + * @param {MembersClient.RequestOptions} requestOptions - Request-specific configuration. + * + * @throws {@link Management.BadRequestError} + * @throws {@link Management.UnauthorizedError} + * @throws {@link Management.ForbiddenError} + * @throws {@link Management.TooManyRequestsError} + * + * @example + * await client.groups.members.get("id", { + * fields: "fields", + * include_fields: true, + * from: "from", + * take: 1 + * }) + */ + public async get( + id: string, + request: Management.GetGroupMembersRequestParameters = {}, + requestOptions?: MembersClient.RequestOptions, + ): Promise> { + const list = core.HttpResponsePromise.interceptFunction( + async ( + request: Management.GetGroupMembersRequestParameters, + ): Promise> => { + const { fields, include_fields: includeFields, from: from_, take = 50 } = request; + const _queryParams: Record = {}; + if (fields !== undefined) { + _queryParams["fields"] = fields; + } + if (includeFields !== undefined) { + _queryParams["include_fields"] = includeFields?.toString() ?? null; + } + if (from_ !== undefined) { + _queryParams["from"] = from_; + } + if (take !== undefined) { + _queryParams["take"] = take?.toString() ?? null; + } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); + let _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, + this._options?.headers, + requestOptions?.headers, + ); + const _response = await (this._options.fetcher ?? core.fetcher)({ + url: core.url.join( + (await core.Supplier.get(this._options.baseUrl)) ?? + (await core.Supplier.get(this._options.environment)) ?? + environments.ManagementEnvironment.Default, + `groups/${core.url.encodePathParam(id)}/members`, + ), + method: "GET", + headers: _headers, + queryParameters: { ..._queryParams, ...requestOptions?.queryParams }, + timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000, + maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries, + abortSignal: requestOptions?.abortSignal, + fetchFn: this._options?.fetch, + logging: this._options.logging, + }); + if (_response.ok) { + return { + data: _response.body as Management.GetGroupMembersResponseContent, + rawResponse: _response.rawResponse, + }; + } + if (_response.error.reason === "status-code") { + switch (_response.error.statusCode) { + case 400: + throw new Management.BadRequestError( + _response.error.body as unknown, + _response.rawResponse, + ); + case 401: + throw new Management.UnauthorizedError( + _response.error.body as unknown, + _response.rawResponse, + ); + case 403: + throw new Management.ForbiddenError(_response.error.body as unknown, _response.rawResponse); + case 429: + throw new Management.TooManyRequestsError( + _response.error.body as unknown, + _response.rawResponse, + ); + default: + throw new errors.ManagementError({ + statusCode: _response.error.statusCode, + body: _response.error.body, + rawResponse: _response.rawResponse, + }); + } + } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/groups/{id}/members"); + }, + ); + const dataWithRawResponse = await list(request).withRawResponse(); + return new core.Page({ + response: dataWithRawResponse.data, + rawResponse: dataWithRawResponse.rawResponse, + hasNextPage: (response) => + response?.next != null && !(typeof response?.next === "string" && response?.next === ""), + getItems: (response) => response?.members ?? [], + loadPage: (response) => { + return list(core.setObjectProperty(request, "from", response?.next)); + }, + }); + } +} diff --git a/src/management/api/resources/groups/resources/members/client/index.ts b/src/management/api/resources/groups/resources/members/client/index.ts new file mode 100644 index 0000000000..cb0ff5c3b5 --- /dev/null +++ b/src/management/api/resources/groups/resources/members/client/index.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/management/api/resources/groups/resources/members/index.ts b/src/management/api/resources/groups/resources/members/index.ts new file mode 100644 index 0000000000..914b8c3c72 --- /dev/null +++ b/src/management/api/resources/groups/resources/members/index.ts @@ -0,0 +1 @@ +export * from "./client/index.js"; diff --git a/src/management/api/resources/index.ts b/src/management/api/resources/index.ts index 36311803af..e63df53f01 100644 --- a/src/management/api/resources/index.ts +++ b/src/management/api/resources/index.ts @@ -14,6 +14,7 @@ export * as eventStreams from "./eventStreams/index.js"; export * from "./eventStreams/types/index.js"; export * as flows from "./flows/index.js"; export * as forms from "./forms/index.js"; +export * as groups from "./groups/index.js"; export * as guardian from "./guardian/index.js"; export * as hooks from "./hooks/index.js"; export * as jobs from "./jobs/index.js"; diff --git a/src/management/api/resources/prompts/resources/rendering/client/Client.ts b/src/management/api/resources/prompts/resources/rendering/client/Client.ts index 722df96eee..f8e42d942f 100644 --- a/src/management/api/resources/prompts/resources/rendering/client/Client.ts +++ b/src/management/api/resources/prompts/resources/rendering/client/Client.ts @@ -49,7 +49,7 @@ export class RenderingClient { public async list( request: Management.ListAculsRequestParameters = {}, requestOptions?: RenderingClient.RequestOptions, - ): Promise> { + ): Promise> { const list = core.HttpResponsePromise.interceptFunction( async ( request: Management.ListAculsRequestParameters, @@ -154,7 +154,10 @@ export class RenderingClient { ); let _offset = request?.page != null ? request?.page : 0; const dataWithRawResponse = await list(request).withRawResponse(); - return new core.Page({ + return new core.Page< + Management.ListAculsResponseContentItem, + Management.ListAculsOffsetPaginatedResponseContent + >({ response: dataWithRawResponse.data, rawResponse: dataWithRawResponse.rawResponse, hasNextPage: (response) => (response?.configs ?? []).length >= Math.floor(request?.per_page ?? 50), diff --git a/src/management/api/resources/users/client/Client.ts b/src/management/api/resources/users/client/Client.ts index 00f9889f07..0ca97dc13f 100644 --- a/src/management/api/resources/users/client/Client.ts +++ b/src/management/api/resources/users/client/Client.ts @@ -13,6 +13,7 @@ import { AuthenticatorsClient } from "../resources/authenticators/client/Client. import { ConnectedAccountsClient } from "../resources/connectedAccounts/client/Client.js"; import { EnrollmentsClient } from "../resources/enrollments/client/Client.js"; import { FederatedConnectionsTokensetsClient } from "../resources/federatedConnectionsTokensets/client/Client.js"; +import { GroupsClient } from "../resources/groups/client/Client.js"; import { IdentitiesClient } from "../resources/identities/client/Client.js"; import { LogsClient } from "../resources/logs/client/Client.js"; import { MultifactorClient } from "../resources/multifactor/client/Client.js"; @@ -36,6 +37,7 @@ export class UsersClient { protected _connectedAccounts: ConnectedAccountsClient | undefined; protected _enrollments: EnrollmentsClient | undefined; protected _federatedConnectionsTokensets: FederatedConnectionsTokensetsClient | undefined; + protected _groups: GroupsClient | undefined; protected _identities: IdentitiesClient | undefined; protected _logs: LogsClient | undefined; protected _multifactor: MultifactorClient | undefined; @@ -70,6 +72,10 @@ export class UsersClient { return (this._federatedConnectionsTokensets ??= new FederatedConnectionsTokensetsClient(this._options)); } + public get groups(): GroupsClient { + return (this._groups ??= new GroupsClient(this._options)); + } + public get identities(): IdentitiesClient { return (this._identities ??= new IdentitiesClient(this._options)); } diff --git a/src/management/api/resources/users/resources/groups/client/Client.ts b/src/management/api/resources/users/resources/groups/client/Client.ts new file mode 100644 index 0000000000..5ae5d67540 --- /dev/null +++ b/src/management/api/resources/users/resources/groups/client/Client.ts @@ -0,0 +1,138 @@ +// This file was auto-generated by Fern from our API Definition. + +import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient.js"; +import { normalizeClientOptionsWithAuth, type NormalizedClientOptionsWithAuth } from "../../../../../../BaseClient.js"; +import * as core from "../../../../../../core/index.js"; +import { mergeHeaders } from "../../../../../../core/headers.js"; +import * as environments from "../../../../../../environments.js"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError.js"; +import * as errors from "../../../../../../errors/index.js"; +import * as Management from "../../../../../index.js"; + +export declare namespace GroupsClient { + export type Options = BaseClientOptions; + + export interface RequestOptions extends BaseRequestOptions {} +} + +export class GroupsClient { + protected readonly _options: NormalizedClientOptionsWithAuth; + + constructor(options: GroupsClient.Options) { + this._options = normalizeClientOptionsWithAuth(options); + } + + /** + * List all groups to which this user belongs. + * + * @param {string} id - ID of the user to list groups for. + * @param {Management.GetUserGroupsRequestParameters} request + * @param {GroupsClient.RequestOptions} requestOptions - Request-specific configuration. + * + * @throws {@link Management.BadRequestError} + * @throws {@link Management.UnauthorizedError} + * @throws {@link Management.ForbiddenError} + * @throws {@link Management.TooManyRequestsError} + * + * @example + * await client.users.groups.get("id", { + * fields: "fields", + * include_fields: true, + * from: "from", + * take: 1 + * }) + */ + public async get( + id: string, + request: Management.GetUserGroupsRequestParameters = {}, + requestOptions?: GroupsClient.RequestOptions, + ): Promise> { + const list = core.HttpResponsePromise.interceptFunction( + async ( + request: Management.GetUserGroupsRequestParameters, + ): Promise> => { + const { fields, include_fields: includeFields, from: from_, take = 50 } = request; + const _queryParams: Record = {}; + if (fields !== undefined) { + _queryParams["fields"] = fields; + } + if (includeFields !== undefined) { + _queryParams["include_fields"] = includeFields?.toString() ?? null; + } + if (from_ !== undefined) { + _queryParams["from"] = from_; + } + if (take !== undefined) { + _queryParams["take"] = take?.toString() ?? null; + } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); + let _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, + this._options?.headers, + requestOptions?.headers, + ); + const _response = await (this._options.fetcher ?? core.fetcher)({ + url: core.url.join( + (await core.Supplier.get(this._options.baseUrl)) ?? + (await core.Supplier.get(this._options.environment)) ?? + environments.ManagementEnvironment.Default, + `users/${core.url.encodePathParam(id)}/groups`, + ), + method: "GET", + headers: _headers, + queryParameters: { ..._queryParams, ...requestOptions?.queryParams }, + timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000, + maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries, + abortSignal: requestOptions?.abortSignal, + fetchFn: this._options?.fetch, + logging: this._options.logging, + }); + if (_response.ok) { + return { + data: _response.body as Management.GetUserGroupsPaginatedResponseContent, + rawResponse: _response.rawResponse, + }; + } + if (_response.error.reason === "status-code") { + switch (_response.error.statusCode) { + case 400: + throw new Management.BadRequestError( + _response.error.body as unknown, + _response.rawResponse, + ); + case 401: + throw new Management.UnauthorizedError( + _response.error.body as unknown, + _response.rawResponse, + ); + case 403: + throw new Management.ForbiddenError(_response.error.body as unknown, _response.rawResponse); + case 429: + throw new Management.TooManyRequestsError( + _response.error.body as unknown, + _response.rawResponse, + ); + default: + throw new errors.ManagementError({ + statusCode: _response.error.statusCode, + body: _response.error.body, + rawResponse: _response.rawResponse, + }); + } + } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/users/{id}/groups"); + }, + ); + const dataWithRawResponse = await list(request).withRawResponse(); + return new core.Page({ + response: dataWithRawResponse.data, + rawResponse: dataWithRawResponse.rawResponse, + hasNextPage: (response) => + response?.next != null && !(typeof response?.next === "string" && response?.next === ""), + getItems: (response) => response?.groups ?? [], + loadPage: (response) => { + return list(core.setObjectProperty(request, "from", response?.next)); + }, + }); + } +} diff --git a/src/management/api/resources/users/resources/groups/client/index.ts b/src/management/api/resources/users/resources/groups/client/index.ts new file mode 100644 index 0000000000..cb0ff5c3b5 --- /dev/null +++ b/src/management/api/resources/users/resources/groups/client/index.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/management/api/resources/users/resources/groups/index.ts b/src/management/api/resources/users/resources/groups/index.ts new file mode 100644 index 0000000000..914b8c3c72 --- /dev/null +++ b/src/management/api/resources/users/resources/groups/index.ts @@ -0,0 +1 @@ +export * from "./client/index.js"; diff --git a/src/management/api/resources/users/resources/index.ts b/src/management/api/resources/users/resources/index.ts index 3e20e5442f..b9845025b5 100644 --- a/src/management/api/resources/users/resources/index.ts +++ b/src/management/api/resources/users/resources/index.ts @@ -3,6 +3,7 @@ export * as authenticators from "./authenticators/index.js"; export * as connectedAccounts from "./connectedAccounts/index.js"; export * as enrollments from "./enrollments/index.js"; export * as federatedConnectionsTokensets from "./federatedConnectionsTokensets/index.js"; +export * as groups from "./groups/index.js"; export * as identities from "./identities/index.js"; export * as logs from "./logs/index.js"; export * as multifactor from "./multifactor/index.js"; diff --git a/src/management/api/types/types.ts b/src/management/api/types/types.ts index 1a30d70627..77c022d8a8 100644 --- a/src/management/api/types/types.ts +++ b/src/management/api/types/types.ts @@ -327,6 +327,12 @@ export const OauthScope = { /** * Read Group Members */ ReadGroupMembers: "read:group_members", + /** + * Create Group Roles */ + CreateGroupRoles: "create:group_roles", + /** + * Delete Group Roles */ + DeleteGroupRoles: "delete:group_roles", /** * Create Guardian Enrollment Tickets */ CreateGuardianEnrollmentTickets: "create:guardian_enrollment_tickets", @@ -789,6 +795,8 @@ export interface Action { built_at?: string; /** True if the action should be deployed after creation. */ deploy?: boolean; + /** The list of action modules and their versions used by this action. */ + modules?: Management.ActionModuleReference[]; } /** @@ -902,6 +910,8 @@ export interface ActionDeployedVersion { updated_at?: string; /** The list of triggers that this version supports. At this time, a version can only target a single trigger at a time. */ supported_triggers?: Management.ActionTrigger[]; + /** The list of action modules and their versions used by this action version. */ + modules?: Management.ActionModuleReference[]; } /** @@ -937,6 +947,20 @@ export const ActionExecutionStatusEnum = { } as const; export type ActionExecutionStatusEnum = (typeof ActionExecutionStatusEnum)[keyof typeof ActionExecutionStatusEnum]; +/** + * Reference to a module and its version used by an action. + */ +export interface ActionModuleReference { + /** The unique ID of the module. */ + module_id?: string; + /** The name of the module. */ + module_name?: string; + /** The ID of the specific module version. */ + module_version_id?: string; + /** The version number of the module. */ + module_version_number?: number; +} + export interface ActionSecretRequest { /** The name of the particular secret, e.g. API_KEY. */ name?: string; @@ -1012,6 +1036,8 @@ export interface ActionVersion { updated_at?: string; /** The list of triggers that this version supports. At this time, a version can only target a single trigger at a time. */ supported_triggers?: Management.ActionTrigger[]; + /** The list of action modules and their versions used by this action version. */ + modules?: Management.ActionModuleReference[]; } /** The build status of this specific version. */ @@ -1062,9 +1088,12 @@ export interface AculConfigsItem { screen: Management.ScreenGroupNameEnum; rendering_mode?: Management.AculRenderingModeEnum; context_configuration?: Management.AculContextConfiguration; - default_head_tags_disabled?: (Management.AculDefaultHeadTagsDisabled | undefined) | null; - use_page_template?: (Management.AculUsePageTemplate | undefined) | null; - head_tags?: Management.AculHeadTags; + /** Override Universal Login default head tags */ + default_head_tags_disabled?: boolean | null; + /** Use page template with ACUL */ + use_page_template?: boolean | null; + /** An array of head tags */ + head_tags?: Management.AculHeadTag[]; filters?: Management.AculFilters | null; } @@ -1106,11 +1135,6 @@ export const AculContextEnum = { } as const; export type AculContextEnum = (typeof AculContextEnum)[keyof typeof AculContextEnum]; -/** - * Override Universal Login default head tags - */ -export type AculDefaultHeadTagsDisabled = (boolean | null) | undefined; - /** * Domains array filter items */ @@ -1163,11 +1187,6 @@ export type AculHeadTagAttributes = Record; */ export type AculHeadTagContent = string; -/** - * An array of head tags - */ -export type AculHeadTags = Management.AculHeadTag[]; - /** Type of match to apply */ export const AculMatchTypeEnum = { IncludesAny: "includes_any", @@ -1203,26 +1222,6 @@ export const AculRenderingModeEnum = { } as const; export type AculRenderingModeEnum = (typeof AculRenderingModeEnum)[keyof typeof AculRenderingModeEnum]; -export interface AculResponseContent { - rendering_mode?: Management.AculRenderingModeEnum; - /** Context values to make available */ - context_configuration?: string[]; - /** Override Universal Login default head tags */ - default_head_tags_disabled?: boolean | null; - /** Use page template with ACUL */ - use_page_template?: boolean | null; - /** An array of head tags */ - head_tags?: Management.AculHeadTag[]; - filters?: Management.AculFilters | null; - /** Accepts any additional properties */ - [key: string]: any; -} - -/** - * Use page template with ACUL - */ -export type AculUsePageTemplate = (boolean | null) | undefined; - export interface AddOrganizationConnectionResponseContent { /** ID of the connection. */ connection_id?: string; @@ -1799,6 +1798,18 @@ export interface BulkUpdateAculResponseContent { [key: string]: any; } +export interface CertificateSubjectDnCredential { + credential_type: Management.CertificateSubjectDnCredentialTypeEnum; + /** Friendly name for a credential. */ + name?: string; + /** Subject Distinguished Name. Mutually exclusive with `pem` property. Applies to `cert_subject_dn` credential type. */ + subject_dn?: string; + /** PEM-formatted X509 certificate. Must be JSON escaped. Mutually exclusive with `subject_dn` property. */ + pem?: string; +} + +export type CertificateSubjectDnCredentialTypeEnum = "cert_subject_dn"; + /** * The user's identity. If you set this value, you must also send the user_id parameter. */ @@ -2362,27 +2373,47 @@ export type ClientAsyncApprovalNotificationsChannelsApiPostConfiguration = * Defines client authentication methods. */ export interface ClientAuthenticationMethod { - private_key_jwt?: Management.PrivateKeyJwt; + private_key_jwt?: Management.ClientAuthenticationMethodPrivateKeyJwt; tls_client_auth?: Management.ClientAuthenticationMethodTlsClientAuth; self_signed_tls_client_auth?: Management.ClientAuthenticationMethodSelfSignedTlsClientAuth; } +/** + * Defines `private_key_jwt` client authentication method. If this property is defined, the client is enabled to use the Private Key JWT authentication method. + */ +export interface ClientAuthenticationMethodPrivateKeyJwt { + credentials: Management.ClientAuthenticationMethodPrivateKeyJwtCredentials; +} + +/** + * A list of unique and previously created credential IDs enabled on the client for Private Key JWT authentication. + */ +export type ClientAuthenticationMethodPrivateKeyJwtCredentials = Management.CredentialId[]; + /** * Defines `self_signed_tls_client_auth` client authentication method. If the property is defined, the client is configured to use mTLS authentication method utilizing self-signed certificate. */ export interface ClientAuthenticationMethodSelfSignedTlsClientAuth { - /** A list of unique and previously created credential IDs enabled on the client for mTLS authentication utilizing self-signed certificate. */ - credentials: Management.CredentialId[]; + credentials: Management.ClientAuthenticationMethodSelfSignedTlsClientAuthCredentials; } +/** + * A list of unique and previously created credential IDs enabled on the client for mTLS authentication utilizing self-signed certificate. + */ +export type ClientAuthenticationMethodSelfSignedTlsClientAuthCredentials = Management.CredentialId[]; + /** * Defines `tls_client_auth` client authentication method. If the property is defined, the client is configured to use CA-based mTLS authentication method. */ export interface ClientAuthenticationMethodTlsClientAuth { - /** A list of unique and previously created credential IDs enabled on the client for CA-based mTLS authentication. */ - credentials: Management.CredentialId[]; + credentials: Management.ClientAuthenticationMethodTlsClientAuthCredentials; } +/** + * A list of unique and previously created credential IDs enabled on the client for CA-based mTLS authentication. + */ +export type ClientAuthenticationMethodTlsClientAuthCredentials = Management.CredentialId[]; + /** Defines the compliance level for this client, which may restrict it's capabilities */ export const ClientComplianceLevelEnum = { None: "none", @@ -2397,11 +2428,35 @@ export type ClientComplianceLevelEnum = (typeof ClientComplianceLevelEnum)[keyof * Defines client authentication methods. */ export interface ClientCreateAuthenticationMethod { - private_key_jwt?: Management.PrivateKeyJwt; - tls_client_auth?: Management.ClientAuthenticationMethodTlsClientAuth; - self_signed_tls_client_auth?: Management.ClientAuthenticationMethodSelfSignedTlsClientAuth; + private_key_jwt?: Management.ClientCreateAuthenticationMethodPrivateKeyJwt; + tls_client_auth?: Management.ClientCreateAuthenticationMethodTlsClientAuth; + self_signed_tls_client_auth?: Management.CreateClientAuthenticationMethodSelfSignedTlsClientAuth; +} + +/** + * Defines `private_key_jwt` client authentication method. If this property is defined, the client is enabled to use the Private Key JWT authentication method. + */ +export interface ClientCreateAuthenticationMethodPrivateKeyJwt { + credentials: Management.ClientCreateAuthenticationMethodPrivateKeyJwtCredentials; +} + +/** + * Fully defined credentials that will be enabled on the client for Private Key JWT authentication. + */ +export type ClientCreateAuthenticationMethodPrivateKeyJwtCredentials = Management.PublicKeyCredential[]; + +/** + * Defines `tls_client_auth` client authentication method. If the property is defined, the client is configured to use CA-based mTLS authentication method. + */ +export interface ClientCreateAuthenticationMethodTlsClientAuth { + credentials: Management.ClientCreateAuthenticationMethodTlsClientAuthCredentials; } +/** + * Fully defined credentials that will be enabled on the client for CA-based mTLS authentication. + */ +export type ClientCreateAuthenticationMethodTlsClientAuthCredentials = Management.CertificateSubjectDnCredential[]; + export interface ClientCredential { /** ID of the credential. Generated on creation. */ id?: string; @@ -2712,20 +2767,20 @@ export type ClientSessionTransferAllowedAuthenticationMethodsEnum = * Native to Web SSO Configuration */ export interface ClientSessionTransferConfiguration { - /** Indicates whether an app can issue a Session Transfer Token through Token Exchange. If set to 'false', the app will not be able to issue a Session Transfer Token. Usually configured in the native application. */ + /** Indicates whether an app can issue a Session Transfer Token through Token Exchange. If set to 'false', the app will not be able to issue a Session Transfer Token. Usually configured in the native application. Default value is `false`. */ can_create_session_transfer_token?: boolean; - /** Indicates whether revoking the parent Refresh Token that initiated a Native to Web flow and was used to issue a Session Transfer Token should trigger a cascade revocation affecting its dependent child entities. Usually configured in the native application. */ + /** Indicates whether revoking the parent Refresh Token that initiated a Native to Web flow and was used to issue a Session Transfer Token should trigger a cascade revocation affecting its dependent child entities. Usually configured in the native application. Default value is `true`, applicable only in Native to Web SSO context. */ enforce_cascade_revocation?: boolean; - /** Indicates whether an app can create a session from a Session Transfer Token received via indicated methods. Can include `cookie` and/or `query`. Usually configured in the web application. */ + /** Indicates whether an app can create a session from a Session Transfer Token received via indicated methods. Can include `cookie` and/or `query`. Usually configured in the web application. Default value is an empty array []. */ allowed_authentication_methods?: Management.ClientSessionTransferAllowedAuthenticationMethodsEnum[]; enforce_device_binding?: Management.ClientSessionTransferDeviceBindingEnum; - /** Indicates whether Refresh Tokens are allowed to be issued when authenticating with a Session Transfer Token. Usually configured in the web application. */ + /** Indicates whether Refresh Tokens are allowed to be issued when authenticating with a Session Transfer Token. Usually configured in the web application. Default value is `false`. */ allow_refresh_token?: boolean; - /** Indicates whether Refresh Tokens created during a native-to-web session are tied to that session's lifetime. This determines if such refresh tokens should be automatically revoked when their corresponding sessions are. Usually configured in the web application. */ + /** Indicates whether Refresh Tokens created during a Native to Web session are tied to that session's lifetime. This determines if such refresh tokens should be automatically revoked when their corresponding sessions are. Usually configured in the web application. Default value is `true`, applicable only in Native to Web SSO context. */ enforce_online_refresh_tokens?: boolean; } -/** Indicates whether device binding security should be enforced for the app. If set to 'ip', the app will enforce device binding by IP, meaning that consumption of Session Transfer Token must be done from the same IP of the issuer. Likewise, if set to 'asn', device binding is enforced by ASN, meaning consumption of Session Transfer Token must be done from the same ASN as the issuer. If set to 'null', device binding is not enforced. Usually configured in the web application. */ +/** Indicates whether device binding security should be enforced for the app. If set to 'ip', the app will enforce device binding by IP, meaning that consumption of Session Transfer Token must be done from the same IP of the issuer. Likewise, if set to 'asn', device binding is enforced by ASN, meaning consumption of Session Transfer Token must be done from the same ASN as the issuer. If set to 'none', device binding is not enforced. Usually configured in the web application. Default value is `ip`. */ export const ClientSessionTransferDeviceBindingEnum = { Ip: "ip", Asn: "asn", @@ -2832,11 +2887,33 @@ export type ConnectedAccountAccessTypeEnum = "offline"; */ export type ConnectionAcrValuesSupported = string[]; +/** + * Expiration timestamp for the `admin_access_token` in ISO 8601 format. Auth0 uses this value to determine when to refresh the token. + */ +export type ConnectionAdminAccessTokenExpiresInGoogleApps = string; + +/** + * Google Workspace admin access token used to retrieve extended user attributes (such as group memberships, admin status, and suspension state) from the [Google Directory API](https://developers.google.com/admin-sdk/directory). This token is automatically managed by Auth0. + */ +export type ConnectionAdminAccessTokenGoogleApps = string; + +/** + * Google Workspace admin refresh token used to obtain new access tokens for the [Google Directory API](https://developers.google.com/admin-sdk/directory). This token is granted when a Google Workspace admin authorizes Auth0 to access directory data. + */ +export type ConnectionAdminRefreshTokenGoogleApps = string; + /** * List of allowed audiences in the ID token for Google Native Social Login */ export type ConnectionAllowedAudiencesGoogleOAuth2 = string[]; +export type ConnectionApiEnableUsers = boolean; + +/** + * Enables integration with the Google Workspace Admin SDK Directory API. When true, Auth0 can retrieve extended user attributes (admin status, suspension status, group memberships) and supports inbound directory provisioning (SCIM). Defaults to true. + */ +export type ConnectionApiEnableUsersGoogleApps = Management.ConnectionApiEnableUsers; + /** * The Azure AD application domain (e.g., 'contoso.onmicrosoft.com'). Used primarily with WS-Federation protocol and Azure AD v1 endpoints. */ @@ -2845,6 +2922,7 @@ export type ConnectionAppDomainAzureAd = string; export interface ConnectionAttributeIdentifier { /** Determines if the attribute is used for identification */ active?: boolean; + default_method?: Management.DefaultMethodEmailIdentifierEnum; } /** @@ -2889,6 +2967,11 @@ export interface ConnectionAttributes { */ export type ConnectionAuthParamsAdditionalPropertiesOAuth2 = string; +/** + * Authentication Parameters (must be valid JSON string) + */ +export type ConnectionAuthParamsEmail = string; + /** * Maps parameter names from Auth0's /authorize endpoint to the identity provider's authorization endpoint parameters. For example, mapping 'audience' to 'resource' transforms the parameter name during authorization requests. Applied after authParams merging. See https://auth0.com/docs/authenticate/identity-providers/social-identity-providers/oauth2#pass-dynamic-parameters */ @@ -2905,6 +2988,8 @@ export type ConnectionAuthParamsOAuth2 = Record; +/** + * Maps SAML assertion attributes from the identity provider to Auth0 user profile attributes. Format: { 'auth0_field': 'saml_attribute' } or { 'auth0_field': ['saml_attr1', 'saml_attr2'] } for fallback options. Merged with default mappings for email, name, given_name, family_name, and groups. + */ +export type ConnectionFieldsMapSaml = Record; + +export namespace ConnectionFieldsMapSaml { + export type Value = string | string[]; +} + export interface ConnectionForList { /** The name of the connection */ name?: string; @@ -3185,11 +3403,21 @@ export interface ConnectionForOrganization { is_signup_enabled?: boolean; } +/** + * When set to true, the gateway receives HTTP request details including IP address and User Agent from the client. + */ +export type ConnectionForwardReqInfoSms = boolean; + /** * Array of custom OAuth 2.0 scopes to request from Google during authentication. Use this to request scopes not covered by the predefined scope options. */ export type ConnectionFreeformScopesGoogleOAuth2 = Management.ConnectionScopeArray; +/** + * The sender phone number or alphanumeric sender ID for outgoing SMS messages + */ +export type ConnectionFromSms = string; + /** * Token-based authentication settings to be applied when connection is using an sms strategy. */ @@ -3208,25 +3436,88 @@ export interface ConnectionGatewayAuthentication { [key: string]: any; } +/** + * `aud` claim value in the JWT sent to the SMS gateway. Identifies the gateway service (e.g., 'urn:MySmsGateway'). + */ +export type ConnectionGatewayAuthenticationAudienceSms = string; + +/** + * The Authorization header type when calling the SMS gateway. Set to 'bearer' for JWT token authentication. + */ +export type ConnectionGatewayAuthenticationMethodSms = string; + +/** + * Optional token-based authentication configuration for the SMS gateway + */ +export interface ConnectionGatewayAuthenticationSms { + audience: Management.ConnectionGatewayAuthenticationAudienceSms; + method: Management.ConnectionGatewayAuthenticationMethodSms; + /** The secret used to sign the JSON Web Token sent to the SMS gateway */ + secret: string; + /** Set to true if the secret is base64-url-encoded */ + secret_base64_encoded?: boolean; + subject?: Management.ConnectionGatewayAuthenticationSubjectSms; + /** Accepts any additional properties */ + [key: string]: any; +} + +/** + * `sub` claim value in the JWT sent to the SMS gateway. Identifies the requester (e.g., 'urn:Auth0'). + */ +export type ConnectionGatewayAuthenticationSubjectSms = string; + +/** + * The URL of your SMS gateway. Auth0 must be able to reach this URL for it to use your gateway to send messages on your behalf. + */ +export type ConnectionGatewayUrlSms = Management.ConnectionHttpsUrlWithHttpFallback255; + +/** + * Expected 'iss' (Issuer) claim value for JWT tokens in Global Token Revocation requests from the identity provider. When configured, Auth0 validates the JWT issuer matches this value before processing token revocation. Must be used together with global_token_revocation_jwt_sub. + */ +export type ConnectionGlobalTokenRevocationJwtIssSaml = string; + +/** + * Expected 'sub' (Subject) claim value for JWT tokens in Global Token Revocation requests from the identity provider. When configured, Auth0 validates the JWT subject matches this value before processing token revocation. Must be used together with global_token_revocation_jwt_iss. + */ +export type ConnectionGlobalTokenRevocationJwtSubSaml = string; + /** * A list of the OAuth 2.0 Grant Type values that this OP supports. Dynamic OpenID Providers MUST support the authorization_code and implicit Grant Type values and MAY support other Grant Types. If omitted, the default value is ["authorization_code", "implicit"]. */ export type ConnectionGrantTypesSupported = string[]; +/** + * When enabled, users who sign in with their Google account through a social login will be automatically routed to this Google Workspace connection if their email domain matches the configured tenant_domain or domain_aliases. This ensures enterprise users authenticate through their organization's Google Workspace identity provider rather than through a generic Google social login, enabling access to directory-based attributes and enforcing organizational security policies. Defaults to true for new connections. + */ +export type ConnectionHandleLoginFromSocialGoogleApps = boolean; + export type ConnectionHttpsUrlWithHttpFallback = string; +export type ConnectionHttpsUrlWithHttpFallback2048 = Management.ConnectionHttpsUrlWithHttpFallback; + +export type ConnectionHttpsUrlWithHttpFallback255 = Management.ConnectionHttpsUrlWithHttpFallback; + /** * https url of the icon to be shown */ export type ConnectionIconUrl = string; +export type ConnectionIconUrlAdfs = Management.ConnectionIconUrl; + /** * URL for the connection icon displayed in Auth0 login pages. Accepts HTTPS URLs. Used for visual branding in authentication flows. */ export type ConnectionIconUrlAzureAd = Management.ConnectionIconUrl; +export type ConnectionIconUrlGoogleApps = Management.ConnectionIconUrl; + export type ConnectionIconUrlGoogleOAuth2 = Management.ConnectionIconUrl; +/** + * URL for the connection icon displayed in Auth0 login pages. Accepts HTTPS URLs. Used for visual branding in authentication flows. + */ +export type ConnectionIconUrlSaml = Management.ConnectionIconUrl; + /** * The connection's identifier */ @@ -3369,9 +3660,9 @@ export type ConnectionImportMode = boolean; */ export type ConnectionIsDomainConnection = boolean; -export type ConnectionIssuer = Management.ConnectionHttpsUrlWithHttpFallback; +export type ConnectionIssuer = Management.ConnectionHttpsUrlWithHttpFallback255; -export type ConnectionJwksUri = Management.ConnectionHttpsUrlWithHttpFallback; +export type ConnectionJwksUri = Management.ConnectionHttpsUrlWithHttpFallback255; export interface ConnectionKey { /** The key id of the signing key */ @@ -3428,6 +3719,31 @@ export type ConnectionMappingModeEnumOkta = */ export type ConnectionMaxGroupsToRetrieve = string; +/** + * Twilio Messaging Service SID + */ +export type ConnectionMessagingServiceSidSms = string; + +/** + * HTTPS URL to the identity provider's SAML metadata document. When provided, Auth0 automatically fetches and parses the metadata to extract signInEndpoint, signOutEndpoint, signingCert, signSAMLRequest, and protocolBinding. Use metadataUrl OR metadataXml, not both. + */ +export type ConnectionMetadataUrlSaml = Management.ConnectionHttpsUrlWithHttpFallback2048; + +/** + * Standard IdP metadata XML payload used across SAML-compatible strategies. + */ +export type ConnectionMetadataXml = string; + +/** + * Inline XML alternative to 'adfs_server'. Cannot be set together with 'adfs_server'. + */ +export type ConnectionMetadataXmlAdfs = Management.ConnectionMetadataXml; + +/** + * SAML metadata XML document from the identity provider. When provided, automatically parsed to extract signInEndpoint, signOutEndpoint, signingCert, signSAMLRequest, and protocolBinding. Deleted after parsing to avoid persisting large documents. Not persisted to database - deleted after parsing metadata. Use metadataUrl OR metadataXml, not both. + */ +export type ConnectionMetadataXmlSaml = Management.ConnectionMetadataXml; + /** * Multi-factor authentication configuration */ @@ -3453,9 +3769,9 @@ export type ConnectionNamePrefixTemplate = string; */ export type ConnectionNonPersistentAttrs = string[]; -export type ConnectionOpPolicyUri = Management.ConnectionHttpsUrlWithHttpFallback; +export type ConnectionOpPolicyUri = Management.ConnectionHttpsUrlWithHttpFallback255; -export type ConnectionOpTosUri = Management.ConnectionHttpsUrlWithHttpFallback; +export type ConnectionOpTosUri = Management.ConnectionHttpsUrlWithHttpFallback255; /** * In order to return options in the response, the `read:connections_options` scope must be present @@ -3470,7 +3786,27 @@ export type ConnectionOptionsAd = Record; /** * Options for the 'adfs' connection */ -export type ConnectionOptionsAdfs = Record; +export interface ConnectionOptionsAdfs extends Management.ConnectionOptionsCommon { + /** ADFS federation metadata host or XML URL used to discover WS-Fed endpoints and certificates. Errors if adfs_server and fedMetadataXml are both absent. */ + adfs_server?: string; + domain_aliases?: Management.ConnectionDomainAliases; + /** The entity identifier (Issuer) for the ADFS Service Provider. When not provided, defaults to 'urn:auth0:{tenant}:{connection}'. */ + entityId?: string; + fedMetadataXml?: Management.ConnectionMetadataXmlAdfs; + icon_url?: Management.ConnectionIconUrlAdfs; + /** Previous certificate thumbprints kept for rollover compatibility. */ + prev_thumbprints?: Management.ConnectionThumbprints; + set_user_root_attributes?: Management.ConnectionSetUserRootAttributesEnum; + should_trust_email_verified_connection?: Management.ConnectionShouldTrustEmailVerifiedConnectionEnum; + signInEndpoint?: Management.ConnectionSignInEndpointAdfs; + tenant_domain?: Management.ConnectionTenantDomain; + thumbprints?: Management.ConnectionThumbprints; + upstream_params?: (Management.ConnectionUpstreamParamsAdfs | undefined) | null; + /** Custom ADFS claim to use as the unique user identifier. When provided, this attribute is prepended to the default user_id mapping list with highest priority. Accepts a string (single ADFS claim name). */ + user_id_attribute?: string; + /** Accepts any additional properties */ + [key: string]: any; +} export type ConnectionOptionsAol = Management.ConnectionOptionsOAuth2Common; @@ -3498,6 +3834,8 @@ export interface ConnectionOptionsApple extends Management.ConnectionOptionsComm /** Apple Team ID */ team_id?: string | null; upstream_params?: (Management.ConnectionUpstreamParams | undefined) | null; + /** Accepts any additional properties */ + [key: string]: any; } /** @@ -3525,6 +3863,8 @@ export interface ConnectionOptionsAuth0 extends Management.ConnectionOptionsComm realm_fallback?: Management.ConnectionRealmFallback; requires_username?: Management.ConnectionRequiresUsername; validation?: Management.ConnectionValidationOptions | null; + /** Accepts any additional properties */ + [key: string]: any; } /** @@ -3577,7 +3917,7 @@ export interface ConnectionOptionsAzureAd extends Management.ConnectionOptionsCo ext_given_name?: boolean; /** When false, prevents storing the list of Azure AD group IDs the user is a member of. When true (default), group membership IDs are persisted. See ext_groups for retrieving group details. */ ext_group_ids?: boolean; - ext_groups?: Management.ConnectionExtGroups; + ext_groups?: Management.ConnectionExtGroupsAzureAd; ext_is_suspended?: Management.ConnectionExtIsSuspended; /** When false, prevents storing the user's job title from Azure AD. When true (default), job title information is persisted in the user profile. */ ext_job_title?: boolean; @@ -3640,12 +3980,14 @@ export interface ConnectionOptionsAzureAd extends Management.ConnectionOptionsCo tenant_domain?: Management.ConnectionTenantDomainAzureAdOne; tenantId?: Management.ConnectionTenantIdAzureAd; thumbprints?: Management.ConnectionThumbprints; - upstream_params?: Management.ConnectionUpstreamParamsAzureAd | undefined; + upstream_params?: (Management.ConnectionUpstreamParams | undefined) | null; /** Indicates WS-Federation protocol usage. When true, uses WS-Federation; when false, uses OpenID Connect. */ use_wsfed?: boolean; useCommonEndpoint?: Management.ConnectionUseCommonEndpointAzureAd; userid_attribute?: Management.ConnectionUseridAttributeAzureAd; waad_protocol?: Management.ConnectionWaadProtocol; + /** Accepts any additional properties */ + [key: string]: any; } export type ConnectionOptionsBaidu = Management.ConnectionOptionsOAuth2Common; @@ -3672,7 +4014,7 @@ export interface ConnectionOptionsCommonOidc { client_secret?: Management.ConnectionClientSecretOidc; connection_settings?: Management.ConnectionConnectionSettings; federated_connections_access_tokens?: Management.ConnectionFederatedConnectionsAccessTokens | null; - domain_aliases?: Management.ConnectionDomainAliasesOne; + domain_aliases?: Management.ConnectionDomainAliases; icon_url?: Management.ConnectionIconUrl; id_token_signed_response_algs?: (Management.ConnectionIdTokenSignedResponseAlgs | undefined) | null; issuer?: Management.ConnectionIssuer; @@ -3681,16 +4023,38 @@ export interface ConnectionOptionsCommonOidc { scope?: Management.ConnectionScopeOidc; send_back_channel_nonce?: Management.ConnectionSendBackChannelNonce; set_user_root_attributes?: Management.ConnectionSetUserRootAttributesEnum; - tenant_domain?: (Management.ConnectionTenantDomain | undefined) | null; + tenant_domain?: Management.ConnectionTenantDomain; token_endpoint?: Management.ConnectionTokenEndpointOidc; token_endpoint_auth_method?: Management.ConnectionTokenEndpointAuthMethodEnum | null; token_endpoint_auth_signing_alg?: Management.ConnectionTokenEndpointAuthSigningAlgEnum | null; - upstream_params?: Management.ConnectionUpstreamParamsOidc | undefined; + upstream_params?: (Management.ConnectionUpstreamParams | undefined) | null; userinfo_endpoint?: Management.ConnectionUserinfoEndpointOidc; /** Accepts any additional properties */ [key: string]: any; } +/** + * Common options for SAML-based enterprise connections (shared by samlp and pingfederate). + */ +export interface ConnectionOptionsCommonSaml { + cert?: Management.ConnectionSigningCertificateDerSaml; + decryptionKey?: Management.ConnectionDecryptionKeySaml; + digestAlgorithm?: Management.ConnectionDigestAlgorithmSaml; + domain_aliases?: Management.ConnectionDomainAliasesSaml; + entityId?: Management.ConnectionEntityIdSaml; + icon_url?: Management.ConnectionIconUrlSaml; + idpinitiated?: Management.ConnectionOptionsIdpinitiatedSaml; + protocolBinding?: Management.ConnectionProtocolBindingSaml; + set_user_root_attributes?: Management.ConnectionSetUserRootAttributesEnum; + signInEndpoint?: Management.ConnectionSignInEndpointSaml; + signSAMLRequest?: Management.ConnectionSignSamlRequestSaml; + signatureAlgorithm?: Management.ConnectionSignatureAlgorithmSaml; + tenant_domain?: Management.ConnectionTenantDomainSaml; + /** SHA-1 thumbprints (fingerprints) of the identity provider's signing certificates. Automatically computed from signingCert during connection creation. Each thumbprint must be a 40-character hexadecimal string. */ + thumbprints?: Management.ConnectionSha1ThumbprintRelaxedValidationSaml[]; + upstream_params?: (Management.ConnectionUpstreamParams | undefined) | null; +} + /** * Options for the 'custom' connection */ @@ -3698,6 +4062,11 @@ export type ConnectionOptionsCustom = Record; export type ConnectionOptionsDaccount = Management.ConnectionOptionsOAuth2Common; +/** + * When true, enables DEFLATE compression for SAML requests sent via HTTP-Redirect binding. + */ +export type ConnectionOptionsDeflateSaml = boolean; + export type ConnectionOptionsDropbox = Management.ConnectionOptionsOAuth2Common; export type ConnectionOptionsDwolla = Management.ConnectionOptionsOAuth2Common; @@ -3705,7 +4074,17 @@ export type ConnectionOptionsDwolla = Management.ConnectionOptionsOAuth2Common; /** * Options for the 'email' connection */ -export type ConnectionOptionsEmail = Record; +export interface ConnectionOptionsEmail extends Management.ConnectionOptionsCommon { + authParams?: Management.ConnectionAuthParamsEmail; + brute_force_protection: Management.ConnectionBruteForceProtection; + disable_signup?: Management.ConnectionDisableSignup; + email: Management.ConnectionEmailEmail; + /** Connection name */ + name: string; + totp?: Management.ConnectionTotpEmail; + /** Accepts any additional properties */ + [key: string]: any; +} export type ConnectionOptionsEvernote = Management.ConnectionOptionsEvernoteCommon; @@ -3738,8 +4117,40 @@ export type ConnectionOptionsGitHub = Record; /** * Options for the 'google-apps' connection */ -export type ConnectionOptionsGoogleApps = Record; - +export interface ConnectionOptionsGoogleApps extends Management.ConnectionOptionsCommon { + admin_access_token?: Management.ConnectionAdminAccessTokenGoogleApps; + admin_access_token_expiresin?: Management.ConnectionAdminAccessTokenExpiresInGoogleApps; + admin_refresh_token?: Management.ConnectionAdminRefreshTokenGoogleApps; + /** When true, allows customization of OAuth scopes requested during user login. Custom scopes are appended to the mandatory email and profile scopes. When false or omitted, only the default email and profile scopes are used. This property is automatically enabled when Token Vault or Connected Accounts features are activated. */ + allow_setting_login_scopes?: boolean; + api_enable_users?: Management.ConnectionApiEnableUsersGoogleApps; + client_id: Management.ConnectionClientIdGoogleApps; + client_secret?: Management.ConnectionClientSecretGoogleApps; + domain?: Management.ConnectionDomainGoogleApps; + domain_aliases?: Management.ConnectionDomainAliases; + /** Whether the OAuth flow requests the `email` scope. */ + email?: boolean; + ext_agreed_terms?: Management.ConnectionExtAgreedTermsGoogleApps; + ext_groups?: Management.ConnectionExtGroupsGoogleApps; + /** Controls whether enriched group entries include `id`, `email`, `name` (true) or only the group name (false); can only be set when `ext_groups` is true. */ + ext_groups_extended?: boolean; + ext_is_admin?: Management.ConnectionExtIsAdminGoogleApps; + ext_is_suspended?: Management.ConnectionExtIsSuspendedGoogleApps; + federated_connections_access_tokens?: Management.ConnectionFederatedConnectionsAccessTokens | null; + handle_login_from_social?: Management.ConnectionHandleLoginFromSocialGoogleApps; + icon_url?: Management.ConnectionIconUrlGoogleApps; + /** Determines how Auth0 generates the user_id for Google Workspace users. When false (default), the user's email address is used. When true, Google's stable numeric user ID is used instead, which persists even if the user's email changes. This setting can only be configured when creating the connection and cannot be changed afterward. */ + map_user_id_to_id?: boolean; + /** Whether the OAuth flow requests the `profile` scope. */ + profile?: boolean; + scope?: Management.ConnectionScopeGoogleApps; + set_user_root_attributes?: Management.ConnectionSetUserRootAttributesEnum; + tenant_domain?: Management.ConnectionTenantDomainGoogleApps; + upstream_params?: (Management.ConnectionUpstreamParams | undefined) | null; + /** Accepts any additional properties */ + [key: string]: any; +} + /** * Options for the 'google-oauth2' connection */ @@ -3882,6 +4293,8 @@ export interface ConnectionOptionsGoogleOAuth2 extends Management.ConnectionOpti youtube_upload?: boolean; /** View and manage your assets and associated content on YouTube */ youtubepartner?: boolean; + /** Accepts any additional properties */ + [key: string]: any; } /** @@ -3889,6 +4302,28 @@ export interface ConnectionOptionsGoogleOAuth2 extends Management.ConnectionOpti */ export type ConnectionOptionsIp = Record; +/** The response protocol used to communicate with the default application. */ +export const ConnectionOptionsIdpInitiatedClientProtocolEnumSaml = { + Oidc: "oidc", + Samlp: "samlp", + Wsfed: "wsfed", +} as const; +export type ConnectionOptionsIdpInitiatedClientProtocolEnumSaml = + (typeof ConnectionOptionsIdpInitiatedClientProtocolEnumSaml)[keyof typeof ConnectionOptionsIdpInitiatedClientProtocolEnumSaml]; + +/** + * Configuration for IdP-Initiated SAML Single Sign-On. When enabled, allows users to initiate login directly from their SAML identity provider without first visiting Auth0. The IdP must include the connection parameter in the post-back URL (Assertion Consumer Service URL). + */ +export interface ConnectionOptionsIdpinitiatedSaml { + /** The query string sent to the default application */ + client_authorizequery?: string; + /** The client ID to use for IdP-initiated login requests. */ + client_id?: string; + client_protocol?: Management.ConnectionClientProtocolSaml; + /** When true, enables IdP-initiated login support for this SAML connection. Allows users to log in directly from the identity provider without first visiting Auth0. */ + enabled?: boolean; +} + export type ConnectionOptionsInstagram = Management.ConnectionOptionsOAuth2Common; export type ConnectionOptionsLine = Management.ConnectionOptionsOAuth2Common; @@ -3927,6 +4362,8 @@ export interface ConnectionOptionsOAuth2 extends Management.ConnectionOptionsCom upstream_params?: (Management.ConnectionUpstreamParams | undefined) | null; /** When true, uses space-delimited scopes (per OAuth 2.0 spec) instead of comma-delimited when calling the identity provider's authorization endpoint. Only relevant when using the connection_scope parameter. See https://auth0.com/docs/authenticate/identity-providers/adding-scopes-for-an-external-idp#pass-scopes-to-authorize-endpoint */ useOauthSpecScope?: boolean; + /** Accepts any additional properties */ + [key: string]: any; } export interface ConnectionOptionsOAuth2Common extends Management.ConnectionOptionsCommon { @@ -3945,6 +4382,8 @@ export interface ConnectionOptionsOidc attribute_map?: Management.ConnectionAttributeMapOidc; discovery_url?: Management.ConnectionDiscoveryUrl; type?: Management.ConnectionTypeEnumOidc; + /** Accepts any additional properties */ + [key: string]: any; } /** @@ -4005,6 +4444,8 @@ export interface ConnectionOptionsOkta attribute_map?: Management.ConnectionAttributeMapOkta; domain?: Management.ConnectionDomainOkta; type?: Management.ConnectionTypeEnumOkta; + /** Accepts any additional properties */ + [key: string]: any; } export type ConnectionOptionsPaypal = Management.ConnectionOptionsOAuth2Common; @@ -4014,7 +4455,14 @@ export type ConnectionOptionsPaypalSandbox = Management.ConnectionOptionsOAuth2C /** * Options for the 'pingfederate' connection */ -export type ConnectionOptionsPingFederate = Record; +export interface ConnectionOptionsPingFederate + extends Management.ConnectionOptionsCommonSaml, + Management.ConnectionOptionsCommon { + pingFederateBaseUrl: Management.ConnectionPingFederateBaseUrl; + signingCert?: Management.ConnectionSigningCertificatePemPingFederate; + /** Accepts any additional properties */ + [key: string]: any; +} /** * Options for the 'planningcenter' connection @@ -4026,12 +4474,52 @@ export type ConnectionOptionsRenren = Management.ConnectionOptionsOAuth2Common; /** * Options for the 'samlp' connection */ -export type ConnectionOptionsSaml = Record; +export interface ConnectionOptionsSaml + extends Management.ConnectionOptionsCommonSaml, + Management.ConnectionOptionsCommon { + debug?: Management.ConnectionDebugSaml; + deflate?: Management.ConnectionOptionsDeflateSaml; + destinationUrl?: Management.ConnectionDestinationUrlSaml; + /** When true, disables sending SAML logout requests (SingleLogoutService) to the identity provider during user sign-out. The user will be logged out of Auth0 but will remain logged into the identity provider. Defaults to false (federated logout enabled). */ + disableSignout?: boolean; + fieldsMap?: Management.ConnectionFieldsMapSaml; + global_token_revocation_jwt_iss?: Management.ConnectionGlobalTokenRevocationJwtIssSaml; + global_token_revocation_jwt_sub?: Management.ConnectionGlobalTokenRevocationJwtSubSaml; + metadataUrl?: Management.ConnectionMetadataUrlSaml; + metadataXml?: Management.ConnectionMetadataXmlSaml; + recipientUrl?: Management.ConnectionRecipientUrlSaml; + requestTemplate?: Management.ConnectionRequestTemplateSaml; + signingCert?: Management.ConnectionSigningCertSaml; + signing_key?: Management.ConnectionSigningKeySaml; + signOutEndpoint?: Management.ConnectionSignOutEndpointSaml; + user_id_attribute?: Management.ConnectionUserIdAttributeSaml; + /** Accepts any additional properties */ + [key: string]: any; +} /** * Options for the 'sms' connection */ -export type ConnectionOptionsSms = Record; +export interface ConnectionOptionsSms extends Management.ConnectionOptionsCommon { + /** Whether brute force protection is enabled */ + brute_force_protection?: boolean; + disable_signup?: Management.ConnectionDisableSignupSms; + forward_req_info?: Management.ConnectionForwardReqInfoSms; + from?: Management.ConnectionFromSms; + gateway_authentication?: Management.ConnectionGatewayAuthenticationSms | null; + gateway_url?: Management.ConnectionGatewayUrlSms; + messaging_service_sid?: Management.ConnectionMessagingServiceSidSms; + /** Connection name */ + name?: string; + provider?: Management.ConnectionProviderSms; + syntax?: Management.ConnectionTemplateSyntaxEnumSms; + template?: Management.ConnectionTemplateSms; + totp?: Management.ConnectionTotpSms; + twilio_sid?: Management.ConnectionTwilioSidSms; + twilio_token?: Management.ConnectionTwilioTokenSms; + /** Accepts any additional properties */ + [key: string]: any; +} export type ConnectionOptionsSalesforce = Management.ConnectionOptionsSalesforceCommon; @@ -4161,6 +4649,24 @@ export const ConnectionPasswordPolicyEnum = { export type ConnectionPasswordPolicyEnum = (typeof ConnectionPasswordPolicyEnum)[keyof typeof ConnectionPasswordPolicyEnum]; +/** + * Phone OTP authentication enablement + */ +export interface ConnectionPhoneOtpAuthenticationMethod { + /** Determines whether phone OTP is enabled */ + enabled?: boolean; +} + +/** + * URL provided by PingFederate which returns information used for creating the connection + */ +export type ConnectionPingFederateBaseUrl = Management.ConnectionPingFederateBaseUrlPingFederate; + +/** + * PingFederate base URL constrained to HTTP/HTTPS with length bounds + */ +export type ConnectionPingFederateBaseUrlPingFederate = Management.ConnectionHttpsUrlWithHttpFallback; + export interface ConnectionProfile { id?: Management.ConnectionProfileId; name?: Management.ConnectionProfileName; @@ -4310,6 +4816,31 @@ export interface ConnectionPropertiesOptions { [key: string]: any; } +/** Valid SAML protocol bindings */ +export const ConnectionProtocolBindingEnumSaml = { + UrnOasisNamesTcSaml20BindingsHttpPost: "urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST", + UrnOasisNamesTcSaml20BindingsHttpRedirect: "urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect", +} as const; +export type ConnectionProtocolBindingEnumSaml = + (typeof ConnectionProtocolBindingEnumSaml)[keyof typeof ConnectionProtocolBindingEnumSaml]; + +/** + * SAML protocol binding mechanism for sending authentication requests to the identity provider. + */ +export type ConnectionProtocolBindingSaml = Management.ConnectionProtocolBindingEnumSaml; + +/** SMS provider values. Use 'sms_gateway' to use a custom SMS gateway instead of Twilio. */ +export const ConnectionProviderEnumSms = { + SmsGateway: "sms_gateway", + Twilio: "twilio", +} as const; +export type ConnectionProviderEnumSms = (typeof ConnectionProviderEnumSms)[keyof typeof ConnectionProviderEnumSms]; + +/** + * SMS provider. Set to 'sms_gateway' to use a custom SMS gateway instead of Twilio. + */ +export type ConnectionProviderSms = Management.ConnectionProviderEnumSms; + /** * A ticket used for provisioning the connection */ @@ -4328,9 +4859,14 @@ export type ConnectionRealmFallback = boolean; /** * Defines the realms for which the connection will be used (ie: email domains). If the array is empty or the property is not specified, the connection name will be added as realm. */ -export type ConnectionRealms = string[]; +export type ConnectionRealmsAuth0 = string[]; + +/** + * The URL where Auth0 will send SAML authentication requests (the Identity Provider's SSO URL). Must be a valid HTTPS URL. + */ +export type ConnectionRecipientUrlSaml = Management.ConnectionHttpsUrlWithHttpFallback255; -export type ConnectionRegistrationEndpoint = Management.ConnectionHttpsUrlWithHttpFallback; +export type ConnectionRegistrationEndpoint = Management.ConnectionHttpsUrlWithHttpFallback255; /** * JSON array containing a list of the JWE encryption algorithms (alg values) supported by the OP for Request Objects. These algorithms are used both when the Request Object is passed by value and when it is passed by reference. @@ -4352,6 +4888,11 @@ export type ConnectionRequestObjectSigningAlgValuesSupported = string[]; */ export type ConnectionRequestParameterSupported = boolean; +/** + * Custom XML template for SAML authentication requests. Supports variable substitution using @@variableName@@ syntax. When not provided, uses default SAML AuthnRequest template. See https://auth0.com/docs/authenticate/protocols/saml/saml-sso-integrations/configure-auth0-saml-service-provider#customize-the-request-template + */ +export type ConnectionRequestTemplateSaml = string; + /** * Boolean value specifying whether the OP supports use of the request_uri parameter, with true indicating support. If omitted, the default value is false. */ @@ -4385,6 +4926,7 @@ export interface ConnectionResponseContentAd extends Management.ConnectionRespon export interface ConnectionResponseContentAdfs extends Management.ConnectionResponseCommon { strategy: "adfs"; options?: Management.ConnectionOptionsAdfs; + show_as_button?: Management.ConnectionShowAsButton; } /** @@ -4417,6 +4959,7 @@ export interface ConnectionResponseContentApple extends Management.ConnectionRes export interface ConnectionResponseContentAuth0 extends Management.ConnectionResponseCommon { strategy: "auth0"; options?: Management.ConnectionOptionsAuth0; + realms?: Management.ConnectionRealmsAuth0; } /** @@ -4435,6 +4978,7 @@ export interface ConnectionResponseContentAzureAd extends Management.ConnectionR options?: Management.ConnectionOptionsAzureAd; provisioning_ticket?: Management.ConnectionProvisioningTicket; provisioning_ticket_url?: Management.ConnectionProvisioningTicketUrl; + show_as_button?: Management.ConnectionShowAsButton; strategy_version?: Management.ConnectionStrategyVersionEnumAzureAd; } @@ -4572,6 +5116,7 @@ export interface ConnectionResponseContentGitHub extends Management.ConnectionRe export interface ConnectionResponseContentGoogleApps extends Management.ConnectionResponseCommon { strategy: "google-apps"; options?: Management.ConnectionOptionsGoogleApps; + show_as_button?: Management.ConnectionShowAsButton; } /** @@ -4588,6 +5133,7 @@ export interface ConnectionResponseContentGoogleOAuth2 extends Management.Connec export interface ConnectionResponseContentIp extends Management.ConnectionResponseCommon { strategy: "ip"; options?: Management.ConnectionOptionsIp; + show_as_button?: Management.ConnectionShowAsButton; } /** @@ -4644,6 +5190,7 @@ export interface ConnectionResponseContentOAuth2 extends Management.ConnectionRe export interface ConnectionResponseContentOidc extends Management.ConnectionResponseCommon { strategy: "oidc"; options?: Management.ConnectionOptionsOidc; + show_as_button?: Management.ConnectionShowAsButton; } /** @@ -4652,6 +5199,7 @@ export interface ConnectionResponseContentOidc extends Management.ConnectionResp export interface ConnectionResponseContentOffice365 extends Management.ConnectionResponseCommon { strategy: "office365"; options?: Management.ConnectionOptionsOffice365; + show_as_button?: Management.ConnectionShowAsButton; } /** @@ -4660,6 +5208,7 @@ export interface ConnectionResponseContentOffice365 extends Management.Connectio export interface ConnectionResponseContentOkta extends Management.ConnectionResponseCommon { strategy: "okta"; options?: Management.ConnectionOptionsOkta; + show_as_button?: Management.ConnectionShowAsButton; } /** @@ -4684,6 +5233,8 @@ export interface ConnectionResponseContentPaypalSandbox extends Management.Conne export interface ConnectionResponseContentPingFederate extends Management.ConnectionResponseCommon { strategy: "pingfederate"; options?: Management.ConnectionOptionsPingFederate; + provisioning_ticket_url?: Management.ConnectionProvisioningTicketUrl; + show_as_button?: Management.ConnectionShowAsButton; } /** @@ -4708,6 +5259,7 @@ export interface ConnectionResponseContentRenren extends Management.ConnectionRe export interface ConnectionResponseContentSaml extends Management.ConnectionResponseCommon { strategy: "samlp"; options?: Management.ConnectionOptionsSaml; + show_as_button?: Management.ConnectionShowAsButton; } /** @@ -4748,6 +5300,7 @@ export interface ConnectionResponseContentSalesforceSandbox extends Management.C export interface ConnectionResponseContentSharepoint extends Management.ConnectionResponseCommon { strategy: "sharepoint"; options?: Management.ConnectionOptionsSharepoint; + show_as_button?: Management.ConnectionShowAsButton; } /** @@ -4890,6 +5443,11 @@ export type ConnectionScopeArray = Management.ConnectionScopeItem[]; */ export type ConnectionScopeAzureAd = string[]; +/** + * Additional OAuth scopes requested beyond the default `email profile` scopes; ignored unless `allow_setting_login_scopes` is true. + */ +export type ConnectionScopeGoogleApps = Management.ConnectionScopeItemGoogleApps[]; + /** * Array of OAuth 2.0 scopes requested during Google authentication. */ @@ -4900,6 +5458,11 @@ export type ConnectionScopeGoogleOAuth2 = Management.ConnectionScopeArray; */ export type ConnectionScopeItem = string; +/** + * An OAuth scope string. + */ +export type ConnectionScopeItemGoogleApps = string; + /** * OAuth 2.0 scopes requested from the identity provider during authorization. Determines what user information and permissions Auth0 can access. Can be specified as a space-delimited string (e.g., 'openid profile email') or array of scope values. The 'useOauthSpecScope' setting controls delimiter behavior when using connection_scope parameter. */ @@ -4930,7 +5493,7 @@ export interface ConnectionScriptsOAuth2 { */ export type ConnectionSendBackChannelNonce = boolean; -export type ConnectionServiceDocumentation = Management.ConnectionHttpsUrlWithHttpFallback; +export type ConnectionServiceDocumentation = Management.ConnectionHttpsUrlWithHttpFallback255; /** When using an external IdP, this flag determines whether 'name', 'given_name', 'family_name', 'nickname', and 'picture' attributes are updated. In addition, it also determines whether the user is created when user doesnt exist previously. Possible values are 'on_each_login' (default value, it configures the connection to automatically create the user if necessary and update the root attributes from the external IdP with each user login. When this setting is used, root attributes cannot be independently updated), 'on_first_login' (configures the connection to create the user and set the root attributes on first login only, allowing them to be independently updated thereafter), and 'never_on_login' (configures the connection not to create the user and not to set the root attributes from the external IdP, allowing them to be independently updated). */ export const ConnectionSetUserRootAttributesEnum = { @@ -4941,6 +5504,16 @@ export const ConnectionSetUserRootAttributesEnum = { export type ConnectionSetUserRootAttributesEnum = (typeof ConnectionSetUserRootAttributesEnum)[keyof typeof ConnectionSetUserRootAttributesEnum]; +/** + * SHA-1 thumbprint allowing standard format or relaxed legacy hex string. + */ +export type ConnectionSha1ThumbprintRelaxedValidationSaml = Management.ConnectionSha1ThumbprintSaml; + +/** + * SHA-1 thumbprint of the certificate + */ +export type ConnectionSha1ThumbprintSaml = string; + /** Choose how Auth0 sets the email_verified field in the user profile. */ export const ConnectionShouldTrustEmailVerifiedConnectionEnum = { NeverSetEmailsAsVerified: "never_set_emails_as_verified", @@ -4950,10 +5523,73 @@ export type ConnectionShouldTrustEmailVerifiedConnectionEnum = (typeof ConnectionShouldTrustEmailVerifiedConnectionEnum)[keyof typeof ConnectionShouldTrustEmailVerifiedConnectionEnum]; /** - * Enables showing a button for the connection in the login page (new experience only). If false, it will be usable only by HRD. (Defaults to false.) + * Enables showing a button for the connection in the login page (new experience only). If false, it will be usable only by HRD. Defaults to `false`. */ export type ConnectionShowAsButton = boolean; +/** + * Passive Requestor (WS-Fed) sign-in endpoint discovered from metadata or provided explicitly. + */ +export type ConnectionSignInEndpointAdfs = Management.ConnectionHttpsUrlWithHttpFallback2048; + +/** + * Identity provider's SAML SingleSignOnService endpoint URL where Auth0 sends SAML authentication requests. This is the primary login URL for the SAML connection. Required unless using metadataUrl or metadataXml. + */ +export type ConnectionSignInEndpointSaml = Management.ConnectionHttpsUrlWithHttpFallback2048; + +/** + * Identity provider's SAML SingleLogoutService endpoint URL where Auth0 sends logout requests for federated sign-out. When not provided, defaults to signInEndpoint. Only used if disableSignout is false. + */ +export type ConnectionSignOutEndpointSaml = Management.ConnectionHttpsUrlWithHttpFallback2048; + +/** + * When true, Auth0 signs SAML authentication requests using the connection's signing key. The signature includes the request's digest and is validated by the identity provider. Defaults to false (unsigned requests). + */ +export type ConnectionSignSamlRequestSaml = boolean; + +/** Valid SAML signature algorithms */ +export const ConnectionSignatureAlgorithmEnumSaml = { + RsaSha1: "rsa-sha1", + RsaSha256: "rsa-sha256", +} as const; +export type ConnectionSignatureAlgorithmEnumSaml = + (typeof ConnectionSignatureAlgorithmEnumSaml)[keyof typeof ConnectionSignatureAlgorithmEnumSaml]; + +/** + * Algorithm used to sign SAML authentication requests and logout requests using the connection's signing key. Common values: 'rsa-sha256' (RSA signature with SHA-256 digest) or 'rsa-sha1'. Defaults to 'rsa-sha256'. + */ +export type ConnectionSignatureAlgorithmSaml = Management.ConnectionSignatureAlgorithmEnumSaml; + +/** + * Base64-encoded X.509 certificate from the identity provider used to validate signatures in SAML responses and assertions. The certificate is decoded and used for cryptographic signature verification. + */ +export type ConnectionSigningCertSaml = Management.ConnectionSigningCertificatePemSaml; + +/** + * X.509 signing certificate from the identity provider in .der format. Used to validate signatures in SAML Responses and Assertions. This is an alternative to signingCert and is kept for backward compatibility. Prefer using signingCert instead. + */ +export type ConnectionSigningCertificateDerSaml = string; + +/** + * Base64-encoded X.509 certificate from the identity provider used to validate signatures in SAML responses and assertions. The certificate is decoded and used for cryptographic signature verification. + */ +export type ConnectionSigningCertificatePemPingFederate = string; + +/** + * Base64-encoded X.509 certificate from the identity provider used to validate signatures in SAML responses and assertions. The certificate is decoded and used for cryptographic signature verification. + */ +export type ConnectionSigningCertificatePemSaml = string; + +/** + * Key pair with 'key' and 'cert' properties for signing SAML messages + */ +export interface ConnectionSigningKeySaml { + /** Base64-encoded X.509 certificate in PEM format used by Auth0 to sign SAML requests and logout messages. */ + cert?: string; + /** Private key in PEM format used by Auth0 to sign SAML requests and logout messages. */ + key?: string; +} + export const ConnectionStrategyEnum = { Ad: "ad", Adfs: "adfs", @@ -5031,13 +5667,33 @@ export type ConnectionStrategyVersionEnumAzureAd = number; */ export type ConnectionSubjectTypesSupported = string[]; +/** + * SMS message template. Use `@@password@@` as a placeholder for the verification code. + */ +export type ConnectionTemplateSms = string; + +/** SMS template syntax type. Set to 'md_with_macros' to enable macro processing in templates. */ +export const ConnectionTemplateSyntaxEnumSms = { + Liquid: "liquid", + MdWithMacros: "md_with_macros", +} as const; +export type ConnectionTemplateSyntaxEnumSms = + (typeof ConnectionTemplateSyntaxEnumSms)[keyof typeof ConnectionTemplateSyntaxEnumSms]; + /** * Tenant domain */ -export type ConnectionTenantDomain = (string | null) | undefined; +export type ConnectionTenantDomain = string; export type ConnectionTenantDomainAzureAdOne = string; +/** + * The Google Workspace primary domain used to identify the organization during authentication. + */ +export type ConnectionTenantDomainGoogleApps = Management.ConnectionTenantDomain; + +export type ConnectionTenantDomainSaml = Management.ConnectionTenantDomain; + /** * The Azure AD tenant ID as a UUID. The unique identifier for your Azure AD organization. Must be a valid 36-character UUID. */ @@ -5048,10 +5704,7 @@ export type ConnectionTenantIdAzureAd = string; */ export type ConnectionThumbprints = string[]; -/** - * URL of the identity provider's OAuth 2.0 token endpoint where authorization codes are exchanged for access tokens. Must be a valid HTTPS URL. Required for authorization code flow but optional for implicit flow. - */ -export type ConnectionTokenEndpoint = Management.ConnectionHttpsUrlWithHttpFallback; +export type ConnectionTokenEndpoint = Management.ConnectionHttpsUrlWithHttpFallback255; /** Requested Client Authentication method for the Token Endpoint. */ export const ConnectionTokenEndpointAuthMethodEnum = { @@ -5085,6 +5738,59 @@ export type ConnectionTokenEndpointOAuth2 = Management.ConnectionTokenEndpoint; export type ConnectionTokenEndpointOidc = Management.ConnectionTokenEndpoint; +export interface ConnectionTotpEmail { + length?: Management.ConnectionTotpLengthEmail; + time_step?: Management.ConnectionTotpTimeStepEmail; +} + +/** + * Length of the TOTP code + */ +export type ConnectionTotpLengthEmail = Management.ConnectionTotpLengthPasswordless; + +/** + * Length of the TOTP code + */ +export type ConnectionTotpLengthPasswordless = number; + +/** + * Number of digits in the verification code + */ +export type ConnectionTotpLengthSms = Management.ConnectionTotpLengthPasswordless; + +/** + * Time-based One-Time Password (TOTP) options + */ +export interface ConnectionTotpSms { + length?: Management.ConnectionTotpLengthSms; + time_step?: Management.ConnectionTotpTimeStepSms; +} + +/** + * Time step for TOTP in seconds + */ +export type ConnectionTotpTimeStepEmail = Management.ConnectionTotpTimeStepPasswordless; + +/** + * Time step for TOTP in seconds + */ +export type ConnectionTotpTimeStepPasswordless = number; + +/** + * Code validity duration in seconds + */ +export type ConnectionTotpTimeStepSms = Management.ConnectionTotpTimeStepPasswordless; + +/** + * Twilio Account SID + */ +export type ConnectionTwilioSidSms = string; + +/** + * Twilio Auth Token + */ +export type ConnectionTwilioTokenSms = string; + /** Connection type */ export const ConnectionTypeEnumOidc = { BackChannel: "back_channel", @@ -5134,12 +5840,7 @@ export type ConnectionUpstreamParams = | (Record | null) | undefined; -/** - * Custom parameters to include in authentication requests to Azure AD. Accepts up to 10 key-value pairs for passing additional parameters like domain hints or tenant hints to the identity provider. - */ -export type ConnectionUpstreamParamsAzureAd = ((Management.ConnectionUpstreamParams | undefined) | null) | undefined; - -export type ConnectionUpstreamParamsOidc = ((Management.ConnectionUpstreamParams | undefined) | null) | undefined; +export type ConnectionUpstreamParamsAdfs = ((Management.ConnectionUpstreamParams | undefined) | null) | undefined; export interface ConnectionUpstreamValue { value?: string; @@ -5150,6 +5851,11 @@ export interface ConnectionUpstreamValue { */ export type ConnectionUseCommonEndpointAzureAd = boolean; +/** + * Custom SAML assertion attribute to use as the unique user identifier. When provided, this attribute is prepended to the default user_id mapping list with highest priority. Accepts a string (single SAML attribute name). + */ +export type ConnectionUserIdAttributeSaml = string; + /** * The Azure AD claim to use as the unique user identifier. 'oid' (Object ID) is recommended for single-tenant connections and required for SCIM. 'sub' (Subject) is required for multi-tenant/common endpoint. Only applies with OpenID Connect protocol. */ @@ -5173,7 +5879,7 @@ export type ConnectionUserinfoEncryptionAlgValuesSupported = string[]; */ export type ConnectionUserinfoEncryptionEncValuesSupported = string[]; -export type ConnectionUserinfoEndpoint = Management.ConnectionHttpsUrlWithHttpFallback; +export type ConnectionUserinfoEndpoint = Management.ConnectionHttpsUrlWithHttpFallback255; export type ConnectionUserinfoEndpointOidc = Management.ConnectionUserinfoEndpoint; @@ -5242,6 +5948,8 @@ export interface CreateActionResponseContent { built_at?: string; /** True if the action should be deployed after creation. */ deploy?: boolean; + /** The list of action modules and their versions used by this action. */ + modules?: Management.ActionModuleReference[]; } /** @@ -5274,6 +5982,18 @@ export interface CreateBrandingThemeResponseContent { widget: Management.BrandingThemeWidget; } +/** + * Defines `self_signed_tls_client_auth` client authentication method. If the property is defined, the client is configured to use mTLS authentication method utilizing self-signed certificate. + */ +export interface CreateClientAuthenticationMethodSelfSignedTlsClientAuth { + credentials: Management.CreateClientAuthenticationMethodSelfSignedTlsClientAuthCredentials; +} + +/** + * Fully defined credentials that will be enabled on the client for mTLS authentication utilizing self-signed certificate. + */ +export type CreateClientAuthenticationMethodSelfSignedTlsClientAuthCredentials = Management.X509CertificateCredential[]; + export interface CreateClientGrantResponseContent { /** ID of the client grant. */ id?: string; @@ -5415,6 +6135,7 @@ export interface CreateConnectionRequestContentAd extends Management.CreateConne export interface CreateConnectionRequestContentAdfs extends Management.CreateConnectionCommon { strategy: "adfs"; options?: Management.ConnectionOptionsAdfs; + show_as_button?: Management.ConnectionShowAsButton; } /** @@ -5447,6 +6168,7 @@ export interface CreateConnectionRequestContentApple extends Management.CreateCo export interface CreateConnectionRequestContentAuth0 extends Management.CreateConnectionCommon { strategy: "auth0"; options?: Management.ConnectionOptionsAuth0; + realms?: Management.ConnectionRealmsAuth0; } /** @@ -5465,6 +6187,7 @@ export interface CreateConnectionRequestContentAzureAd extends Management.Create options?: Management.ConnectionOptionsAzureAd; provisioning_ticket?: Management.ConnectionProvisioningTicket; provisioning_ticket_url?: Management.ConnectionProvisioningTicketUrl; + show_as_button?: Management.ConnectionShowAsButton; } /** @@ -5601,6 +6324,7 @@ export interface CreateConnectionRequestContentGitHub extends Management.CreateC export interface CreateConnectionRequestContentGoogleApps extends Management.CreateConnectionCommon { strategy: "google-apps"; options?: Management.ConnectionOptionsGoogleApps; + show_as_button?: Management.ConnectionShowAsButton; } /** @@ -5617,6 +6341,7 @@ export interface CreateConnectionRequestContentGoogleOAuth2 extends Management.C export interface CreateConnectionRequestContentIp extends Management.CreateConnectionCommon { strategy: "ip"; options?: Management.ConnectionOptionsIp; + show_as_button?: Management.ConnectionShowAsButton; } /** @@ -5673,6 +6398,7 @@ export interface CreateConnectionRequestContentOAuth2 extends Management.CreateC export interface CreateConnectionRequestContentOidc extends Management.CreateConnectionCommon { strategy: "oidc"; options?: Management.ConnectionOptionsOidc; + show_as_button?: Management.ConnectionShowAsButton; } /** @@ -5681,6 +6407,7 @@ export interface CreateConnectionRequestContentOidc extends Management.CreateCon export interface CreateConnectionRequestContentOffice365 extends Management.CreateConnectionCommon { strategy: "office365"; options?: Management.ConnectionOptionsOffice365; + show_as_button?: Management.ConnectionShowAsButton; } /** @@ -5689,6 +6416,7 @@ export interface CreateConnectionRequestContentOffice365 extends Management.Crea export interface CreateConnectionRequestContentOkta extends Management.CreateConnectionCommon { strategy: "okta"; options?: Management.ConnectionOptionsOkta; + show_as_button?: Management.ConnectionShowAsButton; } /** @@ -5713,6 +6441,7 @@ export interface CreateConnectionRequestContentPaypalSandbox extends Management. export interface CreateConnectionRequestContentPingFederate extends Management.CreateConnectionCommon { strategy: "pingfederate"; options?: Management.ConnectionOptionsPingFederate; + show_as_button?: Management.ConnectionShowAsButton; } /** @@ -5737,6 +6466,7 @@ export interface CreateConnectionRequestContentRenren extends Management.CreateC export interface CreateConnectionRequestContentSaml extends Management.CreateConnectionCommon { strategy: "samlp"; options?: Management.ConnectionOptionsSaml; + show_as_button?: Management.ConnectionShowAsButton; } /** @@ -5777,6 +6507,7 @@ export interface CreateConnectionRequestContentSalesforceSandbox extends Managem export interface CreateConnectionRequestContentSharepoint extends Management.CreateConnectionCommon { strategy: "sharepoint"; options?: Management.ConnectionOptionsSharepoint; + show_as_button?: Management.ConnectionShowAsButton; } /** @@ -7145,6 +7876,8 @@ export interface CustomDomain { domain: string; /** Whether this is a primary domain (true) or not (false). */ primary: boolean; + /** Whether this is the default custom domain (true) or not (false). */ + is_default?: boolean; status: Management.CustomDomainStatusFilterEnum; type: Management.CustomDomainTypeEnum; /** Intermediate address. */ @@ -7302,6 +8035,14 @@ export interface DailyStats { [key: string]: any; } +/** Default authentication method for email identifier */ +export const DefaultMethodEmailIdentifierEnum = { + Password: "password", + EmailOtp: "email_otp", +} as const; +export type DefaultMethodEmailIdentifierEnum = + (typeof DefaultMethodEmailIdentifierEnum)[keyof typeof DefaultMethodEmailIdentifierEnum]; + /** * Token Quota configuration, to configure quotas for token issuance for clients and organizations. Applied to all clients and organizations unless overridden in individual client or organization settings. */ @@ -7367,6 +8108,8 @@ export interface DeployActionResponseContent { updated_at?: string; /** The list of triggers that this version supports. At this time, a version can only target a single trigger at a time. */ supported_triggers?: Management.ActionTrigger[]; + /** The list of action modules and their versions used by this action version. */ + modules?: Management.ActionModuleReference[]; } export interface DeployActionVersionRequestBodyParams { @@ -7405,6 +8148,8 @@ export interface DeployActionVersionResponseContent { updated_at?: string; /** The list of triggers that this version supports. At this time, a version can only target a single trigger at a time. */ supported_triggers?: Management.ActionTrigger[]; + /** The list of action modules and their versions used by this action version. */ + modules?: Management.ActionModuleReference[]; } export interface DeviceCredential { @@ -10553,6 +11298,8 @@ export interface GetActionResponseContent { built_at?: string; /** True if the action should be deployed after creation. */ deploy?: boolean; + /** The list of action modules and their versions used by this action. */ + modules?: Management.ActionModuleReference[]; } export interface GetActionVersionResponseContent { @@ -10584,6 +11331,8 @@ export interface GetActionVersionResponseContent { updated_at?: string; /** The list of triggers that this version supports. At this time, a version can only target a single trigger at a time. */ supported_triggers?: Management.ActionTrigger[]; + /** The list of action modules and their versions used by this action version. */ + modules?: Management.ActionModuleReference[]; } /** @@ -10599,10 +11348,9 @@ export interface GetAculResponseContent { /** Name of the screen */ screen?: string; rendering_mode?: Management.AculRenderingModeEnum; - /** Context values to make available */ - context_configuration?: string[]; + context_configuration?: Management.AculContextConfiguration; /** Override Universal Login default head tags */ - default_head_tags_disabled?: boolean; + default_head_tags_disabled?: boolean | null; /** Use page template with ACUL */ use_page_template?: boolean | null; /** An array of head tags */ @@ -10919,6 +11667,8 @@ export interface GetCustomDomainResponseContent { domain: string; /** Whether this is a primary domain (true) or not (false). */ primary: boolean; + /** Whether this is the default custom domain (true) or not (false). */ + is_default?: boolean; status: Management.CustomDomainStatusFilterEnum; type: Management.CustomDomainTypeEnum; /** Intermediate address. */ @@ -11116,6 +11866,37 @@ export interface GetFormResponseContent { submitted_at?: string; } +export interface GetGroupMembersResponseContent { + members: Management.GroupMember[]; + /** A cursor to be used as the "from" query parameter for the next page of results. */ + next?: string; +} + +/** + * Represents the metadata of a group. Member lists are retrieved via a separate endpoint. + */ +export interface GetGroupResponseContent { + /** Unique identifier for the group (service-generated). */ + id: string; + /** Name of the group. Must be unique within its scope (connection, organization, or tenant). Must contain between 1 and 128 printable ASCII characters. */ + name: string; + /** External identifier for the group, often used for SCIM synchronization. Max length of 256 characters. */ + external_id?: string; + /** Identifier for the connection this group belongs to (if a connection group). */ + connection_id?: string; + /** Identifier for the organization this group belongs to (if an organization group). */ + organization_id?: string | null; + /** Identifier for the tenant this group belongs to. */ + tenant_name: string; + description?: string | null; + /** Timestamp of when the group was created. */ + created_at: string; + /** Timestamp of when the group was last updated. */ + updated_at: string; + /** Accepts any additional properties */ + [key: string]: any; +} + export interface GetGuardianEnrollmentResponseContent { /** ID for this enrollment. */ id: string; @@ -11734,6 +12515,8 @@ export interface GetTenantSettingsResponseContent { */ skip_non_verifiable_callback_uri_confirmation_prompt?: boolean | null; resource_parameter_profile?: Management.TenantSettingsResourceParameterProfile; + /** Whether Auth0 Guide (AI-powered assistance) is enabled for this tenant. */ + enable_ai_guide?: boolean; } export interface GetTokenExchangeProfileResponseContent { @@ -11820,6 +12603,15 @@ export interface GetUserAuthenticationMethodResponseContent { relying_party_identifier?: string; } +export interface GetUserGroupsPaginatedResponseContent { + groups: Management.UserGroupsResponseSchema[]; + /** A cursor to be used as the "from" query parameter for the next page of results. */ + next?: string; + start?: number; + limit?: number; + total?: number; +} + export interface GetUserResponseContent { /** ID of the user which can be used when interacting with other APIs. */ user_id?: string; @@ -11909,6 +12701,37 @@ export interface Group { [key: string]: any; } +/** + * Represents the metadata of a group membership. + */ +export interface GroupMember { + /** Unique identifier for the member. */ + id?: string; + member_type?: Management.GroupMemberTypeEnum; + type?: Management.GroupTypeEnum; + /** Identifier for the connection this group belongs to (if a connection group). */ + connection_id?: string; + /** Timestamp of when the membership was created. */ + created_at?: string; + /** Accepts any additional properties */ + [key: string]: any; +} + +/** Type of the member. */ +export const GroupMemberTypeEnum = { + User: "user", + Group: "group", +} as const; +export type GroupMemberTypeEnum = (typeof GroupMemberTypeEnum)[keyof typeof GroupMemberTypeEnum]; + +/** Type of the group. */ +export const GroupTypeEnum = { + Connection: "connection", + Organization: "organization", + Tenant: "tenant", +} as const; +export type GroupTypeEnum = (typeof GroupTypeEnum)[keyof typeof GroupTypeEnum]; + /** * Enrollment date and time. */ @@ -12291,7 +13114,7 @@ export interface ListActionsPaginatedResponseContent { } export interface ListAculsOffsetPaginatedResponseContent { - configs?: Management.AculResponseContent[]; + configs?: Management.ListAculsResponseContentItem[]; /** the index of the first configuration in the response (before filtering) */ start?: number; /** the maximum number of configurations shown per page (before filtering) */ @@ -12300,15 +13123,35 @@ export interface ListAculsOffsetPaginatedResponseContent { total?: number; } -export interface ListBrandingPhoneProvidersResponseContent { - providers?: Management.PhoneProviderSchemaMasked[]; -} - -export interface ListClientConnectionsResponseContent { - connections: Management.ConnectionForList[]; - /** Encoded next token */ - next?: string; - /** Accepts any additional properties */ +export interface ListAculsResponseContentItem { + /** Tenant ID */ + tenant?: string; + /** Name of the prompt */ + prompt?: string; + /** Name of the screen */ + screen?: string; + rendering_mode?: Management.AculRenderingModeEnum; + context_configuration?: Management.AculContextConfiguration; + /** Override Universal Login default head tags */ + default_head_tags_disabled?: boolean | null; + /** Use page template with ACUL */ + use_page_template?: boolean | null; + /** An array of head tags */ + head_tags?: Management.AculHeadTag[]; + filters?: Management.AculFilters | null; + /** Accepts any additional properties */ + [key: string]: any; +} + +export interface ListBrandingPhoneProvidersResponseContent { + providers?: Management.PhoneProviderSchemaMasked[]; +} + +export interface ListClientConnectionsResponseContent { + connections: Management.ConnectionForList[]; + /** Encoded next token */ + next?: string; + /** Accepts any additional properties */ [key: string]: any; } @@ -12367,6 +13210,14 @@ export interface ListEncryptionKeyOffsetPaginatedResponseContent { keys?: Management.EncryptionKey[]; } +export interface ListEventStreamsResponseContent { + eventStreams?: Management.EventStreamResponseContent[]; + /** Opaque identifier for use with the from query parameter for the next page of results. */ + next?: string; + /** Accepts any additional properties */ + [key: string]: any; +} + export interface ListFlowExecutionsPaginatedResponseContent { /** Opaque identifier for use with the from query parameter for the next page of results.
This identifier is valid for 24 hours. */ next?: string; @@ -12394,6 +13245,15 @@ export interface ListFormsOffsetPaginatedResponseContent { forms?: Management.FormSummary[]; } +export interface ListGroupsPaginatedResponseContent { + groups: Management.Group[]; + /** A cursor to be used as the "from" query parameter for the next page of results. */ + next?: string; + start?: number; + limit?: number; + total?: number; +} + export type ListGuardianPoliciesResponseContent = Management.MfaPolicyEnum[]; export interface ListHooksOffsetPaginatedResponseContent { @@ -13669,18 +14529,6 @@ export const PreferredAuthenticationMethodEnum = { export type PreferredAuthenticationMethodEnum = (typeof PreferredAuthenticationMethodEnum)[keyof typeof PreferredAuthenticationMethodEnum]; -/** - * Defines `private_key_jwt` client authentication method. If this property is defined, the client is enabled to use the Private Key JWT authentication method. - */ -export interface PrivateKeyJwt { - credentials: Management.PrivateKeyJwtCredentials; -} - -/** - * A list of unique and previously created credential IDs enabled on the client for Private Key JWT authentication. - */ -export type PrivateKeyJwtCredentials = Management.CredentialId[]; - /** Name of the prompt */ export const PromptGroupNameEnum = { Login: "login", @@ -15379,12 +16227,13 @@ export interface UpdateActionResponseContent { built_at?: string; /** True if the action should be deployed after creation. */ deploy?: boolean; + /** The list of action modules and their versions used by this action. */ + modules?: Management.ActionModuleReference[]; } export interface UpdateAculResponseContent { rendering_mode?: Management.AculRenderingModeEnum; - /** Context values to make available */ - context_configuration?: string[]; + context_configuration?: Management.AculContextConfiguration; /** Override Universal Login default head tags */ default_head_tags_disabled?: boolean | null; /** Use page template with ACUL */ @@ -15713,6 +16562,451 @@ export interface UpdateConnectionProfileResponseContent { strategy_overrides?: Management.ConnectionProfileStrategyOverrides; } +/** + * Update a connection with strategy=ad + */ +export interface UpdateConnectionRequestContentAd extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsAd; +} + +/** + * Update a connection with strategy=adfs + */ +export interface UpdateConnectionRequestContentAdfs extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsAdfs; + show_as_button?: Management.ConnectionShowAsButton; +} + +/** + * Update a connection with strategy=aol + */ +export interface UpdateConnectionRequestContentAol extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsAol; +} + +/** + * Update a connection with strategy=amazon + */ +export interface UpdateConnectionRequestContentAmazon extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsAmazon; +} + +/** + * Update a connection with strategy=apple + */ +export interface UpdateConnectionRequestContentApple extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsApple; +} + +/** + * Update a connection with strategy=auth0 + */ +export interface UpdateConnectionRequestContentAuth0 extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsAuth0; + realms?: Management.ConnectionRealmsAuth0; +} + +/** + * Update a connection with strategy=auth0-oidc + */ +export interface UpdateConnectionRequestContentAuth0Oidc extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsAuth0Oidc; +} + +/** + * Update a connection with strategy=waad + */ +export interface UpdateConnectionRequestContentAzureAd extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsAzureAd; + show_as_button?: Management.ConnectionShowAsButton; +} + +/** + * Update a connection with strategy=baidu + */ +export interface UpdateConnectionRequestContentBaidu extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsBaidu; +} + +/** + * Update a connection with strategy=bitbucket + */ +export interface UpdateConnectionRequestContentBitbucket extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsBitbucket; +} + +/** + * Update a connection with strategy=bitly + */ +export interface UpdateConnectionRequestContentBitly extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsBitly; +} + +/** + * Update a connection with strategy=box + */ +export interface UpdateConnectionRequestContentBox extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsBox; +} + +/** + * Update a connection with strategy=custom + */ +export interface UpdateConnectionRequestContentCustom extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsCustom; +} + +/** + * Update a connection with strategy=daccount + */ +export interface UpdateConnectionRequestContentDaccount extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsDaccount; +} + +/** + * Update a connection with strategy=dropbox + */ +export interface UpdateConnectionRequestContentDropbox extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsDropbox; +} + +/** + * Update a connection with strategy=dwolla + */ +export interface UpdateConnectionRequestContentDwolla extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsDwolla; +} + +/** + * Update a connection with strategy=email + */ +export interface UpdateConnectionRequestContentEmail extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsEmail; +} + +/** + * Update a connection with strategy=evernote + */ +export interface UpdateConnectionRequestContentEvernote extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsEvernote; +} + +/** + * Update a connection with strategy=evernote-sandbox + */ +export interface UpdateConnectionRequestContentEvernoteSandbox extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsEvernoteSandbox; +} + +/** + * Update a connection with strategy=exact + */ +export interface UpdateConnectionRequestContentExact extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsExact; +} + +/** + * Update a connection with strategy=facebook + */ +export interface UpdateConnectionRequestContentFacebook extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsFacebook; +} + +/** + * Update a connection with strategy=fitbit + */ +export interface UpdateConnectionRequestContentFitbit extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsFitbit; +} + +/** + * Update a connection with strategy=flickr + */ +export interface UpdateConnectionRequestContentFlickr extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsFlickr; +} + +/** + * Update a connection with strategy=github + */ +export interface UpdateConnectionRequestContentGitHub extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsGitHub; +} + +/** + * Update a connection with strategy=google-apps + */ +export interface UpdateConnectionRequestContentGoogleApps extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsGoogleApps; + show_as_button?: Management.ConnectionShowAsButton; +} + +/** + * Update a connection with strategy=google-oauth2 + */ +export interface UpdateConnectionRequestContentGoogleOAuth2 extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsGoogleOAuth2; +} + +/** + * Update a connection with strategy=ip + */ +export interface UpdateConnectionRequestContentIp extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsIp; + show_as_button?: Management.ConnectionShowAsButton; +} + +/** + * Update a connection with strategy=instagram + */ +export interface UpdateConnectionRequestContentInstagram extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsInstagram; +} + +/** + * Update a connection with strategy=line + */ +export interface UpdateConnectionRequestContentLine extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsLine; +} + +/** + * Update a connection with strategy=linkedin + */ +export interface UpdateConnectionRequestContentLinkedin extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsLinkedin; +} + +/** + * Update a connection with strategy=miicard + */ +export interface UpdateConnectionRequestContentMiicard extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsMiicard; +} + +/** + * Update a connection with strategy=oauth1 + */ +export interface UpdateConnectionRequestContentOAuth1 extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsOAuth1; +} + +/** + * Update a connection with strategy=oauth2 + */ +export interface UpdateConnectionRequestContentOAuth2 extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsOAuth2; +} + +/** + * Update a connection with strategy=oidc + */ +export interface UpdateConnectionRequestContentOidc extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsOidc; + show_as_button?: Management.ConnectionShowAsButton; +} + +/** + * Update a connection with strategy=office365 + */ +export interface UpdateConnectionRequestContentOffice365 extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsOffice365; + show_as_button?: Management.ConnectionShowAsButton; +} + +/** + * Update a connection with strategy=okta + */ +export interface UpdateConnectionRequestContentOkta extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsOkta; + show_as_button?: Management.ConnectionShowAsButton; +} + +/** + * Update a connection with strategy=paypal + */ +export interface UpdateConnectionRequestContentPaypal extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsPaypal; +} + +/** + * Update a connection with strategy=paypal-sandbox + */ +export interface UpdateConnectionRequestContentPaypalSandbox extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsPaypalSandbox; +} + +/** + * Update a connection with strategy=pingfederate + */ +export interface UpdateConnectionRequestContentPingFederate extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsPingFederate; + show_as_button?: Management.ConnectionShowAsButton; +} + +/** + * Update a connection with strategy=planningcenter + */ +export interface UpdateConnectionRequestContentPlanningCenter extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsPlanningCenter; +} + +/** + * Update a connection with strategy=renren + */ +export interface UpdateConnectionRequestContentRenren extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsRenren; +} + +/** + * Update a connection with strategy=samlp + */ +export interface UpdateConnectionRequestContentSaml extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsSaml; + show_as_button?: Management.ConnectionShowAsButton; +} + +/** + * Update a connection with strategy=sms + */ +export interface UpdateConnectionRequestContentSms extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsSms; +} + +/** + * Update a connection with strategy=salesforce + */ +export interface UpdateConnectionRequestContentSalesforce extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsSalesforce; +} + +/** + * Update a connection with strategy=salesforce-community + */ +export interface UpdateConnectionRequestContentSalesforceCommunity extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsSalesforceCommunity; +} + +/** + * Update a connection with strategy=salesforce-sandbox + */ +export interface UpdateConnectionRequestContentSalesforceSandbox extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsSalesforceSandbox; +} + +/** + * Update a connection with strategy=sharepoint + */ +export interface UpdateConnectionRequestContentSharepoint extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsSharepoint; + show_as_button?: Management.ConnectionShowAsButton; +} + +/** + * Update a connection with strategy=shop + */ +export interface UpdateConnectionRequestContentShop extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsShop; +} + +/** + * Update a connection with strategy=shopify + */ +export interface UpdateConnectionRequestContentShopify extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsShopify; +} + +/** + * Update a connection with strategy=soundcloud + */ +export interface UpdateConnectionRequestContentSoundcloud extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsSoundcloud; +} + +/** + * Update a connection with strategy=thecity + */ +export interface UpdateConnectionRequestContentTheCity extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsTheCity; +} + +/** + * Update a connection with strategy=thecity-sandbox + */ +export interface UpdateConnectionRequestContentTheCitySandbox extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsTheCitySandbox; +} + +/** + * Update a connection with strategy=thirtysevensignals + */ +export interface UpdateConnectionRequestContentThirtySevenSignals extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsThirtySevenSignals; +} + +/** + * Update a connection with strategy=twitter + */ +export interface UpdateConnectionRequestContentTwitter extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsTwitter; +} + +/** + * Update a connection with strategy=untappd + */ +export interface UpdateConnectionRequestContentUntappd extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsUntappd; +} + +/** + * Update a connection with strategy=vkontakte + */ +export interface UpdateConnectionRequestContentVkontakte extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsVkontakte; +} + +/** + * Update a connection with strategy=weibo + */ +export interface UpdateConnectionRequestContentWeibo extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsWeibo; +} + +/** + * Update a connection with strategy=windowslive + */ +export interface UpdateConnectionRequestContentWindowsLive extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsWindowsLive; +} + +/** + * Update a connection with strategy=wordpress + */ +export interface UpdateConnectionRequestContentWordpress extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsWordpress; +} + +/** + * Update a connection with strategy=yahoo + */ +export interface UpdateConnectionRequestContentYahoo extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsYahoo; +} + +/** + * Update a connection with strategy=yammer + */ +export interface UpdateConnectionRequestContentYammer extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsYammer; +} + +/** + * Update a connection with strategy=yandex + */ +export interface UpdateConnectionRequestContentYandex extends Management.ConnectionCommon { + options?: Management.ConnectionOptionsYandex; +} + export interface UpdateConnectionResponseContent { /** The name of the connection */ name?: string; @@ -15743,6 +17037,8 @@ export interface UpdateCustomDomainResponseContent { domain: string; /** Whether this is a primary domain (true) or not (false). */ primary: boolean; + /** Whether this is the default custom domain (true) or not (false). */ + is_default?: boolean; status: Management.CustomDomainStatusFilterEnum; type: Management.CustomDomainTypeEnum; verification: Management.DomainVerification; @@ -16244,6 +17540,8 @@ export interface UpdateTenantSettingsResponseContent { */ skip_non_verifiable_callback_uri_confirmation_prompt?: boolean | null; resource_parameter_profile?: Management.TenantSettingsResourceParameterProfile; + /** Whether Auth0 Guide (AI-powered assistance) is enabled for this tenant. */ + enable_ai_guide?: boolean; } export interface UpdateTokenQuota { @@ -16926,3 +18224,13 @@ export interface VerifyEmailTicketResponseContent { /** Accepts any additional properties */ [key: string]: any; } + +export interface X509CertificateCredential { + credential_type: Management.X509CertificateCredentialTypeEnum; + /** Friendly name for a credential. */ + name?: string; + /** PEM-formatted X509 certificate. Must be JSON escaped. */ + pem: string; +} + +export type X509CertificateCredentialTypeEnum = "x509_cert"; diff --git a/src/management/tests/wire/actions.test.ts b/src/management/tests/wire/actions.test.ts index ee769e3527..f7c48732ae 100644 --- a/src/management/tests/wire/actions.test.ts +++ b/src/management/tests/wire/actions.test.ts @@ -29,6 +29,7 @@ describe("ActionsClient", () => { status: "pending", built_at: "2024-01-15T09:30:00Z", deploy: true, + modules: [{}], }, ], }; @@ -64,6 +65,7 @@ describe("ActionsClient", () => { status: "pending", built_at: "2024-01-15T09:30:00Z", deploy: true, + modules: [{}], }, ], }; @@ -202,6 +204,7 @@ describe("ActionsClient", () => { created_at: "2024-01-15T09:30:00Z", updated_at: "2024-01-15T09:30:00Z", supported_triggers: [{ id: "id" }], + modules: [{}], }, installed_integration_id: "installed_integration_id", integration: { @@ -229,6 +232,14 @@ describe("ActionsClient", () => { status: "pending", built_at: "2024-01-15T09:30:00Z", deploy: true, + modules: [ + { + module_id: "module_id", + module_name: "module_name", + module_version_id: "module_version_id", + module_version_number: 1, + }, + ], }; server .mockEndpoint() @@ -315,6 +326,7 @@ describe("ActionsClient", () => { id: "id", }, ], + modules: [{}], }, installed_integration_id: "installed_integration_id", integration: { @@ -344,6 +356,14 @@ describe("ActionsClient", () => { status: "pending", built_at: "2024-01-15T09:30:00Z", deploy: true, + modules: [ + { + module_id: "module_id", + module_name: "module_name", + module_version_id: "module_version_id", + module_version_number: 1, + }, + ], }); }); @@ -511,6 +531,7 @@ describe("ActionsClient", () => { created_at: "2024-01-15T09:30:00Z", updated_at: "2024-01-15T09:30:00Z", supported_triggers: [{ id: "id" }], + modules: [{}], }, installed_integration_id: "installed_integration_id", integration: { @@ -538,6 +559,14 @@ describe("ActionsClient", () => { status: "pending", built_at: "2024-01-15T09:30:00Z", deploy: true, + modules: [ + { + module_id: "module_id", + module_name: "module_name", + module_version_id: "module_version_id", + module_version_number: 1, + }, + ], }; server .mockEndpoint() @@ -616,6 +645,7 @@ describe("ActionsClient", () => { id: "id", }, ], + modules: [{}], }, installed_integration_id: "installed_integration_id", integration: { @@ -645,6 +675,14 @@ describe("ActionsClient", () => { status: "pending", built_at: "2024-01-15T09:30:00Z", deploy: true, + modules: [ + { + module_id: "module_id", + module_name: "module_name", + module_version_id: "module_version_id", + module_version_number: 1, + }, + ], }); }); @@ -888,6 +926,7 @@ describe("ActionsClient", () => { created_at: "2024-01-15T09:30:00Z", updated_at: "2024-01-15T09:30:00Z", supported_triggers: [{ id: "id" }], + modules: [{}], }, installed_integration_id: "installed_integration_id", integration: { @@ -915,6 +954,14 @@ describe("ActionsClient", () => { status: "pending", built_at: "2024-01-15T09:30:00Z", deploy: true, + modules: [ + { + module_id: "module_id", + module_name: "module_name", + module_version_id: "module_version_id", + module_version_number: 1, + }, + ], }; server .mockEndpoint() @@ -994,6 +1041,7 @@ describe("ActionsClient", () => { id: "id", }, ], + modules: [{}], }, installed_integration_id: "installed_integration_id", integration: { @@ -1023,6 +1071,14 @@ describe("ActionsClient", () => { status: "pending", built_at: "2024-01-15T09:30:00Z", deploy: true, + modules: [ + { + module_id: "module_id", + module_name: "module_name", + module_version_id: "module_version_id", + module_version_number: 1, + }, + ], }); }); @@ -1158,6 +1214,14 @@ describe("ActionsClient", () => { binding_policy: "trigger-bound", }, ], + modules: [ + { + module_id: "module_id", + module_name: "module_name", + module_version_id: "module_version_id", + module_version_number: 1, + }, + ], }; server .mockEndpoint() @@ -1227,6 +1291,14 @@ describe("ActionsClient", () => { binding_policy: "trigger-bound", }, ], + modules: [ + { + module_id: "module_id", + module_name: "module_name", + module_version_id: "module_version_id", + module_version_number: 1, + }, + ], }); }); diff --git a/src/management/tests/wire/actions/versions.test.ts b/src/management/tests/wire/actions/versions.test.ts index 56dcaafd40..f9075face2 100644 --- a/src/management/tests/wire/actions/versions.test.ts +++ b/src/management/tests/wire/actions/versions.test.ts @@ -29,6 +29,7 @@ describe("VersionsClient", () => { created_at: "2024-01-15T09:30:00Z", updated_at: "2024-01-15T09:30:00Z", supported_triggers: [{ id: "id" }], + modules: [{}], }, ], }; @@ -64,6 +65,7 @@ describe("VersionsClient", () => { id: "id", }, ], + modules: [{}], }, ], }; @@ -187,6 +189,14 @@ describe("VersionsClient", () => { binding_policy: "trigger-bound", }, ], + modules: [ + { + module_id: "module_id", + module_name: "module_name", + module_version_id: "module_version_id", + module_version_number: 1, + }, + ], }; server .mockEndpoint() @@ -256,6 +266,14 @@ describe("VersionsClient", () => { binding_policy: "trigger-bound", }, ], + modules: [ + { + module_id: "module_id", + module_name: "module_name", + module_version_id: "module_version_id", + module_version_number: 1, + }, + ], }); }); @@ -386,6 +404,14 @@ describe("VersionsClient", () => { binding_policy: "trigger-bound", }, ], + modules: [ + { + module_id: "module_id", + module_name: "module_name", + module_version_id: "module_version_id", + module_version_number: 1, + }, + ], }; server .mockEndpoint() @@ -455,6 +481,14 @@ describe("VersionsClient", () => { binding_policy: "trigger-bound", }, ], + modules: [ + { + module_id: "module_id", + module_name: "module_name", + module_version_id: "module_version_id", + module_version_number: 1, + }, + ], }); }); diff --git a/src/management/tests/wire/customDomains.test.ts b/src/management/tests/wire/customDomains.test.ts index 0d35b11f19..fedc85b8c2 100644 --- a/src/management/tests/wire/customDomains.test.ts +++ b/src/management/tests/wire/customDomains.test.ts @@ -14,6 +14,7 @@ describe("CustomDomainsClient", () => { custom_domain_id: "custom_domain_id", domain: "domain", primary: true, + is_default: true, status: "pending_verification", type: "auth0_managed_certs", origin_domain_name: "origin_domain_name", @@ -47,6 +48,7 @@ describe("CustomDomainsClient", () => { custom_domain_id: "custom_domain_id", domain: "domain", primary: true, + is_default: true, status: "pending_verification", type: "auth0_managed_certs", origin_domain_name: "origin_domain_name", @@ -300,6 +302,7 @@ describe("CustomDomainsClient", () => { custom_domain_id: "custom_domain_id", domain: "domain", primary: true, + is_default: true, status: "pending_verification", type: "auth0_managed_certs", origin_domain_name: "origin_domain_name", @@ -326,6 +329,7 @@ describe("CustomDomainsClient", () => { custom_domain_id: "custom_domain_id", domain: "domain", primary: true, + is_default: true, status: "pending_verification", type: "auth0_managed_certs", origin_domain_name: "origin_domain_name", @@ -504,6 +508,7 @@ describe("CustomDomainsClient", () => { custom_domain_id: "custom_domain_id", domain: "domain", primary: true, + is_default: true, status: "pending_verification", type: "auth0_managed_certs", verification: { @@ -536,6 +541,7 @@ describe("CustomDomainsClient", () => { custom_domain_id: "custom_domain_id", domain: "domain", primary: true, + is_default: true, status: "pending_verification", type: "auth0_managed_certs", verification: { diff --git a/src/management/tests/wire/eventStreams.test.ts b/src/management/tests/wire/eventStreams.test.ts index 214fd2d83c..917ec616a4 100644 --- a/src/management/tests/wire/eventStreams.test.ts +++ b/src/management/tests/wire/eventStreams.test.ts @@ -9,49 +9,66 @@ describe("EventStreamsClient", () => { const server = mockServerPool.createServer(); const client = new ManagementClient({ maxRetries: 0, token: "test", environment: server.baseUrl }); - const rawResponseBody = [ - { - id: "id", - name: "name", - subscriptions: [{}], - destination: { - type: "webhook", - configuration: { - webhook_endpoint: "webhook_endpoint", - webhook_authorization: { method: "basic", username: "username" }, + const rawResponseBody = { + eventStreams: [ + { + id: "id", + name: "name", + subscriptions: [{}], + destination: { + type: "webhook", + configuration: { + webhook_endpoint: "webhook_endpoint", + webhook_authorization: { method: "basic", username: "username" }, + }, }, + status: "enabled", + created_at: "2024-01-15T09:30:00Z", + updated_at: "2024-01-15T09:30:00Z", }, - status: "enabled", - created_at: "2024-01-15T09:30:00Z", - updated_at: "2024-01-15T09:30:00Z", - }, - ]; - server.mockEndpoint().get("/event-streams").respondWith().statusCode(200).jsonBody(rawResponseBody).build(); + ], + next: "next", + }; + server + .mockEndpoint({ once: false }) + .get("/event-streams") + .respondWith() + .statusCode(200) + .jsonBody(rawResponseBody) + .build(); - const response = await client.eventStreams.list({ - from: "from", - take: 1, - }); - expect(response).toEqual([ - { - id: "id", - name: "name", - subscriptions: [{}], - destination: { - type: "webhook", - configuration: { - webhook_endpoint: "webhook_endpoint", - webhook_authorization: { - method: "basic", - username: "username", + const expected = { + eventStreams: [ + { + id: "id", + name: "name", + subscriptions: [{}], + destination: { + type: "webhook", + configuration: { + webhook_endpoint: "webhook_endpoint", + webhook_authorization: { + method: "basic", + username: "username", + }, }, }, + status: "enabled", + created_at: "2024-01-15T09:30:00Z", + updated_at: "2024-01-15T09:30:00Z", }, - status: "enabled", - created_at: "2024-01-15T09:30:00Z", - updated_at: "2024-01-15T09:30:00Z", - }, - ]); + ], + next: "next", + }; + const page = await client.eventStreams.list({ + from: "from", + take: 1, + }); + + expect(expected.eventStreams).toEqual(page.data); + expect(page.hasNextPage()).toBe(true); + const nextPage = await page.getNextPage(); + expect(expected.eventStreams).toEqual(nextPage.data); }); test("list (2)", async () => { @@ -59,7 +76,13 @@ describe("EventStreamsClient", () => { const client = new ManagementClient({ maxRetries: 0, token: "test", environment: server.baseUrl }); const rawResponseBody = { key: "value" }; - server.mockEndpoint().get("/event-streams").respondWith().statusCode(400).jsonBody(rawResponseBody).build(); + server + .mockEndpoint({ once: false }) + .get("/event-streams") + .respondWith() + .statusCode(400) + .jsonBody(rawResponseBody) + .build(); await expect(async () => { return await client.eventStreams.list(); @@ -71,7 +94,13 @@ describe("EventStreamsClient", () => { const client = new ManagementClient({ maxRetries: 0, token: "test", environment: server.baseUrl }); const rawResponseBody = { key: "value" }; - server.mockEndpoint().get("/event-streams").respondWith().statusCode(401).jsonBody(rawResponseBody).build(); + server + .mockEndpoint({ once: false }) + .get("/event-streams") + .respondWith() + .statusCode(401) + .jsonBody(rawResponseBody) + .build(); await expect(async () => { return await client.eventStreams.list(); @@ -83,7 +112,13 @@ describe("EventStreamsClient", () => { const client = new ManagementClient({ maxRetries: 0, token: "test", environment: server.baseUrl }); const rawResponseBody = { key: "value" }; - server.mockEndpoint().get("/event-streams").respondWith().statusCode(403).jsonBody(rawResponseBody).build(); + server + .mockEndpoint({ once: false }) + .get("/event-streams") + .respondWith() + .statusCode(403) + .jsonBody(rawResponseBody) + .build(); await expect(async () => { return await client.eventStreams.list(); @@ -95,7 +130,13 @@ describe("EventStreamsClient", () => { const client = new ManagementClient({ maxRetries: 0, token: "test", environment: server.baseUrl }); const rawResponseBody = { key: "value" }; - server.mockEndpoint().get("/event-streams").respondWith().statusCode(429).jsonBody(rawResponseBody).build(); + server + .mockEndpoint({ once: false }) + .get("/event-streams") + .respondWith() + .statusCode(429) + .jsonBody(rawResponseBody) + .build(); await expect(async () => { return await client.eventStreams.list(); diff --git a/src/management/tests/wire/groups.test.ts b/src/management/tests/wire/groups.test.ts new file mode 100644 index 0000000000..0ece34f33b --- /dev/null +++ b/src/management/tests/wire/groups.test.ts @@ -0,0 +1,236 @@ +// This file was auto-generated by Fern from our API Definition. + +import * as Management from "../../api/index"; +import { ManagementClient } from "../../Client"; +import { mockServerPool } from "../mock-server/MockServerPool"; + +describe("GroupsClient", () => { + test("list (1)", async () => { + const server = mockServerPool.createServer(); + const client = new ManagementClient({ maxRetries: 0, token: "test", environment: server.baseUrl }); + + const rawResponseBody = { + groups: [ + { + id: "id", + name: "name", + external_id: "external_id", + connection_id: "connection_id", + organization_id: "organization_id", + tenant_name: "tenant_name", + description: "description", + created_at: "2024-01-15T09:30:00Z", + updated_at: "2024-01-15T09:30:00Z", + }, + ], + next: "next", + start: 1.1, + limit: 1.1, + total: 1.1, + }; + server + .mockEndpoint({ once: false }) + .get("/groups") + .respondWith() + .statusCode(200) + .jsonBody(rawResponseBody) + .build(); + + const expected = { + groups: [ + { + id: "id", + name: "name", + external_id: "external_id", + connection_id: "connection_id", + organization_id: "organization_id", + tenant_name: "tenant_name", + description: "description", + created_at: "2024-01-15T09:30:00Z", + updated_at: "2024-01-15T09:30:00Z", + }, + ], + next: "next", + start: 1.1, + limit: 1.1, + total: 1.1, + }; + const page = await client.groups.list({ + connection_id: "connection_id", + name: "name", + external_id: "external_id", + fields: "fields", + include_fields: true, + from: "from", + take: 1, + }); + + expect(expected.groups).toEqual(page.data); + expect(page.hasNextPage()).toBe(true); + const nextPage = await page.getNextPage(); + expect(expected.groups).toEqual(nextPage.data); + }); + + test("list (2)", async () => { + const server = mockServerPool.createServer(); + const client = new ManagementClient({ maxRetries: 0, token: "test", environment: server.baseUrl }); + + const rawResponseBody = { key: "value" }; + server + .mockEndpoint({ once: false }) + .get("/groups") + .respondWith() + .statusCode(400) + .jsonBody(rawResponseBody) + .build(); + + await expect(async () => { + return await client.groups.list(); + }).rejects.toThrow(Management.BadRequestError); + }); + + test("list (3)", async () => { + const server = mockServerPool.createServer(); + const client = new ManagementClient({ maxRetries: 0, token: "test", environment: server.baseUrl }); + + const rawResponseBody = { key: "value" }; + server + .mockEndpoint({ once: false }) + .get("/groups") + .respondWith() + .statusCode(401) + .jsonBody(rawResponseBody) + .build(); + + await expect(async () => { + return await client.groups.list(); + }).rejects.toThrow(Management.UnauthorizedError); + }); + + test("list (4)", async () => { + const server = mockServerPool.createServer(); + const client = new ManagementClient({ maxRetries: 0, token: "test", environment: server.baseUrl }); + + const rawResponseBody = { key: "value" }; + server + .mockEndpoint({ once: false }) + .get("/groups") + .respondWith() + .statusCode(403) + .jsonBody(rawResponseBody) + .build(); + + await expect(async () => { + return await client.groups.list(); + }).rejects.toThrow(Management.ForbiddenError); + }); + + test("list (5)", async () => { + const server = mockServerPool.createServer(); + const client = new ManagementClient({ maxRetries: 0, token: "test", environment: server.baseUrl }); + + const rawResponseBody = { key: "value" }; + server + .mockEndpoint({ once: false }) + .get("/groups") + .respondWith() + .statusCode(429) + .jsonBody(rawResponseBody) + .build(); + + await expect(async () => { + return await client.groups.list(); + }).rejects.toThrow(Management.TooManyRequestsError); + }); + + test("get (1)", async () => { + const server = mockServerPool.createServer(); + const client = new ManagementClient({ maxRetries: 0, token: "test", environment: server.baseUrl }); + + const rawResponseBody = { + id: "id", + name: "name", + external_id: "external_id", + connection_id: "connection_id", + organization_id: "organization_id", + tenant_name: "tenant_name", + description: "description", + created_at: "2024-01-15T09:30:00Z", + updated_at: "2024-01-15T09:30:00Z", + }; + server.mockEndpoint().get("/groups/id").respondWith().statusCode(200).jsonBody(rawResponseBody).build(); + + const response = await client.groups.get("id"); + expect(response).toEqual({ + id: "id", + name: "name", + external_id: "external_id", + connection_id: "connection_id", + organization_id: "organization_id", + tenant_name: "tenant_name", + description: "description", + created_at: "2024-01-15T09:30:00Z", + updated_at: "2024-01-15T09:30:00Z", + }); + }); + + test("get (2)", async () => { + const server = mockServerPool.createServer(); + const client = new ManagementClient({ maxRetries: 0, token: "test", environment: server.baseUrl }); + + const rawResponseBody = { key: "value" }; + server.mockEndpoint().get("/groups/id").respondWith().statusCode(400).jsonBody(rawResponseBody).build(); + + await expect(async () => { + return await client.groups.get("id"); + }).rejects.toThrow(Management.BadRequestError); + }); + + test("get (3)", async () => { + const server = mockServerPool.createServer(); + const client = new ManagementClient({ maxRetries: 0, token: "test", environment: server.baseUrl }); + + const rawResponseBody = { key: "value" }; + server.mockEndpoint().get("/groups/id").respondWith().statusCode(401).jsonBody(rawResponseBody).build(); + + await expect(async () => { + return await client.groups.get("id"); + }).rejects.toThrow(Management.UnauthorizedError); + }); + + test("get (4)", async () => { + const server = mockServerPool.createServer(); + const client = new ManagementClient({ maxRetries: 0, token: "test", environment: server.baseUrl }); + + const rawResponseBody = { key: "value" }; + server.mockEndpoint().get("/groups/id").respondWith().statusCode(403).jsonBody(rawResponseBody).build(); + + await expect(async () => { + return await client.groups.get("id"); + }).rejects.toThrow(Management.ForbiddenError); + }); + + test("get (5)", async () => { + const server = mockServerPool.createServer(); + const client = new ManagementClient({ maxRetries: 0, token: "test", environment: server.baseUrl }); + + const rawResponseBody = { key: "value" }; + server.mockEndpoint().get("/groups/id").respondWith().statusCode(404).jsonBody(rawResponseBody).build(); + + await expect(async () => { + return await client.groups.get("id"); + }).rejects.toThrow(Management.NotFoundError); + }); + + test("get (6)", async () => { + const server = mockServerPool.createServer(); + const client = new ManagementClient({ maxRetries: 0, token: "test", environment: server.baseUrl }); + + const rawResponseBody = { key: "value" }; + server.mockEndpoint().get("/groups/id").respondWith().statusCode(429).jsonBody(rawResponseBody).build(); + + await expect(async () => { + return await client.groups.get("id"); + }).rejects.toThrow(Management.TooManyRequestsError); + }); +}); diff --git a/src/management/tests/wire/groups/members.test.ts b/src/management/tests/wire/groups/members.test.ts new file mode 100644 index 0000000000..6933b87a2d --- /dev/null +++ b/src/management/tests/wire/groups/members.test.ts @@ -0,0 +1,128 @@ +// This file was auto-generated by Fern from our API Definition. + +import * as Management from "../../../api/index"; +import { ManagementClient } from "../../../Client"; +import { mockServerPool } from "../../mock-server/MockServerPool"; + +describe("MembersClient", () => { + test("get (1)", async () => { + const server = mockServerPool.createServer(); + const client = new ManagementClient({ maxRetries: 0, token: "test", environment: server.baseUrl }); + + const rawResponseBody = { + members: [ + { + id: "id", + member_type: "user", + type: "connection", + connection_id: "connection_id", + created_at: "2024-01-15T09:30:00Z", + }, + ], + next: "next", + }; + server + .mockEndpoint({ once: false }) + .get("/groups/id/members") + .respondWith() + .statusCode(200) + .jsonBody(rawResponseBody) + .build(); + + const expected = { + members: [ + { + id: "id", + member_type: "user", + type: "connection", + connection_id: "connection_id", + created_at: "2024-01-15T09:30:00Z", + }, + ], + next: "next", + }; + const page = await client.groups.members.get("id", { + fields: "fields", + include_fields: true, + from: "from", + take: 1, + }); + + expect(expected.members).toEqual(page.data); + expect(page.hasNextPage()).toBe(true); + const nextPage = await page.getNextPage(); + expect(expected.members).toEqual(nextPage.data); + }); + + test("get (2)", async () => { + const server = mockServerPool.createServer(); + const client = new ManagementClient({ maxRetries: 0, token: "test", environment: server.baseUrl }); + + const rawResponseBody = { key: "value" }; + server + .mockEndpoint({ once: false }) + .get("/groups/id/members") + .respondWith() + .statusCode(400) + .jsonBody(rawResponseBody) + .build(); + + await expect(async () => { + return await client.groups.members.get("id"); + }).rejects.toThrow(Management.BadRequestError); + }); + + test("get (3)", async () => { + const server = mockServerPool.createServer(); + const client = new ManagementClient({ maxRetries: 0, token: "test", environment: server.baseUrl }); + + const rawResponseBody = { key: "value" }; + server + .mockEndpoint({ once: false }) + .get("/groups/id/members") + .respondWith() + .statusCode(401) + .jsonBody(rawResponseBody) + .build(); + + await expect(async () => { + return await client.groups.members.get("id"); + }).rejects.toThrow(Management.UnauthorizedError); + }); + + test("get (4)", async () => { + const server = mockServerPool.createServer(); + const client = new ManagementClient({ maxRetries: 0, token: "test", environment: server.baseUrl }); + + const rawResponseBody = { key: "value" }; + server + .mockEndpoint({ once: false }) + .get("/groups/id/members") + .respondWith() + .statusCode(403) + .jsonBody(rawResponseBody) + .build(); + + await expect(async () => { + return await client.groups.members.get("id"); + }).rejects.toThrow(Management.ForbiddenError); + }); + + test("get (5)", async () => { + const server = mockServerPool.createServer(); + const client = new ManagementClient({ maxRetries: 0, token: "test", environment: server.baseUrl }); + + const rawResponseBody = { key: "value" }; + server + .mockEndpoint({ once: false }) + .get("/groups/id/members") + .respondWith() + .statusCode(429) + .jsonBody(rawResponseBody) + .build(); + + await expect(async () => { + return await client.groups.members.get("id"); + }).rejects.toThrow(Management.TooManyRequestsError); + }); +}); diff --git a/src/management/tests/wire/prompts/rendering.test.ts b/src/management/tests/wire/prompts/rendering.test.ts index c9c96c7828..373015fe3b 100644 --- a/src/management/tests/wire/prompts/rendering.test.ts +++ b/src/management/tests/wire/prompts/rendering.test.ts @@ -12,8 +12,11 @@ describe("RenderingClient", () => { const rawResponseBody = { configs: [ { + tenant: "tenant", + prompt: "prompt", + screen: "screen", rendering_mode: "advanced", - context_configuration: ["context_configuration"], + context_configuration: ["branding.settings"], default_head_tags_disabled: true, use_page_template: true, head_tags: [{}], @@ -34,8 +37,11 @@ describe("RenderingClient", () => { const expected = { configs: [ { + tenant: "tenant", + prompt: "prompt", + screen: "screen", rendering_mode: "advanced", - context_configuration: ["context_configuration"], + context_configuration: ["branding.settings"], default_head_tags_disabled: true, use_page_template: true, head_tags: [{}], @@ -385,7 +391,7 @@ describe("RenderingClient", () => { prompt: "prompt", screen: "screen", rendering_mode: "advanced", - context_configuration: ["context_configuration"], + context_configuration: ["branding.settings"], default_head_tags_disabled: true, use_page_template: true, head_tags: [{ tag: "tag", attributes: { key: "value" }, content: "content" }], @@ -410,7 +416,7 @@ describe("RenderingClient", () => { prompt: "prompt", screen: "screen", rendering_mode: "advanced", - context_configuration: ["context_configuration"], + context_configuration: ["branding.settings"], default_head_tags_disabled: true, use_page_template: true, head_tags: [ @@ -557,7 +563,7 @@ describe("RenderingClient", () => { const rawRequestBody = {}; const rawResponseBody = { rendering_mode: "advanced", - context_configuration: ["context_configuration"], + context_configuration: ["branding.settings"], default_head_tags_disabled: true, use_page_template: true, head_tags: [{ tag: "tag", attributes: { key: "value" }, content: "content" }], @@ -580,7 +586,7 @@ describe("RenderingClient", () => { const response = await client.prompts.rendering.update("login", "login"); expect(response).toEqual({ rendering_mode: "advanced", - context_configuration: ["context_configuration"], + context_configuration: ["branding.settings"], default_head_tags_disabled: true, use_page_template: true, head_tags: [ diff --git a/src/management/tests/wire/tenants/settings.test.ts b/src/management/tests/wire/tenants/settings.test.ts index 7353958edd..5ee64b3ceb 100644 --- a/src/management/tests/wire/tenants/settings.test.ts +++ b/src/management/tests/wire/tenants/settings.test.ts @@ -73,6 +73,7 @@ describe("SettingsClient", () => { authorization_response_iss_parameter_supported: true, skip_non_verifiable_callback_uri_confirmation_prompt: true, resource_parameter_profile: "audience", + enable_ai_guide: true, }; server.mockEndpoint().get("/tenants/settings").respondWith().statusCode(200).jsonBody(rawResponseBody).build(); @@ -172,6 +173,7 @@ describe("SettingsClient", () => { authorization_response_iss_parameter_supported: true, skip_non_verifiable_callback_uri_confirmation_prompt: true, resource_parameter_profile: "audience", + enable_ai_guide: true, }); }); @@ -291,6 +293,7 @@ describe("SettingsClient", () => { authorization_response_iss_parameter_supported: true, skip_non_verifiable_callback_uri_confirmation_prompt: true, resource_parameter_profile: "audience", + enable_ai_guide: true, }; server .mockEndpoint() @@ -394,6 +397,7 @@ describe("SettingsClient", () => { authorization_response_iss_parameter_supported: true, skip_non_verifiable_callback_uri_confirmation_prompt: true, resource_parameter_profile: "audience", + enable_ai_guide: true, }); }); diff --git a/src/management/tests/wire/users/groups.test.ts b/src/management/tests/wire/users/groups.test.ts new file mode 100644 index 0000000000..88a685c4cc --- /dev/null +++ b/src/management/tests/wire/users/groups.test.ts @@ -0,0 +1,144 @@ +// This file was auto-generated by Fern from our API Definition. + +import * as Management from "../../../api/index"; +import { ManagementClient } from "../../../Client"; +import { mockServerPool } from "../../mock-server/MockServerPool"; + +describe("GroupsClient", () => { + test("get (1)", async () => { + const server = mockServerPool.createServer(); + const client = new ManagementClient({ maxRetries: 0, token: "test", environment: server.baseUrl }); + + const rawResponseBody = { + groups: [ + { + id: "id", + name: "name", + external_id: "external_id", + connection_id: "connection_id", + organization_id: "organization_id", + tenant_name: "tenant_name", + description: "description", + created_at: "2024-01-15T09:30:00Z", + updated_at: "2024-01-15T09:30:00Z", + membership_created_at: "2024-01-15T09:30:00Z", + }, + ], + next: "next", + start: 1.1, + limit: 1.1, + total: 1.1, + }; + server + .mockEndpoint({ once: false }) + .get("/users/id/groups") + .respondWith() + .statusCode(200) + .jsonBody(rawResponseBody) + .build(); + + const expected = { + groups: [ + { + id: "id", + name: "name", + external_id: "external_id", + connection_id: "connection_id", + organization_id: "organization_id", + tenant_name: "tenant_name", + description: "description", + created_at: "2024-01-15T09:30:00Z", + updated_at: "2024-01-15T09:30:00Z", + membership_created_at: "2024-01-15T09:30:00Z", + }, + ], + next: "next", + start: 1.1, + limit: 1.1, + total: 1.1, + }; + const page = await client.users.groups.get("id", { + fields: "fields", + include_fields: true, + from: "from", + take: 1, + }); + + expect(expected.groups).toEqual(page.data); + expect(page.hasNextPage()).toBe(true); + const nextPage = await page.getNextPage(); + expect(expected.groups).toEqual(nextPage.data); + }); + + test("get (2)", async () => { + const server = mockServerPool.createServer(); + const client = new ManagementClient({ maxRetries: 0, token: "test", environment: server.baseUrl }); + + const rawResponseBody = { key: "value" }; + server + .mockEndpoint({ once: false }) + .get("/users/id/groups") + .respondWith() + .statusCode(400) + .jsonBody(rawResponseBody) + .build(); + + await expect(async () => { + return await client.users.groups.get("id"); + }).rejects.toThrow(Management.BadRequestError); + }); + + test("get (3)", async () => { + const server = mockServerPool.createServer(); + const client = new ManagementClient({ maxRetries: 0, token: "test", environment: server.baseUrl }); + + const rawResponseBody = { key: "value" }; + server + .mockEndpoint({ once: false }) + .get("/users/id/groups") + .respondWith() + .statusCode(401) + .jsonBody(rawResponseBody) + .build(); + + await expect(async () => { + return await client.users.groups.get("id"); + }).rejects.toThrow(Management.UnauthorizedError); + }); + + test("get (4)", async () => { + const server = mockServerPool.createServer(); + const client = new ManagementClient({ maxRetries: 0, token: "test", environment: server.baseUrl }); + + const rawResponseBody = { key: "value" }; + server + .mockEndpoint({ once: false }) + .get("/users/id/groups") + .respondWith() + .statusCode(403) + .jsonBody(rawResponseBody) + .build(); + + await expect(async () => { + return await client.users.groups.get("id"); + }).rejects.toThrow(Management.ForbiddenError); + }); + + test("get (5)", async () => { + const server = mockServerPool.createServer(); + const client = new ManagementClient({ maxRetries: 0, token: "test", environment: server.baseUrl }); + + const rawResponseBody = { key: "value" }; + server + .mockEndpoint({ once: false }) + .get("/users/id/groups") + .respondWith() + .statusCode(429) + .jsonBody(rawResponseBody) + .build(); + + await expect(async () => { + return await client.users.groups.get("id"); + }).rejects.toThrow(Management.TooManyRequestsError); + }); +}); diff --git a/src/management/version.ts b/src/management/version.ts index 2b9b1a2cd3..426f2b820c 100644 --- a/src/management/version.ts +++ b/src/management/version.ts @@ -1 +1 @@ -export const SDK_VERSION = "5.3.0"; +export const SDK_VERSION = "5.2.0"; diff --git a/yarn.lock b/yarn.lock index 45b11a9375..c49f722a3c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -284,14 +284,14 @@ dependencies: statuses "^2.0.1" -"@eslint-community/eslint-utils@^4.7.0", "@eslint-community/eslint-utils@^4.8.0": - version "4.9.0" - resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.9.0.tgz#7308df158e064f0dd8b8fdb58aa14fa2a7f913b3" - integrity sha512-ayVFHdtZ+hsq1t2Dy24wCmGXGe4q9Gu3smhLYALJrr473ZH27MsnSL+LKUlimp4BWJqMDMLmPpx/Q9R3OAlL4g== +"@eslint-community/eslint-utils@^4.8.0", "@eslint-community/eslint-utils@^4.9.1": + version "4.9.1" + resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.9.1.tgz#4e90af67bc51ddee6cdef5284edf572ec376b595" + integrity sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ== dependencies: eslint-visitor-keys "^3.4.3" -"@eslint-community/regexpp@^4.10.0", "@eslint-community/regexpp@^4.12.1": +"@eslint-community/regexpp@^4.12.1", "@eslint-community/regexpp@^4.12.2": version "4.12.2" resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.12.2.tgz#bccdf615bcf7b6e8db830ec0b8d21c9a25de597b" integrity sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew== @@ -334,10 +334,10 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" -"@eslint/js@9.39.1", "@eslint/js@^9.32.0": - version "9.39.1" - resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.39.1.tgz#0dd59c3a9f40e3f1882975c321470969243e0164" - integrity sha512-S26Stp4zCy88tH94QbBv3XCuzRQiZ9yXofEILmglYTh/Ug/a9/umqvgFtYBAo3Lp0nsI/5/qH1CCrbdK3AP1Tw== +"@eslint/js@9.39.2", "@eslint/js@^9.32.0": + version "9.39.2" + resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.39.2.tgz#2d4b8ec4c3ea13c1b3748e0c97ecd766bdd80599" + integrity sha512-q1mjIoW1VX4IvSocvM/vbTiveKC4k9eLrajNEuSsmjymSDEbpGddtpfOoN7YGAqBK3NG+uqo8ia4PDTt8buCYA== "@eslint/object-schema@^2.1.7": version "2.1.7" @@ -353,14 +353,14 @@ levn "^0.4.1" "@gerrit0/mini-shiki@^3.17.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@gerrit0/mini-shiki/-/mini-shiki-3.19.0.tgz#1c772516e7771681cb4441150f771628ce22e8ef" - integrity sha512-ZSlWfLvr8Nl0T4iA3FF/8VH8HivYF82xQts2DY0tJxZd4wtXJ8AA0nmdW9lmO4hlrh3f9xNwEPtOgqETPqKwDA== - dependencies: - "@shikijs/engine-oniguruma" "^3.19.0" - "@shikijs/langs" "^3.19.0" - "@shikijs/themes" "^3.19.0" - "@shikijs/types" "^3.19.0" + version "3.21.0" + resolved "https://registry.yarnpkg.com/@gerrit0/mini-shiki/-/mini-shiki-3.21.0.tgz#377938e63f29f9f698b00c35dcdebc0c104c1a15" + integrity sha512-9PrsT5DjZA+w3lur/aOIx3FlDeHdyCEFlv9U+fmsVyjPZh61G5SYURQ/1ebe2U63KbDmI2V8IhIUegWb8hjOyg== + dependencies: + "@shikijs/engine-oniguruma" "^3.21.0" + "@shikijs/langs" "^3.21.0" + "@shikijs/themes" "^3.21.0" + "@shikijs/types" "^3.21.0" "@shikijs/vscode-textmate" "^10.0.2" "@humanfs/core@^0.19.1": @@ -713,32 +713,32 @@ resolved "https://registry.yarnpkg.com/@publint/pack/-/pack-0.1.2.tgz#1b9a9567423262093e4a73e77697b65bf622f8c9" integrity sha512-S+9ANAvUmjutrshV4jZjaiG8XQyuJIZ8a4utWmN/vW1sgQ9IfBnPndwkmQYw53QmouOIytT874u65HEmu6H5jw== -"@shikijs/engine-oniguruma@^3.19.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@shikijs/engine-oniguruma/-/engine-oniguruma-3.19.0.tgz#76bd31a90785102f1183d2a073381c117527fca4" - integrity sha512-1hRxtYIJfJSZeM5ivbUXv9hcJP3PWRo5prG/V2sWwiubUKTa+7P62d2qxCW8jiVFX4pgRHhnHNp+qeR7Xl+6kg== +"@shikijs/engine-oniguruma@^3.21.0": + version "3.21.0" + resolved "https://registry.yarnpkg.com/@shikijs/engine-oniguruma/-/engine-oniguruma-3.21.0.tgz#0e666454a03fd85d6c634d9dbe70a63f007a6323" + integrity sha512-OYknTCct6qiwpQDqDdf3iedRdzj6hFlOPv5hMvI+hkWfCKs5mlJ4TXziBG9nyabLwGulrUjHiCq3xCspSzErYQ== dependencies: - "@shikijs/types" "3.19.0" + "@shikijs/types" "3.21.0" "@shikijs/vscode-textmate" "^10.0.2" -"@shikijs/langs@^3.19.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@shikijs/langs/-/langs-3.19.0.tgz#2fa46ae329ec5e88f36fd0167518e0013ab2e49a" - integrity sha512-dBMFzzg1QiXqCVQ5ONc0z2ebyoi5BKz+MtfByLm0o5/nbUu3Iz8uaTCa5uzGiscQKm7lVShfZHU1+OG3t5hgwg== +"@shikijs/langs@^3.21.0": + version "3.21.0" + resolved "https://registry.yarnpkg.com/@shikijs/langs/-/langs-3.21.0.tgz#da33400a85c7cba75fc9f4a6b9feb69a6c39c800" + integrity sha512-g6mn5m+Y6GBJ4wxmBYqalK9Sp0CFkUqfNzUy2pJglUginz6ZpWbaWjDB4fbQ/8SHzFjYbtU6Ddlp1pc+PPNDVA== dependencies: - "@shikijs/types" "3.19.0" + "@shikijs/types" "3.21.0" -"@shikijs/themes@^3.19.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@shikijs/themes/-/themes-3.19.0.tgz#9db4f2b57fac84e266e4fd1ada02df9c5e0102af" - integrity sha512-H36qw+oh91Y0s6OlFfdSuQ0Ld+5CgB/VE6gNPK+Hk4VRbVG/XQgkjnt4KzfnnoO6tZPtKJKHPjwebOCfjd6F8A== +"@shikijs/themes@^3.21.0": + version "3.21.0" + resolved "https://registry.yarnpkg.com/@shikijs/themes/-/themes-3.21.0.tgz#1955d642ea37d70d1137e6cf47da7dc9c34ff4c0" + integrity sha512-BAE4cr9EDiZyYzwIHEk7JTBJ9CzlPuM4PchfcA5ao1dWXb25nv6hYsoDiBq2aZK9E3dlt3WB78uI96UESD+8Mw== dependencies: - "@shikijs/types" "3.19.0" + "@shikijs/types" "3.21.0" -"@shikijs/types@3.19.0", "@shikijs/types@^3.19.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@shikijs/types/-/types-3.19.0.tgz#46fdd08d67a8920473788c3cb6b07cbdf20f6b6f" - integrity sha512-Z2hdeEQlzuntf/BZpFG8a+Fsw9UVXdML7w0o3TgSXV3yNESGon+bs9ITkQb3Ki7zxoXOOu5oJWqZ2uto06V9iQ== +"@shikijs/types@3.21.0", "@shikijs/types@^3.21.0": + version "3.21.0" + resolved "https://registry.yarnpkg.com/@shikijs/types/-/types-3.21.0.tgz#510d6ddbea65add27980a6ca36cc7bdabc7afe90" + integrity sha512-zGrWOxZ0/+0ovPY7PvBU2gIS9tmhSUUt30jAcNV0Bq0gb2S98gwfjIs1vxlmH5zM7/4YxLamT6ChlqqAJmPPjA== dependencies: "@shikijs/vscode-textmate" "^10.0.2" "@types/hast" "^3.0.4" @@ -933,99 +933,99 @@ "@types/yargs-parser" "*" "@typescript-eslint/eslint-plugin@^8.38.0": - version "8.49.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.49.0.tgz#8ed8736b8415a9193989220eadb6031dbcd2260a" - integrity sha512-JXij0vzIaTtCwu6SxTh8qBc66kmf1xs7pI4UOiMDFVct6q86G0Zs7KRcEoJgY3Cav3x5Tq0MF5jwgpgLqgKG3A== - dependencies: - "@eslint-community/regexpp" "^4.10.0" - "@typescript-eslint/scope-manager" "8.49.0" - "@typescript-eslint/type-utils" "8.49.0" - "@typescript-eslint/utils" "8.49.0" - "@typescript-eslint/visitor-keys" "8.49.0" - ignore "^7.0.0" + version "8.53.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.53.0.tgz#afb966c66a2fdc6158cf81118204a971a36d0fc5" + integrity sha512-eEXsVvLPu8Z4PkFibtuFJLJOTAV/nPdgtSjkGoPpddpFk3/ym2oy97jynY6ic2m6+nc5M8SE1e9v/mHKsulcJg== + dependencies: + "@eslint-community/regexpp" "^4.12.2" + "@typescript-eslint/scope-manager" "8.53.0" + "@typescript-eslint/type-utils" "8.53.0" + "@typescript-eslint/utils" "8.53.0" + "@typescript-eslint/visitor-keys" "8.53.0" + ignore "^7.0.5" natural-compare "^1.4.0" - ts-api-utils "^2.1.0" + ts-api-utils "^2.4.0" "@typescript-eslint/parser@^8.38.0": - version "8.49.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-8.49.0.tgz#0ede412d59e99239b770f0f08c76c42fba717fa2" - integrity sha512-N9lBGA9o9aqb1hVMc9hzySbhKibHmB+N3IpoShyV6HyQYRGIhlrO5rQgttypi+yEeKsKI4idxC8Jw6gXKD4THA== - dependencies: - "@typescript-eslint/scope-manager" "8.49.0" - "@typescript-eslint/types" "8.49.0" - "@typescript-eslint/typescript-estree" "8.49.0" - "@typescript-eslint/visitor-keys" "8.49.0" - debug "^4.3.4" - -"@typescript-eslint/project-service@8.49.0": - version "8.49.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/project-service/-/project-service-8.49.0.tgz#ce220525c88cb2d23792b391c07e14cb9697651a" - integrity sha512-/wJN0/DKkmRUMXjZUXYZpD1NEQzQAAn9QWfGwo+Ai8gnzqH7tvqS7oNVdTjKqOcPyVIdZdyCMoqN66Ia789e7g== - dependencies: - "@typescript-eslint/tsconfig-utils" "^8.49.0" - "@typescript-eslint/types" "^8.49.0" - debug "^4.3.4" - -"@typescript-eslint/scope-manager@8.49.0": - version "8.49.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.49.0.tgz#a3496765b57fb48035d671174552e462e5bffa63" - integrity sha512-npgS3zi+/30KSOkXNs0LQXtsg9ekZ8OISAOLGWA/ZOEn0ZH74Ginfl7foziV8DT+D98WfQ5Kopwqb/PZOaIJGg== - dependencies: - "@typescript-eslint/types" "8.49.0" - "@typescript-eslint/visitor-keys" "8.49.0" - -"@typescript-eslint/tsconfig-utils@8.49.0", "@typescript-eslint/tsconfig-utils@^8.49.0": - version "8.49.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.49.0.tgz#857777c8e35dd1e564505833d8043f544442fbf4" - integrity sha512-8prixNi1/6nawsRYxet4YOhnbW+W9FK/bQPxsGB1D3ZrDzbJ5FXw5XmzxZv82X3B+ZccuSxo/X8q9nQ+mFecWA== - -"@typescript-eslint/type-utils@8.49.0": - version "8.49.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.49.0.tgz#d8118a0c1896a78a22f01d3c176e9945409b085b" - integrity sha512-KTExJfQ+svY8I10P4HdxKzWsvtVnsuCifU5MvXrRwoP2KOlNZ9ADNEWWsQTJgMxLzS5VLQKDjkCT/YzgsnqmZg== - dependencies: - "@typescript-eslint/types" "8.49.0" - "@typescript-eslint/typescript-estree" "8.49.0" - "@typescript-eslint/utils" "8.49.0" - debug "^4.3.4" - ts-api-utils "^2.1.0" - -"@typescript-eslint/types@8.49.0", "@typescript-eslint/types@^8.49.0": - version "8.49.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.49.0.tgz#c1bd3ebf956d9e5216396349ca23c58d74f06aee" - integrity sha512-e9k/fneezorUo6WShlQpMxXh8/8wfyc+biu6tnAqA81oWrEic0k21RHzP9uqqpyBBeBKu4T+Bsjy9/b8u7obXQ== - -"@typescript-eslint/typescript-estree@8.49.0": - version "8.49.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.49.0.tgz#99c5a53275197ccb4e849786dad68344e9924135" - integrity sha512-jrLdRuAbPfPIdYNppHJ/D0wN+wwNfJ32YTAm10eJVsFmrVpXQnDWBn8niCSMlWjvml8jsce5E/O+86IQtTbJWA== - dependencies: - "@typescript-eslint/project-service" "8.49.0" - "@typescript-eslint/tsconfig-utils" "8.49.0" - "@typescript-eslint/types" "8.49.0" - "@typescript-eslint/visitor-keys" "8.49.0" - debug "^4.3.4" - minimatch "^9.0.4" - semver "^7.6.0" + version "8.53.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-8.53.0.tgz#d8bed6f12dc74e03751e5f947510ff2b165990c6" + integrity sha512-npiaib8XzbjtzS2N4HlqPvlpxpmZ14FjSJrteZpPxGUaYPlvhzlzUZ4mZyABo0EFrOWnvyd0Xxroq//hKhtAWg== + dependencies: + "@typescript-eslint/scope-manager" "8.53.0" + "@typescript-eslint/types" "8.53.0" + "@typescript-eslint/typescript-estree" "8.53.0" + "@typescript-eslint/visitor-keys" "8.53.0" + debug "^4.4.3" + +"@typescript-eslint/project-service@8.53.0": + version "8.53.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/project-service/-/project-service-8.53.0.tgz#327c67c61c16a1c8b12a440b0779b41eb77cc7df" + integrity sha512-Bl6Gdr7NqkqIP5yP9z1JU///Nmes4Eose6L1HwpuVHwScgDPPuEWbUVhvlZmb8hy0vX9syLk5EGNL700WcBlbg== + dependencies: + "@typescript-eslint/tsconfig-utils" "^8.53.0" + "@typescript-eslint/types" "^8.53.0" + debug "^4.4.3" + +"@typescript-eslint/scope-manager@8.53.0": + version "8.53.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.53.0.tgz#f922fcbf0d42e72f065297af31779ccf19de9a97" + integrity sha512-kWNj3l01eOGSdVBnfAF2K1BTh06WS0Yet6JUgb9Cmkqaz3Jlu0fdVUjj9UI8gPidBWSMqDIglmEXifSgDT/D0g== + dependencies: + "@typescript-eslint/types" "8.53.0" + "@typescript-eslint/visitor-keys" "8.53.0" + +"@typescript-eslint/tsconfig-utils@8.53.0", "@typescript-eslint/tsconfig-utils@^8.53.0": + version "8.53.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.53.0.tgz#105279d7969a7abdc8345cc9c57cff83cf910f8f" + integrity sha512-K6Sc0R5GIG6dNoPdOooQ+KtvT5KCKAvTcY8h2rIuul19vxH5OTQk7ArKkd4yTzkw66WnNY0kPPzzcmWA+XRmiA== + +"@typescript-eslint/type-utils@8.53.0": + version "8.53.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.53.0.tgz#81a0de5c01fc68f6df0591d03cd8226bda01c91f" + integrity sha512-BBAUhlx7g4SmcLhn8cnbxoxtmS7hcq39xKCgiutL3oNx1TaIp+cny51s8ewnKMpVUKQUGb41RAUWZ9kxYdovuw== + dependencies: + "@typescript-eslint/types" "8.53.0" + "@typescript-eslint/typescript-estree" "8.53.0" + "@typescript-eslint/utils" "8.53.0" + debug "^4.4.3" + ts-api-utils "^2.4.0" + +"@typescript-eslint/types@8.53.0", "@typescript-eslint/types@^8.53.0": + version "8.53.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.53.0.tgz#1adcad3fa32bc2c4cbf3785ba07a5e3151819efb" + integrity sha512-Bmh9KX31Vlxa13+PqPvt4RzKRN1XORYSLlAE+sO1i28NkisGbTtSLFVB3l7PWdHtR3E0mVMuC7JilWJ99m2HxQ== + +"@typescript-eslint/typescript-estree@8.53.0": + version "8.53.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.53.0.tgz#7805b46b7a8ce97e91b7bb56fc8b1ba26ca8ef52" + integrity sha512-pw0c0Gdo7Z4xOG987u3nJ8akL9093yEEKv8QTJ+Bhkghj1xyj8cgPaavlr9rq8h7+s6plUJ4QJYw2gCZodqmGw== + dependencies: + "@typescript-eslint/project-service" "8.53.0" + "@typescript-eslint/tsconfig-utils" "8.53.0" + "@typescript-eslint/types" "8.53.0" + "@typescript-eslint/visitor-keys" "8.53.0" + debug "^4.4.3" + minimatch "^9.0.5" + semver "^7.7.3" tinyglobby "^0.2.15" - ts-api-utils "^2.1.0" + ts-api-utils "^2.4.0" -"@typescript-eslint/utils@8.49.0": - version "8.49.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.49.0.tgz#43b3b91d30afd6f6114532cf0b228f1790f43aff" - integrity sha512-N3W7rJw7Rw+z1tRsHZbK395TWSYvufBXumYtEGzypgMUthlg0/hmCImeA8hgO2d2G4pd7ftpxxul2J8OdtdaFA== +"@typescript-eslint/utils@8.53.0": + version "8.53.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.53.0.tgz#bf0a4e2edaf1afc9abce209fc02f8cab0b74af13" + integrity sha512-XDY4mXTez3Z1iRDI5mbRhH4DFSt46oaIFsLg+Zn97+sYrXACziXSQcSelMybnVZ5pa1P6xYkPr5cMJyunM1ZDA== dependencies: - "@eslint-community/eslint-utils" "^4.7.0" - "@typescript-eslint/scope-manager" "8.49.0" - "@typescript-eslint/types" "8.49.0" - "@typescript-eslint/typescript-estree" "8.49.0" + "@eslint-community/eslint-utils" "^4.9.1" + "@typescript-eslint/scope-manager" "8.53.0" + "@typescript-eslint/types" "8.53.0" + "@typescript-eslint/typescript-estree" "8.53.0" -"@typescript-eslint/visitor-keys@8.49.0": - version "8.49.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.49.0.tgz#8e450cc502c0d285cad9e84d400cf349a85ced6c" - integrity sha512-LlKaciDe3GmZFphXIc79THF/YYBugZ7FS1pO581E/edlVVNbZKDy93evqmrfQ9/Y4uN0vVhX4iuchq26mK/iiA== +"@typescript-eslint/visitor-keys@8.53.0": + version "8.53.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.53.0.tgz#9a785664ddae7e3f7e570ad8166e48dbc9c6cf02" + integrity sha512-LZ2NqIHFhvFwxG0qZeLL9DvdNAHPGCY5dIRwBhyYeU+LfLhcStE1ImjsuTG/WaVh3XysGaeLW8Rqq7cGkPCFvw== dependencies: - "@typescript-eslint/types" "8.49.0" + "@typescript-eslint/types" "8.53.0" eslint-visitor-keys "^4.2.1" "@webassemblyjs/ast@1.14.1", "@webassemblyjs/ast@^1.14.1": @@ -1627,7 +1627,7 @@ data-urls@^3.0.2: whatwg-mimetype "^3.0.0" whatwg-url "^11.0.0" -debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4: +debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.4.3: version "4.4.3" resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.3.tgz#c6ae432d9bd9662582fce08709b038c58e9e3d6a" integrity sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA== @@ -1833,9 +1833,9 @@ eslint-visitor-keys@^4.2.1: integrity sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ== eslint@^9.32.0: - version "9.39.1" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-9.39.1.tgz#be8bf7c6de77dcc4252b5a8dcb31c2efff74a6e5" - integrity sha512-BhHmn2yNOFA9H9JmmIVKJmd288g9hrVRDkdoIgRCRuSySRUHH7r/DI6aAXW9T1WwUuY3DFgrcaqB+deURBLR5g== + version "9.39.2" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-9.39.2.tgz#cb60e6d16ab234c0f8369a3fe7cc87967faf4b6c" + integrity sha512-LEyamqS7W5HB3ujJyvi0HQK/dtVINZvd5mAAp9eT5S/ujByGjiZLCzPcHVzuXbpJDJF/cxwHlfceVUDZ2lnSTw== dependencies: "@eslint-community/eslint-utils" "^4.8.0" "@eslint-community/regexpp" "^4.12.1" @@ -1843,7 +1843,7 @@ eslint@^9.32.0: "@eslint/config-helpers" "^0.4.2" "@eslint/core" "^0.17.0" "@eslint/eslintrc" "^3.3.1" - "@eslint/js" "9.39.1" + "@eslint/js" "9.39.2" "@eslint/plugin-kit" "^0.4.1" "@humanfs/node" "^0.16.6" "@humanwhocodes/module-importer" "^1.0.1" @@ -1887,9 +1887,9 @@ esprima@^4.0.0, esprima@^4.0.1: integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== esquery@^1.5.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.6.0.tgz#91419234f804d852a82dceec3e16cdc22cf9dae7" - integrity sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg== + version "1.7.0" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.7.0.tgz#08d048f261f0ddedb5bae95f46809463d9c9496d" + integrity sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g== dependencies: estraverse "^5.1.0" @@ -2247,7 +2247,7 @@ ignore@^5.2.0: resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.2.tgz#3cd40e729f3643fd87cb04e50bf0eb722bc596f5" integrity sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g== -ignore@^7.0.0: +ignore@^7.0.5: version "7.0.5" resolved "https://registry.yarnpkg.com/ignore/-/ignore-7.0.5.tgz#4cb5f6cd7d4c7ab0365738c7aea888baa6d7efd9" integrity sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg== @@ -3080,7 +3080,7 @@ minimatch@^3.0.4, minimatch@^3.1.1, minimatch@^3.1.2: dependencies: brace-expansion "^1.1.7" -minimatch@^9.0.4, minimatch@^9.0.5: +minimatch@^9.0.5: version "9.0.5" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.5.tgz#d74f9dd6b57d83d8e98cfb82133b03978bc929e5" integrity sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow== @@ -3346,9 +3346,9 @@ prelude-ls@^1.2.1: integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== prettier-linter-helpers@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz#d23d41fe1375646de2d0104d3454a3008802cf7b" - integrity sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w== + version "1.0.1" + resolved "https://registry.yarnpkg.com/prettier-linter-helpers/-/prettier-linter-helpers-1.0.1.tgz#6a31f88a4bad6c7adda253de12ba4edaea80ebcd" + integrity sha512-SxToR7P8Y2lWmv/kTzVLC1t/GDI2WGjMwNhLLE9qtH8Q13C+aEmuRlzDst4Up4s0Wc8sF2M+J57iB3cMLqftfg== dependencies: fast-diff "^1.1.2" @@ -3531,7 +3531,7 @@ semver@^6.3.0, semver@^6.3.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.3.4, semver@^7.5.3, semver@^7.5.4, semver@^7.6.0, semver@^7.7.3: +semver@^7.3.4, semver@^7.5.3, semver@^7.5.4, semver@^7.7.3: version "7.7.3" resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.3.tgz#4b5f4143d007633a8dc671cd0a6ef9147b8bb946" integrity sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q== @@ -3821,10 +3821,10 @@ tr46@^3.0.0: dependencies: punycode "^2.1.1" -ts-api-utils@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-2.1.0.tgz#595f7094e46eed364c13fd23e75f9513d29baf91" - integrity sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ== +ts-api-utils@^2.4.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-2.4.0.tgz#2690579f96d2790253bdcf1ca35d569ad78f9ad8" + integrity sha512-3TaVTaAv2gTiMB35i3FiGJaRfwb3Pyn/j3m/bfAvGe8FB7CF6u+LMYqYlDh7reQf7UNvoTvdfAqHGmPGOSsPmA== ts-jest@^29.3.4: version "29.4.6" @@ -3880,9 +3880,9 @@ typedoc-plugin-missing-exports@^4.0.0: integrity sha512-WNoeWX9+8X3E3riuYPduilUTFefl1K+Z+5bmYqNeH5qcWjtnTRMbRzGdEQ4XXn1WEO4WCIlU0vf46Ca2y/mspg== typedoc@^0.28.7: - version "0.28.15" - resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.28.15.tgz#667faf77eb934deb935fbfd5108a6de5f953948f" - integrity sha512-mw2/2vTL7MlT+BVo43lOsufkkd2CJO4zeOSuWQQsiXoV2VuEn7f6IZp2jsUDPmBMABpgR0R5jlcJ2OGEFYmkyg== + version "0.28.16" + resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.28.16.tgz#3901672c48746587fa24390077d07317a1fd180f" + integrity sha512-x4xW77QC3i5DUFMBp0qjukOTnr/sSg+oEs86nB3LjDslvAmwe/PUGDWbe3GrIqt59oTqoXK5GRK9tAa0sYMiog== dependencies: "@gerrit0/mini-shiki" "^3.17.0" lunr "^2.3.9" @@ -3906,9 +3906,9 @@ uglify-js@^3.1.4: integrity sha512-v3Xu+yuwBXisp6QYTcH4UbH+xYJXqnq2m/LtQVWKWzYc1iehYnLixoQDN9FH6/j9/oybfd6W9Ghwkl8+UMKTKQ== undici-types@^6.15.0: - version "6.21.0" - resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.21.0.tgz#691d00af3909be93a7faa13be61b3a5b50ef12cb" - integrity sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ== + version "6.23.0" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.23.0.tgz#5291144c899c9c868968fba80fddd9c48def75f9" + integrity sha512-HN7GeXgBUs1StmY/vf9hIH11LrNI5SfqmFVtxKyp9Dhuf1P1cDSRlS+H1NJDaGOWzlI08q+NmiHgu11Vx6QnhA== undici-types@~5.26.4: version "5.26.5" @@ -3921,9 +3921,9 @@ undici-types@~7.16.0: integrity sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw== undici@^7.12.0: - version "7.16.0" - resolved "https://registry.yarnpkg.com/undici/-/undici-7.16.0.tgz#cb2a1e957726d458b536e3f076bf51f066901c1a" - integrity sha512-QEg3HPMll0o3t2ourKwOeUAZ159Kn9mx5pnzHRQO8+Wixmh88YdZRiIwat0iNzNNXn0yoEtXJqFpyW7eM8BV7g== + version "7.18.2" + resolved "https://registry.yarnpkg.com/undici/-/undici-7.18.2.tgz#6cf724ef799a67d94fd55adf66b1e184176efcdf" + integrity sha512-y+8YjDFzWdQlSE9N5nzKMT3g4a5UBX1HKowfdXh0uvAnTaqqwqB92Jt4UXBAeKekDs5IaDKyJFR4X1gYVCgXcw== universalify@^0.2.0: version "0.2.0"