@fusionauth/typescript-client 1.48.0 → 1.50.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -27,21 +27,21 @@ export declare class FusionAuthClient {
27
27
  * "actioner". Both user ids are required in the request object.
28
28
  *
29
29
  * @param {ActionRequest} request The action request that includes all the information about the action being taken including
30
- * the id of the action, any options and the duration (if applicable).
30
+ * the Id of the action, any options and the duration (if applicable).
31
31
  * @returns {Promise<ClientResponse<ActionResponse>>}
32
32
  */
33
33
  actionUser(request: ActionRequest): Promise<ClientResponse<ActionResponse>>;
34
34
  /**
35
- * Activates the FusionAuth Reactor using a license id and optionally a license text (for air-gapped deployments)
35
+ * Activates the FusionAuth Reactor using a license Id and optionally a license text (for air-gapped deployments)
36
36
  *
37
37
  * @param {ReactorRequest} request An optional request that contains the license text to activate Reactor (useful for air-gap deployments of FusionAuth).
38
38
  * @returns {Promise<ClientResponse<void>>}
39
39
  */
40
40
  activateReactor(request: ReactorRequest): Promise<ClientResponse<void>>;
41
41
  /**
42
- * Adds a user to an existing family. The family id must be specified.
42
+ * Adds a user to an existing family. The family Id must be specified.
43
43
  *
44
- * @param {UUID} familyId The id of the family.
44
+ * @param {UUID} familyId The Id of the family.
45
45
  * @param {FamilyRequest} request The request object that contains all the information used to determine which user to add to the family.
46
46
  * @returns {Promise<ClientResponse<FamilyResponse>>}
47
47
  */
@@ -59,7 +59,7 @@ export declare class FusionAuthClient {
59
59
  /**
60
60
  * Cancels the user action.
61
61
  *
62
- * @param {UUID} actionId The action id of the action to cancel.
62
+ * @param {UUID} actionId The action Id of the action to cancel.
63
63
  * @param {ActionRequest} request The action request that contains the information about the cancellation.
64
64
  * @returns {Promise<ClientResponse<ActionResponse>>}
65
65
  */
@@ -77,7 +77,7 @@ export declare class FusionAuthClient {
77
77
  */
78
78
  changePassword(changePasswordId: string, request: ChangePasswordRequest): Promise<ClientResponse<ChangePasswordResponse>>;
79
79
  /**
80
- * Changes a user's password using their identity (login id and password). Using a loginId instead of the changePasswordId
80
+ * Changes a user's password using their identity (loginId and password). Using a loginId instead of the changePasswordId
81
81
  * bypasses the email verification and allows a password to be changed directly without first calling the #forgotPassword
82
82
  * method.
83
83
  *
@@ -133,9 +133,9 @@ export declare class FusionAuthClient {
133
133
  * Adds a comment to the user's account.
134
134
  *
135
135
  * @param {UserCommentRequest} request The request object that contains all the information used to create the user comment.
136
- * @returns {Promise<ClientResponse<void>>}
136
+ * @returns {Promise<ClientResponse<UserCommentResponse>>}
137
137
  */
138
- commentOnUser(request: UserCommentRequest): Promise<ClientResponse<void>>;
138
+ commentOnUser(request: UserCommentRequest): Promise<ClientResponse<UserCommentResponse>>;
139
139
  /**
140
140
  * Complete a WebAuthn authentication ceremony by validating the signature against the previously generated challenge without logging the user in
141
141
  *
@@ -178,7 +178,7 @@ export declare class FusionAuthClient {
178
178
  */
179
179
  createApplication(applicationId: UUID, request: ApplicationRequest): Promise<ClientResponse<ApplicationResponse>>;
180
180
  /**
181
- * Creates a new role for an application. You must specify the id of the application you are creating the role for.
181
+ * Creates a new role for an application. You must specify the Id of the application you are creating the role for.
182
182
  * You can optionally specify an Id for the role inside the ApplicationRole object itself, if not provided one will be generated.
183
183
  *
184
184
  * @param {UUID} applicationId The Id of the application to create the role on.
@@ -237,7 +237,7 @@ export declare class FusionAuthClient {
237
237
  */
238
238
  createEntityType(entityTypeId: UUID, request: EntityTypeRequest): Promise<ClientResponse<EntityTypeResponse>>;
239
239
  /**
240
- * Creates a new permission for an entity type. You must specify the id of the entity type you are creating the permission for.
240
+ * Creates a new permission for an entity type. You must specify the Id of the entity type you are creating the permission for.
241
241
  * You can optionally specify an Id for the permission inside the EntityTypePermission object itself, if not provided one will be generated.
242
242
  *
243
243
  * @param {UUID} entityTypeId The Id of the entity type to create the permission on.
@@ -247,10 +247,10 @@ export declare class FusionAuthClient {
247
247
  */
248
248
  createEntityTypePermission(entityTypeId: UUID, permissionId: UUID, request: EntityTypeRequest): Promise<ClientResponse<EntityTypeResponse>>;
249
249
  /**
250
- * Creates a family with the user id in the request as the owner and sole member of the family. You can optionally specify an id for the
250
+ * Creates a family with the user Id in the request as the owner and sole member of the family. You can optionally specify an Id for the
251
251
  * family, if not provided one will be generated.
252
252
  *
253
- * @param {UUID} familyId (Optional) The id for the family. If not provided a secure random UUID will be generated.
253
+ * @param {UUID} familyId (Optional) The Id for the family. If not provided a secure random UUID will be generated.
254
254
  * @param {FamilyRequest} request The request object that contains all the information used to create the family.
255
255
  * @returns {Promise<ClientResponse<FamilyResponse>>}
256
256
  */
@@ -326,6 +326,16 @@ export declare class FusionAuthClient {
326
326
  * @returns {Promise<ClientResponse<MessengerResponse>>}
327
327
  */
328
328
  createMessenger(messengerId: UUID, request: MessengerRequest): Promise<ClientResponse<MessengerResponse>>;
329
+ /**
330
+ * Creates a new custom OAuth scope for an application. You must specify the Id of the application you are creating the scope for.
331
+ * You can optionally specify an Id for the OAuth scope on the URL, if not provided one will be generated.
332
+ *
333
+ * @param {UUID} applicationId The Id of the application to create the OAuth scope on.
334
+ * @param {UUID} scopeId (Optional) The Id of the OAuth scope. If not provided a secure random UUID will be generated.
335
+ * @param {ApplicationOAuthScopeRequest} request The request object that contains all the information used to create the OAuth OAuth scope.
336
+ * @returns {Promise<ClientResponse<ApplicationOAuthScopeResponse>>}
337
+ */
338
+ createOAuthScope(applicationId: UUID, scopeId: UUID, request: ApplicationOAuthScopeRequest): Promise<ClientResponse<ApplicationOAuthScopeResponse>>;
329
339
  /**
330
340
  * Creates a tenant. You can optionally specify an Id for the tenant, if not provided one will be generated.
331
341
  *
@@ -455,7 +465,7 @@ export declare class FusionAuthClient {
455
465
  * Hard deletes an application role. This is a dangerous operation and should not be used in most circumstances. This
456
466
  * permanently removes the given role from all users that had it.
457
467
  *
458
- * @param {UUID} applicationId The Id of the application to deactivate.
468
+ * @param {UUID} applicationId The Id of the application that the role belongs to.
459
469
  * @param {UUID} roleId The Id of the role to delete.
460
470
  * @returns {Promise<ClientResponse<void>>}
461
471
  */
@@ -583,6 +593,15 @@ export declare class FusionAuthClient {
583
593
  * @returns {Promise<ClientResponse<void>>}
584
594
  */
585
595
  deleteMessenger(messengerId: UUID): Promise<ClientResponse<void>>;
596
+ /**
597
+ * Hard deletes a custom OAuth scope.
598
+ * OAuth workflows that are still requesting the deleted OAuth scope may fail depending on the application's unknown scope policy.
599
+ *
600
+ * @param {UUID} applicationId The Id of the application that the OAuth scope belongs to.
601
+ * @param {UUID} scopeId The Id of the OAuth scope to delete.
602
+ * @returns {Promise<ClientResponse<void>>}
603
+ */
604
+ deleteOAuthScope(applicationId: UUID, scopeId: UUID): Promise<ClientResponse<void>>;
586
605
  /**
587
606
  * Deletes the user registration for the given user and application.
588
607
  *
@@ -1026,7 +1045,7 @@ export declare class FusionAuthClient {
1026
1045
  */
1027
1046
  patchApplication(applicationId: UUID, request: ApplicationRequest): Promise<ClientResponse<ApplicationResponse>>;
1028
1047
  /**
1029
- * Updates, via PATCH, the application role with the given id for the application.
1048
+ * Updates, via PATCH, the application role with the given Id for the application.
1030
1049
  *
1031
1050
  * @param {UUID} applicationId The Id of the application that the role belongs to.
1032
1051
  * @param {UUID} roleId The Id of the role to update.
@@ -1114,7 +1133,16 @@ export declare class FusionAuthClient {
1114
1133
  */
1115
1134
  patchMessenger(messengerId: UUID, request: MessengerRequest): Promise<ClientResponse<MessengerResponse>>;
1116
1135
  /**
1117
- * Updates, via PATCH, the registration for the user with the given id and the application defined in the request.
1136
+ * Updates, via PATCH, the custom OAuth scope with the given Id for the application.
1137
+ *
1138
+ * @param {UUID} applicationId The Id of the application that the OAuth scope belongs to.
1139
+ * @param {UUID} scopeId The Id of the OAuth scope to update.
1140
+ * @param {ApplicationOAuthScopeRequest} request The request that contains just the new OAuth scope information.
1141
+ * @returns {Promise<ClientResponse<ApplicationOAuthScopeResponse>>}
1142
+ */
1143
+ patchOAuthScope(applicationId: UUID, scopeId: UUID, request: ApplicationOAuthScopeRequest): Promise<ClientResponse<ApplicationOAuthScopeResponse>>;
1144
+ /**
1145
+ * Updates, via PATCH, the registration for the user with the given Id and the application defined in the request.
1118
1146
  *
1119
1147
  * @param {UUID} userId The Id of the user whose registration is going to be updated.
1120
1148
  * @param {RegistrationRequest} request The request that contains just the new registration information.
@@ -1232,7 +1260,7 @@ export declare class FusionAuthClient {
1232
1260
  * Registers a user for an application. If you provide the User and the UserRegistration object on this request, it
1233
1261
  * will create the user as well as register them for the application. This is called a Full Registration. However, if
1234
1262
  * you only provide the UserRegistration object, then the user must already exist and they will be registered for the
1235
- * application. The user id can also be provided and it will either be used to look up an existing user or it will be
1263
+ * application. The user Id can also be provided and it will either be used to look up an existing user or it will be
1236
1264
  * used for the newly created User.
1237
1265
  *
1238
1266
  * @param {UUID} userId (Optional) The Id of the user being registered for the application and optionally created.
@@ -1254,8 +1282,8 @@ export declare class FusionAuthClient {
1254
1282
  /**
1255
1283
  * Removes a user from the family with the given id.
1256
1284
  *
1257
- * @param {UUID} familyId The id of the family to remove the user from.
1258
- * @param {UUID} userId The id of the user to remove from the family.
1285
+ * @param {UUID} familyId The Id of the family to remove the user from.
1286
+ * @param {UUID} userId The Id of the user to remove from the family.
1259
1287
  * @returns {Promise<ClientResponse<void>>}
1260
1288
  */
1261
1289
  removeUserFromFamily(familyId: UUID, userId: UUID): Promise<ClientResponse<void>>;
@@ -1321,7 +1349,7 @@ export declare class FusionAuthClient {
1321
1349
  */
1322
1350
  retrieveActiveActions(userId: UUID): Promise<ClientResponse<ActionResponse>>;
1323
1351
  /**
1324
- * Retrieves the application for the given id or all the applications if the id is null.
1352
+ * Retrieves the application for the given Id or all the applications if the Id is null.
1325
1353
  *
1326
1354
  * @param {UUID} applicationId (Optional) The application id.
1327
1355
  * @returns {Promise<ClientResponse<ApplicationResponse>>}
@@ -1495,7 +1523,7 @@ export declare class FusionAuthClient {
1495
1523
  */
1496
1524
  retrieveIPAccessControlList(ipAccessControlListId: UUID): Promise<ClientResponse<IPAccessControlListResponse>>;
1497
1525
  /**
1498
- * Retrieves the identity provider for the given id or all the identity providers if the id is null.
1526
+ * Retrieves the identity provider for the given Id or all the identity providers if the Id is null.
1499
1527
  *
1500
1528
  * @param {UUID} identityProviderId The identity provider Id.
1501
1529
  * @returns {Promise<ClientResponse<IdentityProviderResponse>>}
@@ -1654,6 +1682,14 @@ export declare class FusionAuthClient {
1654
1682
  * @returns {Promise<ClientResponse<MonthlyActiveUserReportResponse>>}
1655
1683
  */
1656
1684
  retrieveMonthlyActiveReport(applicationId: UUID, start: number, end: number): Promise<ClientResponse<MonthlyActiveUserReportResponse>>;
1685
+ /**
1686
+ * Retrieves a custom OAuth scope.
1687
+ *
1688
+ * @param {UUID} applicationId The Id of the application that the OAuth scope belongs to.
1689
+ * @param {UUID} scopeId The Id of the OAuth scope to retrieve.
1690
+ * @returns {Promise<ClientResponse<ApplicationOAuthScopeResponse>>}
1691
+ */
1692
+ retrieveOAuthScope(applicationId: UUID, scopeId: UUID): Promise<ClientResponse<ApplicationOAuthScopeResponse>>;
1657
1693
  /**
1658
1694
  * Retrieves the Oauth2 configuration for the application for the given Application Id.
1659
1695
  *
@@ -1735,7 +1771,7 @@ export declare class FusionAuthClient {
1735
1771
  */
1736
1772
  retrieveRefreshTokens(userId: UUID): Promise<ClientResponse<RefreshTokenResponse>>;
1737
1773
  /**
1738
- * Retrieves the user registration for the user with the given id and the given application id.
1774
+ * Retrieves the user registration for the user with the given Id and the given application id.
1739
1775
  *
1740
1776
  * @param {UUID} userId The Id of the user.
1741
1777
  * @param {UUID} applicationId The Id of the application.
@@ -2054,8 +2090,8 @@ export declare class FusionAuthClient {
2054
2090
  * - revokeRefreshTokensByUserIdForApplication
2055
2091
  *
2056
2092
  * @param {string} token (Optional) The refresh token to delete.
2057
- * @param {UUID} userId (Optional) The user id whose tokens to delete.
2058
- * @param {UUID} applicationId (Optional) The application id of the tokens to delete.
2093
+ * @param {UUID} userId (Optional) The user Id whose tokens to delete.
2094
+ * @param {UUID} applicationId (Optional) The application Id of the tokens to delete.
2059
2095
  * @returns {Promise<ClientResponse<void>>}
2060
2096
  */
2061
2097
  revokeRefreshToken(token: string, userId: UUID, applicationId: UUID): Promise<ClientResponse<void>>;
@@ -2146,7 +2182,7 @@ export declare class FusionAuthClient {
2146
2182
  */
2147
2183
  searchEntities(request: EntitySearchRequest): Promise<ClientResponse<EntitySearchResponse>>;
2148
2184
  /**
2149
- * Retrieves the entities for the given ids. If any id is invalid, it is ignored.
2185
+ * Retrieves the entities for the given ids. If any Id is invalid, it is ignored.
2150
2186
  *
2151
2187
  * @param {Array<string>} ids The entity ids to search for.
2152
2188
  * @returns {Promise<ClientResponse<EntitySearchResponse>>}
@@ -2244,7 +2280,7 @@ export declare class FusionAuthClient {
2244
2280
  */
2245
2281
  searchUserComments(request: UserCommentSearchRequest): Promise<ClientResponse<UserCommentSearchResponse>>;
2246
2282
  /**
2247
- * Retrieves the users for the given ids. If any id is invalid, it is ignored.
2283
+ * Retrieves the users for the given ids. If any Id is invalid, it is ignored.
2248
2284
  *
2249
2285
  * @param {Array<string>} ids The user ids to search for.
2250
2286
  * @returns {Promise<ClientResponse<SearchResponse>>}
@@ -2253,7 +2289,7 @@ export declare class FusionAuthClient {
2253
2289
  */
2254
2290
  searchUsers(ids: Array<string>): Promise<ClientResponse<SearchResponse>>;
2255
2291
  /**
2256
- * Retrieves the users for the given ids. If any id is invalid, it is ignored.
2292
+ * Retrieves the users for the given ids. If any Id is invalid, it is ignored.
2257
2293
  *
2258
2294
  * @param {Array<string>} ids The user ids to search for.
2259
2295
  * @returns {Promise<ClientResponse<SearchResponse>>}
@@ -2288,7 +2324,7 @@ export declare class FusionAuthClient {
2288
2324
  * Send an email using an email template id. You can optionally provide <code>requestData</code> to access key value
2289
2325
  * pairs in the email template.
2290
2326
  *
2291
- * @param {UUID} emailTemplateId The id for the template.
2327
+ * @param {UUID} emailTemplateId The Id for the template.
2292
2328
  * @param {SendRequest} request The send email request that contains all the information used to send the email.
2293
2329
  * @returns {Promise<ClientResponse<SendResponse>>}
2294
2330
  */
@@ -2406,7 +2442,7 @@ export declare class FusionAuthClient {
2406
2442
  */
2407
2443
  updateApplication(applicationId: UUID, request: ApplicationRequest): Promise<ClientResponse<ApplicationResponse>>;
2408
2444
  /**
2409
- * Updates the application role with the given id for the application.
2445
+ * Updates the application role with the given Id for the application.
2410
2446
  *
2411
2447
  * @param {UUID} applicationId The Id of the application that the role belongs to.
2412
2448
  * @param {UUID} roleId The Id of the role to update.
@@ -2455,7 +2491,7 @@ export declare class FusionAuthClient {
2455
2491
  */
2456
2492
  updateEntityType(entityTypeId: UUID, request: EntityTypeRequest): Promise<ClientResponse<EntityTypeResponse>>;
2457
2493
  /**
2458
- * Updates the permission with the given id for the entity type.
2494
+ * Updates the permission with the given Id for the entity type.
2459
2495
  *
2460
2496
  * @param {UUID} entityTypeId The Id of the entityType that the permission belongs to.
2461
2497
  * @param {UUID} permissionId The Id of the permission to update.
@@ -2550,7 +2586,16 @@ export declare class FusionAuthClient {
2550
2586
  */
2551
2587
  updateMessenger(messengerId: UUID, request: MessengerRequest): Promise<ClientResponse<MessengerResponse>>;
2552
2588
  /**
2553
- * Updates the registration for the user with the given id and the application defined in the request.
2589
+ * Updates the OAuth scope with the given Id for the application.
2590
+ *
2591
+ * @param {UUID} applicationId The Id of the application that the OAuth scope belongs to.
2592
+ * @param {UUID} scopeId The Id of the OAuth scope to update.
2593
+ * @param {ApplicationOAuthScopeRequest} request The request that contains all the new OAuth scope information.
2594
+ * @returns {Promise<ClientResponse<ApplicationOAuthScopeResponse>>}
2595
+ */
2596
+ updateOAuthScope(applicationId: UUID, scopeId: UUID, request: ApplicationOAuthScopeRequest): Promise<ClientResponse<ApplicationOAuthScopeResponse>>;
2597
+ /**
2598
+ * Updates the registration for the user with the given Id and the application defined in the request.
2554
2599
  *
2555
2600
  * @param {UUID} userId The Id of the user whose registration is going to be updated.
2556
2601
  * @param {RegistrationRequest} request The request that contains all the new registration information.
@@ -2665,7 +2710,7 @@ export declare class FusionAuthClient {
2665
2710
  /**
2666
2711
  * Confirms a email verification. The Id given is usually from an email sent to the user.
2667
2712
  *
2668
- * @param {string} verificationId The email verification id sent to the user.
2713
+ * @param {string} verificationId The email verification Id sent to the user.
2669
2714
  * @returns {Promise<ClientResponse<void>>}
2670
2715
  *
2671
2716
  * @deprecated This method has been renamed to verifyEmailAddress and changed to take a JSON request body, use that method instead.
@@ -3003,6 +3048,7 @@ export interface LambdaConfiguration {
3003
3048
  idTokenPopulateId?: UUID;
3004
3049
  samlv2PopulateId?: UUID;
3005
3050
  selfServiceRegistrationValidationId?: UUID;
3051
+ userinfoPopulateId?: UUID;
3006
3052
  }
3007
3053
  /**
3008
3054
  * @author Daniel DeGroff
@@ -3246,7 +3292,7 @@ export interface UserIdentityProviderLinkEvent extends BaseEvent {
3246
3292
  *
3247
3293
  * @author Spencer Witt
3248
3294
  */
3249
- export interface ApplicationSearchResponse {
3295
+ export interface ApplicationSearchResponse extends ExpandableResponse {
3250
3296
  applications?: Array<Application>;
3251
3297
  total?: number;
3252
3298
  }
@@ -3342,6 +3388,16 @@ export interface UserUpdateEvent extends BaseEvent {
3342
3388
  original?: User;
3343
3389
  user?: User;
3344
3390
  }
3391
+ /**
3392
+ * The application's relationship to the authorization server. First-party applications will be granted implicit permission for requested scopes.
3393
+ * Third-party applications will use the {@link OAuthScopeConsentMode} policy.
3394
+ *
3395
+ * @author Spencer Witt
3396
+ */
3397
+ export declare enum OAuthApplicationRelationship {
3398
+ FirstParty = "FirstParty",
3399
+ ThirdParty = "ThirdParty"
3400
+ }
3345
3401
  /**
3346
3402
  * The summary of the action that is preventing login to be returned on the login response.
3347
3403
  *
@@ -3757,6 +3813,17 @@ export interface IdentityProviderLinkResponse {
3757
3813
  identityProviderLink?: IdentityProviderLink;
3758
3814
  identityProviderLinks?: Array<IdentityProviderLink>;
3759
3815
  }
3816
+ /**
3817
+ * The handling policy for scopes provided by FusionAuth
3818
+ *
3819
+ * @author Spencer Witt
3820
+ */
3821
+ export interface ProvidedScopePolicy {
3822
+ address?: Requirable;
3823
+ email?: Requirable;
3824
+ phone?: Requirable;
3825
+ profile?: Requirable;
3826
+ }
3760
3827
  export interface HistoryItem {
3761
3828
  actionerUserId?: UUID;
3762
3829
  comment?: string;
@@ -3841,6 +3908,7 @@ export interface SystemConfiguration {
3841
3908
  lastUpdateInstant?: number;
3842
3909
  loginRecordConfiguration?: LoginRecordConfiguration;
3843
3910
  reportTimezone?: string;
3911
+ trustedProxyConfiguration?: SystemTrustedProxyConfiguration;
3844
3912
  uiConfiguration?: UIConfiguration;
3845
3913
  }
3846
3914
  /**
@@ -4145,6 +4213,9 @@ export interface ReactorStatus {
4145
4213
  advancedIdentityProviders?: ReactorFeatureStatus;
4146
4214
  advancedLambdas?: ReactorFeatureStatus;
4147
4215
  advancedMultiFactorAuthentication?: ReactorFeatureStatus;
4216
+ advancedOAuthScopes?: ReactorFeatureStatus;
4217
+ advancedOAuthScopesCustomScopes?: ReactorFeatureStatus;
4218
+ advancedOAuthScopesThirdPartyApplications?: ReactorFeatureStatus;
4148
4219
  advancedRegistration?: ReactorFeatureStatus;
4149
4220
  applicationMultiFactorAuthentication?: ReactorFeatureStatus;
4150
4221
  applicationThemes?: ReactorFeatureStatus;
@@ -4403,7 +4474,8 @@ export declare enum LambdaType {
4403
4474
  SCIMServerGroupResponseConverter = "SCIMServerGroupResponseConverter",
4404
4475
  SCIMServerUserRequestConverter = "SCIMServerUserRequestConverter",
4405
4476
  SCIMServerUserResponseConverter = "SCIMServerUserResponseConverter",
4406
- SelfServiceRegistrationValidation = "SelfServiceRegistrationValidation"
4477
+ SelfServiceRegistrationValidation = "SelfServiceRegistrationValidation",
4478
+ UserInfoPopulate = "UserInfoPopulate"
4407
4479
  }
4408
4480
  /**
4409
4481
  * @author Daniel DeGroff
@@ -4961,6 +5033,7 @@ export interface Application {
4961
5033
  registrationDeletePolicy?: ApplicationRegistrationDeletePolicy;
4962
5034
  roles?: Array<ApplicationRole>;
4963
5035
  samlv2Configuration?: SAMLv2Configuration;
5036
+ scopes?: Array<ApplicationOAuthScope>;
4964
5037
  state?: ObjectState;
4965
5038
  tenantId?: UUID;
4966
5039
  themeId?: UUID;
@@ -5061,6 +5134,7 @@ export interface OAuth2Configuration {
5061
5134
  clientAuthenticationPolicy?: ClientAuthenticationPolicy;
5062
5135
  clientId?: string;
5063
5136
  clientSecret?: string;
5137
+ consentMode?: OAuthScopeConsentMode;
5064
5138
  debug?: boolean;
5065
5139
  deviceVerificationURL?: string;
5066
5140
  enabledGrants?: Array<GrantType>;
@@ -5068,8 +5142,12 @@ export interface OAuth2Configuration {
5068
5142
  logoutBehavior?: LogoutBehavior;
5069
5143
  logoutURL?: string;
5070
5144
  proofKeyForCodeExchangePolicy?: ProofKeyForCodeExchangePolicy;
5145
+ providedScopePolicy?: ProvidedScopePolicy;
5146
+ relationship?: OAuthApplicationRelationship;
5071
5147
  requireClientAuthentication?: boolean;
5072
5148
  requireRegistration?: boolean;
5149
+ scopeHandlingPolicy?: OAuthScopeHandlingPolicy;
5150
+ unknownScopePolicy?: UnknownScopePolicy;
5073
5151
  }
5074
5152
  /**
5075
5153
  * @author Daniel DeGroff
@@ -5509,6 +5587,7 @@ export interface ExternalIdentifierConfiguration {
5509
5587
  registrationVerificationIdGenerator?: SecureGeneratorConfiguration;
5510
5588
  registrationVerificationIdTimeToLiveInSeconds?: number;
5511
5589
  registrationVerificationOneTimeCodeGenerator?: SecureGeneratorConfiguration;
5590
+ rememberOAuthScopeConsentChoiceTimeToLiveInSeconds?: number;
5512
5591
  samlv2AuthNRequestIdTimeToLiveInSeconds?: number;
5513
5592
  setupPasswordIdGenerator?: SecureGeneratorConfiguration;
5514
5593
  setupPasswordIdTimeToLiveInSeconds?: number;
@@ -5567,7 +5646,9 @@ export interface WebAuthnPublicKeyRegistrationRequest {
5567
5646
  */
5568
5647
  export interface UserResponse {
5569
5648
  emailVerificationId?: string;
5649
+ emailVerificationOneTimeCode?: string;
5570
5650
  registrationVerificationIds?: Record<UUID, string>;
5651
+ registrationVerificationOneTimeCodes?: Record<UUID, string>;
5571
5652
  token?: string;
5572
5653
  tokenExpirationInstant?: number;
5573
5654
  user?: User;
@@ -5951,6 +6032,23 @@ export interface AuditLogConfiguration {
5951
6032
  export interface UserDeleteEvent extends BaseEvent {
5952
6033
  user?: User;
5953
6034
  }
6035
+ /**
6036
+ * A custom OAuth scope for a specific application.
6037
+ *
6038
+ * @author Spencer Witt
6039
+ */
6040
+ export interface ApplicationOAuthScope {
6041
+ applicationId?: UUID;
6042
+ data?: Record<string, any>;
6043
+ defaultConsentDetail?: string;
6044
+ defaultConsentMessage?: string;
6045
+ description?: string;
6046
+ id?: UUID;
6047
+ insertInstant?: number;
6048
+ lastUpdateInstant?: number;
6049
+ name?: string;
6050
+ required?: boolean;
6051
+ }
5954
6052
  /**
5955
6053
  * Registration delete API request object.
5956
6054
  *
@@ -6036,6 +6134,13 @@ export declare enum LambdaEngineType {
6036
6134
  GraalJS = "GraalJS",
6037
6135
  Nashorn = "Nashorn"
6038
6136
  }
6137
+ /**
6138
+ * @author Daniel DeGroff
6139
+ */
6140
+ export interface SystemTrustedProxyConfiguration {
6141
+ trusted?: Array<string>;
6142
+ trustPolicy?: SystemTrustedProxyConfigurationPolicy;
6143
+ }
6039
6144
  /**
6040
6145
  * A log for an action that was taken on a User.
6041
6146
  *
@@ -6102,6 +6207,7 @@ export declare enum OAuthErrorType {
6102
6207
  server_error = "server_error",
6103
6208
  unsupported_grant_type = "unsupported_grant_type",
6104
6209
  unsupported_response_type = "unsupported_response_type",
6210
+ access_denied = "access_denied",
6105
6211
  change_password_required = "change_password_required",
6106
6212
  not_licensed = "not_licensed",
6107
6213
  two_factor_required = "two_factor_required",
@@ -6577,7 +6683,7 @@ export interface TwitchIdentityProvider extends BaseIdentityProvider<TwitchAppli
6577
6683
  scope?: string;
6578
6684
  }
6579
6685
  /**
6580
- * The global view of a User. This object contains all global information about the user including birth date, registration information
6686
+ * The global view of a User. This object contains all global information about the user including birthdate, registration information
6581
6687
  * preferred languages, global attributes, etc.
6582
6688
  *
6583
6689
  * @author Seth Musselman
@@ -6984,6 +7090,7 @@ export interface RegistrationResponse {
6984
7090
  refreshToken?: string;
6985
7091
  registration?: UserRegistration;
6986
7092
  registrationVerificationId?: string;
7093
+ registrationVerificationOneTimeCode?: string;
6987
7094
  token?: string;
6988
7095
  tokenExpirationInstant?: number;
6989
7096
  user?: User;
@@ -7062,6 +7169,14 @@ export interface BaseElasticSearchCriteria extends BaseSearchCriteria {
7062
7169
  export interface IPAccessControlListSearchRequest {
7063
7170
  search?: IPAccessControlListSearchCriteria;
7064
7171
  }
7172
+ /**
7173
+ * The Application Scope API request object.
7174
+ *
7175
+ * @author Spencer Witt
7176
+ */
7177
+ export interface ApplicationOAuthScopeRequest {
7178
+ scope?: ApplicationOAuthScope;
7179
+ }
7065
7180
  export interface LoginConfiguration {
7066
7181
  allowTokenRefresh?: boolean;
7067
7182
  generateRefreshTokens?: boolean;
@@ -7295,14 +7410,6 @@ export interface Enableable {
7295
7410
  export interface EmailTemplateSearchRequest {
7296
7411
  search?: EmailTemplateSearchCriteria;
7297
7412
  }
7298
- /**
7299
- * @author Daniel DeGroff
7300
- */
7301
- export interface ApplicationUnverifiedConfiguration {
7302
- registration?: UnverifiedBehavior;
7303
- verificationStrategy?: VerificationStrategy;
7304
- whenGated?: RegistrationUnverifiedOptions;
7305
- }
7306
7413
  export declare enum EmailSecurityType {
7307
7414
  NONE = "NONE",
7308
7415
  SSL = "SSL",
@@ -7519,6 +7626,7 @@ export interface DeviceUserCodeResponse {
7519
7626
  deviceInfo?: DeviceInfo;
7520
7627
  expires_in?: number;
7521
7628
  pendingIdPLink?: PendingIdPLink;
7629
+ scope?: string;
7522
7630
  tenantId?: UUID;
7523
7631
  user_code?: string;
7524
7632
  }
@@ -7572,6 +7680,13 @@ export interface PreviewResponse {
7572
7680
  export interface KickstartSuccessEvent extends BaseEvent {
7573
7681
  instanceId?: UUID;
7574
7682
  }
7683
+ /**
7684
+ * @author Daniel DeGroff
7685
+ */
7686
+ export declare enum SystemTrustedProxyConfigurationPolicy {
7687
+ All = "All",
7688
+ OnlyConfigured = "OnlyConfigured"
7689
+ }
7575
7690
  /**
7576
7691
  * @author Daniel DeGroff
7577
7692
  */
@@ -7726,6 +7841,7 @@ export interface Templates {
7726
7841
  accountWebAuthnAdd?: string;
7727
7842
  accountWebAuthnDelete?: string;
7728
7843
  accountWebAuthnIndex?: string;
7844
+ confirmationRequired?: string;
7729
7845
  emailComplete?: string;
7730
7846
  emailSend?: string;
7731
7847
  emailSent?: string;
@@ -7738,6 +7854,7 @@ export interface Templates {
7738
7854
  oauth2ChildRegistrationNotAllowed?: string;
7739
7855
  oauth2ChildRegistrationNotAllowedComplete?: string;
7740
7856
  oauth2CompleteRegistration?: string;
7857
+ oauth2Consent?: string;
7741
7858
  oauth2Device?: string;
7742
7859
  oauth2DeviceComplete?: string;
7743
7860
  oauth2Error?: string;
@@ -7853,6 +7970,14 @@ export interface LoginResponse {
7853
7970
  twoFactorTrustId?: string;
7854
7971
  user?: User;
7855
7972
  }
7973
+ /**
7974
+ * The Application Scope API response.
7975
+ *
7976
+ * @author Spencer Witt
7977
+ */
7978
+ export interface ApplicationOAuthScopeResponse {
7979
+ scope?: ApplicationOAuthScope;
7980
+ }
7856
7981
  /**
7857
7982
  * Search API response.
7858
7983
  *
@@ -8040,6 +8165,16 @@ export declare enum RateLimitedRequestType {
8040
8165
  export interface LoginHintConfiguration extends Enableable {
8041
8166
  parameterName?: string;
8042
8167
  }
8168
+ /**
8169
+ * Controls the policy for whether OAuth workflows will more strictly adhere to the OAuth and OIDC specification
8170
+ * or run in backwards compatibility mode.
8171
+ *
8172
+ * @author David Charles
8173
+ */
8174
+ export declare enum OAuthScopeHandlingPolicy {
8175
+ Compatibility = "Compatibility",
8176
+ Strict = "Strict"
8177
+ }
8043
8178
  /**
8044
8179
  * API request for managing families and members.
8045
8180
  *
@@ -8088,7 +8223,7 @@ export interface UserRegistrationCreateEvent extends BaseEvent {
8088
8223
  *
8089
8224
  * @author Spencer Witt
8090
8225
  */
8091
- export interface ApplicationSearchRequest {
8226
+ export interface ApplicationSearchRequest extends ExpandableRequest {
8092
8227
  search?: ApplicationSearchCriteria;
8093
8228
  }
8094
8229
  /**
@@ -8257,7 +8392,7 @@ export interface UserPasswordResetSuccessEvent extends BaseEvent {
8257
8392
  }
8258
8393
  /**
8259
8394
  * Something that can be required and thus also optional. This currently extends Enableable because anything that is
8260
- * require/optional is almost always enableable as well.
8395
+ * required/optional is almost always enableable as well.
8261
8396
  *
8262
8397
  * @author Brian Pontarelli
8263
8398
  */
@@ -8322,6 +8457,16 @@ export interface WebhookSearchCriteria extends BaseSearchCriteria {
8322
8457
  tenantId?: UUID;
8323
8458
  url?: string;
8324
8459
  }
8460
+ /**
8461
+ * Policy for handling unknown OAuth scopes in the request
8462
+ *
8463
+ * @author Spencer Witt
8464
+ */
8465
+ export declare enum UnknownScopePolicy {
8466
+ Allow = "Allow",
8467
+ Remove = "Remove",
8468
+ Reject = "Reject"
8469
+ }
8325
8470
  /**
8326
8471
  * Models the User Password Reset Start Event.
8327
8472
  *
@@ -8348,6 +8493,7 @@ export declare enum OAuthErrorReason {
8348
8493
  access_token_unavailable_for_processing = "access_token_unavailable_for_processing",
8349
8494
  access_token_failed_processing = "access_token_failed_processing",
8350
8495
  access_token_invalid = "access_token_invalid",
8496
+ access_token_required = "access_token_required",
8351
8497
  refresh_token_not_found = "refresh_token_not_found",
8352
8498
  refresh_token_type_not_supported = "refresh_token_type_not_supported",
8353
8499
  invalid_client_id = "invalid_client_id",
@@ -8398,7 +8544,10 @@ export declare enum OAuthErrorReason {
8398
8544
  change_password_breached = "change_password_breached",
8399
8545
  change_password_expired = "change_password_expired",
8400
8546
  change_password_validation = "change_password_validation",
8401
- unknown = "unknown"
8547
+ unknown = "unknown",
8548
+ missing_required_scope = "missing_required_scope",
8549
+ unknown_scope = "unknown_scope",
8550
+ consent_canceled = "consent_canceled"
8402
8551
  }
8403
8552
  /**
8404
8553
  * @author Brett Pontarelli
@@ -8509,6 +8658,17 @@ export interface ReactorRequest {
8509
8658
  license?: string;
8510
8659
  licenseId?: string;
8511
8660
  }
8661
+ /**
8662
+ * Controls the policy for requesting user permission to grant access to requested scopes during an OAuth workflow
8663
+ * for a third-party application.
8664
+ *
8665
+ * @author Spencer Witt
8666
+ */
8667
+ export declare enum OAuthScopeConsentMode {
8668
+ AlwaysPrompt = "AlwaysPrompt",
8669
+ RememberDecision = "RememberDecision",
8670
+ NeverPrompt = "NeverPrompt"
8671
+ }
8512
8672
  /**
8513
8673
  * @author Michael Sleevi
8514
8674
  */