@epilot/sdk 2.1.1 → 2.1.3

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 (133) hide show
  1. package/definitions/email-settings-runtime.json +1 -1
  2. package/definitions/email-settings.json +121 -0
  3. package/definitions/partner-directory-runtime.json +1 -1
  4. package/definitions/partner-directory.json +795 -229
  5. package/dist/apis/access-token.cjs +6 -6
  6. package/dist/apis/access-token.js +1 -1
  7. package/dist/apis/address-suggestions.cjs +6 -6
  8. package/dist/apis/address-suggestions.js +1 -1
  9. package/dist/apis/address.cjs +6 -6
  10. package/dist/apis/address.js +1 -1
  11. package/dist/apis/ai-agents.cjs +6 -6
  12. package/dist/apis/ai-agents.js +1 -1
  13. package/dist/apis/app.cjs +6 -6
  14. package/dist/apis/app.js +1 -1
  15. package/dist/apis/audit-logs.cjs +6 -6
  16. package/dist/apis/audit-logs.js +1 -1
  17. package/dist/apis/automation.cjs +6 -6
  18. package/dist/apis/automation.js +1 -1
  19. package/dist/apis/billing.cjs +6 -6
  20. package/dist/apis/billing.js +1 -1
  21. package/dist/apis/blueprint-manifest.cjs +6 -6
  22. package/dist/apis/blueprint-manifest.js +1 -1
  23. package/dist/apis/consent.cjs +6 -6
  24. package/dist/apis/consent.js +1 -1
  25. package/dist/apis/customer-portal.cjs +6 -6
  26. package/dist/apis/customer-portal.js +1 -1
  27. package/dist/apis/dashboard.cjs +6 -6
  28. package/dist/apis/dashboard.js +1 -1
  29. package/dist/apis/data-management.cjs +6 -6
  30. package/dist/apis/data-management.js +1 -1
  31. package/dist/apis/deduplication.cjs +6 -6
  32. package/dist/apis/deduplication.js +1 -1
  33. package/dist/apis/design.cjs +6 -6
  34. package/dist/apis/design.js +1 -1
  35. package/dist/apis/document.cjs +6 -6
  36. package/dist/apis/document.js +1 -1
  37. package/dist/apis/email-settings.cjs +8 -8
  38. package/dist/apis/email-settings.d.cts +2 -2
  39. package/dist/apis/email-settings.d.ts +2 -2
  40. package/dist/apis/email-settings.js +2 -2
  41. package/dist/apis/email-template.cjs +6 -6
  42. package/dist/apis/email-template.js +1 -1
  43. package/dist/apis/entity-mapping.cjs +6 -6
  44. package/dist/apis/entity-mapping.js +1 -1
  45. package/dist/apis/entity.cjs +6 -6
  46. package/dist/apis/entity.js +1 -1
  47. package/dist/apis/environments.cjs +6 -6
  48. package/dist/apis/environments.js +1 -1
  49. package/dist/apis/erp-integration.cjs +6 -6
  50. package/dist/apis/erp-integration.js +1 -1
  51. package/dist/apis/event-catalog.cjs +6 -6
  52. package/dist/apis/event-catalog.js +1 -1
  53. package/dist/apis/file.cjs +6 -6
  54. package/dist/apis/file.js +1 -1
  55. package/dist/apis/iban.cjs +6 -6
  56. package/dist/apis/iban.js +1 -1
  57. package/dist/apis/journey.cjs +6 -6
  58. package/dist/apis/journey.js +1 -1
  59. package/dist/apis/kanban.cjs +6 -6
  60. package/dist/apis/kanban.js +1 -1
  61. package/dist/apis/message.cjs +6 -6
  62. package/dist/apis/message.js +1 -1
  63. package/dist/apis/metering.cjs +6 -6
  64. package/dist/apis/metering.js +1 -1
  65. package/dist/apis/notes.cjs +6 -6
  66. package/dist/apis/notes.js +1 -1
  67. package/dist/apis/notification.cjs +6 -6
  68. package/dist/apis/notification.js +1 -1
  69. package/dist/apis/organization.cjs +6 -6
  70. package/dist/apis/organization.js +1 -1
  71. package/dist/apis/partner-directory.cjs +8 -8
  72. package/dist/apis/partner-directory.d.cts +2 -2
  73. package/dist/apis/partner-directory.d.ts +2 -2
  74. package/dist/apis/partner-directory.js +2 -2
  75. package/dist/apis/permissions.cjs +6 -6
  76. package/dist/apis/permissions.js +1 -1
  77. package/dist/apis/pricing-tier.cjs +6 -6
  78. package/dist/apis/pricing-tier.js +1 -1
  79. package/dist/apis/pricing.cjs +6 -6
  80. package/dist/apis/pricing.js +1 -1
  81. package/dist/apis/purpose.cjs +6 -6
  82. package/dist/apis/purpose.js +1 -1
  83. package/dist/apis/sandbox.cjs +6 -6
  84. package/dist/apis/sandbox.js +1 -1
  85. package/dist/apis/submission.cjs +6 -6
  86. package/dist/apis/submission.js +1 -1
  87. package/dist/apis/targeting.cjs +6 -6
  88. package/dist/apis/targeting.js +1 -1
  89. package/dist/apis/template-variables.cjs +6 -6
  90. package/dist/apis/template-variables.js +1 -1
  91. package/dist/apis/user.cjs +6 -6
  92. package/dist/apis/user.js +1 -1
  93. package/dist/apis/validation-rules.cjs +6 -6
  94. package/dist/apis/validation-rules.js +1 -1
  95. package/dist/apis/webhooks.cjs +6 -6
  96. package/dist/apis/webhooks.js +1 -1
  97. package/dist/apis/workflow-definition.cjs +6 -6
  98. package/dist/apis/workflow-definition.js +1 -1
  99. package/dist/apis/workflow.cjs +6 -6
  100. package/dist/apis/workflow.js +1 -1
  101. package/dist/bin/cli.js +1 -1
  102. package/dist/{chunk-RJ3DWFSK.js → chunk-3NLMZLCD.js} +1 -1
  103. package/dist/{chunk-BPHOGIQM.cjs → chunk-A67W5WAP.cjs} +1 -1
  104. package/dist/{chunk-F5JVW2D5.cjs → chunk-BFUNXZRX.cjs} +1 -1
  105. package/dist/{chunk-WSZWUQDD.cjs → chunk-FPO2GB3J.cjs} +4 -4
  106. package/dist/{chunk-AUH6NP6Y.js → chunk-I2XRA5AM.js} +1 -1
  107. package/dist/{chunk-NBYH536J.js → chunk-PDALFDYR.js} +4 -4
  108. package/dist/email-settings-EJ3DCPPN.js +7 -0
  109. package/dist/email-settings-TALOPLBC.cjs +7 -0
  110. package/dist/{email-settings-runtime-NS7MU3RB.cjs → email-settings-runtime-3NJIAWWI.cjs} +2 -2
  111. package/dist/{email-settings-runtime-X7F3EPAB.js → email-settings-runtime-Q2HVKJDS.js} +1 -1
  112. package/dist/{email-settings.d-BXxYjVDr.d.cts → email-settings.d-DUvmLZMN.d.cts} +115 -2
  113. package/dist/{email-settings.d-BXxYjVDr.d.ts → email-settings.d-DUvmLZMN.d.ts} +115 -2
  114. package/dist/index.cjs +12 -12
  115. package/dist/index.d.cts +2 -2
  116. package/dist/index.d.ts +2 -2
  117. package/dist/index.js +3 -3
  118. package/dist/{js-yaml-UPZKYVRY.js → js-yaml-DLCVPJ7G.js} +17 -15
  119. package/dist/partner-directory-THI7JEXK.js +7 -0
  120. package/dist/partner-directory-ZQIBKD5Q.cjs +7 -0
  121. package/dist/{partner-directory-runtime-RSONSDNJ.cjs → partner-directory-runtime-AUHVA5Q3.cjs} +2 -2
  122. package/dist/{partner-directory-runtime-QURDOO4Z.js → partner-directory-runtime-GNVT7U7R.js} +1 -1
  123. package/dist/partner-directory.d-BCIjHoGs.d.cts +2337 -0
  124. package/dist/partner-directory.d-BCIjHoGs.d.ts +2337 -0
  125. package/docs/email-settings.md +80 -1
  126. package/docs/partner-directory.md +295 -127
  127. package/package.json +1 -1
  128. package/dist/email-settings-TQ5GGDYG.js +0 -7
  129. package/dist/email-settings-TQC34GST.cjs +0 -7
  130. package/dist/partner-directory-2XMPQWWX.js +0 -7
  131. package/dist/partner-directory-WHNTKQ5E.cjs +0 -7
  132. package/dist/partner-directory.d-CRNkDF8q.d.cts +0 -1510
  133. package/dist/partner-directory.d-CRNkDF8q.d.ts +0 -1510
package/dist/index.d.cts CHANGED
@@ -19,7 +19,7 @@ import { C as Client$c } from './data-management.d-CkDmJwpx.cjs';
19
19
  import { C as Client$d } from './deduplication.d-w_2aJD5f.cjs';
20
20
  import { C as Client$e } from './design.d-eA-irKEX.cjs';
21
21
  import { C as Client$f } from './document.d-DN37pjdx.cjs';
22
- import { C as Client$g } from './email-settings.d-BXxYjVDr.cjs';
22
+ import { C as Client$g } from './email-settings.d-DUvmLZMN.cjs';
23
23
  import { C as Client$h } from './email-template.d-gtQkdaXM.cjs';
24
24
  import { C as Client$i } from './entity.d-DtiajmaY.cjs';
25
25
  import { C as Client$j } from './entity-mapping.d-DKSW3sfy.cjs';
@@ -35,7 +35,7 @@ import { C as Client$s } from './metering.d-DvtPv7wk.cjs';
35
35
  import { C as Client$t } from './notes.d-BC-scR42.cjs';
36
36
  import { C as Client$u } from './notification.d-BfBL3lga.cjs';
37
37
  import { C as Client$v } from './organization.d-DqwnNxMg.cjs';
38
- import { C as Client$w } from './partner-directory.d-CRNkDF8q.cjs';
38
+ import { C as Client$w } from './partner-directory.d-BCIjHoGs.cjs';
39
39
  import { C as Client$x } from './permissions.d-BHB1FFS5.cjs';
40
40
  import { C as Client$y } from './pricing.d-Cv39plGm.cjs';
41
41
  import { C as Client$z } from './pricing-tier.d-Cg0jl6n_.cjs';
package/dist/index.d.ts CHANGED
@@ -19,7 +19,7 @@ import { C as Client$c } from './data-management.d-CkDmJwpx.js';
19
19
  import { C as Client$d } from './deduplication.d-w_2aJD5f.js';
20
20
  import { C as Client$e } from './design.d-eA-irKEX.js';
21
21
  import { C as Client$f } from './document.d-DN37pjdx.js';
22
- import { C as Client$g } from './email-settings.d-BXxYjVDr.js';
22
+ import { C as Client$g } from './email-settings.d-DUvmLZMN.js';
23
23
  import { C as Client$h } from './email-template.d-gtQkdaXM.js';
24
24
  import { C as Client$i } from './entity.d-DtiajmaY.js';
25
25
  import { C as Client$j } from './entity-mapping.d-DKSW3sfy.js';
@@ -35,7 +35,7 @@ import { C as Client$s } from './metering.d-DvtPv7wk.js';
35
35
  import { C as Client$t } from './notes.d-BC-scR42.js';
36
36
  import { C as Client$u } from './notification.d-BfBL3lga.js';
37
37
  import { C as Client$v } from './organization.d-DqwnNxMg.js';
38
- import { C as Client$w } from './partner-directory.d-CRNkDF8q.js';
38
+ import { C as Client$w } from './partner-directory.d-BCIjHoGs.js';
39
39
  import { C as Client$x } from './permissions.d-BHB1FFS5.js';
40
40
  import { C as Client$y } from './pricing.d-Cv39plGm.js';
41
41
  import { C as Client$z } from './pricing-tier.d-Cg0jl6n_.js';
package/dist/index.js CHANGED
@@ -24,7 +24,7 @@ import {
24
24
  } from "./chunk-OEBV2PMV.js";
25
25
  import {
26
26
  require_partner_directory_runtime
27
- } from "./chunk-AUH6NP6Y.js";
27
+ } from "./chunk-I2XRA5AM.js";
28
28
  import {
29
29
  require_permissions_runtime
30
30
  } from "./chunk-SITPUXIR.js";
@@ -72,7 +72,7 @@ import {
72
72
  } from "./chunk-75EI2Q64.js";
73
73
  import {
74
74
  require_email_settings_runtime
75
- } from "./chunk-RJ3DWFSK.js";
75
+ } from "./chunk-3NLMZLCD.js";
76
76
  import {
77
77
  require_email_template_runtime
78
78
  } from "./chunk-JJWJLY42.js";
@@ -143,7 +143,7 @@ import {
143
143
  expand,
144
144
  help,
145
145
  openapi
146
- } from "./chunk-NBYH536J.js";
146
+ } from "./chunk-PDALFDYR.js";
147
147
  import {
148
148
  __require
149
149
  } from "./chunk-YPSWSI3M.js";
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
 
3
- // ../../node_modules/js-yaml/dist/js-yaml.mjs
3
+ // ../../node_modules/.pnpm/js-yaml@4.1.1/node_modules/js-yaml/dist/js-yaml.mjs
4
4
  function isNothing(subject) {
5
5
  return typeof subject === "undefined" || subject === null;
6
6
  }
@@ -864,6 +864,18 @@ function charFromCodepoint(c) {
864
864
  (c - 65536 & 1023) + 56320
865
865
  );
866
866
  }
867
+ function setProperty(object, key, value) {
868
+ if (key === "__proto__") {
869
+ Object.defineProperty(object, key, {
870
+ configurable: true,
871
+ enumerable: true,
872
+ writable: true,
873
+ value
874
+ });
875
+ } else {
876
+ object[key] = value;
877
+ }
878
+ }
867
879
  var simpleEscapeCheck = new Array(256);
868
880
  var simpleEscapeMap = new Array(256);
869
881
  for (i = 0; i < 256; i++) {
@@ -983,7 +995,7 @@ function mergeMappings(state, destination, source, overridableKeys) {
983
995
  for (index = 0, quantity = sourceKeys.length; index < quantity; index += 1) {
984
996
  key = sourceKeys[index];
985
997
  if (!_hasOwnProperty$1.call(destination, key)) {
986
- destination[key] = source[key];
998
+ setProperty(destination, key, source[key]);
987
999
  overridableKeys[key] = true;
988
1000
  }
989
1001
  }
@@ -1023,16 +1035,7 @@ function storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valu
1023
1035
  state.position = startPos || state.position;
1024
1036
  throwError(state, "duplicated mapping key");
1025
1037
  }
1026
- if (keyNode === "__proto__") {
1027
- Object.defineProperty(_result, keyNode, {
1028
- configurable: true,
1029
- enumerable: true,
1030
- writable: true,
1031
- value: valueNode
1032
- });
1033
- } else {
1034
- _result[keyNode] = valueNode;
1035
- }
1038
+ setProperty(_result, keyNode, valueNode);
1036
1039
  delete overridableKeys[keyNode];
1037
1040
  }
1038
1041
  return _result;
@@ -2620,7 +2623,6 @@ var jsYaml = {
2620
2623
  safeLoadAll,
2621
2624
  safeDump
2622
2625
  };
2623
- var js_yaml_default = jsYaml;
2624
2626
  export {
2625
2627
  CORE_SCHEMA,
2626
2628
  DEFAULT_SCHEMA,
@@ -2629,7 +2631,7 @@ export {
2629
2631
  Schema,
2630
2632
  Type,
2631
2633
  YAMLException,
2632
- js_yaml_default as default,
2634
+ jsYaml as default,
2633
2635
  dump,
2634
2636
  load,
2635
2637
  loadAll,
@@ -2641,5 +2643,5 @@ export {
2641
2643
  /*! Bundled license information:
2642
2644
 
2643
2645
  js-yaml/dist/js-yaml.mjs:
2644
- (*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT *)
2646
+ (*! js-yaml 4.1.1 https://github.com/nodeca/js-yaml @license MIT *)
2645
2647
  */
@@ -0,0 +1,7 @@
1
+ import "./chunk-YPSWSI3M.js";
2
+
3
+ // src/docs/partner-directory.json
4
+ var partner_directory_default = '# Partner Directory API\n\n- **Base URL:** `https://partner-directory-api.sls.epilot.io`\n- **Full API Docs:** [https://docs.epilot.io/api/partner-directory](https://docs.epilot.io/api/partner-directory)\n\n## Usage\n\n```ts\nimport { epilot } from \'@epilot/sdk\'\n\nepilot.authorize(() => \'<token>\')\nconst { data } = await epilot.partnerDirectory.approvePartner(...)\n```\n\n### Tree-shakeable import\n\n```ts\nimport { getClient, authorize } from \'@epilot/sdk/partner-directory\'\n\nconst partnerDirectoryClient = getClient()\nauthorize(partnerDirectoryClient, () => \'<token>\')\nconst { data } = await partnerDirectoryClient.approvePartner(...)\n```\n\n## Operations\n\n**Partners**\n- [`approvePartner`](#approvepartner)\n- [`rejectPartner`](#rejectpartner)\n- [`searchAssignable`](#searchassignable)\n- [`batchGetAssignable`](#batchgetassignable)\n- [`getPartnerByToken`](#getpartnerbytoken)\n- [`activatePartner`](#activatepartner)\n- [`searchGeolocationForText`](#searchgeolocationfortext)\n- [`invitePartnerV2`](#invitepartnerv2)\n\n**Partner Users**\n- [`getPartnerUsers`](#getpartnerusers)\n- [`createPartnerUser`](#createpartneruser)\n- [`deletePartnerUser`](#deletepartneruser)\n- [`getPartnerRoles`](#getpartnerroles)\n- [`createPartnerRole`](#createpartnerrole)\n- [`updatePartnerRole`](#updatepartnerrole)\n- [`deletePartnerRole`](#deletepartnerrole)\n- [`assignPartnerUserRoles`](#assignpartneruserroles)\n- [`unassignPartnerUserRoles`](#unassignpartneruserroles)\n\n**Schemas**\n- [`InviteToken`](#invitetoken)\n- [`Partner`](#partner)\n- [`PartnerId`](#partnerid)\n- [`OrganizationId`](#organizationid)\n- [`ActivatePartnerPayload`](#activatepartnerpayload)\n- [`PartnerInvitationPayload`](#partnerinvitationpayload)\n- [`Assignable`](#assignable)\n- [`BaseAssignable`](#baseassignable)\n- [`AssignableUser`](#assignableuser)\n- [`AssignablePartnerUser`](#assignablepartneruser)\n- [`AssignableGroup`](#assignablegroup)\n- [`AssignableOrganization`](#assignableorganization)\n- [`AssignableEcpPlaceholder`](#assignableecpplaceholder)\n- [`SearchGeolocation`](#searchgeolocation)\n- [`Geolocation`](#geolocation)\n- [`Address`](#address)\n- [`AddressGeolocation`](#addressgeolocation)\n- [`PartnerUser`](#partneruser)\n- [`CreatePartnerUserPayload`](#createpartneruserpayload)\n- [`CreatePartnerRolePayload`](#createpartnerrolepayload)\n- [`UpdatePartnerRolePayload`](#updatepartnerrolepayload)\n- [`Grant`](#grant)\n- [`GrantWithDependencies`](#grantwithdependencies)\n- [`GrantCondition`](#grantcondition)\n- [`EqualsCondition`](#equalscondition)\n- [`RoleId`](#roleid)\n- [`BaseRoleForCreate`](#baseroleforcreate)\n- [`PartnerRole`](#partnerrole)\n- [`AssignRolesPayload`](#assignrolespayload)\n- [`User`](#user)\n\n### `approvePartner`\n\nApproves a pending partner request, allowing the partner to begin collaboration.\n\n`POST /v1/partners/{id}/approve`\n\n```ts\nconst { data } = await client.approvePartner({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "e45a6dc2-3795-43a3-ae0f-6b6760f310fc",\n "organization_id": "123",\n "created_at": "2022-02-08T04:44:32.246Z",\n "description": "Regional solar installation partner for Bavaria",\n "company_name": "Acme Solar GmbH",\n "invitation_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",\n "invitation_email": "user@example.com",\n "email": "contact@acme-solar.de",\n "owner_email": "owner@acme-solar.de",\n "signed_up_email": "admin@acme-solar.de",\n "partner_org_id": "456789",\n "status": "Pending"\n}\n```\n\n</details>\n\n---\n\n### `rejectPartner`\n\nRejects a pending partner request, declining the partnership.\n\n`POST /v1/partners/{id}/reject`\n\n```ts\nconst { data } = await client.rejectPartner({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "e45a6dc2-3795-43a3-ae0f-6b6760f310fc",\n "organization_id": "123",\n "created_at": "2022-02-08T04:44:32.246Z",\n "description": "Regional solar installation partner for Bavaria",\n "company_name": "Acme Solar GmbH",\n "invitation_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",\n "invitation_email": "user@example.com",\n "email": "contact@acme-solar.de",\n "owner_email": "owner@acme-solar.de",\n "signed_up_email": "admin@acme-solar.de",\n "partner_org_id": "456789",\n "status": "Pending"\n}\n```\n\n</details>\n\n---\n\n### `searchAssignable`\n\nSearch for users and organizations that can be assigned to tasks, workflows, or entities.\n\n`POST /v1/partners/assignables:search`\n\n```ts\nconst { data } = await client.searchAssignable(\n null,\n {\n q: \'john\',\n from: 0,\n size: 25,\n org_ids: [\'123\', \'456\'],\n portalUsersEntityIdScope: \'f7c22299-ca72-4bca-8538-0a88eeefc947\',\n types: [\'user\', \'partner_user\', \'partner_organization\', \'ecp\', \'group\']\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "hits": 42,\n "results": [\n {\n "type": "user",\n "display_name": "John Smith",\n "image_uri": {\n "original": "https://epilot-staging-user-content.s3.eu-central-1.amazonaws.com/728/8043d909-71fc-4838-a363-1b15dc1d585c/epilot.png",\n "thumbnail_32": "https://file.sls.epilot.io/v1/files/public/preview?w=32&h=32&key=/728/8043d909-71fc-4838-a363-1b15dc1d585c/epilot.png"\n },\n "org_id": "123",\n "created_at": "2022-02-08T04:44:32.246Z",\n "activated_at": "2022-02-08T04:44:32.246Z",\n "status": "Active",\n "user_id": "456",\n "email": "john.smith@example.com"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `batchGetAssignable`\n\nRetrieve multiple assignable users or groups by their IDs in a single request.\n\n`POST /v1/partners/assignables:batchGet`\n\n```ts\nconst { data } = await client.batchGetAssignable(\n null,\n [\n {\n user_id: \'456\',\n org_id: \'123\',\n group_id: \'group-789\'\n }\n ],\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "hits": 3,\n "results": [\n {\n "type": "user",\n "display_name": "John Smith",\n "image_uri": {\n "original": "https://epilot-staging-user-content.s3.eu-central-1.amazonaws.com/728/8043d909-71fc-4838-a363-1b15dc1d585c/epilot.png",\n "thumbnail_32": "https://file.sls.epilot.io/v1/files/public/preview?w=32&h=32&key=/728/8043d909-71fc-4838-a363-1b15dc1d585c/epilot.png"\n },\n "org_id": "123",\n "created_at": "2022-02-08T04:44:32.246Z",\n "activated_at": "2022-02-08T04:44:32.246Z",\n "status": "Active",\n "user_id": "456",\n "email": "john.smith@example.com"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `getPartnerByToken`\n\nRetrieves partner information using an invitation token.\n\n`GET /v1/partner-directory/public/getPartnerByToken`\n\n```ts\nconst { data } = await client.getPartnerByToken({\n token: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "e45a6dc2-3795-43a3-ae0f-6b6760f310fc",\n "organization_id": "123",\n "created_at": "2022-02-08T04:44:32.246Z",\n "description": "Regional solar installation partner for Bavaria",\n "company_name": "Acme Solar GmbH",\n "invitation_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",\n "invitation_email": "user@example.com",\n "email": "contact@acme-solar.de",\n "owner_email": "owner@acme-solar.de",\n "signed_up_email": "admin@acme-solar.de",\n "partner_org_id": "456789",\n "status": "Pending"\n}\n```\n\n</details>\n\n---\n\n### `activatePartner`\n\nActivates a partner account using an invitation token.\n\n`POST /v1/partner-directory/public/activate`\n\n```ts\nconst { data } = await client.activatePartner(\n {\n token: \'example\',\n },\n {\n company_name: \'Acme Solar GmbH\',\n signed_up_email: \'admin@acme-solar.de\',\n organization_id: \'456\'\n },\n)\n```\n\n---\n\n### `searchGeolocationForText`\n\nConverts an address string to geographic coordinates (latitude and longitude).\n\n`POST /v1/geolocation/text:search`\n\n```ts\nconst { data } = await client.searchGeolocationForText(\n null,\n {\n address: \'Auweg 1, 93055 Regensburg, DE\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "lat": 49.013,\n "lng": 12.101,\n "addressLabel": "Auweg 1, 93055 Regensburg, Germany",\n "relevance": 0.95\n}\n```\n\n</details>\n\n---\n\n### `invitePartnerV2`\n\nSends an invitation email to a partner organization to begin collaboration.\n\n`POST /v2/partners/{id}/invite`\n\n```ts\nconst { data } = await client.invitePartnerV2(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n language: \'de\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "e45a6dc2-3795-43a3-ae0f-6b6760f310fc",\n "organization_id": "123",\n "created_at": "2022-02-08T04:44:32.246Z",\n "description": "Regional solar installation partner for Bavaria",\n "company_name": "Acme Solar GmbH",\n "invitation_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",\n "invitation_email": "user@example.com",\n "email": "contact@acme-solar.de",\n "owner_email": "owner@acme-solar.de",\n "signed_up_email": "admin@acme-solar.de",\n "partner_org_id": "456789",\n "status": "Pending"\n}\n```\n\n</details>\n\n---\n\n### `getPartnerUsers`\n\nRetrieves all users belonging to a partner organization along with their assigned roles.\n\n`GET /v2/partners/{orgId}/users`\n\n```ts\nconst { data } = await client.getPartnerUsers({\n orgId: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "results": [\n {\n "id": "456",\n "name": "John Doe",\n "email": "user@partner.com",\n "status": "Active",\n "image": {\n "original": "https://example.com/path",\n "thumbnail_32": "https://example.com/path"\n },\n "roles": [\n {\n "id": "123:partner_admin",\n "slug": "partner_admin",\n "name": "Partner Administrator"\n }\n ]\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `createPartnerUser`\n\nCreates a new user in a partner organization.\n\n`POST /v2/partners/{orgId}/users`\n\n```ts\nconst { data } = await client.createPartnerUser(\n {\n orgId: \'example\',\n },\n {\n email: \'newuser@partner.com\',\n language: \'de\',\n roles: [\'123:partner_viewer\']\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "456",\n "email": "user@example.com",\n "display_name": "John Doe",\n "status": "Active"\n}\n```\n\n</details>\n\n---\n\n### `deletePartnerUser`\n\nRemoves a user from a partner organization.\n\n`DELETE /v2/partners/{orgId}/users/{userId}`\n\n```ts\nconst { data } = await client.deletePartnerUser({\n orgId: \'example\',\n userId: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{}\n```\n\n</details>\n\n---\n\n### `getPartnerRoles`\n\nRetrieves all roles defined for a partner organization.\n\n`GET /v2/partners/{orgId}/roles`\n\n```ts\nconst { data } = await client.getPartnerRoles({\n orgId: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "results": [\n {\n "id": "123:partner_admin",\n "slug": "partner_admin",\n "name": "Partner Administrator",\n "type": "share_role",\n "grants": [\n {\n "action": "entity-read",\n "resource": "entity:123:contact:*",\n "effect": "allow",\n "conditions": [\n {\n "attribute": "workflows.primary.task_name",\n "operation": "equals",\n "values": ["Qualification"]\n }\n ]\n }\n ]\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `createPartnerRole`\n\nCreates a new role for a partner organization.\n\n`POST /v2/partners/{orgId}/roles`\n\n```ts\nconst { data } = await client.createPartnerRole(\n {\n orgId: \'example\',\n },\n {\n name: \'Partner Administrator\',\n slug: \'partner_admin\',\n grants: [\n {\n action: \'entity-read\',\n resource: \'entity:123:contact:*\',\n effect: \'allow\',\n conditions: [\n {\n attribute: \'workflows.primary.task_name\',\n operation: \'equals\',\n values: [\'Qualification\']\n }\n ],\n dependencies: [\n {\n action: \'entity-read\',\n resource: \'entity:123:contact:*\',\n effect: \'allow\',\n conditions: [\n {\n attribute: \'workflows.primary.task_name\',\n operation: \'equals\',\n values: [\'Qualification\']\n }\n ]\n }\n ]\n }\n ]\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "123:partner_admin",\n "slug": "partner_admin",\n "name": "Partner Administrator",\n "type": "share_role",\n "grants": [\n {\n "action": "entity-read",\n "resource": "entity:123:contact:*",\n "effect": "allow",\n "conditions": [\n {\n "attribute": "workflows.primary.task_name",\n "operation": "equals",\n "values": ["Qualification"]\n }\n ]\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `updatePartnerRole`\n\nUpdates an existing role in a partner organization.\n\n`PUT /v2/partners/{orgId}/roles/{roleId}`\n\n```ts\nconst { data } = await client.updatePartnerRole(\n {\n orgId: \'example\',\n roleId: \'example\',\n },\n {\n grants: [\n {\n action: \'entity-read\',\n resource: \'entity:123:contact:*\',\n effect: \'allow\',\n conditions: [\n {\n attribute: \'workflows.primary.task_name\',\n operation: \'equals\',\n values: [\'Qualification\']\n }\n ],\n dependencies: [\n {\n action: \'entity-read\',\n resource: \'entity:123:contact:*\',\n effect: \'allow\',\n conditions: [\n {\n attribute: \'workflows.primary.task_name\',\n operation: \'equals\',\n values: [\'Qualification\']\n }\n ]\n }\n ]\n }\n ],\n id: \'123:owner\',\n name: \'Owner\',\n slug: \'owner\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "123:partner_admin",\n "slug": "partner_admin",\n "name": "Partner Administrator",\n "type": "share_role",\n "grants": [\n {\n "action": "entity-read",\n "resource": "entity:123:contact:*",\n "effect": "allow",\n "conditions": [\n {\n "attribute": "workflows.primary.task_name",\n "operation": "equals",\n "values": ["Qualification"]\n }\n ]\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `deletePartnerRole`\n\nDelete a role from a partner organization\n\n`DELETE /v2/partners/{orgId}/roles/{roleId}`\n\n```ts\nconst { data } = await client.deletePartnerRole({\n orgId: \'example\',\n roleId: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "123:partner_admin",\n "slug": "partner_admin",\n "name": "Partner Administrator",\n "type": "share_role",\n "grants": [\n {\n "action": "entity-read",\n "resource": "entity:123:contact:*",\n "effect": "allow",\n "conditions": [\n {\n "attribute": "workflows.primary.task_name",\n "operation": "equals",\n "values": ["Qualification"]\n }\n ]\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `assignPartnerUserRoles`\n\nAssigns one or more roles to a user in a partner organization.\n\n`POST /v2/partners/{orgId}/users/{userId}/roles`\n\n```ts\nconst { data } = await client.assignPartnerUserRoles(\n {\n orgId: \'example\',\n userId: \'example\',\n },\n {\n roleIds: [\'123:partner_admin\', \'123:partner_viewer\']\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "results": [\n {\n "roleId": "string",\n "success": true,\n "data": {},\n "error": {}\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `unassignPartnerUserRoles`\n\nRemoves one or more roles from a user in a partner organization.\n\n`DELETE /v2/partners/{orgId}/users/{userId}/roles`\n\n```ts\nconst { data } = await client.unassignPartnerUserRoles(\n {\n orgId: \'example\',\n userId: \'example\',\n },\n {\n roleIds: [\'123:partner_admin\', \'123:partner_viewer\']\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "results": [\n {\n "roleId": "string",\n "success": true,\n "data": {},\n "error": {}\n }\n ]\n}\n```\n\n</details>\n\n---\n\n## Schemas\n\n### `InviteToken`\n\nA secure token used for partner invitation and activation. Sent via email to the invited partner.\n\n```ts\ntype InviteToken = string\n```\n\n### `Partner`\n\nRepresents a partner organization in the partner directory.\n\nPartners go through a lifecycle from invitation to active collaboration:\n- **Pending**: Initial state when partner record is created\n- **Invited**: Invitation email has been sent to the partner\n- **Request**: Partner has requested to join \n\n```ts\ntype Partner = {\n id?: string\n organization_id?: string\n created_at?: string // date-time\n description?: string\n company_name?: string\n invitation_token?: string\n invitation_email?: string // email\n email?: string // email\n owner_email?: string // email\n signed_up_email?: string // email\n partner_org_id?: string\n status?: "Pending" | "Request" | "Deleted" | "Invited" | "Rejected"\n}\n```\n\n### `PartnerId`\n\nUnique identifier for a partner record (UUID format)\n\n```ts\ntype PartnerId = string\n```\n\n### `OrganizationId`\n\nUnique identifier for an organization in the epilot platform\n\n```ts\ntype OrganizationId = string\n```\n\n### `ActivatePartnerPayload`\n\nPayload for activating a partner account using an invitation token\n\n```ts\ntype ActivatePartnerPayload = {\n company_name?: string\n signed_up_email: string // email\n organization_id: string\n}\n```\n\n### `PartnerInvitationPayload`\n\nConfiguration options for sending a partner invitation\n\n```ts\ntype PartnerInvitationPayload = {\n language?: "en" | "de"\n}\n```\n\n### `Assignable`\n\nA user, organization, or group that can be assigned to tasks, workflows, or entities.\nThe `type` field discriminates between different assignable types.\n\n\n```ts\ntype Assignable = {\n type: "user"\n display_name: string\n image_uri?: {\n original: string // uri\n thumbnail_32?: string // uri\n }\n org_id: string\n created_at?: string // date-time\n activated_at?: string // date-time\n status?: "Active" | "Pending" | "Deactivated" | "Deleted"\n user_id?: string\n email?: string // email\n} | {\n type: "partner_user"\n display_name: string\n image_uri?: {\n original: string // uri\n thumbnail_32?: string // uri\n }\n org_id: string\n created_at?: string // date-time\n activated_at?: string // date-time\n status?: "Active" | "Pending" | "Deactivated" | "Deleted"\n partner_id?: string\n user_id?: string\n email?: string // email\n} | {\n type: "partner_organization"\n display_name: string\n image_uri?: {\n original: string // uri\n thumbnail_32?: string // uri\n }\n org_id: string\n created_at?: string // date-time\n activated_at?: string // date-time\n status?: "Active" | "Pending" | "Deactivated" | "Deleted"\n partner_id: string\n email?: string // email\n geolocations?: Array<{\n address?: {\n street?: { ... }\n street_number?: { ... }\n city?: { ... }\n postal_code?: { ... }\n country?: { ... }\n }\n lat: number\n lng: number\n addressLabel?: string\n relevance?: number\n }>\n phone?: string\n activity_radius?: number\n} | {\n type: "ecp"\n display_name: string\n image_uri?: {\n original: string // uri\n thumbnail_32?: string // uri\n }\n org_id: string\n created_at?: string // date-time\n activated_at?: string // date-time\n status?: "Active" | "Pending" | "Deactivated" | "Deleted"\n user_id: string\n email?: string // email\n} | {\n type: "group"\n display_name: string\n image_uri?: {\n original: string // uri\n thumbnail_32?: string // uri\n }\n org_id: string\n created_at?: string // date-time\n activated_at?: string // date-time\n status?: "Active" | "Pending" | "Deactivated" | "Deleted"\n group_id?: string\n}\n```\n\n### `BaseAssignable`\n\nCommon properties shared by all assignable types\n\n```ts\ntype BaseAssignable = {\n type: string\n display_name: string\n image_uri?: {\n original: string // uri\n thumbnail_32?: string // uri\n }\n org_id: string\n created_at?: string // date-time\n activated_at?: string // date-time\n status?: "Active" | "Pending" | "Deactivated" | "Deleted"\n}\n```\n\n### `AssignableUser`\n\nA user within the caller\'s organization that can be assigned to tasks or entities\n\n```ts\ntype AssignableUser = {\n type: "user"\n display_name: string\n image_uri?: {\n original: string // uri\n thumbnail_32?: string // uri\n }\n org_id: string\n created_at?: string // date-time\n activated_at?: string // date-time\n status?: "Active" | "Pending" | "Deactivated" | "Deleted"\n user_id?: string\n email?: string // email\n}\n```\n\n### `AssignablePartnerUser`\n\nA user from a partner organization that can be assigned to shared tasks or entities\n\n```ts\ntype AssignablePartnerUser = {\n type: "partner_user"\n display_name: string\n image_uri?: {\n original: string // uri\n thumbnail_32?: string // uri\n }\n org_id: string\n created_at?: string // date-time\n activated_at?: string // date-time\n status?: "Active" | "Pending" | "Deactivated" | "Deleted"\n partner_id?: string\n user_id?: string\n email?: string // email\n}\n```\n\n### `AssignableGroup`\n\nA user group that can be assigned to tasks or entities. All members of the group will be notified/assigned.\n\n```ts\ntype AssignableGroup = {\n type: "group"\n display_name: string\n image_uri?: {\n original: string // uri\n thumbnail_32?: string // uri\n }\n org_id: string\n created_at?: string // date-time\n activated_at?: string // date-time\n status?: "Active" | "Pending" | "Deactivated" | "Deleted"\n group_id?: string\n}\n```\n\n### `AssignableOrganization`\n\nA partner organization that can be assigned to tasks or entities at the organization level.\nUseful when you want to assign work to a partner company rather than a specific individual.\n\n\n```ts\ntype AssignableOrganization = {\n type: "partner_organization"\n display_name: string\n image_uri?: {\n original: string // uri\n thumbnail_32?: string // uri\n }\n org_id: string\n created_at?: string // date-time\n activated_at?: string // date-time\n status?: "Active" | "Pending" | "Deactivated" | "Deleted"\n partner_id: string\n email?: string // email\n geolocations?: Array<{\n address?: {\n street?: { ... }\n street_number?: { ... }\n city?: { ... }\n postal_code?: { ... }\n country?: { ... }\n }\n lat: number\n lng: number\n addressLabel?: string\n relevance?: number\n }>\n phone?: string\n activity_radius?: number\n}\n```\n\n### `AssignableEcpPlaceholder`\n\nAn End Customer Portal (ECP) user that can be assigned to tasks or entities.\nThese are external users who access the system through the customer portal.\n\n\n```ts\ntype AssignableEcpPlaceholder = {\n type: "ecp"\n display_name: string\n image_uri?: {\n original: string // uri\n thumbnail_32?: string // uri\n }\n org_id: string\n created_at?: string // date-time\n activated_at?: string // date-time\n status?: "Active" | "Pending" | "Deactivated" | "Deleted"\n user_id: string\n email?: string // email\n}\n```\n\n### `SearchGeolocation`\n\nRequest payload for geocoding an address to coordinates\n\n```ts\ntype SearchGeolocation = {\n address: string\n}\n```\n\n### `Geolocation`\n\nGeographic coordinates with optional metadata\n\n```ts\ntype Geolocation = {\n lat: number\n lng: number\n addressLabel?: string\n relevance?: number\n}\n```\n\n### `Address`\n\nStructured postal address\n\n```ts\ntype Address = {\n street?: string\n street_number?: string\n city?: string\n postal_code?: string\n country?: string\n}\n```\n\n### `AddressGeolocation`\n\nCombined address and geographic coordinates for a location\n\n```ts\ntype AddressGeolocation = {\n address?: {\n street?: string\n street_number?: string\n city?: string\n postal_code?: string\n country?: string\n }\n lat: number\n lng: number\n addressLabel?: string\n relevance?: number\n}\n```\n\n### `PartnerUser`\n\nA user within a partner organization, including their assigned roles\n\n```ts\ntype PartnerUser = {\n id: string\n name?: string\n email: string // email\n status: string\n image?: {\n original?: string // uri\n thumbnail_32?: string // uri\n }\n roles: Array<{\n id: string\n slug: string\n name: string\n }>\n}\n```\n\n### `CreatePartnerUserPayload`\n\nRequest payload for creating a new user in a partner organization\n\n```ts\ntype CreatePartnerUserPayload = {\n email: string // email\n language?: "en" | "de"\n roles?: string[]\n}\n```\n\n### `CreatePartnerRolePayload`\n\nRequest payload for creating a new role in a partner organization\n\n```ts\ntype CreatePartnerRolePayload = {\n name: string\n slug: string\n grants: Array<{\n action: string\n resource?: string\n effect?: "allow" | "deny"\n conditions?: object[]\n dependencies?: Array<{\n action: { ... }\n resource?: { ... }\n effect?: { ... }\n conditions?: { ... }\n }>\n }>\n}\n```\n\n### `UpdatePartnerRolePayload`\n\nRequest payload for updating an existing role in a partner organization\n\n```ts\ntype UpdatePartnerRolePayload = {\n grants: Array<{\n action: string\n resource?: string\n effect?: "allow" | "deny"\n conditions?: object[]\n }>\n id?: string\n name: string\n slug: string\n}\n```\n\n### `Grant`\n\nA permission grant that allows or denies a specific action on a resource.\n\nGrants are the building blocks of roles and define what users can do within the system.\n\n\n```ts\ntype Grant = {\n action: string\n resource?: string\n effect?: "allow" | "deny"\n conditions?: object[]\n}\n```\n\n### `GrantWithDependencies`\n\nA grant with optional dependent grants that are automatically included when this grant is assigned\n\n```ts\ntype GrantWithDependencies = {\n action: string\n resource?: string\n effect?: "allow" | "deny"\n conditions?: object[]\n dependencies?: Array<{\n action: string\n resource?: string\n effect?: "allow" | "deny"\n conditions?: object[]\n }>\n}\n```\n\n### `GrantCondition`\n\nAn additional condition that must be met for a grant to apply.\nConditions allow fine-grained control over when permissions are active.\n\n\n```ts\ntype GrantCondition = object\n```\n\n### `EqualsCondition`\n\nA condition that checks if an attribute equals one of the specified values.\nThe grant only applies when the condition is satisfied.\n\n\n```ts\ntype EqualsCondition = {\n attribute: string\n operation: "equals"\n values: string[]\n}\n```\n\n### `RoleId`\n\nUnique identifier for a role, combining organization ID and role slug.\nFormat: `<organization_id>`:`<slug>`\n\n\n```ts\ntype RoleId = string\n```\n\n### `BaseRoleForCreate`\n\nBase schema for creating or updating a role\n\n```ts\ntype BaseRoleForCreate = {\n id?: string\n name: string\n slug: string\n grants: Array<{\n action: string\n resource?: string\n effect?: "allow" | "deny"\n conditions?: object[]\n }>\n}\n```\n\n### `PartnerRole`\n\nA role definition for users in a partner organization\n\n```ts\ntype PartnerRole = {\n id: string\n slug: string\n name: string\n type?: string\n grants: Array<{\n action: string\n resource?: string\n effect?: "allow" | "deny"\n conditions?: object[]\n }>\n}\n```\n\n### `AssignRolesPayload`\n\nRequest payload for assigning or unassigning roles to/from a user\n\n```ts\ntype AssignRolesPayload = {\n roleIds: string[]\n}\n```\n\n### `User`\n\nA user account in the epilot platform\n\n```ts\ntype User = {\n id?: string\n email?: string // email\n display_name?: string\n status?: "Active" | "Pending" | "Deactivated"\n}\n```\n';
5
+ export {
6
+ partner_directory_default as default
7
+ };
@@ -0,0 +1,7 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('./chunk-NJK5F5TF.cjs');
2
+
3
+ // src/docs/partner-directory.json
4
+ var partner_directory_default = '# Partner Directory API\n\n- **Base URL:** `https://partner-directory-api.sls.epilot.io`\n- **Full API Docs:** [https://docs.epilot.io/api/partner-directory](https://docs.epilot.io/api/partner-directory)\n\n## Usage\n\n```ts\nimport { epilot } from \'@epilot/sdk\'\n\nepilot.authorize(() => \'<token>\')\nconst { data } = await epilot.partnerDirectory.approvePartner(...)\n```\n\n### Tree-shakeable import\n\n```ts\nimport { getClient, authorize } from \'@epilot/sdk/partner-directory\'\n\nconst partnerDirectoryClient = getClient()\nauthorize(partnerDirectoryClient, () => \'<token>\')\nconst { data } = await partnerDirectoryClient.approvePartner(...)\n```\n\n## Operations\n\n**Partners**\n- [`approvePartner`](#approvepartner)\n- [`rejectPartner`](#rejectpartner)\n- [`searchAssignable`](#searchassignable)\n- [`batchGetAssignable`](#batchgetassignable)\n- [`getPartnerByToken`](#getpartnerbytoken)\n- [`activatePartner`](#activatepartner)\n- [`searchGeolocationForText`](#searchgeolocationfortext)\n- [`invitePartnerV2`](#invitepartnerv2)\n\n**Partner Users**\n- [`getPartnerUsers`](#getpartnerusers)\n- [`createPartnerUser`](#createpartneruser)\n- [`deletePartnerUser`](#deletepartneruser)\n- [`getPartnerRoles`](#getpartnerroles)\n- [`createPartnerRole`](#createpartnerrole)\n- [`updatePartnerRole`](#updatepartnerrole)\n- [`deletePartnerRole`](#deletepartnerrole)\n- [`assignPartnerUserRoles`](#assignpartneruserroles)\n- [`unassignPartnerUserRoles`](#unassignpartneruserroles)\n\n**Schemas**\n- [`InviteToken`](#invitetoken)\n- [`Partner`](#partner)\n- [`PartnerId`](#partnerid)\n- [`OrganizationId`](#organizationid)\n- [`ActivatePartnerPayload`](#activatepartnerpayload)\n- [`PartnerInvitationPayload`](#partnerinvitationpayload)\n- [`Assignable`](#assignable)\n- [`BaseAssignable`](#baseassignable)\n- [`AssignableUser`](#assignableuser)\n- [`AssignablePartnerUser`](#assignablepartneruser)\n- [`AssignableGroup`](#assignablegroup)\n- [`AssignableOrganization`](#assignableorganization)\n- [`AssignableEcpPlaceholder`](#assignableecpplaceholder)\n- [`SearchGeolocation`](#searchgeolocation)\n- [`Geolocation`](#geolocation)\n- [`Address`](#address)\n- [`AddressGeolocation`](#addressgeolocation)\n- [`PartnerUser`](#partneruser)\n- [`CreatePartnerUserPayload`](#createpartneruserpayload)\n- [`CreatePartnerRolePayload`](#createpartnerrolepayload)\n- [`UpdatePartnerRolePayload`](#updatepartnerrolepayload)\n- [`Grant`](#grant)\n- [`GrantWithDependencies`](#grantwithdependencies)\n- [`GrantCondition`](#grantcondition)\n- [`EqualsCondition`](#equalscondition)\n- [`RoleId`](#roleid)\n- [`BaseRoleForCreate`](#baseroleforcreate)\n- [`PartnerRole`](#partnerrole)\n- [`AssignRolesPayload`](#assignrolespayload)\n- [`User`](#user)\n\n### `approvePartner`\n\nApproves a pending partner request, allowing the partner to begin collaboration.\n\n`POST /v1/partners/{id}/approve`\n\n```ts\nconst { data } = await client.approvePartner({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "e45a6dc2-3795-43a3-ae0f-6b6760f310fc",\n "organization_id": "123",\n "created_at": "2022-02-08T04:44:32.246Z",\n "description": "Regional solar installation partner for Bavaria",\n "company_name": "Acme Solar GmbH",\n "invitation_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",\n "invitation_email": "user@example.com",\n "email": "contact@acme-solar.de",\n "owner_email": "owner@acme-solar.de",\n "signed_up_email": "admin@acme-solar.de",\n "partner_org_id": "456789",\n "status": "Pending"\n}\n```\n\n</details>\n\n---\n\n### `rejectPartner`\n\nRejects a pending partner request, declining the partnership.\n\n`POST /v1/partners/{id}/reject`\n\n```ts\nconst { data } = await client.rejectPartner({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "e45a6dc2-3795-43a3-ae0f-6b6760f310fc",\n "organization_id": "123",\n "created_at": "2022-02-08T04:44:32.246Z",\n "description": "Regional solar installation partner for Bavaria",\n "company_name": "Acme Solar GmbH",\n "invitation_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",\n "invitation_email": "user@example.com",\n "email": "contact@acme-solar.de",\n "owner_email": "owner@acme-solar.de",\n "signed_up_email": "admin@acme-solar.de",\n "partner_org_id": "456789",\n "status": "Pending"\n}\n```\n\n</details>\n\n---\n\n### `searchAssignable`\n\nSearch for users and organizations that can be assigned to tasks, workflows, or entities.\n\n`POST /v1/partners/assignables:search`\n\n```ts\nconst { data } = await client.searchAssignable(\n null,\n {\n q: \'john\',\n from: 0,\n size: 25,\n org_ids: [\'123\', \'456\'],\n portalUsersEntityIdScope: \'f7c22299-ca72-4bca-8538-0a88eeefc947\',\n types: [\'user\', \'partner_user\', \'partner_organization\', \'ecp\', \'group\']\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "hits": 42,\n "results": [\n {\n "type": "user",\n "display_name": "John Smith",\n "image_uri": {\n "original": "https://epilot-staging-user-content.s3.eu-central-1.amazonaws.com/728/8043d909-71fc-4838-a363-1b15dc1d585c/epilot.png",\n "thumbnail_32": "https://file.sls.epilot.io/v1/files/public/preview?w=32&h=32&key=/728/8043d909-71fc-4838-a363-1b15dc1d585c/epilot.png"\n },\n "org_id": "123",\n "created_at": "2022-02-08T04:44:32.246Z",\n "activated_at": "2022-02-08T04:44:32.246Z",\n "status": "Active",\n "user_id": "456",\n "email": "john.smith@example.com"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `batchGetAssignable`\n\nRetrieve multiple assignable users or groups by their IDs in a single request.\n\n`POST /v1/partners/assignables:batchGet`\n\n```ts\nconst { data } = await client.batchGetAssignable(\n null,\n [\n {\n user_id: \'456\',\n org_id: \'123\',\n group_id: \'group-789\'\n }\n ],\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "hits": 3,\n "results": [\n {\n "type": "user",\n "display_name": "John Smith",\n "image_uri": {\n "original": "https://epilot-staging-user-content.s3.eu-central-1.amazonaws.com/728/8043d909-71fc-4838-a363-1b15dc1d585c/epilot.png",\n "thumbnail_32": "https://file.sls.epilot.io/v1/files/public/preview?w=32&h=32&key=/728/8043d909-71fc-4838-a363-1b15dc1d585c/epilot.png"\n },\n "org_id": "123",\n "created_at": "2022-02-08T04:44:32.246Z",\n "activated_at": "2022-02-08T04:44:32.246Z",\n "status": "Active",\n "user_id": "456",\n "email": "john.smith@example.com"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `getPartnerByToken`\n\nRetrieves partner information using an invitation token.\n\n`GET /v1/partner-directory/public/getPartnerByToken`\n\n```ts\nconst { data } = await client.getPartnerByToken({\n token: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "e45a6dc2-3795-43a3-ae0f-6b6760f310fc",\n "organization_id": "123",\n "created_at": "2022-02-08T04:44:32.246Z",\n "description": "Regional solar installation partner for Bavaria",\n "company_name": "Acme Solar GmbH",\n "invitation_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",\n "invitation_email": "user@example.com",\n "email": "contact@acme-solar.de",\n "owner_email": "owner@acme-solar.de",\n "signed_up_email": "admin@acme-solar.de",\n "partner_org_id": "456789",\n "status": "Pending"\n}\n```\n\n</details>\n\n---\n\n### `activatePartner`\n\nActivates a partner account using an invitation token.\n\n`POST /v1/partner-directory/public/activate`\n\n```ts\nconst { data } = await client.activatePartner(\n {\n token: \'example\',\n },\n {\n company_name: \'Acme Solar GmbH\',\n signed_up_email: \'admin@acme-solar.de\',\n organization_id: \'456\'\n },\n)\n```\n\n---\n\n### `searchGeolocationForText`\n\nConverts an address string to geographic coordinates (latitude and longitude).\n\n`POST /v1/geolocation/text:search`\n\n```ts\nconst { data } = await client.searchGeolocationForText(\n null,\n {\n address: \'Auweg 1, 93055 Regensburg, DE\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "lat": 49.013,\n "lng": 12.101,\n "addressLabel": "Auweg 1, 93055 Regensburg, Germany",\n "relevance": 0.95\n}\n```\n\n</details>\n\n---\n\n### `invitePartnerV2`\n\nSends an invitation email to a partner organization to begin collaboration.\n\n`POST /v2/partners/{id}/invite`\n\n```ts\nconst { data } = await client.invitePartnerV2(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n language: \'de\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "e45a6dc2-3795-43a3-ae0f-6b6760f310fc",\n "organization_id": "123",\n "created_at": "2022-02-08T04:44:32.246Z",\n "description": "Regional solar installation partner for Bavaria",\n "company_name": "Acme Solar GmbH",\n "invitation_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",\n "invitation_email": "user@example.com",\n "email": "contact@acme-solar.de",\n "owner_email": "owner@acme-solar.de",\n "signed_up_email": "admin@acme-solar.de",\n "partner_org_id": "456789",\n "status": "Pending"\n}\n```\n\n</details>\n\n---\n\n### `getPartnerUsers`\n\nRetrieves all users belonging to a partner organization along with their assigned roles.\n\n`GET /v2/partners/{orgId}/users`\n\n```ts\nconst { data } = await client.getPartnerUsers({\n orgId: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "results": [\n {\n "id": "456",\n "name": "John Doe",\n "email": "user@partner.com",\n "status": "Active",\n "image": {\n "original": "https://example.com/path",\n "thumbnail_32": "https://example.com/path"\n },\n "roles": [\n {\n "id": "123:partner_admin",\n "slug": "partner_admin",\n "name": "Partner Administrator"\n }\n ]\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `createPartnerUser`\n\nCreates a new user in a partner organization.\n\n`POST /v2/partners/{orgId}/users`\n\n```ts\nconst { data } = await client.createPartnerUser(\n {\n orgId: \'example\',\n },\n {\n email: \'newuser@partner.com\',\n language: \'de\',\n roles: [\'123:partner_viewer\']\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "456",\n "email": "user@example.com",\n "display_name": "John Doe",\n "status": "Active"\n}\n```\n\n</details>\n\n---\n\n### `deletePartnerUser`\n\nRemoves a user from a partner organization.\n\n`DELETE /v2/partners/{orgId}/users/{userId}`\n\n```ts\nconst { data } = await client.deletePartnerUser({\n orgId: \'example\',\n userId: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{}\n```\n\n</details>\n\n---\n\n### `getPartnerRoles`\n\nRetrieves all roles defined for a partner organization.\n\n`GET /v2/partners/{orgId}/roles`\n\n```ts\nconst { data } = await client.getPartnerRoles({\n orgId: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "results": [\n {\n "id": "123:partner_admin",\n "slug": "partner_admin",\n "name": "Partner Administrator",\n "type": "share_role",\n "grants": [\n {\n "action": "entity-read",\n "resource": "entity:123:contact:*",\n "effect": "allow",\n "conditions": [\n {\n "attribute": "workflows.primary.task_name",\n "operation": "equals",\n "values": ["Qualification"]\n }\n ]\n }\n ]\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `createPartnerRole`\n\nCreates a new role for a partner organization.\n\n`POST /v2/partners/{orgId}/roles`\n\n```ts\nconst { data } = await client.createPartnerRole(\n {\n orgId: \'example\',\n },\n {\n name: \'Partner Administrator\',\n slug: \'partner_admin\',\n grants: [\n {\n action: \'entity-read\',\n resource: \'entity:123:contact:*\',\n effect: \'allow\',\n conditions: [\n {\n attribute: \'workflows.primary.task_name\',\n operation: \'equals\',\n values: [\'Qualification\']\n }\n ],\n dependencies: [\n {\n action: \'entity-read\',\n resource: \'entity:123:contact:*\',\n effect: \'allow\',\n conditions: [\n {\n attribute: \'workflows.primary.task_name\',\n operation: \'equals\',\n values: [\'Qualification\']\n }\n ]\n }\n ]\n }\n ]\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "123:partner_admin",\n "slug": "partner_admin",\n "name": "Partner Administrator",\n "type": "share_role",\n "grants": [\n {\n "action": "entity-read",\n "resource": "entity:123:contact:*",\n "effect": "allow",\n "conditions": [\n {\n "attribute": "workflows.primary.task_name",\n "operation": "equals",\n "values": ["Qualification"]\n }\n ]\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `updatePartnerRole`\n\nUpdates an existing role in a partner organization.\n\n`PUT /v2/partners/{orgId}/roles/{roleId}`\n\n```ts\nconst { data } = await client.updatePartnerRole(\n {\n orgId: \'example\',\n roleId: \'example\',\n },\n {\n grants: [\n {\n action: \'entity-read\',\n resource: \'entity:123:contact:*\',\n effect: \'allow\',\n conditions: [\n {\n attribute: \'workflows.primary.task_name\',\n operation: \'equals\',\n values: [\'Qualification\']\n }\n ],\n dependencies: [\n {\n action: \'entity-read\',\n resource: \'entity:123:contact:*\',\n effect: \'allow\',\n conditions: [\n {\n attribute: \'workflows.primary.task_name\',\n operation: \'equals\',\n values: [\'Qualification\']\n }\n ]\n }\n ]\n }\n ],\n id: \'123:owner\',\n name: \'Owner\',\n slug: \'owner\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "123:partner_admin",\n "slug": "partner_admin",\n "name": "Partner Administrator",\n "type": "share_role",\n "grants": [\n {\n "action": "entity-read",\n "resource": "entity:123:contact:*",\n "effect": "allow",\n "conditions": [\n {\n "attribute": "workflows.primary.task_name",\n "operation": "equals",\n "values": ["Qualification"]\n }\n ]\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `deletePartnerRole`\n\nDelete a role from a partner organization\n\n`DELETE /v2/partners/{orgId}/roles/{roleId}`\n\n```ts\nconst { data } = await client.deletePartnerRole({\n orgId: \'example\',\n roleId: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "123:partner_admin",\n "slug": "partner_admin",\n "name": "Partner Administrator",\n "type": "share_role",\n "grants": [\n {\n "action": "entity-read",\n "resource": "entity:123:contact:*",\n "effect": "allow",\n "conditions": [\n {\n "attribute": "workflows.primary.task_name",\n "operation": "equals",\n "values": ["Qualification"]\n }\n ]\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `assignPartnerUserRoles`\n\nAssigns one or more roles to a user in a partner organization.\n\n`POST /v2/partners/{orgId}/users/{userId}/roles`\n\n```ts\nconst { data } = await client.assignPartnerUserRoles(\n {\n orgId: \'example\',\n userId: \'example\',\n },\n {\n roleIds: [\'123:partner_admin\', \'123:partner_viewer\']\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "results": [\n {\n "roleId": "string",\n "success": true,\n "data": {},\n "error": {}\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `unassignPartnerUserRoles`\n\nRemoves one or more roles from a user in a partner organization.\n\n`DELETE /v2/partners/{orgId}/users/{userId}/roles`\n\n```ts\nconst { data } = await client.unassignPartnerUserRoles(\n {\n orgId: \'example\',\n userId: \'example\',\n },\n {\n roleIds: [\'123:partner_admin\', \'123:partner_viewer\']\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "results": [\n {\n "roleId": "string",\n "success": true,\n "data": {},\n "error": {}\n }\n ]\n}\n```\n\n</details>\n\n---\n\n## Schemas\n\n### `InviteToken`\n\nA secure token used for partner invitation and activation. Sent via email to the invited partner.\n\n```ts\ntype InviteToken = string\n```\n\n### `Partner`\n\nRepresents a partner organization in the partner directory.\n\nPartners go through a lifecycle from invitation to active collaboration:\n- **Pending**: Initial state when partner record is created\n- **Invited**: Invitation email has been sent to the partner\n- **Request**: Partner has requested to join \n\n```ts\ntype Partner = {\n id?: string\n organization_id?: string\n created_at?: string // date-time\n description?: string\n company_name?: string\n invitation_token?: string\n invitation_email?: string // email\n email?: string // email\n owner_email?: string // email\n signed_up_email?: string // email\n partner_org_id?: string\n status?: "Pending" | "Request" | "Deleted" | "Invited" | "Rejected"\n}\n```\n\n### `PartnerId`\n\nUnique identifier for a partner record (UUID format)\n\n```ts\ntype PartnerId = string\n```\n\n### `OrganizationId`\n\nUnique identifier for an organization in the epilot platform\n\n```ts\ntype OrganizationId = string\n```\n\n### `ActivatePartnerPayload`\n\nPayload for activating a partner account using an invitation token\n\n```ts\ntype ActivatePartnerPayload = {\n company_name?: string\n signed_up_email: string // email\n organization_id: string\n}\n```\n\n### `PartnerInvitationPayload`\n\nConfiguration options for sending a partner invitation\n\n```ts\ntype PartnerInvitationPayload = {\n language?: "en" | "de"\n}\n```\n\n### `Assignable`\n\nA user, organization, or group that can be assigned to tasks, workflows, or entities.\nThe `type` field discriminates between different assignable types.\n\n\n```ts\ntype Assignable = {\n type: "user"\n display_name: string\n image_uri?: {\n original: string // uri\n thumbnail_32?: string // uri\n }\n org_id: string\n created_at?: string // date-time\n activated_at?: string // date-time\n status?: "Active" | "Pending" | "Deactivated" | "Deleted"\n user_id?: string\n email?: string // email\n} | {\n type: "partner_user"\n display_name: string\n image_uri?: {\n original: string // uri\n thumbnail_32?: string // uri\n }\n org_id: string\n created_at?: string // date-time\n activated_at?: string // date-time\n status?: "Active" | "Pending" | "Deactivated" | "Deleted"\n partner_id?: string\n user_id?: string\n email?: string // email\n} | {\n type: "partner_organization"\n display_name: string\n image_uri?: {\n original: string // uri\n thumbnail_32?: string // uri\n }\n org_id: string\n created_at?: string // date-time\n activated_at?: string // date-time\n status?: "Active" | "Pending" | "Deactivated" | "Deleted"\n partner_id: string\n email?: string // email\n geolocations?: Array<{\n address?: {\n street?: { ... }\n street_number?: { ... }\n city?: { ... }\n postal_code?: { ... }\n country?: { ... }\n }\n lat: number\n lng: number\n addressLabel?: string\n relevance?: number\n }>\n phone?: string\n activity_radius?: number\n} | {\n type: "ecp"\n display_name: string\n image_uri?: {\n original: string // uri\n thumbnail_32?: string // uri\n }\n org_id: string\n created_at?: string // date-time\n activated_at?: string // date-time\n status?: "Active" | "Pending" | "Deactivated" | "Deleted"\n user_id: string\n email?: string // email\n} | {\n type: "group"\n display_name: string\n image_uri?: {\n original: string // uri\n thumbnail_32?: string // uri\n }\n org_id: string\n created_at?: string // date-time\n activated_at?: string // date-time\n status?: "Active" | "Pending" | "Deactivated" | "Deleted"\n group_id?: string\n}\n```\n\n### `BaseAssignable`\n\nCommon properties shared by all assignable types\n\n```ts\ntype BaseAssignable = {\n type: string\n display_name: string\n image_uri?: {\n original: string // uri\n thumbnail_32?: string // uri\n }\n org_id: string\n created_at?: string // date-time\n activated_at?: string // date-time\n status?: "Active" | "Pending" | "Deactivated" | "Deleted"\n}\n```\n\n### `AssignableUser`\n\nA user within the caller\'s organization that can be assigned to tasks or entities\n\n```ts\ntype AssignableUser = {\n type: "user"\n display_name: string\n image_uri?: {\n original: string // uri\n thumbnail_32?: string // uri\n }\n org_id: string\n created_at?: string // date-time\n activated_at?: string // date-time\n status?: "Active" | "Pending" | "Deactivated" | "Deleted"\n user_id?: string\n email?: string // email\n}\n```\n\n### `AssignablePartnerUser`\n\nA user from a partner organization that can be assigned to shared tasks or entities\n\n```ts\ntype AssignablePartnerUser = {\n type: "partner_user"\n display_name: string\n image_uri?: {\n original: string // uri\n thumbnail_32?: string // uri\n }\n org_id: string\n created_at?: string // date-time\n activated_at?: string // date-time\n status?: "Active" | "Pending" | "Deactivated" | "Deleted"\n partner_id?: string\n user_id?: string\n email?: string // email\n}\n```\n\n### `AssignableGroup`\n\nA user group that can be assigned to tasks or entities. All members of the group will be notified/assigned.\n\n```ts\ntype AssignableGroup = {\n type: "group"\n display_name: string\n image_uri?: {\n original: string // uri\n thumbnail_32?: string // uri\n }\n org_id: string\n created_at?: string // date-time\n activated_at?: string // date-time\n status?: "Active" | "Pending" | "Deactivated" | "Deleted"\n group_id?: string\n}\n```\n\n### `AssignableOrganization`\n\nA partner organization that can be assigned to tasks or entities at the organization level.\nUseful when you want to assign work to a partner company rather than a specific individual.\n\n\n```ts\ntype AssignableOrganization = {\n type: "partner_organization"\n display_name: string\n image_uri?: {\n original: string // uri\n thumbnail_32?: string // uri\n }\n org_id: string\n created_at?: string // date-time\n activated_at?: string // date-time\n status?: "Active" | "Pending" | "Deactivated" | "Deleted"\n partner_id: string\n email?: string // email\n geolocations?: Array<{\n address?: {\n street?: { ... }\n street_number?: { ... }\n city?: { ... }\n postal_code?: { ... }\n country?: { ... }\n }\n lat: number\n lng: number\n addressLabel?: string\n relevance?: number\n }>\n phone?: string\n activity_radius?: number\n}\n```\n\n### `AssignableEcpPlaceholder`\n\nAn End Customer Portal (ECP) user that can be assigned to tasks or entities.\nThese are external users who access the system through the customer portal.\n\n\n```ts\ntype AssignableEcpPlaceholder = {\n type: "ecp"\n display_name: string\n image_uri?: {\n original: string // uri\n thumbnail_32?: string // uri\n }\n org_id: string\n created_at?: string // date-time\n activated_at?: string // date-time\n status?: "Active" | "Pending" | "Deactivated" | "Deleted"\n user_id: string\n email?: string // email\n}\n```\n\n### `SearchGeolocation`\n\nRequest payload for geocoding an address to coordinates\n\n```ts\ntype SearchGeolocation = {\n address: string\n}\n```\n\n### `Geolocation`\n\nGeographic coordinates with optional metadata\n\n```ts\ntype Geolocation = {\n lat: number\n lng: number\n addressLabel?: string\n relevance?: number\n}\n```\n\n### `Address`\n\nStructured postal address\n\n```ts\ntype Address = {\n street?: string\n street_number?: string\n city?: string\n postal_code?: string\n country?: string\n}\n```\n\n### `AddressGeolocation`\n\nCombined address and geographic coordinates for a location\n\n```ts\ntype AddressGeolocation = {\n address?: {\n street?: string\n street_number?: string\n city?: string\n postal_code?: string\n country?: string\n }\n lat: number\n lng: number\n addressLabel?: string\n relevance?: number\n}\n```\n\n### `PartnerUser`\n\nA user within a partner organization, including their assigned roles\n\n```ts\ntype PartnerUser = {\n id: string\n name?: string\n email: string // email\n status: string\n image?: {\n original?: string // uri\n thumbnail_32?: string // uri\n }\n roles: Array<{\n id: string\n slug: string\n name: string\n }>\n}\n```\n\n### `CreatePartnerUserPayload`\n\nRequest payload for creating a new user in a partner organization\n\n```ts\ntype CreatePartnerUserPayload = {\n email: string // email\n language?: "en" | "de"\n roles?: string[]\n}\n```\n\n### `CreatePartnerRolePayload`\n\nRequest payload for creating a new role in a partner organization\n\n```ts\ntype CreatePartnerRolePayload = {\n name: string\n slug: string\n grants: Array<{\n action: string\n resource?: string\n effect?: "allow" | "deny"\n conditions?: object[]\n dependencies?: Array<{\n action: { ... }\n resource?: { ... }\n effect?: { ... }\n conditions?: { ... }\n }>\n }>\n}\n```\n\n### `UpdatePartnerRolePayload`\n\nRequest payload for updating an existing role in a partner organization\n\n```ts\ntype UpdatePartnerRolePayload = {\n grants: Array<{\n action: string\n resource?: string\n effect?: "allow" | "deny"\n conditions?: object[]\n }>\n id?: string\n name: string\n slug: string\n}\n```\n\n### `Grant`\n\nA permission grant that allows or denies a specific action on a resource.\n\nGrants are the building blocks of roles and define what users can do within the system.\n\n\n```ts\ntype Grant = {\n action: string\n resource?: string\n effect?: "allow" | "deny"\n conditions?: object[]\n}\n```\n\n### `GrantWithDependencies`\n\nA grant with optional dependent grants that are automatically included when this grant is assigned\n\n```ts\ntype GrantWithDependencies = {\n action: string\n resource?: string\n effect?: "allow" | "deny"\n conditions?: object[]\n dependencies?: Array<{\n action: string\n resource?: string\n effect?: "allow" | "deny"\n conditions?: object[]\n }>\n}\n```\n\n### `GrantCondition`\n\nAn additional condition that must be met for a grant to apply.\nConditions allow fine-grained control over when permissions are active.\n\n\n```ts\ntype GrantCondition = object\n```\n\n### `EqualsCondition`\n\nA condition that checks if an attribute equals one of the specified values.\nThe grant only applies when the condition is satisfied.\n\n\n```ts\ntype EqualsCondition = {\n attribute: string\n operation: "equals"\n values: string[]\n}\n```\n\n### `RoleId`\n\nUnique identifier for a role, combining organization ID and role slug.\nFormat: `<organization_id>`:`<slug>`\n\n\n```ts\ntype RoleId = string\n```\n\n### `BaseRoleForCreate`\n\nBase schema for creating or updating a role\n\n```ts\ntype BaseRoleForCreate = {\n id?: string\n name: string\n slug: string\n grants: Array<{\n action: string\n resource?: string\n effect?: "allow" | "deny"\n conditions?: object[]\n }>\n}\n```\n\n### `PartnerRole`\n\nA role definition for users in a partner organization\n\n```ts\ntype PartnerRole = {\n id: string\n slug: string\n name: string\n type?: string\n grants: Array<{\n action: string\n resource?: string\n effect?: "allow" | "deny"\n conditions?: object[]\n }>\n}\n```\n\n### `AssignRolesPayload`\n\nRequest payload for assigning or unassigning roles to/from a user\n\n```ts\ntype AssignRolesPayload = {\n roleIds: string[]\n}\n```\n\n### `User`\n\nA user account in the epilot platform\n\n```ts\ntype User = {\n id?: string\n email?: string // email\n display_name?: string\n status?: "Active" | "Pending" | "Deactivated"\n}\n```\n';
5
+
6
+
7
+ exports.default = partner_directory_default;
@@ -1,5 +1,5 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkF5JVW2D5cjs = require('./chunk-F5JVW2D5.cjs');
3
+ var _chunkBFUNXZRXcjs = require('./chunk-BFUNXZRX.cjs');
4
4
  require('./chunk-NJK5F5TF.cjs');
5
- exports. default = _chunkF5JVW2D5cjs.require_partner_directory_runtime.call(void 0, );
5
+ exports. default = _chunkBFUNXZRXcjs.require_partner_directory_runtime.call(void 0, );
@@ -1,5 +1,5 @@
1
1
  import {
2
2
  require_partner_directory_runtime
3
- } from "./chunk-AUH6NP6Y.js";
3
+ } from "./chunk-I2XRA5AM.js";
4
4
  import "./chunk-YPSWSI3M.js";
5
5
  export default require_partner_directory_runtime();