@vitable-inc/vitable-connect 2.0.0 → 2.1.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.
Files changed (88) hide show
  1. package/dist/cjs/BaseClient.js +2 -2
  2. package/dist/cjs/api/resources/employers/client/Client.d.ts +2 -1
  3. package/dist/cjs/api/resources/employers/client/Client.js +40 -37
  4. package/dist/cjs/api/resources/employers/client/requests/CreateEmployerRequest.d.ts +2 -0
  5. package/dist/cjs/api/resources/employers/client/requests/EnsurePayrollIntegrationEmailEmployersRequest.d.ts +2 -0
  6. package/dist/cjs/api/resources/employers/client/requests/GetBenefitPlanYearEmployersRequest.d.ts +2 -0
  7. package/dist/cjs/api/resources/employers/client/requests/GetEmployersRequest.d.ts +2 -0
  8. package/dist/cjs/api/resources/employers/client/requests/GetHrisEmployersRequest.d.ts +2 -0
  9. package/dist/cjs/api/resources/employers/client/requests/GetInvoicePdfEmployersRequest.d.ts +2 -0
  10. package/dist/cjs/api/resources/employers/client/requests/GetPayrollAccessSetupEmployersRequest.d.ts +2 -0
  11. package/dist/cjs/api/resources/employers/client/requests/ListBenefitPlanYearEnrollmentsEmployersRequest.d.ts +2 -0
  12. package/dist/cjs/api/resources/employers/client/requests/ListBenefitPlanYearsEmployersRequest.d.ts +2 -0
  13. package/dist/cjs/api/resources/employers/client/requests/ListEmployeesEmployersRequest.d.ts +2 -0
  14. package/dist/cjs/api/resources/employers/client/requests/ListEmployersRequest.d.ts +2 -0
  15. package/dist/cjs/api/resources/employers/client/requests/ListHrisProvidersEmployersRequest.d.ts +9 -0
  16. package/dist/cjs/api/resources/employers/client/requests/ListHrisProvidersEmployersRequest.js +3 -0
  17. package/dist/cjs/api/resources/employers/client/requests/ListInvoicesEmployersRequest.d.ts +2 -0
  18. package/dist/cjs/api/resources/employers/client/requests/ListPayrollDeductionStatementsEmployersRequest.d.ts +2 -0
  19. package/dist/cjs/api/resources/employers/client/requests/SubmitPayrollAccessSetupRequest.d.ts +2 -0
  20. package/dist/cjs/api/resources/employers/client/requests/UpdateEmployerRequest.d.ts +2 -0
  21. package/dist/cjs/api/resources/employers/client/requests/UpdateEmployerSettingsRequest.d.ts +2 -0
  22. package/dist/cjs/api/resources/employers/client/requests/index.d.ts +1 -0
  23. package/dist/cjs/api/resources/enrollments/client/Client.js +6 -6
  24. package/dist/cjs/api/resources/enrollments/client/requests/GetEnrollmentsRequest.d.ts +2 -0
  25. package/dist/cjs/api/resources/enrollments/client/requests/ReissueEnrollmentRequest.d.ts +2 -0
  26. package/dist/cjs/api/resources/enrollments/client/requests/TerminateEnrollmentRequest.d.ts +2 -0
  27. package/dist/cjs/api/resources/members/client/Client.js +16 -16
  28. package/dist/cjs/api/resources/members/client/requests/GetHouseholdMembersRequest.d.ts +2 -0
  29. package/dist/cjs/api/resources/members/client/requests/GetMembersRequest.d.ts +2 -0
  30. package/dist/cjs/api/resources/members/client/requests/ListDependentsMembersRequest.d.ts +2 -0
  31. package/dist/cjs/api/resources/members/client/requests/ListEmploymentsMembersRequest.d.ts +2 -0
  32. package/dist/cjs/api/resources/members/client/requests/ListEnrollmentsMembersRequest.d.ts +2 -0
  33. package/dist/cjs/api/resources/members/client/requests/ListIdCardsMembersRequest.d.ts +2 -0
  34. package/dist/cjs/api/resources/members/client/requests/ListMembersRequest.d.ts +2 -0
  35. package/dist/cjs/api/resources/members/client/requests/ListQualifyingLifeEventsMembersRequest.d.ts +2 -0
  36. package/dist/cjs/api/resources/organizations/client/Client.d.ts +1 -1
  37. package/dist/cjs/api/resources/organizations/client/Client.js +1 -1
  38. package/dist/cjs/api/types/XVitableOrganization.d.ts +4 -0
  39. package/dist/cjs/api/types/XVitableOrganization.js +3 -0
  40. package/dist/cjs/api/types/index.d.ts +1 -0
  41. package/dist/cjs/api/types/index.js +1 -0
  42. package/dist/cjs/version.d.ts +1 -1
  43. package/dist/cjs/version.js +1 -1
  44. package/dist/esm/BaseClient.mjs +2 -2
  45. package/dist/esm/api/resources/employers/client/Client.d.mts +2 -1
  46. package/dist/esm/api/resources/employers/client/Client.mjs +41 -38
  47. package/dist/esm/api/resources/employers/client/requests/CreateEmployerRequest.d.mts +2 -0
  48. package/dist/esm/api/resources/employers/client/requests/EnsurePayrollIntegrationEmailEmployersRequest.d.mts +2 -0
  49. package/dist/esm/api/resources/employers/client/requests/GetBenefitPlanYearEmployersRequest.d.mts +2 -0
  50. package/dist/esm/api/resources/employers/client/requests/GetEmployersRequest.d.mts +2 -0
  51. package/dist/esm/api/resources/employers/client/requests/GetHrisEmployersRequest.d.mts +2 -0
  52. package/dist/esm/api/resources/employers/client/requests/GetInvoicePdfEmployersRequest.d.mts +2 -0
  53. package/dist/esm/api/resources/employers/client/requests/GetPayrollAccessSetupEmployersRequest.d.mts +2 -0
  54. package/dist/esm/api/resources/employers/client/requests/ListBenefitPlanYearEnrollmentsEmployersRequest.d.mts +2 -0
  55. package/dist/esm/api/resources/employers/client/requests/ListBenefitPlanYearsEmployersRequest.d.mts +2 -0
  56. package/dist/esm/api/resources/employers/client/requests/ListEmployeesEmployersRequest.d.mts +2 -0
  57. package/dist/esm/api/resources/employers/client/requests/ListEmployersRequest.d.mts +2 -0
  58. package/dist/esm/api/resources/employers/client/requests/ListHrisProvidersEmployersRequest.d.mts +9 -0
  59. package/dist/esm/api/resources/employers/client/requests/ListHrisProvidersEmployersRequest.mjs +2 -0
  60. package/dist/esm/api/resources/employers/client/requests/ListInvoicesEmployersRequest.d.mts +2 -0
  61. package/dist/esm/api/resources/employers/client/requests/ListPayrollDeductionStatementsEmployersRequest.d.mts +2 -0
  62. package/dist/esm/api/resources/employers/client/requests/SubmitPayrollAccessSetupRequest.d.mts +2 -0
  63. package/dist/esm/api/resources/employers/client/requests/UpdateEmployerRequest.d.mts +2 -0
  64. package/dist/esm/api/resources/employers/client/requests/UpdateEmployerSettingsRequest.d.mts +2 -0
  65. package/dist/esm/api/resources/employers/client/requests/index.d.mts +1 -0
  66. package/dist/esm/api/resources/enrollments/client/Client.mjs +7 -7
  67. package/dist/esm/api/resources/enrollments/client/requests/GetEnrollmentsRequest.d.mts +2 -0
  68. package/dist/esm/api/resources/enrollments/client/requests/ReissueEnrollmentRequest.d.mts +2 -0
  69. package/dist/esm/api/resources/enrollments/client/requests/TerminateEnrollmentRequest.d.mts +2 -0
  70. package/dist/esm/api/resources/members/client/Client.mjs +17 -17
  71. package/dist/esm/api/resources/members/client/requests/GetHouseholdMembersRequest.d.mts +2 -0
  72. package/dist/esm/api/resources/members/client/requests/GetMembersRequest.d.mts +2 -0
  73. package/dist/esm/api/resources/members/client/requests/ListDependentsMembersRequest.d.mts +2 -0
  74. package/dist/esm/api/resources/members/client/requests/ListEmploymentsMembersRequest.d.mts +2 -0
  75. package/dist/esm/api/resources/members/client/requests/ListEnrollmentsMembersRequest.d.mts +2 -0
  76. package/dist/esm/api/resources/members/client/requests/ListIdCardsMembersRequest.d.mts +2 -0
  77. package/dist/esm/api/resources/members/client/requests/ListMembersRequest.d.mts +2 -0
  78. package/dist/esm/api/resources/members/client/requests/ListQualifyingLifeEventsMembersRequest.d.mts +2 -0
  79. package/dist/esm/api/resources/organizations/client/Client.d.mts +1 -1
  80. package/dist/esm/api/resources/organizations/client/Client.mjs +1 -1
  81. package/dist/esm/api/types/XVitableOrganization.d.mts +4 -0
  82. package/dist/esm/api/types/XVitableOrganization.mjs +2 -0
  83. package/dist/esm/api/types/index.d.mts +1 -0
  84. package/dist/esm/api/types/index.mjs +1 -0
  85. package/dist/esm/version.d.mts +1 -1
  86. package/dist/esm/version.mjs +1 -1
  87. package/package.json +1 -1
  88. package/reference.md +10 -2
@@ -11,4 +11,6 @@ export interface GetInvoicePdfEmployersRequest {
11
11
  employer_id: VitableConnect.EmployerId;
12
12
  /** External Chargebee invoice id (not a prefixed UUID). */
13
13
  invoice_id: VitableConnect.InvoiceId;
14
+ /** Organization to act as for this request (e.g. `org_SGVsbG8gV29ybGQ`). Optional when your credentials reach a single organization. Required when they reach several — omitting it then returns 400 `organization_required`. A malformed value returns 400 `invalid_organization_header`, and naming an organization you do not have access to returns 403 `organization_access_denied`. */
15
+ "X-Vitable-Organization"?: VitableConnect.XVitableOrganization;
14
16
  }
@@ -7,4 +7,6 @@ import type * as VitableConnect from "../../../../index.mjs";
7
7
  */
8
8
  export interface GetPayrollAccessSetupEmployersRequest {
9
9
  employer_id: VitableConnect.EmployerId;
10
+ /** Organization to act as for this request (e.g. `org_SGVsbG8gV29ybGQ`). Optional when your credentials reach a single organization. Required when they reach several — omitting it then returns 400 `organization_required`. A malformed value returns 400 `invalid_organization_header`, and naming an organization you do not have access to returns 403 `organization_access_denied`. */
11
+ "X-Vitable-Organization"?: VitableConnect.XVitableOrganization;
10
12
  }
@@ -21,4 +21,6 @@ export interface ListBenefitPlanYearEnrollmentsEmployersRequest {
21
21
  page?: VitableConnect.Page;
22
22
  /** Case-insensitive search. Matches member name partially, and the `member_id` exactly — either your own reference id or the prefixed `grpmbr_<...>` id. */
23
23
  search?: VitableConnect.EmployerSearch;
24
+ /** Organization to act as for this request (e.g. `org_SGVsbG8gV29ybGQ`). Optional when your credentials reach a single organization. Required when they reach several — omitting it then returns 400 `organization_required`. A malformed value returns 400 `invalid_organization_header`, and naming an organization you do not have access to returns 403 `organization_access_denied`. */
25
+ "X-Vitable-Organization"?: VitableConnect.XVitableOrganization;
24
26
  }
@@ -8,4 +8,6 @@ import type * as VitableConnect from "../../../../index.mjs";
8
8
  export interface ListBenefitPlanYearsEmployersRequest {
9
9
  /** Unique employer identifier (empr_*) */
10
10
  employer_id: VitableConnect.EmployerId;
11
+ /** Organization to act as for this request (e.g. `org_SGVsbG8gV29ybGQ`). Optional when your credentials reach a single organization. Required when they reach several — omitting it then returns 400 `organization_required`. A malformed value returns 400 `invalid_organization_header`, and naming an organization you do not have access to returns 403 `organization_access_denied`. */
12
+ "X-Vitable-Organization"?: VitableConnect.XVitableOrganization;
11
13
  }
@@ -19,4 +19,6 @@ export interface ListEmployeesEmployersRequest {
19
19
  page?: VitableConnect.Page;
20
20
  /** Case-insensitive search across employee first name, last name, and email */
21
21
  search?: VitableConnect.EmployeeSearch;
22
+ /** Organization to act as for this request (e.g. `org_SGVsbG8gV29ybGQ`). Optional when your credentials reach a single organization. Required when they reach several — omitting it then returns 400 `organization_required`. A malformed value returns 400 `invalid_organization_header`, and naming an organization you do not have access to returns 403 `organization_access_denied`. */
23
+ "X-Vitable-Organization"?: VitableConnect.XVitableOrganization;
22
24
  }
@@ -23,4 +23,6 @@ export interface ListEmployersRequest {
23
23
  page?: VitableConnect.Page;
24
24
  /** Employer filter. Matches the display name or the legal name case-insensitively as a substring, or one of these exactly: the EIN (with or without its dash), the employer id, or the contact email of one of the employer's non-disabled admins. */
25
25
  search?: VitableConnect.Search | null;
26
+ /** Organization to act as for this request (e.g. `org_SGVsbG8gV29ybGQ`). Optional when your credentials reach a single organization. Required when they reach several — omitting it then returns 400 `organization_required`. A malformed value returns 400 `invalid_organization_header`, and naming an organization you do not have access to returns 403 `organization_access_denied`. */
27
+ "X-Vitable-Organization"?: VitableConnect.XVitableOrganization;
26
28
  }
@@ -0,0 +1,9 @@
1
+ import type * as VitableConnect from "../../../../index.mjs";
2
+ /**
3
+ * @example
4
+ * {}
5
+ */
6
+ export interface ListHrisProvidersEmployersRequest {
7
+ /** Organization to act as for this request (e.g. `org_SGVsbG8gV29ybGQ`). Optional when your credentials reach a single organization. Required when they reach several — omitting it then returns 400 `organization_required`. A malformed value returns 400 `invalid_organization_header`, and naming an organization you do not have access to returns 403 `organization_access_denied`. */
8
+ "X-Vitable-Organization"?: VitableConnect.XVitableOrganization;
9
+ }
@@ -0,0 +1,2 @@
1
+ // This file was auto-generated by Fern from our API Definition.
2
+ export {};
@@ -13,4 +13,6 @@ export interface ListInvoicesEmployersRequest {
13
13
  limit?: VitableConnect.Limit;
14
14
  /** Opaque cursor from a previous page's next_offset */
15
15
  offset?: VitableConnect.Offset | null;
16
+ /** Organization to act as for this request (e.g. `org_SGVsbG8gV29ybGQ`). Optional when your credentials reach a single organization. Required when they reach several — omitting it then returns 400 `organization_required`. A malformed value returns 400 `invalid_organization_header`, and naming an organization you do not have access to returns 403 `organization_access_denied`. */
17
+ "X-Vitable-Organization"?: VitableConnect.XVitableOrganization;
16
18
  }
@@ -14,4 +14,6 @@ export interface ListPayrollDeductionStatementsEmployersRequest {
14
14
  limit?: VitableConnect.Limit;
15
15
  /** Page number to retrieve (starts at 1) */
16
16
  page?: VitableConnect.Page;
17
+ /** Organization to act as for this request (e.g. `org_SGVsbG8gV29ybGQ`). Optional when your credentials reach a single organization. Required when they reach several — omitting it then returns 400 `organization_required`. A malformed value returns 400 `invalid_organization_header`, and naming an organization you do not have access to returns 403 `organization_access_denied`. */
18
+ "X-Vitable-Organization"?: VitableConnect.XVitableOrganization;
17
19
  }
@@ -14,6 +14,8 @@ import type * as VitableConnect from "../../../../index.mjs";
14
14
  */
15
15
  export interface SubmitPayrollAccessSetupRequest {
16
16
  employer_id: VitableConnect.EmployerId;
17
+ /** Organization to act as for this request (e.g. `org_SGVsbG8gV29ybGQ`). Optional when your credentials reach a single organization. Required when they reach several — omitting it then returns 400 `organization_required`. A malformed value returns 400 `invalid_organization_header`, and naming an organization you do not have access to returns 403 `organization_access_denied`. */
18
+ "X-Vitable-Organization"?: VitableConnect.XVitableOrganization;
17
19
  /** Attestation that all benefit-eligible employees appear in the payroll system. */
18
20
  employees_in_payroll_acknowledged: boolean;
19
21
  /** Attestation that changes to payroll data affect benefit eligibility. */
@@ -8,6 +8,8 @@ import type * as VitableConnect from "../../../../index.mjs";
8
8
  export interface UpdateEmployerRequest {
9
9
  /** Unique employer identifier (empr_*) */
10
10
  employer_id: VitableConnect.EmployerId;
11
+ /** Organization to act as for this request (e.g. `org_SGVsbG8gV29ybGQ`). Optional when your credentials reach a single organization. Required when they reach several — omitting it then returns 400 `organization_required`. A malformed value returns 400 `invalid_organization_header`, and naming an organization you do not have access to returns 403 `organization_access_denied`. */
12
+ "X-Vitable-Organization"?: VitableConnect.XVitableOrganization;
11
13
  /** Employer display name */
12
14
  name?: string | null;
13
15
  /** Legal business name */
@@ -9,5 +9,7 @@ import type * as VitableConnect from "../../../../index.mjs";
9
9
  export interface UpdateEmployerSettingsRequest {
10
10
  /** Unique employer identifier (empr_*) */
11
11
  employer_id: VitableConnect.EmployerId;
12
+ /** Organization to act as for this request (e.g. `org_SGVsbG8gV29ybGQ`). Optional when your credentials reach a single organization. Required when they reach several — omitting it then returns 400 `organization_required`. A malformed value returns 400 `invalid_organization_header`, and naming an organization you do not have access to returns 403 `organization_access_denied`. */
13
+ "X-Vitable-Organization"?: VitableConnect.XVitableOrganization;
12
14
  pay_frequency: VitableConnect.DeductionFrequency;
13
15
  }
@@ -10,6 +10,7 @@ export type { ListBenefitPlanYearEnrollmentsEmployersRequest } from "./ListBenef
10
10
  export type { ListBenefitPlanYearsEmployersRequest } from "./ListBenefitPlanYearsEmployersRequest.mjs";
11
11
  export type { ListEmployeesEmployersRequest } from "./ListEmployeesEmployersRequest.mjs";
12
12
  export type { ListEmployersRequest } from "./ListEmployersRequest.mjs";
13
+ export type { ListHrisProvidersEmployersRequest } from "./ListHrisProvidersEmployersRequest.mjs";
13
14
  export type { ListInvoicesEmployersRequest } from "./ListInvoicesEmployersRequest.mjs";
14
15
  export type { ListPayrollDeductionStatementsEmployersRequest } from "./ListPayrollDeductionStatementsEmployersRequest.mjs";
15
16
  export type { SubmitPayrollAccessSetupRequest } from "./SubmitPayrollAccessSetupRequest.mjs";
@@ -20,7 +20,7 @@ var __rest = (this && this.__rest) || function (s, e) {
20
20
  return t;
21
21
  };
22
22
  import { normalizeClientOptionsWithAuth } from "../../../../BaseClient.mjs";
23
- import { mergeHeaders } from "../../../../core/headers.mjs";
23
+ import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers.mjs";
24
24
  import * as core from "../../../../core/index.mjs";
25
25
  import { mergeAdditionalBodyParameters } from "../../../../core/requestBody.mjs";
26
26
  import * as environments from "../../../../environments.mjs";
@@ -62,9 +62,9 @@ export class EnrollmentsClient {
62
62
  __get(request, requestOptions) {
63
63
  return __awaiter(this, void 0, void 0, function* () {
64
64
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
65
- const { enrollment_id: enrollmentId } = request;
65
+ const { enrollment_id: enrollmentId, "X-Vitable-Organization": vitableOrganization } = request;
66
66
  const _authRequest = yield this._options.authProvider.getAuthRequest();
67
- const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
67
+ const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, mergeOnlyDefinedHeaders({ "X-Vitable-Organization": vitableOrganization }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
68
68
  const _response = yield ((_b = this._options.fetcher) !== null && _b !== void 0 ? _b : core.fetcher)({
69
69
  url: core.url.join((_d = (_c = (yield core.Supplier.get(this._options.baseUrl))) !== null && _c !== void 0 ? _c : (yield core.Supplier.get(this._options.environment))) !== null && _d !== void 0 ? _d : environments.VitableConnectEnvironment.Production, `v1/enrollments/${core.url.encodePathParam(enrollmentId)}`),
70
70
  method: "GET",
@@ -146,9 +146,9 @@ export class EnrollmentsClient {
146
146
  __reissue(request, requestOptions) {
147
147
  return __awaiter(this, void 0, void 0, function* () {
148
148
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
149
- const { enrollment_id: enrollmentId } = request, _body = __rest(request, ["enrollment_id"]);
149
+ const { enrollment_id: enrollmentId, "X-Vitable-Organization": vitableOrganization } = request, _body = __rest(request, ["enrollment_id", "X-Vitable-Organization"]);
150
150
  const _authRequest = yield this._options.authProvider.getAuthRequest();
151
- const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
151
+ const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, mergeOnlyDefinedHeaders({ "X-Vitable-Organization": vitableOrganization }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
152
152
  const _response = yield ((_b = this._options.fetcher) !== null && _b !== void 0 ? _b : core.fetcher)({
153
153
  url: core.url.join((_d = (_c = (yield core.Supplier.get(this._options.baseUrl))) !== null && _c !== void 0 ? _c : (yield core.Supplier.get(this._options.environment))) !== null && _d !== void 0 ? _d : environments.VitableConnectEnvironment.Production, `v1/enrollments/${core.url.encodePathParam(enrollmentId)}/reissue`),
154
154
  method: "POST",
@@ -238,9 +238,9 @@ export class EnrollmentsClient {
238
238
  __terminate(request, requestOptions) {
239
239
  return __awaiter(this, void 0, void 0, function* () {
240
240
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
241
- const { enrollment_id: enrollmentId } = request, _body = __rest(request, ["enrollment_id"]);
241
+ const { enrollment_id: enrollmentId, "X-Vitable-Organization": vitableOrganization } = request, _body = __rest(request, ["enrollment_id", "X-Vitable-Organization"]);
242
242
  const _authRequest = yield this._options.authProvider.getAuthRequest();
243
- const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
243
+ const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, mergeOnlyDefinedHeaders({ "X-Vitable-Organization": vitableOrganization }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
244
244
  const _response = yield ((_b = this._options.fetcher) !== null && _b !== void 0 ? _b : core.fetcher)({
245
245
  url: core.url.join((_d = (_c = (yield core.Supplier.get(this._options.baseUrl))) !== null && _c !== void 0 ? _c : (yield core.Supplier.get(this._options.environment))) !== null && _d !== void 0 ? _d : environments.VitableConnectEnvironment.Production, `v1/enrollments/${core.url.encodePathParam(enrollmentId)}/terminate`),
246
246
  method: "POST",
@@ -8,4 +8,6 @@ import type * as VitableConnect from "../../../../index.mjs";
8
8
  export interface GetEnrollmentsRequest {
9
9
  /** Unique enrollment identifier (enrl_*) */
10
10
  enrollment_id: VitableConnect.EnrollmentId;
11
+ /** Organization to act as for this request (e.g. `org_SGVsbG8gV29ybGQ`). Optional when your credentials reach a single organization. Required when they reach several — omitting it then returns 400 `organization_required`. A malformed value returns 400 `invalid_organization_header`, and naming an organization you do not have access to returns 403 `organization_access_denied`. */
12
+ "X-Vitable-Organization"?: VitableConnect.XVitableOrganization;
11
13
  }
@@ -17,6 +17,8 @@ import type * as VitableConnect from "../../../../index.mjs";
17
17
  export interface ReissueEnrollmentRequest {
18
18
  /** Unique enrollment identifier (enrl_*) */
19
19
  enrollment_id: VitableConnect.EnrollmentId;
20
+ /** Organization to act as for this request (e.g. `org_SGVsbG8gV29ybGQ`). Optional when your credentials reach a single organization. Required when they reach several — omitting it then returns 400 `organization_required`. A malformed value returns 400 `invalid_organization_header`, and naming an organization you do not have access to returns 403 `organization_access_denied`. */
21
+ "X-Vitable-Organization"?: VitableConnect.XVitableOrganization;
20
22
  /** Audit reason for the reissue; required for user-backed callers and optional for long-lived organization API-key callers */
21
23
  reason?: string | null;
22
24
  /** Optional support or operational ticket number */
@@ -17,6 +17,8 @@ import type * as VitableConnect from "../../../../index.mjs";
17
17
  export interface TerminateEnrollmentRequest {
18
18
  /** Unique enrollment identifier (enrl_*) */
19
19
  enrollment_id: VitableConnect.EnrollmentId;
20
+ /** Organization to act as for this request (e.g. `org_SGVsbG8gV29ybGQ`). Optional when your credentials reach a single organization. Required when they reach several — omitting it then returns 400 `organization_required`. A malformed value returns 400 `invalid_organization_header`, and naming an organization you do not have access to returns 403 `organization_access_denied`. */
21
+ "X-Vitable-Organization"?: VitableConnect.XVitableOrganization;
20
22
  /** Audit reason for the termination; required for user-backed callers and optional for long-lived organization API-key callers */
21
23
  reason?: string | null;
22
24
  /** Optional support or operational ticket number */
@@ -9,7 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  import { normalizeClientOptionsWithAuth } from "../../../../BaseClient.mjs";
12
- import { mergeHeaders } from "../../../../core/headers.mjs";
12
+ import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers.mjs";
13
13
  import * as core from "../../../../core/index.mjs";
14
14
  import * as environments from "../../../../environments.mjs";
15
15
  import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError.mjs";
@@ -50,9 +50,9 @@ export class MembersClient {
50
50
  __get(request, requestOptions) {
51
51
  return __awaiter(this, void 0, void 0, function* () {
52
52
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
53
- const { member_id: memberId } = request;
53
+ const { member_id: memberId, "X-Vitable-Organization": vitableOrganization } = request;
54
54
  const _authRequest = yield this._options.authProvider.getAuthRequest();
55
- const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
55
+ const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, mergeOnlyDefinedHeaders({ "X-Vitable-Organization": vitableOrganization }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
56
56
  const _response = yield ((_b = this._options.fetcher) !== null && _b !== void 0 ? _b : core.fetcher)({
57
57
  url: core.url.join((_d = (_c = (yield core.Supplier.get(this._options.baseUrl))) !== null && _c !== void 0 ? _c : (yield core.Supplier.get(this._options.environment))) !== null && _d !== void 0 ? _d : environments.VitableConnectEnvironment.Production, `v1/members/${core.url.encodePathParam(memberId)}`),
58
58
  method: "GET",
@@ -124,9 +124,9 @@ export class MembersClient {
124
124
  __listDependents(request, requestOptions) {
125
125
  return __awaiter(this, void 0, void 0, function* () {
126
126
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
127
- const { member_id: memberId } = request;
127
+ const { member_id: memberId, "X-Vitable-Organization": vitableOrganization } = request;
128
128
  const _authRequest = yield this._options.authProvider.getAuthRequest();
129
- const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
129
+ const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, mergeOnlyDefinedHeaders({ "X-Vitable-Organization": vitableOrganization }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
130
130
  const _response = yield ((_b = this._options.fetcher) !== null && _b !== void 0 ? _b : core.fetcher)({
131
131
  url: core.url.join((_d = (_c = (yield core.Supplier.get(this._options.baseUrl))) !== null && _c !== void 0 ? _c : (yield core.Supplier.get(this._options.environment))) !== null && _d !== void 0 ? _d : environments.VitableConnectEnvironment.Production, `v1/members/${core.url.encodePathParam(memberId)}/dependents`),
132
132
  method: "GET",
@@ -201,9 +201,9 @@ export class MembersClient {
201
201
  __listEmployments(request, requestOptions) {
202
202
  return __awaiter(this, void 0, void 0, function* () {
203
203
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
204
- const { member_id: memberId } = request;
204
+ const { member_id: memberId, "X-Vitable-Organization": vitableOrganization } = request;
205
205
  const _authRequest = yield this._options.authProvider.getAuthRequest();
206
- const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
206
+ const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, mergeOnlyDefinedHeaders({ "X-Vitable-Organization": vitableOrganization }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
207
207
  const _response = yield ((_b = this._options.fetcher) !== null && _b !== void 0 ? _b : core.fetcher)({
208
208
  url: core.url.join((_d = (_c = (yield core.Supplier.get(this._options.baseUrl))) !== null && _c !== void 0 ? _c : (yield core.Supplier.get(this._options.environment))) !== null && _d !== void 0 ? _d : environments.VitableConnectEnvironment.Production, `v1/members/${core.url.encodePathParam(memberId)}/employments`),
209
209
  method: "GET",
@@ -278,9 +278,9 @@ export class MembersClient {
278
278
  __listEnrollments(request, requestOptions) {
279
279
  return __awaiter(this, void 0, void 0, function* () {
280
280
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
281
- const { member_id: memberId } = request;
281
+ const { member_id: memberId, "X-Vitable-Organization": vitableOrganization } = request;
282
282
  const _authRequest = yield this._options.authProvider.getAuthRequest();
283
- const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
283
+ const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, mergeOnlyDefinedHeaders({ "X-Vitable-Organization": vitableOrganization }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
284
284
  const _response = yield ((_b = this._options.fetcher) !== null && _b !== void 0 ? _b : core.fetcher)({
285
285
  url: core.url.join((_d = (_c = (yield core.Supplier.get(this._options.baseUrl))) !== null && _c !== void 0 ? _c : (yield core.Supplier.get(this._options.environment))) !== null && _d !== void 0 ? _d : environments.VitableConnectEnvironment.Production, `v1/members/${core.url.encodePathParam(memberId)}/enrollments`),
286
286
  method: "GET",
@@ -355,9 +355,9 @@ export class MembersClient {
355
355
  __getHousehold(request, requestOptions) {
356
356
  return __awaiter(this, void 0, void 0, function* () {
357
357
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
358
- const { member_id: memberId } = request;
358
+ const { member_id: memberId, "X-Vitable-Organization": vitableOrganization } = request;
359
359
  const _authRequest = yield this._options.authProvider.getAuthRequest();
360
- const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
360
+ const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, mergeOnlyDefinedHeaders({ "X-Vitable-Organization": vitableOrganization }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
361
361
  const _response = yield ((_b = this._options.fetcher) !== null && _b !== void 0 ? _b : core.fetcher)({
362
362
  url: core.url.join((_d = (_c = (yield core.Supplier.get(this._options.baseUrl))) !== null && _c !== void 0 ? _c : (yield core.Supplier.get(this._options.environment))) !== null && _d !== void 0 ? _d : environments.VitableConnectEnvironment.Production, `v1/members/${core.url.encodePathParam(memberId)}/household`),
363
363
  method: "GET",
@@ -432,9 +432,9 @@ export class MembersClient {
432
432
  __listIdCards(request, requestOptions) {
433
433
  return __awaiter(this, void 0, void 0, function* () {
434
434
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
435
- const { member_id: memberId } = request;
435
+ const { member_id: memberId, "X-Vitable-Organization": vitableOrganization } = request;
436
436
  const _authRequest = yield this._options.authProvider.getAuthRequest();
437
- const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
437
+ const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, mergeOnlyDefinedHeaders({ "X-Vitable-Organization": vitableOrganization }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
438
438
  const _response = yield ((_b = this._options.fetcher) !== null && _b !== void 0 ? _b : core.fetcher)({
439
439
  url: core.url.join((_d = (_c = (yield core.Supplier.get(this._options.baseUrl))) !== null && _c !== void 0 ? _c : (yield core.Supplier.get(this._options.environment))) !== null && _d !== void 0 ? _d : environments.VitableConnectEnvironment.Production, `v1/members/${core.url.encodePathParam(memberId)}/id-cards`),
440
440
  method: "GET",
@@ -509,14 +509,14 @@ export class MembersClient {
509
509
  return __awaiter(this, void 0, void 0, function* () {
510
510
  const list = core.HttpResponsePromise.interceptFunction((request) => __awaiter(this, void 0, void 0, function* () {
511
511
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
512
- const { member_id: memberId, limit, page, status } = request;
512
+ const { member_id: memberId, limit, page, status, "X-Vitable-Organization": vitableOrganization, } = request;
513
513
  const _queryParams = {
514
514
  limit,
515
515
  page,
516
516
  status: status != null ? status : undefined,
517
517
  };
518
518
  const _authRequest = yield this._options.authProvider.getAuthRequest();
519
- const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
519
+ const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, mergeOnlyDefinedHeaders({ "X-Vitable-Organization": vitableOrganization }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
520
520
  const _response = yield ((_b = this._options.fetcher) !== null && _b !== void 0 ? _b : core.fetcher)({
521
521
  url: core.url.join((_d = (_c = (yield core.Supplier.get(this._options.baseUrl))) !== null && _c !== void 0 ? _c : (yield core.Supplier.get(this._options.environment))) !== null && _d !== void 0 ? _d : environments.VitableConnectEnvironment.Production, `v1/members/${core.url.encodePathParam(memberId)}/qualifying-life-events`),
522
522
  method: "GET",
@@ -607,14 +607,14 @@ export class MembersClient {
607
607
  return __awaiter(this, arguments, void 0, function* (request = {}, requestOptions) {
608
608
  const list = core.HttpResponsePromise.interceptFunction((request) => __awaiter(this, void 0, void 0, function* () {
609
609
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
610
- const { limit, page, search } = request;
610
+ const { limit, page, search, "X-Vitable-Organization": vitableOrganization } = request;
611
611
  const _queryParams = {
612
612
  limit,
613
613
  page,
614
614
  search,
615
615
  };
616
616
  const _authRequest = yield this._options.authProvider.getAuthRequest();
617
- const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
617
+ const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, mergeOnlyDefinedHeaders({ "X-Vitable-Organization": vitableOrganization }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
618
618
  const _response = yield ((_b = this._options.fetcher) !== null && _b !== void 0 ? _b : core.fetcher)({
619
619
  url: core.url.join((_d = (_c = (yield core.Supplier.get(this._options.baseUrl))) !== null && _c !== void 0 ? _c : (yield core.Supplier.get(this._options.environment))) !== null && _d !== void 0 ? _d : environments.VitableConnectEnvironment.Production, "v2/members"),
620
620
  method: "GET",
@@ -7,4 +7,6 @@ import type * as VitableConnect from "../../../../index.mjs";
7
7
  */
8
8
  export interface GetHouseholdMembersRequest {
9
9
  member_id: VitableConnect.MemberId;
10
+ /** Organization to act as for this request (e.g. `org_SGVsbG8gV29ybGQ`). Optional when your credentials reach a single organization. Required when they reach several — omitting it then returns 400 `organization_required`. A malformed value returns 400 `invalid_organization_header`, and naming an organization you do not have access to returns 403 `organization_access_denied`. */
11
+ "X-Vitable-Organization"?: VitableConnect.XVitableOrganization;
10
12
  }
@@ -8,4 +8,6 @@ import type * as VitableConnect from "../../../../index.mjs";
8
8
  export interface GetMembersRequest {
9
9
  /** Unique member identifier (mbr_*) */
10
10
  member_id: VitableConnect.MemberId;
11
+ /** Organization to act as for this request (e.g. `org_SGVsbG8gV29ybGQ`). Optional when your credentials reach a single organization. Required when they reach several — omitting it then returns 400 `organization_required`. A malformed value returns 400 `invalid_organization_header`, and naming an organization you do not have access to returns 403 `organization_access_denied`. */
12
+ "X-Vitable-Organization"?: VitableConnect.XVitableOrganization;
11
13
  }
@@ -7,4 +7,6 @@ import type * as VitableConnect from "../../../../index.mjs";
7
7
  */
8
8
  export interface ListDependentsMembersRequest {
9
9
  member_id: VitableConnect.MemberId;
10
+ /** Organization to act as for this request (e.g. `org_SGVsbG8gV29ybGQ`). Optional when your credentials reach a single organization. Required when they reach several — omitting it then returns 400 `organization_required`. A malformed value returns 400 `invalid_organization_header`, and naming an organization you do not have access to returns 403 `organization_access_denied`. */
11
+ "X-Vitable-Organization"?: VitableConnect.XVitableOrganization;
10
12
  }
@@ -7,4 +7,6 @@ import type * as VitableConnect from "../../../../index.mjs";
7
7
  */
8
8
  export interface ListEmploymentsMembersRequest {
9
9
  member_id: VitableConnect.MemberId;
10
+ /** Organization to act as for this request (e.g. `org_SGVsbG8gV29ybGQ`). Optional when your credentials reach a single organization. Required when they reach several — omitting it then returns 400 `organization_required`. A malformed value returns 400 `invalid_organization_header`, and naming an organization you do not have access to returns 403 `organization_access_denied`. */
11
+ "X-Vitable-Organization"?: VitableConnect.XVitableOrganization;
10
12
  }
@@ -7,4 +7,6 @@ import type * as VitableConnect from "../../../../index.mjs";
7
7
  */
8
8
  export interface ListEnrollmentsMembersRequest {
9
9
  member_id: VitableConnect.MemberId;
10
+ /** Organization to act as for this request (e.g. `org_SGVsbG8gV29ybGQ`). Optional when your credentials reach a single organization. Required when they reach several — omitting it then returns 400 `organization_required`. A malformed value returns 400 `invalid_organization_header`, and naming an organization you do not have access to returns 403 `organization_access_denied`. */
11
+ "X-Vitable-Organization"?: VitableConnect.XVitableOrganization;
10
12
  }
@@ -7,4 +7,6 @@ import type * as VitableConnect from "../../../../index.mjs";
7
7
  */
8
8
  export interface ListIdCardsMembersRequest {
9
9
  member_id: VitableConnect.MemberId;
10
+ /** Organization to act as for this request (e.g. `org_SGVsbG8gV29ybGQ`). Optional when your credentials reach a single organization. Required when they reach several — omitting it then returns 400 `organization_required`. A malformed value returns 400 `invalid_organization_header`, and naming an organization you do not have access to returns 403 `organization_access_denied`. */
11
+ "X-Vitable-Organization"?: VitableConnect.XVitableOrganization;
10
12
  }
@@ -13,4 +13,6 @@ export interface ListMembersRequest {
13
13
  page?: VitableConnect.Page;
14
14
  /** Case-insensitive search across member name, email, and phone number; exact match on member id (prefixed or raw uuid) */
15
15
  search?: VitableConnect.MemberSearch;
16
+ /** Organization to act as for this request (e.g. `org_SGVsbG8gV29ybGQ`). Optional when your credentials reach a single organization. Required when they reach several — omitting it then returns 400 `organization_required`. A malformed value returns 400 `invalid_organization_header`, and naming an organization you do not have access to returns 403 `organization_access_denied`. */
17
+ "X-Vitable-Organization"?: VitableConnect.XVitableOrganization;
16
18
  }
@@ -16,4 +16,6 @@ export interface ListQualifyingLifeEventsMembersRequest {
16
16
  page?: VitableConnect.Page;
17
17
  /** Optional. Filter to a single QLE status; omit to return all statuses. */
18
18
  status?: VitableConnect.Status;
19
+ /** Organization to act as for this request (e.g. `org_SGVsbG8gV29ybGQ`). Optional when your credentials reach a single organization. Required when they reach several — omitting it then returns 400 `organization_required`. A malformed value returns 400 `invalid_organization_header`, and naming an organization you do not have access to returns 403 `organization_access_denied`. */
20
+ "X-Vitable-Organization"?: VitableConnect.XVitableOrganization;
19
21
  }
@@ -35,7 +35,7 @@ export declare class OrganizationsClient {
35
35
  list(requestOptions?: OrganizationsClient.RequestOptions): core.HttpResponsePromise<VitableConnect.OrganizationsListResponse>;
36
36
  private __list;
37
37
  /**
38
- * Onboards the authenticated user's partner Organization: creates the local Organization + the creator's admin membership atomically, then mirrors it to WorkOS (creates the WorkOS org and binds the creator as admin). 409 `organization_already_exists` when the user already has an organization (v0: one organization per user).
38
+ * Onboards the authenticated user's partner Organization: creates the local Organization + the creator's admin membership atomically, then mirrors it to WorkOS (creates the WorkOS org and binds the creator as admin). A user may hold several organizations and selects which one a request acts as with the `X-Vitable-Organization` header. The founder's email domain is claimed only when no other organization holds it, so a taken domain is left with its owner rather than rejected.
39
39
  *
40
40
  * @param {VitableConnect.CreateOrganizationRequest} request
41
41
  * @param {OrganizationsClient.RequestOptions} requestOptions - Request-specific configuration.
@@ -97,7 +97,7 @@ export class OrganizationsClient {
97
97
  });
98
98
  }
99
99
  /**
100
- * Onboards the authenticated user's partner Organization: creates the local Organization + the creator's admin membership atomically, then mirrors it to WorkOS (creates the WorkOS org and binds the creator as admin). 409 `organization_already_exists` when the user already has an organization (v0: one organization per user).
100
+ * Onboards the authenticated user's partner Organization: creates the local Organization + the creator's admin membership atomically, then mirrors it to WorkOS (creates the WorkOS org and binds the creator as admin). A user may hold several organizations and selects which one a request acts as with the `X-Vitable-Organization` header. The founder's email domain is claimed only when no other organization holds it, so a taken domain is left with its owner rather than rejected.
101
101
  *
102
102
  * @param {VitableConnect.CreateOrganizationRequest} request
103
103
  * @param {OrganizationsClient.RequestOptions} requestOptions - Request-specific configuration.
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Organization to act as for this request (e.g. `org_SGVsbG8gV29ybGQ`). Optional when your credentials reach a single organization. Required when they reach several — omitting it then returns 400 `organization_required`. A malformed value returns 400 `invalid_organization_header`, and naming an organization you do not have access to returns 403 `organization_access_denied`.
3
+ */
4
+ export type XVitableOrganization = string;
@@ -0,0 +1,2 @@
1
+ // This file was auto-generated by Fern from our API Definition.
2
+ export {};
@@ -173,3 +173,4 @@ export * from "./WebhookDelivery.mjs";
173
173
  export * from "./WebhookEvent.mjs";
174
174
  export * from "./WebhookEventListResponse.mjs";
175
175
  export * from "./WebhookEventResponse.mjs";
176
+ export * from "./XVitableOrganization.mjs";
@@ -173,3 +173,4 @@ export * from "./WebhookDelivery.mjs";
173
173
  export * from "./WebhookEvent.mjs";
174
174
  export * from "./WebhookEventListResponse.mjs";
175
175
  export * from "./WebhookEventResponse.mjs";
176
+ export * from "./XVitableOrganization.mjs";
@@ -1 +1 @@
1
- export declare const SDK_VERSION = "2.0.0";
1
+ export declare const SDK_VERSION = "2.1.0";
@@ -1 +1 @@
1
- export const SDK_VERSION = "2.0.0";
1
+ export const SDK_VERSION = "2.1.0";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vitable-inc/vitable-connect",
3
- "version": "2.0.0",
3
+ "version": "2.1.0",
4
4
  "private": false,
5
5
  "repository": {
6
6
  "type": "git",
package/reference.md CHANGED
@@ -1513,7 +1513,7 @@ await client.employers.updateSettings({
1513
1513
  </dl>
1514
1514
  </details>
1515
1515
 
1516
- <details><summary><code>client.employers.<a href="/src/api/resources/employers/client/Client.ts">listHrisProviders</a>() -> VitableConnect.OrganizationHrisProvidersResponse</code></summary>
1516
+ <details><summary><code>client.employers.<a href="/src/api/resources/employers/client/Client.ts">listHrisProviders</a>({ ...params }) -> VitableConnect.OrganizationHrisProvidersResponse</code></summary>
1517
1517
  <dl>
1518
1518
  <dd>
1519
1519
 
@@ -1556,6 +1556,14 @@ await client.employers.listHrisProviders();
1556
1556
  <dl>
1557
1557
  <dd>
1558
1558
 
1559
+ **request:** `VitableConnect.ListHrisProvidersEmployersRequest`
1560
+
1561
+ </dd>
1562
+ </dl>
1563
+
1564
+ <dl>
1565
+ <dd>
1566
+
1559
1567
  **requestOptions:** `EmployersClient.RequestOptions`
1560
1568
 
1561
1569
  </dd>
@@ -2673,7 +2681,7 @@ await client.organizations.list();
2673
2681
  <dl>
2674
2682
  <dd>
2675
2683
 
2676
- Onboards the authenticated user's partner Organization: creates the local Organization + the creator's admin membership atomically, then mirrors it to WorkOS (creates the WorkOS org and binds the creator as admin). 409 `organization_already_exists` when the user already has an organization (v0: one organization per user).
2684
+ Onboards the authenticated user's partner Organization: creates the local Organization + the creator's admin membership atomically, then mirrors it to WorkOS (creates the WorkOS org and binds the creator as admin). A user may hold several organizations and selects which one a request acts as with the `X-Vitable-Organization` header. The founder's email domain is claimed only when no other organization holds it, so a taken domain is left with its owner rather than rejected.
2677
2685
  </dd>
2678
2686
  </dl>
2679
2687
  </dd>