rebilly-js-sdk 62.221.0 → 62.222.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.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,5 @@
1
- ## 62.221.0 (2026-10-16)
1
+ ## 62.222.0 (2026-10-16)
2
2
 
3
- This was a version bump only for rebilly-js-sdk to align it with other projects, there were no code changes.
3
+ ### Features
4
+
5
+ - **auth, recomm, be:** Add organization-level require MFA setting to rebilly ([#28408](https://github.com/Rebilly/rebilly/pull/28408))
@@ -1810,6 +1810,13 @@ declare namespace rebilly {
1810
1810
  type DeleteRoleResponse = operations['DeleteRole']['responses']['204']
1811
1811
  type DeleteRoleResponsePromise = Promise<{fields: DeleteRoleResponse}>
1812
1812
 
1813
+
1814
+ type GetSecuritySettingsResponse = operations['GetSecuritySettings']['responses']['200']['content']['application/json']
1815
+ type GetSecuritySettingsResponsePromise = Promise<{fields: GetSecuritySettingsResponse}>
1816
+ type PutSecuritySettingsRequest = operations['PutSecuritySettings']['requestBody']['content']['application/json']
1817
+ type PutSecuritySettingsResponse = operations['PutSecuritySettings']['responses']['200']['content']['application/json']
1818
+ type PutSecuritySettingsResponsePromise = Promise<{fields: PutSecuritySettingsResponse}>
1819
+
1813
1820
  type GetSendThroughAttributionCollectionRequest = { eventType: string }
1814
1821
 
1815
1822
  type GetSendThroughAttributionCollectionResponse = operations['GetSendThroughAttributionCollection']['responses']['200']['content']['application/json'][0]
@@ -5356,13 +5363,27 @@ export interface corePaths {
5356
5363
  };
5357
5364
  };
5358
5365
  "/organizations": {
5359
- /** Retrieves a list of organizations. */
5366
+ /**
5367
+ * Retrieves a list of organizations.
5368
+ * If an organization requires multi-factor authentication (MFA) and your session has not passed MFA,
5369
+ * the response includes only `id`, `name`, `country`, `features`, `settings.security`, and `_links` for that organization,
5370
+ * and omits all other fields.
5371
+ * In that case, only `id`, `name`, and `features` are available as filter fields,
5372
+ * and only `id` and `name` are available as sort fields.
5373
+ * To require MFA, use the [Update security settings](https://www.rebilly.com/catalog/all/organizations/putsecuritysettings) operation.
5374
+ */
5360
5375
  get: operations["GetOrganizationCollection"];
5361
5376
  /** Creates an organization. */
5362
5377
  post: operations["PostOrganization"];
5363
5378
  };
5364
5379
  "/organizations/{id}": {
5365
- /** Retrieves an organization with a specified ID. */
5380
+ /**
5381
+ * Retrieves an organization with a specified ID.
5382
+ * If the organization requires multi-factor authentication (MFA) and your session has not passed MFA,
5383
+ * the response includes only `id`, `name`, `country`, `features`, `settings.security`, and `_links`,
5384
+ * and omits all other fields.
5385
+ * To require MFA, use the [Update security settings](https://www.rebilly.com/catalog/all/organizations/putsecuritysettings) operation.
5386
+ */
5366
5387
  get: operations["GetOrganization"];
5367
5388
  /** Updates an organization with a specified organization ID. */
5368
5389
  patch: operations["PatchOrganization"];
@@ -5693,6 +5714,26 @@ export interface corePaths {
5693
5714
  };
5694
5715
  };
5695
5716
  };
5717
+ "/security-settings": {
5718
+ /**
5719
+ * Retrieves the sign-in security settings of the organization,
5720
+ * and the number of users who have multi-factor authentication (MFA) set up.
5721
+ * Settings apply to the current environment only: live and sandbox are configured separately.
5722
+ */
5723
+ get: operations["GetSecuritySettings"];
5724
+ /**
5725
+ * Updates the sign-in security settings of the organization.
5726
+ * If `requireMfa` is `true`, every user who signs in to the Rebilly UI must pass multi-factor authentication (MFA).
5727
+ * If the session of a user has not passed MFA, other operations respond with `403` and `error` is `mfa_required`.
5728
+ * Only owners and administrators who are signed in to the Rebilly UI can change this setting.
5729
+ * This setting does not apply to API keys, and a request that uses an API key cannot change this setting.
5730
+ * To turn on `requireMfa`, the session must have passed MFA.
5731
+ * If the session has not passed MFA, the response is `403` and `error` is `mfa_required_for_caller`.
5732
+ * If the number of users who have MFA set up is temporarily unavailable, `requireMfa` cannot be turned on and the response is `503`.
5733
+ * Settings apply to the current environment only: live and sandbox are configured separately.
5734
+ */
5735
+ put: operations["PutSecuritySettings"];
5736
+ };
5696
5737
  "/send-through-attribution/{eventType}": {
5697
5738
  /** Retrieves a list of email notifications, that have been sent through attribution, for a specified event type. */
5698
5739
  get: operations["GetSendThroughAttributionCollection"];
@@ -5770,7 +5811,19 @@ export interface corePaths {
5770
5811
  };
5771
5812
  };
5772
5813
  "/users": {
5773
- /** Retrieves a list of users. */
5814
+ /**
5815
+ * Retrieves a list of users.
5816
+ * To retrieve the users of the organization who have multi-factor authentication (MFA) set up,
5817
+ * use `filter=mfaEnabled:true`.
5818
+ * To retrieve the users who do not have MFA set up, including users who have not accepted their invitation,
5819
+ * use `filter=mfaEnabled:false`.
5820
+ * The `mfaEnabled` filter applies only to the list of users of an organization
5821
+ * that has [security settings](https://www.rebilly.com/catalog/all/organizations/getsecuritysettings).
5822
+ * Inactive users and Rebilly staff are not part of the `mfaEnabled` filter.
5823
+ * User objects of Rebilly staff do not include `mfaEnabled`.
5824
+ * The totals are the same as those returned by the [Retrieve security settings](https://www.rebilly.com/catalog/all/organizations/getsecuritysettings) operation.
5825
+ * If the MFA status is temporarily unavailable, the response is `503` and `error` is `mfa_status_unavailable`.
5826
+ */
5774
5827
  get: operations["GetUserCollection"];
5775
5828
  /** Creates a user. */
5776
5829
  post: operations["PostUser"];
@@ -6201,6 +6254,13 @@ export interface coreComponents {
6201
6254
  Forbidden: { [key: string]: any } & {
6202
6255
  /** HTTP status code. */
6203
6256
  status?: number;
6257
+ /**
6258
+ * Message that describes why the request is forbidden.
6259
+ * Most responses use a descriptive message, such as `Not allowed to change security settings`.
6260
+ * If the organization requires multi-factor authentication (MFA) and MFA verification has not been completed for the session, this value is `mfa_required`.
6261
+ * If the request sets `requireMfa` to `true` and MFA verification has not been completed for the session, this value is `mfa_required_for_caller`.
6262
+ */
6263
+ error?: string;
6204
6264
  } & coreComponents["schemas"]["BaseProblem"];
6205
6265
  NotFound: {
6206
6266
  /** HTTP status code. */
@@ -22591,6 +22651,16 @@ export interface coreComponents {
22591
22651
  /** List of email addresses to send notifications to. */
22592
22652
  notificationEmailAddresses?: string[];
22593
22653
  };
22654
+ /**
22655
+ * Organization sign-in security settings.
22656
+ * This value is read-only on the [Create an organization](https://www.rebilly.com/catalog/all/organizations/postorganization) and [Update an organization](https://www.rebilly.com/catalog/all/organizations/patchorganization) operations.
22657
+ * To change these settings, use the [Update security settings](https://www.rebilly.com/catalog/all/organizations/putsecuritysettings) operation.
22658
+ * To retrieve how many users have multi-factor authentication (MFA) set up, use the [Retrieve security settings](https://www.rebilly.com/catalog/all/organizations/getsecuritysettings) operation.
22659
+ */
22660
+ security?: {
22661
+ /** Specifies if users must pass multi-factor authentication (MFA) to use this organization in the Rebilly app. */
22662
+ requireMfa?: boolean;
22663
+ };
22594
22664
  /**
22595
22665
  * Settings for annual compliance screening of all active customers.
22596
22666
  * When enabled, a compliance screening report is generated for every active customer
@@ -23603,6 +23673,13 @@ export interface coreComponents {
23603
23673
  preferences?: { [key: string]: any } | null;
23604
23674
  /** Specifies if the current user session has permissions emulation enabled. */
23605
23675
  hasPermissionsEmulation?: boolean;
23676
+ /**
23677
+ * Specifies if the user is in an organization in the current environment that requires multi-factor authentication (MFA).
23678
+ * Deactivated organizations are not included.
23679
+ * The requirement is enforced on each request to an organization that requires MFA, regardless of this value.
23680
+ * This value is `false` for API key and service account sessions.
23681
+ */
23682
+ mfaRequiredByOrganization?: boolean;
23606
23683
  /** User's full display name. */
23607
23684
  displayName?: string;
23608
23685
  /** Unique hash value that represents the user. */
@@ -23679,6 +23756,27 @@ export interface coreComponents {
23679
23756
  juniors?: any[];
23680
23757
  };
23681
23758
  };
23759
+ SecuritySettings: {
23760
+ /** Specifies if users must pass multi-factor authentication (MFA) to use this organization in the Rebilly UI. */
23761
+ requireMfa: boolean;
23762
+ /**
23763
+ * Number of users who have set up multi-factor authentication (MFA), excluding Rebilly staff.
23764
+ * Pending invitations are counted as users without MFA.
23765
+ * This value is `null` when this information is temporarily unavailable.
23766
+ */
23767
+ mfaAdoption?: {
23768
+ /** Number of active users who have multi-factor authentication (MFA) set up. */
23769
+ enrolled: number;
23770
+ /** Number of active users and pending invitations. */
23771
+ total: number;
23772
+ /**
23773
+ * Number of pending invitations included in `total`.
23774
+ * Invited users must set up multi-factor authentication (MFA) after they accept the invitation.
23775
+ */
23776
+ pending: number;
23777
+ } | null;
23778
+ _links?: coreComponents["schemas"]["SelfLink"];
23779
+ };
23682
23780
  /** Email notification sent through attribution. */
23683
23781
  SendThroughAttribution: {
23684
23782
  eventType?: coreComponents["schemas"]["EventType"];
@@ -23895,6 +23993,14 @@ export interface coreComponents {
23895
23993
  */
23896
23994
  roleIds?: string[];
23897
23995
  allowedIps?: coreComponents["schemas"]["AllowedIps"];
23996
+ /**
23997
+ * Specifies if the user has multi-factor authentication (MFA) set up.
23998
+ * This value is present only in responses from the [Retrieve a list of users](https://www.rebilly.com/catalog/all/users/getusercollection) operation
23999
+ * for an organization that has [security settings](https://www.rebilly.com/catalog/all/organizations/getsecuritysettings),
24000
+ * and is omitted for Rebilly staff.
24001
+ * This value is `null` when this information is temporarily unavailable.
24002
+ */
24003
+ mfaEnabled?: boolean | null;
23898
24004
  _links?: coreComponents["schemas"]["SelfLink"];
23899
24005
  };
23900
24006
  WebhookEvent: {
@@ -28567,7 +28673,10 @@ export interface coreComponents {
28567
28673
  "application/json": coreComponents["schemas"]["Unauthorized"];
28568
28674
  };
28569
28675
  };
28570
- /** Access forbidden. */
28676
+ /**
28677
+ * Access forbidden.
28678
+ * If the organization requires multi-factor authentication (MFA) and the session has not passed MFA, `error` is `mfa_required`.
28679
+ */
28571
28680
  Forbidden: {
28572
28681
  content: {
28573
28682
  "application/json": coreComponents["schemas"]["Forbidden"];
@@ -42752,7 +42861,15 @@ export interface operations {
42752
42861
  429: coreComponents["responses"]["TooManyRequests"];
42753
42862
  };
42754
42863
  };
42755
- /** Retrieves a list of organizations. */
42864
+ /**
42865
+ * Retrieves a list of organizations.
42866
+ * If an organization requires multi-factor authentication (MFA) and your session has not passed MFA,
42867
+ * the response includes only `id`, `name`, `country`, `features`, `settings.security`, and `_links` for that organization,
42868
+ * and omits all other fields.
42869
+ * In that case, only `id`, `name`, and `features` are available as filter fields,
42870
+ * and only `id` and `name` are available as sort fields.
42871
+ * To require MFA, use the [Update security settings](https://www.rebilly.com/catalog/all/organizations/putsecuritysettings) operation.
42872
+ */
42756
42873
  GetOrganizationCollection: {
42757
42874
  parameters: {
42758
42875
  query: {
@@ -42811,7 +42928,13 @@ export interface operations {
42811
42928
  };
42812
42929
  requestBody: coreComponents["requestBodies"]["PostOrganization"];
42813
42930
  };
42814
- /** Retrieves an organization with a specified ID. */
42931
+ /**
42932
+ * Retrieves an organization with a specified ID.
42933
+ * If the organization requires multi-factor authentication (MFA) and your session has not passed MFA,
42934
+ * the response includes only `id`, `name`, `country`, `features`, `settings.security`, and `_links`,
42935
+ * and omits all other fields.
42936
+ * To require MFA, use the [Update security settings](https://www.rebilly.com/catalog/all/organizations/putsecuritysettings) operation.
42937
+ */
42815
42938
  GetOrganization: {
42816
42939
  parameters: {
42817
42940
  path: {
@@ -44147,6 +44270,62 @@ export interface operations {
44147
44270
  429: coreComponents["responses"]["TooManyRequests"];
44148
44271
  };
44149
44272
  };
44273
+ /**
44274
+ * Retrieves the sign-in security settings of the organization,
44275
+ * and the number of users who have multi-factor authentication (MFA) set up.
44276
+ * Settings apply to the current environment only: live and sandbox are configured separately.
44277
+ */
44278
+ GetSecuritySettings: {
44279
+ responses: {
44280
+ /** Security settings retrieved. */
44281
+ 200: {
44282
+ content: {
44283
+ "application/json": coreComponents["schemas"]["SecuritySettings"];
44284
+ };
44285
+ };
44286
+ 401: coreComponents["responses"]["Unauthorized"];
44287
+ 403: coreComponents["responses"]["Forbidden"];
44288
+ 404: coreComponents["responses"]["NotFound"];
44289
+ };
44290
+ };
44291
+ /**
44292
+ * Updates the sign-in security settings of the organization.
44293
+ * If `requireMfa` is `true`, every user who signs in to the Rebilly UI must pass multi-factor authentication (MFA).
44294
+ * If the session of a user has not passed MFA, other operations respond with `403` and `error` is `mfa_required`.
44295
+ * Only owners and administrators who are signed in to the Rebilly UI can change this setting.
44296
+ * This setting does not apply to API keys, and a request that uses an API key cannot change this setting.
44297
+ * To turn on `requireMfa`, the session must have passed MFA.
44298
+ * If the session has not passed MFA, the response is `403` and `error` is `mfa_required_for_caller`.
44299
+ * If the number of users who have MFA set up is temporarily unavailable, `requireMfa` cannot be turned on and the response is `503`.
44300
+ * Settings apply to the current environment only: live and sandbox are configured separately.
44301
+ */
44302
+ PutSecuritySettings: {
44303
+ responses: {
44304
+ /** Security settings updated. */
44305
+ 200: {
44306
+ headers: {};
44307
+ content: {
44308
+ "application/json": coreComponents["schemas"]["SecuritySettings"];
44309
+ };
44310
+ };
44311
+ 401: coreComponents["responses"]["Unauthorized"];
44312
+ 403: coreComponents["responses"]["Forbidden"];
44313
+ 404: coreComponents["responses"]["NotFound"];
44314
+ 422: coreComponents["responses"]["ValidationError"];
44315
+ 429: coreComponents["responses"]["TooManyRequests"];
44316
+ /** MFA adoption unavailable. */
44317
+ 503: {
44318
+ content: {
44319
+ "application/json": coreComponents["schemas"]["Problem"];
44320
+ };
44321
+ };
44322
+ };
44323
+ requestBody: {
44324
+ content: {
44325
+ "application/json": coreComponents["schemas"]["SecuritySettings"];
44326
+ };
44327
+ };
44328
+ };
44150
44329
  /** Retrieves a list of email notifications, that have been sent through attribution, for a specified event type. */
44151
44330
  GetSendThroughAttributionCollection: {
44152
44331
  parameters: {
@@ -44428,7 +44607,19 @@ export interface operations {
44428
44607
  429: coreComponents["responses"]["TooManyRequests"];
44429
44608
  };
44430
44609
  };
44431
- /** Retrieves a list of users. */
44610
+ /**
44611
+ * Retrieves a list of users.
44612
+ * To retrieve the users of the organization who have multi-factor authentication (MFA) set up,
44613
+ * use `filter=mfaEnabled:true`.
44614
+ * To retrieve the users who do not have MFA set up, including users who have not accepted their invitation,
44615
+ * use `filter=mfaEnabled:false`.
44616
+ * The `mfaEnabled` filter applies only to the list of users of an organization
44617
+ * that has [security settings](https://www.rebilly.com/catalog/all/organizations/getsecuritysettings).
44618
+ * Inactive users and Rebilly staff are not part of the `mfaEnabled` filter.
44619
+ * User objects of Rebilly staff do not include `mfaEnabled`.
44620
+ * The totals are the same as those returned by the [Retrieve security settings](https://www.rebilly.com/catalog/all/organizations/getsecuritysettings) operation.
44621
+ * If the MFA status is temporarily unavailable, the response is `503` and `error` is `mfa_status_unavailable`.
44622
+ */
44432
44623
  GetUserCollection: {
44433
44624
  parameters: {
44434
44625
  query: {
@@ -44467,6 +44658,12 @@ export interface operations {
44467
44658
  };
44468
44659
  401: coreComponents["responses"]["Unauthorized"];
44469
44660
  403: coreComponents["responses"]["Forbidden"];
44661
+ /** MFA status unavailable. */
44662
+ 503: {
44663
+ content: {
44664
+ "application/json": coreComponents["schemas"]["Problem"];
44665
+ };
44666
+ };
44470
44667
  };
44471
44668
  };
44472
44669
  /** Creates a user. */
@@ -46154,6 +46351,13 @@ export interface storefrontComponents {
46154
46351
  Forbidden: { [key: string]: any } & {
46155
46352
  /** HTTP status code. */
46156
46353
  status?: number;
46354
+ /**
46355
+ * Message that describes why the request is forbidden.
46356
+ * Most responses use a descriptive message, such as `Not allowed to change security settings`.
46357
+ * If the organization requires multi-factor authentication (MFA) and MFA verification has not been completed for the session, this value is `mfa_required`.
46358
+ * If the request sets `requireMfa` to `true` and MFA verification has not been completed for the session, this value is `mfa_required_for_caller`.
46359
+ */
46360
+ error?: string;
46157
46361
  } & storefrontComponents["schemas"]["BaseProblem"];
46158
46362
  NotFound: {
46159
46363
  /** HTTP status code. */
@@ -62544,6 +62748,16 @@ export interface storefrontComponents {
62544
62748
  /** List of email addresses to send notifications to. */
62545
62749
  notificationEmailAddresses?: string[];
62546
62750
  };
62751
+ /**
62752
+ * Organization sign-in security settings.
62753
+ * This value is read-only on the [Create an organization](https://www.rebilly.com/catalog/all/organizations/postorganization) and [Update an organization](https://www.rebilly.com/catalog/all/organizations/patchorganization) operations.
62754
+ * To change these settings, use the [Update security settings](https://www.rebilly.com/catalog/all/organizations/putsecuritysettings) operation.
62755
+ * To retrieve how many users have multi-factor authentication (MFA) set up, use the [Retrieve security settings](https://www.rebilly.com/catalog/all/organizations/getsecuritysettings) operation.
62756
+ */
62757
+ security?: {
62758
+ /** Specifies if users must pass multi-factor authentication (MFA) to use this organization in the Rebilly app. */
62759
+ requireMfa?: boolean;
62760
+ };
62547
62761
  /**
62548
62762
  * Settings for annual compliance screening of all active customers.
62549
62763
  * When enabled, a compliance screening report is generated for every active customer
@@ -63556,6 +63770,13 @@ export interface storefrontComponents {
63556
63770
  preferences?: { [key: string]: any } | null;
63557
63771
  /** Specifies if the current user session has permissions emulation enabled. */
63558
63772
  hasPermissionsEmulation?: boolean;
63773
+ /**
63774
+ * Specifies if the user is in an organization in the current environment that requires multi-factor authentication (MFA).
63775
+ * Deactivated organizations are not included.
63776
+ * The requirement is enforced on each request to an organization that requires MFA, regardless of this value.
63777
+ * This value is `false` for API key and service account sessions.
63778
+ */
63779
+ mfaRequiredByOrganization?: boolean;
63559
63780
  /** User's full display name. */
63560
63781
  displayName?: string;
63561
63782
  /** Unique hash value that represents the user. */
@@ -63632,6 +63853,27 @@ export interface storefrontComponents {
63632
63853
  juniors?: any[];
63633
63854
  };
63634
63855
  };
63856
+ SecuritySettings: {
63857
+ /** Specifies if users must pass multi-factor authentication (MFA) to use this organization in the Rebilly UI. */
63858
+ requireMfa: boolean;
63859
+ /**
63860
+ * Number of users who have set up multi-factor authentication (MFA), excluding Rebilly staff.
63861
+ * Pending invitations are counted as users without MFA.
63862
+ * This value is `null` when this information is temporarily unavailable.
63863
+ */
63864
+ mfaAdoption?: {
63865
+ /** Number of active users who have multi-factor authentication (MFA) set up. */
63866
+ enrolled: number;
63867
+ /** Number of active users and pending invitations. */
63868
+ total: number;
63869
+ /**
63870
+ * Number of pending invitations included in `total`.
63871
+ * Invited users must set up multi-factor authentication (MFA) after they accept the invitation.
63872
+ */
63873
+ pending: number;
63874
+ } | null;
63875
+ _links?: storefrontComponents["schemas"]["SelfLink"];
63876
+ };
63635
63877
  /** Email notification sent through attribution. */
63636
63878
  SendThroughAttribution: {
63637
63879
  eventType?: storefrontComponents["schemas"]["EventType"];
@@ -63848,6 +64090,14 @@ export interface storefrontComponents {
63848
64090
  */
63849
64091
  roleIds?: string[];
63850
64092
  allowedIps?: storefrontComponents["schemas"]["AllowedIps"];
64093
+ /**
64094
+ * Specifies if the user has multi-factor authentication (MFA) set up.
64095
+ * This value is present only in responses from the [Retrieve a list of users](https://www.rebilly.com/catalog/all/users/getusercollection) operation
64096
+ * for an organization that has [security settings](https://www.rebilly.com/catalog/all/organizations/getsecuritysettings),
64097
+ * and is omitted for Rebilly staff.
64098
+ * This value is `null` when this information is temporarily unavailable.
64099
+ */
64100
+ mfaEnabled?: boolean | null;
63851
64101
  _links?: storefrontComponents["schemas"]["SelfLink"];
63852
64102
  };
63853
64103
  WebhookEvent: {
@@ -68520,7 +68770,10 @@ export interface storefrontComponents {
68520
68770
  "application/json": storefrontComponents["schemas"]["Unauthorized"];
68521
68771
  };
68522
68772
  };
68523
- /** Access forbidden. */
68773
+ /**
68774
+ * Access forbidden.
68775
+ * If the organization requires multi-factor authentication (MFA) and the session has not passed MFA, `error` is `mfa_required`.
68776
+ */
68524
68777
  Forbidden: {
68525
68778
  content: {
68526
68779
  "application/json": storefrontComponents["schemas"]["Forbidden"];
@@ -73435,6 +73688,13 @@ export interface reportsComponents {
73435
73688
  Forbidden: { [key: string]: any } & {
73436
73689
  /** HTTP status code. */
73437
73690
  status?: number;
73691
+ /**
73692
+ * Message that describes why the request is forbidden.
73693
+ * Most responses use a descriptive message, such as `Not allowed to change security settings`.
73694
+ * If the organization requires multi-factor authentication (MFA) and MFA verification has not been completed for the session, this value is `mfa_required`.
73695
+ * If the request sets `requireMfa` to `true` and MFA verification has not been completed for the session, this value is `mfa_required_for_caller`.
73696
+ */
73697
+ error?: string;
73438
73698
  } & reportsComponents["schemas"]["BaseProblem"];
73439
73699
  NotFound: {
73440
73700
  /** HTTP status code. */
@@ -89825,6 +90085,16 @@ export interface reportsComponents {
89825
90085
  /** List of email addresses to send notifications to. */
89826
90086
  notificationEmailAddresses?: string[];
89827
90087
  };
90088
+ /**
90089
+ * Organization sign-in security settings.
90090
+ * This value is read-only on the [Create an organization](https://www.rebilly.com/catalog/all/organizations/postorganization) and [Update an organization](https://www.rebilly.com/catalog/all/organizations/patchorganization) operations.
90091
+ * To change these settings, use the [Update security settings](https://www.rebilly.com/catalog/all/organizations/putsecuritysettings) operation.
90092
+ * To retrieve how many users have multi-factor authentication (MFA) set up, use the [Retrieve security settings](https://www.rebilly.com/catalog/all/organizations/getsecuritysettings) operation.
90093
+ */
90094
+ security?: {
90095
+ /** Specifies if users must pass multi-factor authentication (MFA) to use this organization in the Rebilly app. */
90096
+ requireMfa?: boolean;
90097
+ };
89828
90098
  /**
89829
90099
  * Settings for annual compliance screening of all active customers.
89830
90100
  * When enabled, a compliance screening report is generated for every active customer
@@ -90837,6 +91107,13 @@ export interface reportsComponents {
90837
91107
  preferences?: { [key: string]: any } | null;
90838
91108
  /** Specifies if the current user session has permissions emulation enabled. */
90839
91109
  hasPermissionsEmulation?: boolean;
91110
+ /**
91111
+ * Specifies if the user is in an organization in the current environment that requires multi-factor authentication (MFA).
91112
+ * Deactivated organizations are not included.
91113
+ * The requirement is enforced on each request to an organization that requires MFA, regardless of this value.
91114
+ * This value is `false` for API key and service account sessions.
91115
+ */
91116
+ mfaRequiredByOrganization?: boolean;
90840
91117
  /** User's full display name. */
90841
91118
  displayName?: string;
90842
91119
  /** Unique hash value that represents the user. */
@@ -90913,6 +91190,27 @@ export interface reportsComponents {
90913
91190
  juniors?: any[];
90914
91191
  };
90915
91192
  };
91193
+ SecuritySettings: {
91194
+ /** Specifies if users must pass multi-factor authentication (MFA) to use this organization in the Rebilly UI. */
91195
+ requireMfa: boolean;
91196
+ /**
91197
+ * Number of users who have set up multi-factor authentication (MFA), excluding Rebilly staff.
91198
+ * Pending invitations are counted as users without MFA.
91199
+ * This value is `null` when this information is temporarily unavailable.
91200
+ */
91201
+ mfaAdoption?: {
91202
+ /** Number of active users who have multi-factor authentication (MFA) set up. */
91203
+ enrolled: number;
91204
+ /** Number of active users and pending invitations. */
91205
+ total: number;
91206
+ /**
91207
+ * Number of pending invitations included in `total`.
91208
+ * Invited users must set up multi-factor authentication (MFA) after they accept the invitation.
91209
+ */
91210
+ pending: number;
91211
+ } | null;
91212
+ _links?: reportsComponents["schemas"]["SelfLink"];
91213
+ };
90916
91214
  /** Email notification sent through attribution. */
90917
91215
  SendThroughAttribution: {
90918
91216
  eventType?: reportsComponents["schemas"]["EventType"];
@@ -91129,6 +91427,14 @@ export interface reportsComponents {
91129
91427
  */
91130
91428
  roleIds?: string[];
91131
91429
  allowedIps?: reportsComponents["schemas"]["AllowedIps"];
91430
+ /**
91431
+ * Specifies if the user has multi-factor authentication (MFA) set up.
91432
+ * This value is present only in responses from the [Retrieve a list of users](https://www.rebilly.com/catalog/all/users/getusercollection) operation
91433
+ * for an organization that has [security settings](https://www.rebilly.com/catalog/all/organizations/getsecuritysettings),
91434
+ * and is omitted for Rebilly staff.
91435
+ * This value is `null` when this information is temporarily unavailable.
91436
+ */
91437
+ mfaEnabled?: boolean | null;
91132
91438
  _links?: reportsComponents["schemas"]["SelfLink"];
91133
91439
  };
91134
91440
  WebhookEvent: {
@@ -95801,7 +96107,10 @@ export interface reportsComponents {
95801
96107
  "application/json": reportsComponents["schemas"]["Unauthorized"];
95802
96108
  };
95803
96109
  };
95804
- /** Access forbidden. */
96110
+ /**
96111
+ * Access forbidden.
96112
+ * If the organization requires multi-factor authentication (MFA) and the session has not passed MFA, `error` is `mfa_required`.
96113
+ */
95805
96114
  Forbidden: {
95806
96115
  content: {
95807
96116
  "application/json": reportsComponents["schemas"]["Forbidden"];
@@ -101504,6 +101813,11 @@ declare module "rebilly-js-sdk" {
101504
101813
  export type PutRoleResponsePromise = rebilly.PutRoleResponsePromise;
101505
101814
  export type DeleteRoleResponse = rebilly.DeleteRoleResponse;
101506
101815
  export type DeleteRoleResponsePromise = rebilly.DeleteRoleResponsePromise;
101816
+ export type GetSecuritySettingsResponse = rebilly.GetSecuritySettingsResponse;
101817
+ export type GetSecuritySettingsResponsePromise = rebilly.GetSecuritySettingsResponsePromise;
101818
+ export type PutSecuritySettingsRequest = rebilly.PutSecuritySettingsRequest;
101819
+ export type PutSecuritySettingsResponse = rebilly.PutSecuritySettingsResponse;
101820
+ export type PutSecuritySettingsResponsePromise = rebilly.PutSecuritySettingsResponsePromise;
101507
101821
  export type GetSendThroughAttributionCollectionRequest = rebilly.GetSendThroughAttributionCollectionRequest;
101508
101822
  export type GetSendThroughAttributionCollectionResponse = rebilly.GetSendThroughAttributionCollectionResponse;
101509
101823
  export type GetSendThroughAttributionCollectionResponsePromise = rebilly.GetSendThroughAttributionCollectionResponsePromise;
@@ -102102,6 +102416,7 @@ declare module "errors/errors" {
102102
102416
  namespace Errors {
102103
102417
  export { RebillyError };
102104
102418
  export { RebillyRequestError };
102419
+ export { RebillyMfaRequiredError };
102105
102420
  export { RebillyValidationError };
102106
102421
  export { RebillyNotFoundError };
102107
102422
  export { RebillyConflictError };
@@ -102114,6 +102429,9 @@ declare module "errors/errors" {
102114
102429
  class RebillyRequestError extends RebillyError {
102115
102430
  constructor(error: any);
102116
102431
  }
102432
+ class RebillyMfaRequiredError extends RebillyRequestError {
102433
+ name: string;
102434
+ }
102117
102435
  class RebillyValidationError extends RebillyError {
102118
102436
  constructor(error: any);
102119
102437
  }
@@ -103771,6 +104089,16 @@ declare module "resources/search-resource" {
103771
104089
  }): rebilly.GetSearchResponsePromise;
103772
104090
  };
103773
104091
  }
104092
+ declare module "resources/security-settings-resource" {
104093
+ export default function SecuritySettingsResource({ apiHandler }: {
104094
+ apiHandler: any;
104095
+ }): {
104096
+ get(): rebilly.GetSecuritySettingsResponsePromise;
104097
+ update({ data }: {
104098
+ data: any;
104099
+ }): rebilly.PutSecuritySettingsResponsePromise;
104100
+ };
104101
+ }
103774
104102
  declare module "resources/segments-resource" {
103775
104103
  export default function SegmentsResource({ apiHandler }: {
103776
104104
  apiHandler: any;
@@ -105495,6 +105823,12 @@ declare module "resources/api-instance" {
105495
105823
  q?: any;
105496
105824
  }): rebilly.GetSearchResponsePromise;
105497
105825
  };
105826
+ securitySettings: {
105827
+ get(): rebilly.GetSecuritySettingsResponsePromise;
105828
+ update({ data }: {
105829
+ data: any;
105830
+ }): rebilly.PutSecuritySettingsResponsePromise;
105831
+ };
105498
105832
  segments: {
105499
105833
  getAll({ limit, offset, sort, filter, q, }?: rebilly.GetGridSegmentCollectionRequest): rebilly.GetGridSegmentCollectionResponsePromise;
105500
105834
  create({ id, data }: rebilly.CreateGridSegmentRequest): rebilly.PostGridSegmentResponsePromise;