Skip to content

feat: add user consent signing keys, client oidc_support, connection otp_settings, and resource server type - #1436

Merged
developerkunal merged 3 commits into
masterfrom
fern-bot/2026-10-27_06-05-32_689
Oct 28, 2026
Merged

developerkunal merged 3 commits into
masterfrom
fern-bot/2026-10-27_06-05-32_689

Conversation

@fern-api

@fern-api fern-api Bot commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

🔧 Changes

Regenerates the Management API SDK with Fern generator 3.107.6 (previously 3.107.1).

This release:

  • adds admin endpoints for user consent signing keys;
  • adds oidc_support to Client responses;
  • adds otp_settings to database connection options;
  • adds a resource server type (universal_commerce_protocol_server);
  • adds SAML cross-app-access requesting app fields;
  • adds a status filter to segment listing.

All API changes are additive. The core runtime (core/, errors/, BaseClient.ts) is unchanged, and there are no breaking changes.

  • Users – consent signing keys (new)
    • users.listConsentSigningKeys(id): GET /users/{id}/consent-signing-keys. Returns ListUserConsentSigningKeysResponseContent (ConsentSigningKey[]); the array is empty when the user has no keys.
    • users.getConsentSigningKey(id, kid): GET /users/{id}/consent-signing-keys/{kid}.
    • users.deleteConsentSigningKey(id, kid): DELETE /users/{id}/consent-signing-keys/{kid}.
    • New type ConsentSigningKey: kid, device_identifier, created_at, expires_at (all required).
    • Errors: 400 / 401 / 403 / 429 on all three, plus 404 on getConsentSigningKey.
    • Path parameters go through encodePathParam(…, errors.ManagementError), so . / .. are rejected before any request is sent.
  • Clients – oidc_support
    • New ClientOidcSupport (is_allowed?, allow_all_scopes?, allowed_scopes?) on Client, ClientSearchResponse, and the Get / Create / Update / RotateSecret ClientResponseContent types. The request-side types (ClientOidcSupportPost / Patch) were already present.
    • allowed_scopes uses the existing ClientOidcSupportAllowedScopesEnum: profile | email | address | phone.
  • Connections
    • New otp_settings?: ConnectionOtpSettings (email?, phone?) on ConnectionOptionsAuth0, ConnectionPropertiesOptions and UpdateConnectionOptions.
    • New ConnectionOtpChannelSettings: otp_length? (digits), otp_expiry? (seconds).
    • SAML: ConnectionOptionsSaml gains client_id? and client_secret?. Their types are ConnectionClientIdSamlxaaRequestingApp (an alias of ConnectionClientIdOidc) and ConnectionClientSecretSamlxaaRequestingApp; both are strings.
    • ConnectionResponseContentSaml, CreateConnectionRequestContentSaml and UpdateConnectionRequestContentSaml gain cross_app_access_requesting_app?.
  • Resource Servers: new type?: ResourceServerTypeEnum | null on CreateResourceServerRequestContent / UpdateResourceServerRequestContent and on all resource server response types (ResourceServer, ResourceServerSearchResponse, Create / Get / Update ResourceServerResponseContent). ResourceServerTypeEnum has one value, universal_commerce_protocol_server.
  • Experimentation: experimentation.segments.list() accepts status?: SegmentStatusEnum | null (active | archived) and sends it as a query parameter.
  • Attack Protection: form_submission_mode moves before max_attempts in the brute-force settings types. Ordering only; no type change.
  • Tenant settings: the JSDoc for TenantSettingsFlags.dashboard_insights_view now marks it deprecated (it has no effect).
  • Tests: Stream.test.ts keeps the Promise<ReadableStream> return type on the null-reconnect stub, so the @ts-expect-error stays valid. The generator drops this annotation; it is reapplied here as a replay customisation, as originally fixed in feat: add SSE reconnection, passkey guardian factor, and additionalBodyParameters; reject dot-segment path params #1428.
  • Version, docs and dependencies
    • package.json and src/management/version.ts: version bumped from 7.6.0 to 7.6.1.
    • reference.md regenerated: adds users.listConsentSigningKeys, users.getConsentSigningKey and users.deleteConsentSigningKey.
    • yarn.lock refreshed with dev / transitive updates only:
      • @babel/* 7.29.11 (including @babel/types);
      • @typescript-eslint/* 8.72.1;
      • baseline-browser-mapping, caniuse-lite, electron-to-chromium, node-releases, schema-utils, tldts-core, and a few other transitive packages.
    • .fern/replay.lock updated for the new generation.
// Consent signing keys
const keys = await client.users.listConsentSigningKeys("auth0|123");
const key = await client.users.getConsentSigningKey("auth0|123", keys[0].kid);
await client.users.deleteConsentSigningKey("auth0|123", key.kid);
// Resource server type
await client.resourceServers.create({
    identifier: "https://ucp.example.com",
    type: "universal_commerce_protocol_server",
});
// OTP settings on a database connection
await client.connections.update("con_123", {
    options: { otp_settings: { email: { otp_length: 6, otp_expiry: 900 } } },
});
// OIDC support on a client response
const app = await client.clients.get("client_id");
console.log(app.oidc_support?.is_allowed, app.oidc_support?.allowed_scopes);
// Segments filtered by status
await client.experimentation.segments.list({ status: "active" });

🔬 Testing

  • wire/users.test.ts: 16 new tests for consent signing keys (listConsentSigningKeys 1–5, getConsentSigningKey 1–6, deleteConsentSigningKey 1–5), covering success and the 400 / 401 / 403 / 404 / 429 error paths.
  • wire/clients.test.ts: oidc_support added to the client response fixtures.
  • wire/resourceServers.test.ts: type added to the resource server request and response fixtures.
  • wire/experimentation/segments.test.ts: status added to the list() request.
  • wire/attackProtection/bruteForceProtection.test.ts: fixture field order updated to match the type.
  • unit/stream/Stream.test.ts: return-type annotation on the null-reconnect stub restored (see Changes).
  • Locally: yarn test passes 207/207 suites and 4,865 tests across the unit, wire and root projects. tsc --noEmit is clean, yarn build succeeds, and lint reports no errors.

📝 Checklist

  • All new/changed/fixed functionality is covered by tests (or N/A)
  • I have added documentation for all new/changed functionality (or N/A)

@fern-api
fern-api Bot requested a review from a team as a code owner October 27, 2026 06:05
@codecov

codecov Bot commented Oct 27, 2026 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 87.87879% with 12 lines in your changes missing coverage. Please review.
✅ Project coverage is 89.46%. Comparing base (b064402) to head (f1f0713).

Files with missing lines Patch % Lines
...rc/management/api/resources/users/client/Client.ts 87.36% 12 Missing ⚠️
Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #1436      +/-   ##
==========================================
- Coverage   89.47%   89.46%   -0.01%     
==========================================
  Files         449      449              
  Lines       22784    22881      +97     
  Branches    10823    10882      +59     
==========================================
+ Hits        20386    20471      +85     
- Misses       2398     2410      +12     
Flag Coverage Δ
alltests 89.46% <87.87%> (-0.01%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
...xperimentation/resources/segments/client/Client.ts 89.06% <100.00%> (+0.05%) ⬆️
src/management/api/types/types.ts 100.00% <100.00%> (ø)
src/management/version.ts 100.00% <100.00%> (ø)
...rc/management/api/resources/users/client/Client.ts 89.55% <87.36%> (-0.59%) ⬇️
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@ankita10119 ankita10119 changed the title SDK regeneration feat: add user consent signing keys, client oidc_support, connection otp_settings, and resource server type (reverts Fern core to 3.72.5) Oct 27, 2026
@ankita10119 ankita10119 changed the title feat: add user consent signing keys, client oidc_support, connection otp_settings, and resource server type (reverts Fern core to 3.72.5) feat: add user consent signing keys, client oidc_support, connection otp_settings, and resource server type Oct 27, 2026
fern-api Bot added 2 commits October 28, 2026 08:46
Generated by Fern
CLI Version: unknown
Generators:
  - fernapi/fern-typescript-sdk: 3.107.6
Patches applied (6):
  - patch-066ff9e0: docs: add v6 migration guide for breaking changes in v6.0.0 (#1368)
  - patch-d8faf7a2: docs: update v6 migration guide with federatedConnectionsTokensets and federated_connections_access_tokens breaking changes (#1370)
  - patch-0f7baa6f: fix: auto-stamp SDK_VERSION from package.json during build (#1382)
  - patch-b942f5d6: docs: add Authentication API migration guide (auth0-auth-js / auth0-server-js) (#1395)
  - patch-842d2f51: docs: add v7 migration guide (v6 → v7) (#1396)
  - patch-456afefc: feat: enhance domain validation for ManagementClient and related components

Patches with unresolved conflicts (12):
  - patch-490e5634: feat(management): add sub-package exports and management auth helper (#1373)
  - patch-74170bb0: Release v6.1.0 (#1381)
  - patch-4fcb39a4: Release v6.2.0 (#1389)
  - patch-f9d64134: Release v6.3.0 (#1393)
  - patch-4d450aa4: Release v6.4.0 (#1401)
  - patch-d4614ec0: Release v7.0.0 (#1402)
  - patch-e1e90b89: Release v7.1.0 (#1405)
  - patch-567042f4: Release v7.2.0 (#1409)
  - patch-de9f20d2: Release v7.3.0 (#1415)
  - patch-7750e996: Release v7.4.0 (#1424)
  - patch-f9566e21: Release v7.5.0 (#1427)
  - patch-185ac064: Release v7.6.0 (#1430)
    Run `fern-replay resolve` to apply these customizations.

Patches absorbed by generator (2):
  - patch-54876943: docs: update v7 migration guide with export changes and replacements
  - patch-4e648106: test: refactor domain validation tests to use parameterized cases and add port handling
    The generator now produces these customizations natively.
@fern-api
fern-api Bot force-pushed the fern-bot/2026-10-27_06-05-32_689 branch from 88447a3 to be0df48 Compare October 28, 2026 08:46
@fern-api fern-api Bot changed the title feat: add user consent signing keys, client oidc_support, connection otp_settings, and resource server type SDK regeneration Oct 28, 2026
@ankita10119 ankita10119 changed the title SDK regeneration feat: add user consent signing keys, client oidc_support, connection otp_settings, and resource server type Oct 28, 2026

@ankita10119 ankita10119 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@developerkunal developerkunal left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@developerkunal
developerkunal merged commit 8ef8878 into master Oct 28, 2026
11 checks passed
@developerkunal
developerkunal deleted the fern-bot/2026-10-27_06-05-32_689 branch October 28, 2026 12:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants