rebilly-js-sdk 62.221.0 → 62.222.1

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,3 @@
1
- ## 62.221.0 (2026-10-16)
1
+ ## 62.222.1 (2026-10-16)
2
2
 
3
3
  This was a version bump only for rebilly-js-sdk to align it with other projects, there were no code changes.
@@ -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. */
@@ -12689,6 +12749,7 @@ export interface coreComponents {
12689
12749
  paymentTerms?: string;
12690
12750
  /**
12691
12751
  * Date and time when the quote expires.
12752
+ * A new or updated expiration time must be later than the current time.
12692
12753
  * The default expiration time is one month from the time the quote is issued.
12693
12754
  * In a `draft` state, this field may be `null`.
12694
12755
  */
@@ -12946,6 +13007,7 @@ export interface coreComponents {
12946
13007
  paymentTerms?: string;
12947
13008
  /**
12948
13009
  * Date and time when the quote expires.
13010
+ * A new or updated expiration time must be later than the current time.
12949
13011
  * The default expiration time is one month from the time the quote is issued.
12950
13012
  * In a `draft` state, this field may be `null`.
12951
13013
  */
@@ -13154,6 +13216,7 @@ export interface coreComponents {
13154
13216
  paymentTerms?: string;
13155
13217
  /**
13156
13218
  * Date and time when the quote expires.
13219
+ * A new or updated expiration time must be later than the current time.
13157
13220
  * The default expiration time is one month from the time the quote is issued.
13158
13221
  * In a `draft` state, this field may be `null`.
13159
13222
  */
@@ -13217,6 +13280,7 @@ export interface coreComponents {
13217
13280
  QuoteReissue: {
13218
13281
  /**
13219
13282
  * Date and time when the reissued quote expires.
13283
+ * A new expiration time must be later than the current time.
13220
13284
  * If this field is `null` or omitted, the quote keeps its expiration time when it has not passed.
13221
13285
  * Otherwise, the quote expires one month after it is reissued.
13222
13286
  */
@@ -22591,6 +22655,16 @@ export interface coreComponents {
22591
22655
  /** List of email addresses to send notifications to. */
22592
22656
  notificationEmailAddresses?: string[];
22593
22657
  };
22658
+ /**
22659
+ * Organization sign-in security settings.
22660
+ * 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.
22661
+ * To change these settings, use the [Update security settings](https://www.rebilly.com/catalog/all/organizations/putsecuritysettings) operation.
22662
+ * 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.
22663
+ */
22664
+ security?: {
22665
+ /** Specifies if users must pass multi-factor authentication (MFA) to use this organization in the Rebilly app. */
22666
+ requireMfa?: boolean;
22667
+ };
22594
22668
  /**
22595
22669
  * Settings for annual compliance screening of all active customers.
22596
22670
  * When enabled, a compliance screening report is generated for every active customer
@@ -23603,6 +23677,13 @@ export interface coreComponents {
23603
23677
  preferences?: { [key: string]: any } | null;
23604
23678
  /** Specifies if the current user session has permissions emulation enabled. */
23605
23679
  hasPermissionsEmulation?: boolean;
23680
+ /**
23681
+ * Specifies if the user is in an organization in the current environment that requires multi-factor authentication (MFA).
23682
+ * Deactivated organizations are not included.
23683
+ * The requirement is enforced on each request to an organization that requires MFA, regardless of this value.
23684
+ * This value is `false` for API key and service account sessions.
23685
+ */
23686
+ mfaRequiredByOrganization?: boolean;
23606
23687
  /** User's full display name. */
23607
23688
  displayName?: string;
23608
23689
  /** Unique hash value that represents the user. */
@@ -23679,6 +23760,27 @@ export interface coreComponents {
23679
23760
  juniors?: any[];
23680
23761
  };
23681
23762
  };
23763
+ SecuritySettings: {
23764
+ /** Specifies if users must pass multi-factor authentication (MFA) to use this organization in the Rebilly UI. */
23765
+ requireMfa: boolean;
23766
+ /**
23767
+ * Number of users who have set up multi-factor authentication (MFA), excluding Rebilly staff.
23768
+ * Pending invitations are counted as users without MFA.
23769
+ * This value is `null` when this information is temporarily unavailable.
23770
+ */
23771
+ mfaAdoption?: {
23772
+ /** Number of active users who have multi-factor authentication (MFA) set up. */
23773
+ enrolled: number;
23774
+ /** Number of active users and pending invitations. */
23775
+ total: number;
23776
+ /**
23777
+ * Number of pending invitations included in `total`.
23778
+ * Invited users must set up multi-factor authentication (MFA) after they accept the invitation.
23779
+ */
23780
+ pending: number;
23781
+ } | null;
23782
+ _links?: coreComponents["schemas"]["SelfLink"];
23783
+ };
23682
23784
  /** Email notification sent through attribution. */
23683
23785
  SendThroughAttribution: {
23684
23786
  eventType?: coreComponents["schemas"]["EventType"];
@@ -23895,6 +23997,14 @@ export interface coreComponents {
23895
23997
  */
23896
23998
  roleIds?: string[];
23897
23999
  allowedIps?: coreComponents["schemas"]["AllowedIps"];
24000
+ /**
24001
+ * Specifies if the user has multi-factor authentication (MFA) set up.
24002
+ * This value is present only in responses from the [Retrieve a list of users](https://www.rebilly.com/catalog/all/users/getusercollection) operation
24003
+ * for an organization that has [security settings](https://www.rebilly.com/catalog/all/organizations/getsecuritysettings),
24004
+ * and is omitted for Rebilly staff.
24005
+ * This value is `null` when this information is temporarily unavailable.
24006
+ */
24007
+ mfaEnabled?: boolean | null;
23898
24008
  _links?: coreComponents["schemas"]["SelfLink"];
23899
24009
  };
23900
24010
  WebhookEvent: {
@@ -28567,7 +28677,10 @@ export interface coreComponents {
28567
28677
  "application/json": coreComponents["schemas"]["Unauthorized"];
28568
28678
  };
28569
28679
  };
28570
- /** Access forbidden. */
28680
+ /**
28681
+ * Access forbidden.
28682
+ * If the organization requires multi-factor authentication (MFA) and the session has not passed MFA, `error` is `mfa_required`.
28683
+ */
28571
28684
  Forbidden: {
28572
28685
  content: {
28573
28686
  "application/json": coreComponents["schemas"]["Forbidden"];
@@ -42752,7 +42865,15 @@ export interface operations {
42752
42865
  429: coreComponents["responses"]["TooManyRequests"];
42753
42866
  };
42754
42867
  };
42755
- /** Retrieves a list of organizations. */
42868
+ /**
42869
+ * Retrieves a list of organizations.
42870
+ * If an organization requires multi-factor authentication (MFA) and your session has not passed MFA,
42871
+ * the response includes only `id`, `name`, `country`, `features`, `settings.security`, and `_links` for that organization,
42872
+ * and omits all other fields.
42873
+ * In that case, only `id`, `name`, and `features` are available as filter fields,
42874
+ * and only `id` and `name` are available as sort fields.
42875
+ * To require MFA, use the [Update security settings](https://www.rebilly.com/catalog/all/organizations/putsecuritysettings) operation.
42876
+ */
42756
42877
  GetOrganizationCollection: {
42757
42878
  parameters: {
42758
42879
  query: {
@@ -42811,7 +42932,13 @@ export interface operations {
42811
42932
  };
42812
42933
  requestBody: coreComponents["requestBodies"]["PostOrganization"];
42813
42934
  };
42814
- /** Retrieves an organization with a specified ID. */
42935
+ /**
42936
+ * Retrieves an organization with a specified ID.
42937
+ * If the organization requires multi-factor authentication (MFA) and your session has not passed MFA,
42938
+ * the response includes only `id`, `name`, `country`, `features`, `settings.security`, and `_links`,
42939
+ * and omits all other fields.
42940
+ * To require MFA, use the [Update security settings](https://www.rebilly.com/catalog/all/organizations/putsecuritysettings) operation.
42941
+ */
42815
42942
  GetOrganization: {
42816
42943
  parameters: {
42817
42944
  path: {
@@ -44147,6 +44274,62 @@ export interface operations {
44147
44274
  429: coreComponents["responses"]["TooManyRequests"];
44148
44275
  };
44149
44276
  };
44277
+ /**
44278
+ * Retrieves the sign-in security settings of the organization,
44279
+ * and the number of users who have multi-factor authentication (MFA) set up.
44280
+ * Settings apply to the current environment only: live and sandbox are configured separately.
44281
+ */
44282
+ GetSecuritySettings: {
44283
+ responses: {
44284
+ /** Security settings retrieved. */
44285
+ 200: {
44286
+ content: {
44287
+ "application/json": coreComponents["schemas"]["SecuritySettings"];
44288
+ };
44289
+ };
44290
+ 401: coreComponents["responses"]["Unauthorized"];
44291
+ 403: coreComponents["responses"]["Forbidden"];
44292
+ 404: coreComponents["responses"]["NotFound"];
44293
+ };
44294
+ };
44295
+ /**
44296
+ * Updates the sign-in security settings of the organization.
44297
+ * If `requireMfa` is `true`, every user who signs in to the Rebilly UI must pass multi-factor authentication (MFA).
44298
+ * If the session of a user has not passed MFA, other operations respond with `403` and `error` is `mfa_required`.
44299
+ * Only owners and administrators who are signed in to the Rebilly UI can change this setting.
44300
+ * This setting does not apply to API keys, and a request that uses an API key cannot change this setting.
44301
+ * To turn on `requireMfa`, the session must have passed MFA.
44302
+ * If the session has not passed MFA, the response is `403` and `error` is `mfa_required_for_caller`.
44303
+ * If the number of users who have MFA set up is temporarily unavailable, `requireMfa` cannot be turned on and the response is `503`.
44304
+ * Settings apply to the current environment only: live and sandbox are configured separately.
44305
+ */
44306
+ PutSecuritySettings: {
44307
+ responses: {
44308
+ /** Security settings updated. */
44309
+ 200: {
44310
+ headers: {};
44311
+ content: {
44312
+ "application/json": coreComponents["schemas"]["SecuritySettings"];
44313
+ };
44314
+ };
44315
+ 401: coreComponents["responses"]["Unauthorized"];
44316
+ 403: coreComponents["responses"]["Forbidden"];
44317
+ 404: coreComponents["responses"]["NotFound"];
44318
+ 422: coreComponents["responses"]["ValidationError"];
44319
+ 429: coreComponents["responses"]["TooManyRequests"];
44320
+ /** MFA adoption unavailable. */
44321
+ 503: {
44322
+ content: {
44323
+ "application/json": coreComponents["schemas"]["Problem"];
44324
+ };
44325
+ };
44326
+ };
44327
+ requestBody: {
44328
+ content: {
44329
+ "application/json": coreComponents["schemas"]["SecuritySettings"];
44330
+ };
44331
+ };
44332
+ };
44150
44333
  /** Retrieves a list of email notifications, that have been sent through attribution, for a specified event type. */
44151
44334
  GetSendThroughAttributionCollection: {
44152
44335
  parameters: {
@@ -44428,7 +44611,19 @@ export interface operations {
44428
44611
  429: coreComponents["responses"]["TooManyRequests"];
44429
44612
  };
44430
44613
  };
44431
- /** Retrieves a list of users. */
44614
+ /**
44615
+ * Retrieves a list of users.
44616
+ * To retrieve the users of the organization who have multi-factor authentication (MFA) set up,
44617
+ * use `filter=mfaEnabled:true`.
44618
+ * To retrieve the users who do not have MFA set up, including users who have not accepted their invitation,
44619
+ * use `filter=mfaEnabled:false`.
44620
+ * The `mfaEnabled` filter applies only to the list of users of an organization
44621
+ * that has [security settings](https://www.rebilly.com/catalog/all/organizations/getsecuritysettings).
44622
+ * Inactive users and Rebilly staff are not part of the `mfaEnabled` filter.
44623
+ * User objects of Rebilly staff do not include `mfaEnabled`.
44624
+ * The totals are the same as those returned by the [Retrieve security settings](https://www.rebilly.com/catalog/all/organizations/getsecuritysettings) operation.
44625
+ * If the MFA status is temporarily unavailable, the response is `503` and `error` is `mfa_status_unavailable`.
44626
+ */
44432
44627
  GetUserCollection: {
44433
44628
  parameters: {
44434
44629
  query: {
@@ -44467,6 +44662,12 @@ export interface operations {
44467
44662
  };
44468
44663
  401: coreComponents["responses"]["Unauthorized"];
44469
44664
  403: coreComponents["responses"]["Forbidden"];
44665
+ /** MFA status unavailable. */
44666
+ 503: {
44667
+ content: {
44668
+ "application/json": coreComponents["schemas"]["Problem"];
44669
+ };
44670
+ };
44470
44671
  };
44471
44672
  };
44472
44673
  /** Creates a user. */
@@ -46154,6 +46355,13 @@ export interface storefrontComponents {
46154
46355
  Forbidden: { [key: string]: any } & {
46155
46356
  /** HTTP status code. */
46156
46357
  status?: number;
46358
+ /**
46359
+ * Message that describes why the request is forbidden.
46360
+ * Most responses use a descriptive message, such as `Not allowed to change security settings`.
46361
+ * If the organization requires multi-factor authentication (MFA) and MFA verification has not been completed for the session, this value is `mfa_required`.
46362
+ * If the request sets `requireMfa` to `true` and MFA verification has not been completed for the session, this value is `mfa_required_for_caller`.
46363
+ */
46364
+ error?: string;
46157
46365
  } & storefrontComponents["schemas"]["BaseProblem"];
46158
46366
  NotFound: {
46159
46367
  /** HTTP status code. */
@@ -52642,6 +52850,7 @@ export interface storefrontComponents {
52642
52850
  paymentTerms?: string;
52643
52851
  /**
52644
52852
  * Date and time when the quote expires.
52853
+ * A new or updated expiration time must be later than the current time.
52645
52854
  * The default expiration time is one month from the time the quote is issued.
52646
52855
  * In a `draft` state, this field may be `null`.
52647
52856
  */
@@ -52899,6 +53108,7 @@ export interface storefrontComponents {
52899
53108
  paymentTerms?: string;
52900
53109
  /**
52901
53110
  * Date and time when the quote expires.
53111
+ * A new or updated expiration time must be later than the current time.
52902
53112
  * The default expiration time is one month from the time the quote is issued.
52903
53113
  * In a `draft` state, this field may be `null`.
52904
53114
  */
@@ -53107,6 +53317,7 @@ export interface storefrontComponents {
53107
53317
  paymentTerms?: string;
53108
53318
  /**
53109
53319
  * Date and time when the quote expires.
53320
+ * A new or updated expiration time must be later than the current time.
53110
53321
  * The default expiration time is one month from the time the quote is issued.
53111
53322
  * In a `draft` state, this field may be `null`.
53112
53323
  */
@@ -53170,6 +53381,7 @@ export interface storefrontComponents {
53170
53381
  QuoteReissue: {
53171
53382
  /**
53172
53383
  * Date and time when the reissued quote expires.
53384
+ * A new expiration time must be later than the current time.
53173
53385
  * If this field is `null` or omitted, the quote keeps its expiration time when it has not passed.
53174
53386
  * Otherwise, the quote expires one month after it is reissued.
53175
53387
  */
@@ -62544,6 +62756,16 @@ export interface storefrontComponents {
62544
62756
  /** List of email addresses to send notifications to. */
62545
62757
  notificationEmailAddresses?: string[];
62546
62758
  };
62759
+ /**
62760
+ * Organization sign-in security settings.
62761
+ * 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.
62762
+ * To change these settings, use the [Update security settings](https://www.rebilly.com/catalog/all/organizations/putsecuritysettings) operation.
62763
+ * 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.
62764
+ */
62765
+ security?: {
62766
+ /** Specifies if users must pass multi-factor authentication (MFA) to use this organization in the Rebilly app. */
62767
+ requireMfa?: boolean;
62768
+ };
62547
62769
  /**
62548
62770
  * Settings for annual compliance screening of all active customers.
62549
62771
  * When enabled, a compliance screening report is generated for every active customer
@@ -63556,6 +63778,13 @@ export interface storefrontComponents {
63556
63778
  preferences?: { [key: string]: any } | null;
63557
63779
  /** Specifies if the current user session has permissions emulation enabled. */
63558
63780
  hasPermissionsEmulation?: boolean;
63781
+ /**
63782
+ * Specifies if the user is in an organization in the current environment that requires multi-factor authentication (MFA).
63783
+ * Deactivated organizations are not included.
63784
+ * The requirement is enforced on each request to an organization that requires MFA, regardless of this value.
63785
+ * This value is `false` for API key and service account sessions.
63786
+ */
63787
+ mfaRequiredByOrganization?: boolean;
63559
63788
  /** User's full display name. */
63560
63789
  displayName?: string;
63561
63790
  /** Unique hash value that represents the user. */
@@ -63632,6 +63861,27 @@ export interface storefrontComponents {
63632
63861
  juniors?: any[];
63633
63862
  };
63634
63863
  };
63864
+ SecuritySettings: {
63865
+ /** Specifies if users must pass multi-factor authentication (MFA) to use this organization in the Rebilly UI. */
63866
+ requireMfa: boolean;
63867
+ /**
63868
+ * Number of users who have set up multi-factor authentication (MFA), excluding Rebilly staff.
63869
+ * Pending invitations are counted as users without MFA.
63870
+ * This value is `null` when this information is temporarily unavailable.
63871
+ */
63872
+ mfaAdoption?: {
63873
+ /** Number of active users who have multi-factor authentication (MFA) set up. */
63874
+ enrolled: number;
63875
+ /** Number of active users and pending invitations. */
63876
+ total: number;
63877
+ /**
63878
+ * Number of pending invitations included in `total`.
63879
+ * Invited users must set up multi-factor authentication (MFA) after they accept the invitation.
63880
+ */
63881
+ pending: number;
63882
+ } | null;
63883
+ _links?: storefrontComponents["schemas"]["SelfLink"];
63884
+ };
63635
63885
  /** Email notification sent through attribution. */
63636
63886
  SendThroughAttribution: {
63637
63887
  eventType?: storefrontComponents["schemas"]["EventType"];
@@ -63848,6 +64098,14 @@ export interface storefrontComponents {
63848
64098
  */
63849
64099
  roleIds?: string[];
63850
64100
  allowedIps?: storefrontComponents["schemas"]["AllowedIps"];
64101
+ /**
64102
+ * Specifies if the user has multi-factor authentication (MFA) set up.
64103
+ * This value is present only in responses from the [Retrieve a list of users](https://www.rebilly.com/catalog/all/users/getusercollection) operation
64104
+ * for an organization that has [security settings](https://www.rebilly.com/catalog/all/organizations/getsecuritysettings),
64105
+ * and is omitted for Rebilly staff.
64106
+ * This value is `null` when this information is temporarily unavailable.
64107
+ */
64108
+ mfaEnabled?: boolean | null;
63851
64109
  _links?: storefrontComponents["schemas"]["SelfLink"];
63852
64110
  };
63853
64111
  WebhookEvent: {
@@ -68520,7 +68778,10 @@ export interface storefrontComponents {
68520
68778
  "application/json": storefrontComponents["schemas"]["Unauthorized"];
68521
68779
  };
68522
68780
  };
68523
- /** Access forbidden. */
68781
+ /**
68782
+ * Access forbidden.
68783
+ * If the organization requires multi-factor authentication (MFA) and the session has not passed MFA, `error` is `mfa_required`.
68784
+ */
68524
68785
  Forbidden: {
68525
68786
  content: {
68526
68787
  "application/json": storefrontComponents["schemas"]["Forbidden"];
@@ -73435,6 +73696,13 @@ export interface reportsComponents {
73435
73696
  Forbidden: { [key: string]: any } & {
73436
73697
  /** HTTP status code. */
73437
73698
  status?: number;
73699
+ /**
73700
+ * Message that describes why the request is forbidden.
73701
+ * Most responses use a descriptive message, such as `Not allowed to change security settings`.
73702
+ * If the organization requires multi-factor authentication (MFA) and MFA verification has not been completed for the session, this value is `mfa_required`.
73703
+ * If the request sets `requireMfa` to `true` and MFA verification has not been completed for the session, this value is `mfa_required_for_caller`.
73704
+ */
73705
+ error?: string;
73438
73706
  } & reportsComponents["schemas"]["BaseProblem"];
73439
73707
  NotFound: {
73440
73708
  /** HTTP status code. */
@@ -79923,6 +80191,7 @@ export interface reportsComponents {
79923
80191
  paymentTerms?: string;
79924
80192
  /**
79925
80193
  * Date and time when the quote expires.
80194
+ * A new or updated expiration time must be later than the current time.
79926
80195
  * The default expiration time is one month from the time the quote is issued.
79927
80196
  * In a `draft` state, this field may be `null`.
79928
80197
  */
@@ -80180,6 +80449,7 @@ export interface reportsComponents {
80180
80449
  paymentTerms?: string;
80181
80450
  /**
80182
80451
  * Date and time when the quote expires.
80452
+ * A new or updated expiration time must be later than the current time.
80183
80453
  * The default expiration time is one month from the time the quote is issued.
80184
80454
  * In a `draft` state, this field may be `null`.
80185
80455
  */
@@ -80388,6 +80658,7 @@ export interface reportsComponents {
80388
80658
  paymentTerms?: string;
80389
80659
  /**
80390
80660
  * Date and time when the quote expires.
80661
+ * A new or updated expiration time must be later than the current time.
80391
80662
  * The default expiration time is one month from the time the quote is issued.
80392
80663
  * In a `draft` state, this field may be `null`.
80393
80664
  */
@@ -80451,6 +80722,7 @@ export interface reportsComponents {
80451
80722
  QuoteReissue: {
80452
80723
  /**
80453
80724
  * Date and time when the reissued quote expires.
80725
+ * A new expiration time must be later than the current time.
80454
80726
  * If this field is `null` or omitted, the quote keeps its expiration time when it has not passed.
80455
80727
  * Otherwise, the quote expires one month after it is reissued.
80456
80728
  */
@@ -89825,6 +90097,16 @@ export interface reportsComponents {
89825
90097
  /** List of email addresses to send notifications to. */
89826
90098
  notificationEmailAddresses?: string[];
89827
90099
  };
90100
+ /**
90101
+ * Organization sign-in security settings.
90102
+ * 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.
90103
+ * To change these settings, use the [Update security settings](https://www.rebilly.com/catalog/all/organizations/putsecuritysettings) operation.
90104
+ * 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.
90105
+ */
90106
+ security?: {
90107
+ /** Specifies if users must pass multi-factor authentication (MFA) to use this organization in the Rebilly app. */
90108
+ requireMfa?: boolean;
90109
+ };
89828
90110
  /**
89829
90111
  * Settings for annual compliance screening of all active customers.
89830
90112
  * When enabled, a compliance screening report is generated for every active customer
@@ -90837,6 +91119,13 @@ export interface reportsComponents {
90837
91119
  preferences?: { [key: string]: any } | null;
90838
91120
  /** Specifies if the current user session has permissions emulation enabled. */
90839
91121
  hasPermissionsEmulation?: boolean;
91122
+ /**
91123
+ * Specifies if the user is in an organization in the current environment that requires multi-factor authentication (MFA).
91124
+ * Deactivated organizations are not included.
91125
+ * The requirement is enforced on each request to an organization that requires MFA, regardless of this value.
91126
+ * This value is `false` for API key and service account sessions.
91127
+ */
91128
+ mfaRequiredByOrganization?: boolean;
90840
91129
  /** User's full display name. */
90841
91130
  displayName?: string;
90842
91131
  /** Unique hash value that represents the user. */
@@ -90913,6 +91202,27 @@ export interface reportsComponents {
90913
91202
  juniors?: any[];
90914
91203
  };
90915
91204
  };
91205
+ SecuritySettings: {
91206
+ /** Specifies if users must pass multi-factor authentication (MFA) to use this organization in the Rebilly UI. */
91207
+ requireMfa: boolean;
91208
+ /**
91209
+ * Number of users who have set up multi-factor authentication (MFA), excluding Rebilly staff.
91210
+ * Pending invitations are counted as users without MFA.
91211
+ * This value is `null` when this information is temporarily unavailable.
91212
+ */
91213
+ mfaAdoption?: {
91214
+ /** Number of active users who have multi-factor authentication (MFA) set up. */
91215
+ enrolled: number;
91216
+ /** Number of active users and pending invitations. */
91217
+ total: number;
91218
+ /**
91219
+ * Number of pending invitations included in `total`.
91220
+ * Invited users must set up multi-factor authentication (MFA) after they accept the invitation.
91221
+ */
91222
+ pending: number;
91223
+ } | null;
91224
+ _links?: reportsComponents["schemas"]["SelfLink"];
91225
+ };
90916
91226
  /** Email notification sent through attribution. */
90917
91227
  SendThroughAttribution: {
90918
91228
  eventType?: reportsComponents["schemas"]["EventType"];
@@ -91129,6 +91439,14 @@ export interface reportsComponents {
91129
91439
  */
91130
91440
  roleIds?: string[];
91131
91441
  allowedIps?: reportsComponents["schemas"]["AllowedIps"];
91442
+ /**
91443
+ * Specifies if the user has multi-factor authentication (MFA) set up.
91444
+ * This value is present only in responses from the [Retrieve a list of users](https://www.rebilly.com/catalog/all/users/getusercollection) operation
91445
+ * for an organization that has [security settings](https://www.rebilly.com/catalog/all/organizations/getsecuritysettings),
91446
+ * and is omitted for Rebilly staff.
91447
+ * This value is `null` when this information is temporarily unavailable.
91448
+ */
91449
+ mfaEnabled?: boolean | null;
91132
91450
  _links?: reportsComponents["schemas"]["SelfLink"];
91133
91451
  };
91134
91452
  WebhookEvent: {
@@ -95801,7 +96119,10 @@ export interface reportsComponents {
95801
96119
  "application/json": reportsComponents["schemas"]["Unauthorized"];
95802
96120
  };
95803
96121
  };
95804
- /** Access forbidden. */
96122
+ /**
96123
+ * Access forbidden.
96124
+ * If the organization requires multi-factor authentication (MFA) and the session has not passed MFA, `error` is `mfa_required`.
96125
+ */
95805
96126
  Forbidden: {
95806
96127
  content: {
95807
96128
  "application/json": reportsComponents["schemas"]["Forbidden"];
@@ -101504,6 +101825,11 @@ declare module "rebilly-js-sdk" {
101504
101825
  export type PutRoleResponsePromise = rebilly.PutRoleResponsePromise;
101505
101826
  export type DeleteRoleResponse = rebilly.DeleteRoleResponse;
101506
101827
  export type DeleteRoleResponsePromise = rebilly.DeleteRoleResponsePromise;
101828
+ export type GetSecuritySettingsResponse = rebilly.GetSecuritySettingsResponse;
101829
+ export type GetSecuritySettingsResponsePromise = rebilly.GetSecuritySettingsResponsePromise;
101830
+ export type PutSecuritySettingsRequest = rebilly.PutSecuritySettingsRequest;
101831
+ export type PutSecuritySettingsResponse = rebilly.PutSecuritySettingsResponse;
101832
+ export type PutSecuritySettingsResponsePromise = rebilly.PutSecuritySettingsResponsePromise;
101507
101833
  export type GetSendThroughAttributionCollectionRequest = rebilly.GetSendThroughAttributionCollectionRequest;
101508
101834
  export type GetSendThroughAttributionCollectionResponse = rebilly.GetSendThroughAttributionCollectionResponse;
101509
101835
  export type GetSendThroughAttributionCollectionResponsePromise = rebilly.GetSendThroughAttributionCollectionResponsePromise;
@@ -102102,6 +102428,7 @@ declare module "errors/errors" {
102102
102428
  namespace Errors {
102103
102429
  export { RebillyError };
102104
102430
  export { RebillyRequestError };
102431
+ export { RebillyMfaRequiredError };
102105
102432
  export { RebillyValidationError };
102106
102433
  export { RebillyNotFoundError };
102107
102434
  export { RebillyConflictError };
@@ -102114,6 +102441,9 @@ declare module "errors/errors" {
102114
102441
  class RebillyRequestError extends RebillyError {
102115
102442
  constructor(error: any);
102116
102443
  }
102444
+ class RebillyMfaRequiredError extends RebillyRequestError {
102445
+ name: string;
102446
+ }
102117
102447
  class RebillyValidationError extends RebillyError {
102118
102448
  constructor(error: any);
102119
102449
  }
@@ -103771,6 +104101,16 @@ declare module "resources/search-resource" {
103771
104101
  }): rebilly.GetSearchResponsePromise;
103772
104102
  };
103773
104103
  }
104104
+ declare module "resources/security-settings-resource" {
104105
+ export default function SecuritySettingsResource({ apiHandler }: {
104106
+ apiHandler: any;
104107
+ }): {
104108
+ get(): rebilly.GetSecuritySettingsResponsePromise;
104109
+ update({ data }: {
104110
+ data: any;
104111
+ }): rebilly.PutSecuritySettingsResponsePromise;
104112
+ };
104113
+ }
103774
104114
  declare module "resources/segments-resource" {
103775
104115
  export default function SegmentsResource({ apiHandler }: {
103776
104116
  apiHandler: any;
@@ -105495,6 +105835,12 @@ declare module "resources/api-instance" {
105495
105835
  q?: any;
105496
105836
  }): rebilly.GetSearchResponsePromise;
105497
105837
  };
105838
+ securitySettings: {
105839
+ get(): rebilly.GetSecuritySettingsResponsePromise;
105840
+ update({ data }: {
105841
+ data: any;
105842
+ }): rebilly.PutSecuritySettingsResponsePromise;
105843
+ };
105498
105844
  segments: {
105499
105845
  getAll({ limit, offset, sort, filter, q, }?: rebilly.GetGridSegmentCollectionRequest): rebilly.GetGridSegmentCollectionResponsePromise;
105500
105846
  create({ id, data }: rebilly.CreateGridSegmentRequest): rebilly.PostGridSegmentResponsePromise;