@epilot/sdk 2.20.15 → 2.20.17

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/access-token.json +0 -15
  2. package/definitions/file.json +3 -2
  3. package/definitions/pricing.json +77 -9
  4. package/dist/access-token-ADVHFJ63.js +7 -0
  5. package/dist/access-token-CQMYWZIG.cjs +7 -0
  6. package/dist/{access-token.d-OiCg1gnT.d.cts → access-token.d-Yy-yrft_.d.cts} +1 -9
  7. package/dist/{access-token.d-OiCg1gnT.d.ts → access-token.d-Yy-yrft_.d.ts} +1 -9
  8. package/dist/apis/access-token.cjs +6 -6
  9. package/dist/apis/access-token.d.cts +2 -2
  10. package/dist/apis/access-token.d.ts +2 -2
  11. package/dist/apis/access-token.js +1 -1
  12. package/dist/apis/address-suggestions.cjs +6 -6
  13. package/dist/apis/address-suggestions.js +1 -1
  14. package/dist/apis/address.cjs +6 -6
  15. package/dist/apis/address.js +1 -1
  16. package/dist/apis/ai-agents.cjs +6 -6
  17. package/dist/apis/ai-agents.js +1 -1
  18. package/dist/apis/app.cjs +6 -6
  19. package/dist/apis/app.js +1 -1
  20. package/dist/apis/audit-logs.cjs +6 -6
  21. package/dist/apis/audit-logs.js +1 -1
  22. package/dist/apis/automation.cjs +6 -6
  23. package/dist/apis/automation.js +1 -1
  24. package/dist/apis/billing.cjs +6 -6
  25. package/dist/apis/billing.js +1 -1
  26. package/dist/apis/blueprint-manifest.cjs +6 -6
  27. package/dist/apis/blueprint-manifest.js +1 -1
  28. package/dist/apis/calendar.cjs +6 -6
  29. package/dist/apis/calendar.js +1 -1
  30. package/dist/apis/configuration-hub.cjs +6 -6
  31. package/dist/apis/configuration-hub.js +1 -1
  32. package/dist/apis/consent.cjs +6 -6
  33. package/dist/apis/consent.js +1 -1
  34. package/dist/apis/customer-portal.cjs +6 -6
  35. package/dist/apis/customer-portal.js +1 -1
  36. package/dist/apis/dashboard.cjs +6 -6
  37. package/dist/apis/dashboard.js +1 -1
  38. package/dist/apis/data-governance.cjs +6 -6
  39. package/dist/apis/data-governance.js +1 -1
  40. package/dist/apis/deduplication.cjs +6 -6
  41. package/dist/apis/deduplication.js +1 -1
  42. package/dist/apis/design.cjs +6 -6
  43. package/dist/apis/design.js +1 -1
  44. package/dist/apis/document.cjs +6 -6
  45. package/dist/apis/document.js +1 -1
  46. package/dist/apis/email-settings.cjs +6 -6
  47. package/dist/apis/email-settings.js +1 -1
  48. package/dist/apis/email-template.cjs +6 -6
  49. package/dist/apis/email-template.js +1 -1
  50. package/dist/apis/entity-mapping.cjs +6 -6
  51. package/dist/apis/entity-mapping.js +1 -1
  52. package/dist/apis/entity.cjs +6 -6
  53. package/dist/apis/entity.js +1 -1
  54. package/dist/apis/environments.cjs +6 -6
  55. package/dist/apis/environments.js +1 -1
  56. package/dist/apis/event-catalog.cjs +6 -6
  57. package/dist/apis/event-catalog.js +1 -1
  58. package/dist/apis/file.cjs +6 -6
  59. package/dist/apis/file.js +1 -1
  60. package/dist/apis/iban.cjs +6 -6
  61. package/dist/apis/iban.js +1 -1
  62. package/dist/apis/integration-toolkit.cjs +6 -6
  63. package/dist/apis/integration-toolkit.js +1 -1
  64. package/dist/apis/journey.cjs +6 -6
  65. package/dist/apis/journey.js +1 -1
  66. package/dist/apis/kanban.cjs +6 -6
  67. package/dist/apis/kanban.js +1 -1
  68. package/dist/apis/message.cjs +6 -6
  69. package/dist/apis/message.js +1 -1
  70. package/dist/apis/metering.cjs +6 -6
  71. package/dist/apis/metering.js +1 -1
  72. package/dist/apis/notes.cjs +6 -6
  73. package/dist/apis/notes.js +1 -1
  74. package/dist/apis/notification.cjs +6 -6
  75. package/dist/apis/notification.js +1 -1
  76. package/dist/apis/organization.cjs +6 -6
  77. package/dist/apis/organization.js +1 -1
  78. package/dist/apis/partner-directory.cjs +6 -6
  79. package/dist/apis/partner-directory.js +1 -1
  80. package/dist/apis/permissions.cjs +6 -6
  81. package/dist/apis/permissions.js +1 -1
  82. package/dist/apis/pricing-tier.cjs +6 -6
  83. package/dist/apis/pricing-tier.js +1 -1
  84. package/dist/apis/pricing.cjs +6 -6
  85. package/dist/apis/pricing.d.cts +2 -2
  86. package/dist/apis/pricing.d.ts +2 -2
  87. package/dist/apis/pricing.js +1 -1
  88. package/dist/apis/purpose.cjs +6 -6
  89. package/dist/apis/purpose.js +1 -1
  90. package/dist/apis/query.cjs +6 -6
  91. package/dist/apis/query.js +1 -1
  92. package/dist/apis/sandbox.cjs +6 -6
  93. package/dist/apis/sandbox.js +1 -1
  94. package/dist/apis/sharing.cjs +6 -6
  95. package/dist/apis/sharing.js +1 -1
  96. package/dist/apis/snapshot.cjs +6 -6
  97. package/dist/apis/snapshot.js +1 -1
  98. package/dist/apis/submission.cjs +6 -6
  99. package/dist/apis/submission.js +1 -1
  100. package/dist/apis/target.cjs +6 -6
  101. package/dist/apis/target.js +1 -1
  102. package/dist/apis/targeting.cjs +6 -6
  103. package/dist/apis/targeting.js +1 -1
  104. package/dist/apis/template-variables.cjs +6 -6
  105. package/dist/apis/template-variables.js +1 -1
  106. package/dist/apis/user.cjs +6 -6
  107. package/dist/apis/user.js +1 -1
  108. package/dist/apis/validation-rules.cjs +6 -6
  109. package/dist/apis/validation-rules.js +1 -1
  110. package/dist/apis/webhooks.cjs +6 -6
  111. package/dist/apis/webhooks.js +1 -1
  112. package/dist/apis/workflow-definition.cjs +6 -6
  113. package/dist/apis/workflow-definition.js +1 -1
  114. package/dist/apis/workflow.cjs +6 -6
  115. package/dist/apis/workflow.js +1 -1
  116. package/dist/{chunk-YFFICVOA.js → chunk-HQJ5AG4I.js} +3 -3
  117. package/dist/{chunk-FXIH3QBV.cjs → chunk-OZHARSW5.cjs} +3 -3
  118. package/dist/{file-LFOTXMRJ.cjs → file-2KT6MMMG.cjs} +1 -1
  119. package/dist/{file-ND2JH5EM.js → file-N3SGGI6E.js} +1 -1
  120. package/dist/index.cjs +8 -8
  121. package/dist/index.d.cts +2 -2
  122. package/dist/index.d.ts +2 -2
  123. package/dist/index.js +1 -1
  124. package/dist/{pricing-PFTFDGZ3.cjs → pricing-WMGQHFJV.cjs} +1 -1
  125. package/dist/{pricing-YZHONV3M.js → pricing-WNSMDD5D.js} +1 -1
  126. package/dist/{pricing.d-CvcYBm8A.d.cts → pricing.d-CuF7KcXt.d.cts} +80 -67
  127. package/dist/{pricing.d-CvcYBm8A.d.ts → pricing.d-CuF7KcXt.d.ts} +80 -67
  128. package/docs/access-token.md +0 -15
  129. package/docs/file.md +1 -1
  130. package/docs/pricing.md +2 -2
  131. package/package.json +1 -1
  132. package/dist/access-token-E2XEMQMG.cjs +0 -7
  133. package/dist/access-token-IBKEXWNA.js +0 -7
@@ -48,7 +48,6 @@ const { data } = await accessTokenClient.createAccessToken(...)
48
48
  - [`PortalId`](#portalid)
49
49
  - [`PortalUserId`](#portaluserid)
50
50
  - [`ContactId`](#contactid)
51
- - [`PortalOrigin`](#portalorigin)
52
51
  - [`AllowedOperations`](#allowedoperations)
53
52
  - [`TokenParameters`](#tokenparameters)
54
53
  - [`ExpiresIn`](#expiresin)
@@ -99,7 +98,6 @@ const { data } = await client.createAccessToken(
99
98
  "portal_id": "string",
100
99
  "portal_user_id": "string",
101
100
  "contact_id": "5da0a718-c822-403d-9f5d-20d4584e0528",
102
- "origin": "END_CUSTOMER_PORTAL",
103
101
  "allowed_operations": ["getContact", "getContracts"],
104
102
  "assignments": ["123:owner"],
105
103
  "read_only": true,
@@ -139,7 +137,6 @@ const { data } = await client.listAccessTokens({
139
137
  "portal_id": "string",
140
138
  "portal_user_id": "string",
141
139
  "contact_id": "5da0a718-c822-403d-9f5d-20d4584e0528",
142
- "origin": "END_CUSTOMER_PORTAL",
143
140
  "allowed_operations": ["getContact", "getContracts"],
144
141
  "assignments": ["123:owner"],
145
142
  "read_only": true,
@@ -179,7 +176,6 @@ const { data } = await client.revokeAccessToken({
179
176
  "portal_id": "string",
180
177
  "portal_user_id": "string",
181
178
  "contact_id": "5da0a718-c822-403d-9f5d-20d4584e0528",
182
- "origin": "END_CUSTOMER_PORTAL",
183
179
  "allowed_operations": ["getContact", "getContracts"],
184
180
  "assignments": ["123:owner"],
185
181
  "read_only": true,
@@ -481,14 +477,6 @@ Contact entity ID for access token type "contact_identification"
481
477
  type ContactId = string
482
478
  ```
483
479
 
484
- ### `PortalOrigin`
485
-
486
- Portal origin the token assumes, so the bearer is permission-masked the same way the corresponding portal role is.
487
-
488
- ```ts
489
- type PortalOrigin = "END_CUSTOMER_PORTAL" | "INSTALLER_PORTAL"
490
- ```
491
-
492
480
  ### `AllowedOperations`
493
481
 
494
482
  openapi operationIds the token may call. Enforced by the API that consumes the token, which must additionally deny any operation not on this list. Baked into the token at issue time so widening the consumer's own allowlist later cannot retroactively widen a token that is already in circulation.
@@ -541,7 +529,6 @@ type TokenParameters = {
541
529
  portal_id: string
542
530
  contact_id: string
543
531
  surface_id: string
544
- origin?: "END_CUSTOMER_PORTAL" | "INSTALLER_PORTAL"
545
532
  allowed_operations: string[]
546
533
  expires_in: number
547
534
  email?: string
@@ -652,7 +639,6 @@ type ContactIdentificationTokenParameters = {
652
639
  portal_id: string
653
640
  contact_id: string
654
641
  surface_id: string
655
- origin?: "END_CUSTOMER_PORTAL" | "INSTALLER_PORTAL"
656
642
  allowed_operations: string[]
657
643
  expires_in: number
658
644
  email?: string
@@ -671,7 +657,6 @@ type AccessTokenItem = {
671
657
  portal_id?: string
672
658
  portal_user_id?: string
673
659
  contact_id?: string
674
- origin?: "END_CUSTOMER_PORTAL" | "INSTALLER_PORTAL"
675
660
  allowed_operations?: string[]
676
661
  assignments?: string[]
677
662
  read_only?: boolean
package/docs/file.md CHANGED
@@ -1525,7 +1525,7 @@ type FileValidationFileReference = {
1525
1525
  ```ts
1526
1526
  type FileValidation = {
1527
1527
  id: string
1528
- status: "completed" | "pending" | "failed"
1528
+ status: "completed" | "pending" | "failed" | "skipped"
1529
1529
  file: {
1530
1530
  entity_id?: string | string // uuid
1531
1531
  s3ref?: unknown
package/docs/pricing.md CHANGED
@@ -3115,8 +3115,8 @@ type PinnedConditions = Record<string, unknown>
3115
3115
  The attribute values this version overrides on the base entity, keyed by attribute name.
3116
3116
 
3117
3117
  Only attributes currently declaring `overridable_attribute` are applied. Metadata fields
3118
- (anything underscore-prefixed), readonly attributes, hidden attributes, computed attributes
3119
- and non-overridable attribute
3118
+ (anything underscore-prefixed), readonly attributes, hidden attributes, computed attributes,
3119
+ attributes of a type no vari
3120
3120
 
3121
3121
  ```ts
3122
3122
  type VariantValues = Record<string, unknown>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@epilot/sdk",
3
- "version": "2.20.15",
3
+ "version": "2.20.17",
4
4
  "description": "JavaScript/TypeScript SDK for epilot APIs",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
@@ -1,7 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('./chunk-NJK5F5TF.cjs');
2
-
3
- // src/docs/access-token.json
4
- var access_token_default = '# Access Token API\n\n- **Base URL:** `https://access-token.sls.epilot.io`\n- **Full API Docs:** [https://docs.epilot.io/api/access-token](https://docs.epilot.io/api/access-token)\n\n## Usage\n\n```ts\nimport { epilot } from \'@epilot/sdk\'\n\nepilot.authorize(() => \'<token>\')\nconst { data } = await epilot.accessToken.createAccessToken(...)\n```\n\n### Tree-shakeable import\n\n```ts\nimport { getClient, authorize } from \'@epilot/sdk/access-token\'\n\nconst accessTokenClient = getClient()\nauthorize(accessTokenClient, () => \'<token>\')\nconst { data } = await accessTokenClient.createAccessToken(...)\n```\n\n## Operations\n\n**Access Tokens**\n- [`createAccessToken`](#createaccesstoken)\n- [`listAccessTokens`](#listaccesstokens)\n- [`revokeAccessToken`](#revokeaccesstoken)\n\n**Public**\n- [`getAccessTokenJwks`](#getaccesstokenjwks)\n- [`getAccessTokenOIDC`](#getaccesstokenoidc)\n- [`getPublicTokenJwks`](#getpublictokenjwks)\n- [`getPortalPreviewTokenJwks`](#getportalpreviewtokenjwks)\n- [`getPublicTokenOIDC`](#getpublictokenoidc)\n- [`getPortalPreviewTokenOIDC`](#getportalpreviewtokenoidc)\n- [`getContactIdentificationTokenJwks`](#getcontactidentificationtokenjwks)\n- [`getContactIdentificationTokenOIDC`](#getcontactidentificationtokenoidc)\n\n**Schemas**\n- [`AccessToken`](#accesstoken)\n- [`AccessTokenId`](#accesstokenid)\n- [`AccessTokenName`](#accesstokenname)\n- [`AccessTokenType`](#accesstokentype)\n- [`AccessTokenJourneyId`](#accesstokenjourneyid)\n- [`PortalId`](#portalid)\n- [`PortalUserId`](#portaluserid)\n- [`ContactId`](#contactid)\n- [`PortalOrigin`](#portalorigin)\n- [`AllowedOperations`](#allowedoperations)\n- [`TokenParameters`](#tokenparameters)\n- [`ExpiresIn`](#expiresin)\n- [`ReadOnly`](#readonly)\n- [`Anonymize`](#anonymize)\n- [`AccessTokenParameters`](#accesstokenparameters)\n- [`JourneyTokenParameters`](#journeytokenparameters)\n- [`PortalTokenParameters`](#portaltokenparameters)\n- [`AssumeTokenParameters`](#assumetokenparameters)\n- [`AppTokenParameters`](#apptokenparameters)\n- [`PortalPreviewTokenParameters`](#portalpreviewtokenparameters)\n- [`ContactIdentificationTokenParameters`](#contactidentificationtokenparameters)\n- [`AccessTokenItem`](#accesstokenitem)\n- [`RoleId`](#roleid)\n- [`Assignments`](#assignments)\n\n### `createAccessToken`\n\n**Access Token type: `API`** (default if not specified):\n\n`POST /v1/access-tokens`\n\n```ts\nconst { data } = await client.createAccessToken(\n null,\n {\n name: \'Postman Access Token\',\n token_type: \'api\',\n assignments: [\'123:owner\'],\n expires_in: 3600,\n read_only: true,\n anonymize: true\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6Ikp...",\n "id": "api_5ZugdRXasLfWBypHi93Fk",\n "created_at": "1970-01-01T00:00:00.000Z",\n "name": "Postman Access Token",\n "token_type": "api",\n "journey_id": "string",\n "portal_id": "string",\n "portal_user_id": "string",\n "contact_id": "5da0a718-c822-403d-9f5d-20d4584e0528",\n "origin": "END_CUSTOMER_PORTAL",\n "allowed_operations": ["getContact", "getContracts"],\n "assignments": ["123:owner"],\n "read_only": true,\n "anonymize": true,\n "last_used": "2026-02-24",\n "expires_at": "2026-03-01T12:00:00.000Z"\n}\n```\n\n</details>\n\n---\n\n### `listAccessTokens`\n\nLists all Access Tokens for current user (by default excludes system generated tokens)\n\n`GET /v1/access-tokens`\n\n```ts\nconst { data } = await client.listAccessTokens({\n token_type: [\'...\'],\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "id": "api_5ZugdRXasLfWBypHi93Fk",\n "created_at": "1970-01-01T00:00:00.000Z",\n "name": "Postman Access Token",\n "token_type": "api",\n "journey_id": "string",\n "portal_id": "string",\n "portal_user_id": "string",\n "contact_id": "5da0a718-c822-403d-9f5d-20d4584e0528",\n "origin": "END_CUSTOMER_PORTAL",\n "allowed_operations": ["getContact", "getContracts"],\n "assignments": ["123:owner"],\n "read_only": true,\n "anonymize": true,\n "last_used": "2026-02-24",\n "expires_at": "2026-03-01T12:00:00.000Z"\n }\n]\n```\n\n</details>\n\n---\n\n### `revokeAccessToken`\n\nRevokes an Access Token so it can\'t be used anymore.\n\n`DELETE /v1/access-tokens/{id}`\n\n```ts\nconst { data } = await client.revokeAccessToken({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "api_5ZugdRXasLfWBypHi93Fk",\n "created_at": "1970-01-01T00:00:00.000Z",\n "name": "Postman Access Token",\n "token_type": "api",\n "journey_id": "string",\n "portal_id": "string",\n "portal_user_id": "string",\n "contact_id": "5da0a718-c822-403d-9f5d-20d4584e0528",\n "origin": "END_CUSTOMER_PORTAL",\n "allowed_operations": ["getContact", "getContracts"],\n "assignments": ["123:owner"],\n "read_only": true,\n "anonymize": true,\n "last_used": "2026-02-24",\n "expires_at": "2026-03-01T12:00:00.000Z"\n}\n```\n\n</details>\n\n---\n\n### `getAccessTokenJwks`\n\nGet jwks public key set to verify access tokens generated by this API\n\n`GET /v1/access-tokens/.well-known/jwks.json`\n\n```ts\nconst { data } = await client.getAccessTokenJwks()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "keys": [\n {\n "alg": "RS256",\n "e": "AQAB",\n "kid": "tXWU5mPMbRPczpbQwi6vbhLF4GgF3wlMDSyqo7pfeiw=",\n "kty": "RSA",\n "n": "h_QDoCjZ8W_trtYXaP7_S22wf5r5Wd9XBLED78oT44bJjQXn8ddcFV8Hik65_4IYXVX_hTTU4zpxe3H8vx2j7-Zz3O59mYMp5S0MzODNEdf5Y_2o19eis0brmAJniixsNlQ9LlYkdrVamrgaxHu3ZpP_99zkfFybYeuYoQNzb3PyrT8xVnz_USs_nlFMHpGUxvvz7gfKPqxcLvgLJr4cwI9yzaSY9CD4qW181QVcnL_WzpQ8xx6AuhhHZQ1l_3GG4InTk8ahE7U2ZHVu8RrX6d01pMgc3piEcet9RgFLnhbTg3YIiKGoAbN42wJn_x3lgIAC42T9mbmTsHyUdS6nUQ",\n "use": "sig"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `getAccessTokenOIDC`\n\nOpenID Connect configuration for Access Token API as identity provider\n\n`GET /v1/access-tokens/.well-known/openid-configuration`\n\n```ts\nconst { data } = await client.getAccessTokenOIDC()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "issuer": "https://access-token.sls.epilot.io/v1/access-tokens",\n "jwks_uri": "https://access-token.sls.epilot.io/v1/access-tokens/.well-known/jwks.json"\n}\n```\n\n</details>\n\n---\n\n### `getPublicTokenJwks`\n\nGet jwks public key set to verify public tokens generated by this API\n\n`GET /v1/access-tokens/public/.well-known/jwks.json`\n\n```ts\nconst { data } = await client.getPublicTokenJwks()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "keys": [\n {\n "alg": "RS256",\n "e": "AQAB",\n "kid": "tXWU5mPMbRPczpbQwi6vbhLF4GgF3wlMDSyqo7pfeiw=",\n "kty": "RSA",\n "n": "h_QDoCjZ8W_trtYXaP7_S22wf5r5Wd9XBLED78oT44bJjQXn8ddcFV8Hik65_4IYXVX_hTTU4zpxe3H8vx2j7-Zz3O59mYMp5S0MzODNEdf5Y_2o19eis0brmAJniixsNlQ9LlYkdrVamrgaxHu3ZpP_99zkfFybYeuYoQNzb3PyrT8xVnz_USs_nlFMHpGUxvvz7gfKPqxcLvgLJr4cwI9yzaSY9CD4qW181QVcnL_WzpQ8xx6AuhhHZQ1l_3GG4InTk8ahE7U2ZHVu8RrX6d01pMgc3piEcet9RgFLnhbTg3YIiKGoAbN42wJn_x3lgIAC42T9mbmTsHyUdS6nUQ",\n "use": "sig"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `getPortalPreviewTokenJwks`\n\nGet jwks public key set to verify portal preview tokens generated by this API\n\n`GET /v1/access-tokens/portal-preview/.well-known/jwks.json`\n\n```ts\nconst { data } = await client.getPortalPreviewTokenJwks()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "keys": [\n {\n "alg": "RS256",\n "e": "AQAB",\n "kid": "tXWU5mPMbRPczpbQwi6vbhLF4GgF3wlMDSyqo7pfeiw=",\n "kty": "RSA",\n "n": "h_QDoCjZ8W_trtYXaP7_S22wf5r5Wd9XBLED78oT44bJjQXn8ddcFV8Hik65_4IYXVX_hTTU4zpxe3H8vx2j7-Zz3O59mYMp5S0MzODNEdf5Y_2o19eis0brmAJniixsNlQ9LlYkdrVamrgaxHu3ZpP_99zkfFybYeuYoQNzb3PyrT8xVnz_USs_nlFMHpGUxvvz7gfKPqxcLvgLJr4cwI9yzaSY9CD4qW181QVcnL_WzpQ8xx6AuhhHZQ1l_3GG4InTk8ahE7U2ZHVu8RrX6d01pMgc3piEcet9RgFLnhbTg3YIiKGoAbN42wJn_x3lgIAC42T9mbmTsHyUdS6nUQ",\n "use": "sig"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `getPublicTokenOIDC`\n\nOpenID Connect configuration for Access Token API a a public identity provider\n\n`GET /v1/access-tokens/public/.well-known/openid-configuration`\n\n```ts\nconst { data } = await client.getPublicTokenOIDC()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "issuer": "https://access-token.sls.epilot.io/v1/access-tokens",\n "jwks_uri": "https://access-token.sls.epilot.io/v1/access-tokens/.well-known/jwks.json"\n}\n```\n\n</details>\n\n---\n\n### `getPortalPreviewTokenOIDC`\n\nOpenID Connect configuration for Access Token API a a portal preview identity provider\n\n`GET /v1/access-tokens/portal-preview/.well-known/openid-configuration`\n\n```ts\nconst { data } = await client.getPortalPreviewTokenOIDC()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "issuer": "https://access-token.sls.epilot.io/v1/access-tokens/portal-preview",\n "jwks_uri": "https://access-token.sls.epilot.io/v1/access-tokens/portal-preview/.well-known/jwks.json"\n}\n```\n\n</details>\n\n---\n\n### `getContactIdentificationTokenJwks`\n\nGet jwks public key set to verify contact identification tokens generated by this API\n\n`GET /v1/access-tokens/contact-identification/.well-known/jwks.json`\n\n```ts\nconst { data } = await client.getContactIdentificationTokenJwks()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "keys": [\n {\n "alg": "RS256",\n "e": "AQAB",\n "kid": "tXWU5mPMbRPczpbQwi6vbhLF4GgF3wlMDSyqo7pfeiw=",\n "kty": "RSA",\n "n": "h_QDoCjZ8W_trtYXaP7_S22wf5r5Wd9XBLED78oT44bJjQXn8ddcFV8Hik65_4IYXVX_hTTU4zpxe3H8vx2j7-Zz3O59mYMp5S0MzODNEdf5Y_2o19eis0brmAJniixsNlQ9LlYkdrVamrgaxHu3ZpP_99zkfFybYeuYoQNzb3PyrT8xVnz_USs_nlFMHpGUxvvz7gfKPqxcLvgLJr4cwI9yzaSY9CD4qW181QVcnL_WzpQ8xx6AuhhHZQ1l_3GG4InTk8ahE7U2ZHVu8RrX6d01pMgc3piEcet9RgFLnhbTg3YIiKGoAbN42wJn_x3lgIAC42T9mbmTsHyUdS6nUQ",\n "use": "sig"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `getContactIdentificationTokenOIDC`\n\nOpenID Connect configuration for Access Token API as a contact identification identity provider\n\n`GET /v1/access-tokens/contact-identification/.well-known/openid-configuration`\n\n```ts\nconst { data } = await client.getContactIdentificationTokenOIDC()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "issuer": "https://access-token.sls.epilot.io/v1/access-tokens/contact-identification",\n "jwks_uri": "https://access-token.sls.epilot.io/v1/access-tokens/contact-identification/.well-known/jwks.json"\n}\n```\n\n</details>\n\n---\n\n## Schemas\n\n### `AccessToken`\n\nA JWT Access Token\n\n```ts\ntype AccessToken = string\n```\n\n### `AccessTokenId`\n\n```ts\ntype AccessTokenId = string\n```\n\n### `AccessTokenName`\n\nHuman readable name for access token\n\n```ts\ntype AccessTokenName = string\n```\n\n### `AccessTokenType`\n\nAccess token type\n\n```ts\ntype AccessTokenType = "api" | "journey" | "portal" | "assume" | "app" | "portal_preview" | "contact_identification"\n```\n\n### `AccessTokenJourneyId`\n\nJourney ID for access token type "journey"\n\n```ts\ntype AccessTokenJourneyId = string\n```\n\n### `PortalId`\n\nPortal ID for access token type "portal"\n\n```ts\ntype PortalId = string\n```\n\n### `PortalUserId`\n\nPortal User ID for access token type "portal_preview"\n\n```ts\ntype PortalUserId = string\n```\n\n### `ContactId`\n\nContact entity ID for access token type "contact_identification"\n\n```ts\ntype ContactId = string\n```\n\n### `PortalOrigin`\n\nPortal origin the token assumes, so the bearer is permission-masked the same way the corresponding portal role is.\n\n```ts\ntype PortalOrigin = "END_CUSTOMER_PORTAL" | "INSTALLER_PORTAL"\n```\n\n### `AllowedOperations`\n\nopenapi operationIds the token may call. Enforced by the API that consumes the token, which must additionally deny any operation not on this list. Baked into the token at issue time so widening the consumer\'s own allowlist later cannot retroactively widen a token that is already in circulation.\n\n```ts\ntype AllowedOperations = string[]\n```\n\n### `TokenParameters`\n\n```ts\ntype TokenParameters = {\n name: string\n token_type?: "api"\n assignments?: string[]\n expires_in?: number | string\n read_only?: boolean\n anonymize?: boolean\n} | {\n name: string\n token_type?: "journey"\n journey_id: string\n expires_in?: number | string\n} | {\n name: string\n token_type?: "portal"\n portal_id: string\n expires_in?: number | string\n} | {\n name: string\n token_type?: "assume"\n assignments?: string[]\n read_only?: boolean\n anonymize?: boolean\n} | {\n name: string\n token_type?: "app"\n assignments?: string[]\n expires_in?: number | string\n read_only?: boolean\n anonymize?: boolean\n} | {\n name: string\n token_type?: "portal_preview"\n portal_id: string\n portal_user_id: string\n} | {\n name: string\n token_type?: "contact_identification"\n portal_id: string\n contact_id: string\n surface_id: string\n origin?: "END_CUSTOMER_PORTAL" | "INSTALLER_PORTAL"\n allowed_operations: string[]\n expires_in: number\n email?: string\n}\n```\n\n### `ExpiresIn`\n\n```ts\ntype ExpiresIn = number | string\n```\n\n### `ReadOnly`\n\nWhen true, the issued token may only perform read-only actions. Any action guarded by permissions that is not read-only (i.e. not a view/export/download action) is denied, regardless of the roles the token carries.\n\n```ts\ntype ReadOnly = boolean\n```\n\n### `Anonymize`\n\nForces PII anonymization on all entity data returned to this token. Cannot be disabled by the token bearer. See entity-api anonymized responses.\n\n```ts\ntype Anonymize = boolean\n```\n\n### `AccessTokenParameters`\n\n```ts\ntype AccessTokenParameters = {\n name: string\n token_type?: "api"\n assignments?: string[]\n expires_in?: number | string\n read_only?: boolean\n anonymize?: boolean\n}\n```\n\n### `JourneyTokenParameters`\n\n```ts\ntype JourneyTokenParameters = {\n name: string\n token_type?: "journey"\n journey_id: string\n expires_in?: number | string\n}\n```\n\n### `PortalTokenParameters`\n\n```ts\ntype PortalTokenParameters = {\n name: string\n token_type?: "portal"\n portal_id: string\n expires_in?: number | string\n}\n```\n\n### `AssumeTokenParameters`\n\n```ts\ntype AssumeTokenParameters = {\n name: string\n token_type?: "assume"\n assignments?: string[]\n read_only?: boolean\n anonymize?: boolean\n}\n```\n\n### `AppTokenParameters`\n\n```ts\ntype AppTokenParameters = {\n name: string\n token_type?: "app"\n assignments?: string[]\n expires_in?: number | string\n read_only?: boolean\n anonymize?: boolean\n}\n```\n\n### `PortalPreviewTokenParameters`\n\n```ts\ntype PortalPreviewTokenParameters = {\n name: string\n token_type?: "portal_preview"\n portal_id: string\n portal_user_id: string\n}\n```\n\n### `ContactIdentificationTokenParameters`\n\nA token that acts as one contact, issued after that contact was identified by a portal\'s registration identifiers rather than by logging in. Distinct from portal_preview, which impersonates an existing portal user for a 360 operator: this kind belongs to no user, is minted for an unauthenticated cal\n\n```ts\ntype ContactIdentificationTokenParameters = {\n name: string\n token_type?: "contact_identification"\n portal_id: string\n contact_id: string\n surface_id: string\n origin?: "END_CUSTOMER_PORTAL" | "INSTALLER_PORTAL"\n allowed_operations: string[]\n expires_in: number\n email?: string\n}\n```\n\n### `AccessTokenItem`\n\n```ts\ntype AccessTokenItem = {\n id: string\n created_at: string // date-time\n name: string\n token_type?: "api" | "journey" | "portal" | "assume" | "app" | "portal_preview" | "contact_identification"\n journey_id?: string\n portal_id?: string\n portal_user_id?: string\n contact_id?: string\n origin?: "END_CUSTOMER_PORTAL" | "INSTALLER_PORTAL"\n allowed_operations?: string[]\n assignments?: string[]\n read_only?: boolean\n anonymize?: boolean\n last_used?: string // date\n expires_at?: string // date-time\n}\n```\n\n### `RoleId`\n\nFormat: `<organization_id>`:`<slug>`\n\n```ts\ntype RoleId = string\n```\n\n### `Assignments`\n\nList of role ids attached to an user\n\n```ts\ntype Assignments = string[]\n```\n';
5
-
6
-
7
- exports.default = access_token_default;
@@ -1,7 +0,0 @@
1
- import "./chunk-YPSWSI3M.js";
2
-
3
- // src/docs/access-token.json
4
- var access_token_default = '# Access Token API\n\n- **Base URL:** `https://access-token.sls.epilot.io`\n- **Full API Docs:** [https://docs.epilot.io/api/access-token](https://docs.epilot.io/api/access-token)\n\n## Usage\n\n```ts\nimport { epilot } from \'@epilot/sdk\'\n\nepilot.authorize(() => \'<token>\')\nconst { data } = await epilot.accessToken.createAccessToken(...)\n```\n\n### Tree-shakeable import\n\n```ts\nimport { getClient, authorize } from \'@epilot/sdk/access-token\'\n\nconst accessTokenClient = getClient()\nauthorize(accessTokenClient, () => \'<token>\')\nconst { data } = await accessTokenClient.createAccessToken(...)\n```\n\n## Operations\n\n**Access Tokens**\n- [`createAccessToken`](#createaccesstoken)\n- [`listAccessTokens`](#listaccesstokens)\n- [`revokeAccessToken`](#revokeaccesstoken)\n\n**Public**\n- [`getAccessTokenJwks`](#getaccesstokenjwks)\n- [`getAccessTokenOIDC`](#getaccesstokenoidc)\n- [`getPublicTokenJwks`](#getpublictokenjwks)\n- [`getPortalPreviewTokenJwks`](#getportalpreviewtokenjwks)\n- [`getPublicTokenOIDC`](#getpublictokenoidc)\n- [`getPortalPreviewTokenOIDC`](#getportalpreviewtokenoidc)\n- [`getContactIdentificationTokenJwks`](#getcontactidentificationtokenjwks)\n- [`getContactIdentificationTokenOIDC`](#getcontactidentificationtokenoidc)\n\n**Schemas**\n- [`AccessToken`](#accesstoken)\n- [`AccessTokenId`](#accesstokenid)\n- [`AccessTokenName`](#accesstokenname)\n- [`AccessTokenType`](#accesstokentype)\n- [`AccessTokenJourneyId`](#accesstokenjourneyid)\n- [`PortalId`](#portalid)\n- [`PortalUserId`](#portaluserid)\n- [`ContactId`](#contactid)\n- [`PortalOrigin`](#portalorigin)\n- [`AllowedOperations`](#allowedoperations)\n- [`TokenParameters`](#tokenparameters)\n- [`ExpiresIn`](#expiresin)\n- [`ReadOnly`](#readonly)\n- [`Anonymize`](#anonymize)\n- [`AccessTokenParameters`](#accesstokenparameters)\n- [`JourneyTokenParameters`](#journeytokenparameters)\n- [`PortalTokenParameters`](#portaltokenparameters)\n- [`AssumeTokenParameters`](#assumetokenparameters)\n- [`AppTokenParameters`](#apptokenparameters)\n- [`PortalPreviewTokenParameters`](#portalpreviewtokenparameters)\n- [`ContactIdentificationTokenParameters`](#contactidentificationtokenparameters)\n- [`AccessTokenItem`](#accesstokenitem)\n- [`RoleId`](#roleid)\n- [`Assignments`](#assignments)\n\n### `createAccessToken`\n\n**Access Token type: `API`** (default if not specified):\n\n`POST /v1/access-tokens`\n\n```ts\nconst { data } = await client.createAccessToken(\n null,\n {\n name: \'Postman Access Token\',\n token_type: \'api\',\n assignments: [\'123:owner\'],\n expires_in: 3600,\n read_only: true,\n anonymize: true\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6Ikp...",\n "id": "api_5ZugdRXasLfWBypHi93Fk",\n "created_at": "1970-01-01T00:00:00.000Z",\n "name": "Postman Access Token",\n "token_type": "api",\n "journey_id": "string",\n "portal_id": "string",\n "portal_user_id": "string",\n "contact_id": "5da0a718-c822-403d-9f5d-20d4584e0528",\n "origin": "END_CUSTOMER_PORTAL",\n "allowed_operations": ["getContact", "getContracts"],\n "assignments": ["123:owner"],\n "read_only": true,\n "anonymize": true,\n "last_used": "2026-02-24",\n "expires_at": "2026-03-01T12:00:00.000Z"\n}\n```\n\n</details>\n\n---\n\n### `listAccessTokens`\n\nLists all Access Tokens for current user (by default excludes system generated tokens)\n\n`GET /v1/access-tokens`\n\n```ts\nconst { data } = await client.listAccessTokens({\n token_type: [\'...\'],\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "id": "api_5ZugdRXasLfWBypHi93Fk",\n "created_at": "1970-01-01T00:00:00.000Z",\n "name": "Postman Access Token",\n "token_type": "api",\n "journey_id": "string",\n "portal_id": "string",\n "portal_user_id": "string",\n "contact_id": "5da0a718-c822-403d-9f5d-20d4584e0528",\n "origin": "END_CUSTOMER_PORTAL",\n "allowed_operations": ["getContact", "getContracts"],\n "assignments": ["123:owner"],\n "read_only": true,\n "anonymize": true,\n "last_used": "2026-02-24",\n "expires_at": "2026-03-01T12:00:00.000Z"\n }\n]\n```\n\n</details>\n\n---\n\n### `revokeAccessToken`\n\nRevokes an Access Token so it can\'t be used anymore.\n\n`DELETE /v1/access-tokens/{id}`\n\n```ts\nconst { data } = await client.revokeAccessToken({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "api_5ZugdRXasLfWBypHi93Fk",\n "created_at": "1970-01-01T00:00:00.000Z",\n "name": "Postman Access Token",\n "token_type": "api",\n "journey_id": "string",\n "portal_id": "string",\n "portal_user_id": "string",\n "contact_id": "5da0a718-c822-403d-9f5d-20d4584e0528",\n "origin": "END_CUSTOMER_PORTAL",\n "allowed_operations": ["getContact", "getContracts"],\n "assignments": ["123:owner"],\n "read_only": true,\n "anonymize": true,\n "last_used": "2026-02-24",\n "expires_at": "2026-03-01T12:00:00.000Z"\n}\n```\n\n</details>\n\n---\n\n### `getAccessTokenJwks`\n\nGet jwks public key set to verify access tokens generated by this API\n\n`GET /v1/access-tokens/.well-known/jwks.json`\n\n```ts\nconst { data } = await client.getAccessTokenJwks()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "keys": [\n {\n "alg": "RS256",\n "e": "AQAB",\n "kid": "tXWU5mPMbRPczpbQwi6vbhLF4GgF3wlMDSyqo7pfeiw=",\n "kty": "RSA",\n "n": "h_QDoCjZ8W_trtYXaP7_S22wf5r5Wd9XBLED78oT44bJjQXn8ddcFV8Hik65_4IYXVX_hTTU4zpxe3H8vx2j7-Zz3O59mYMp5S0MzODNEdf5Y_2o19eis0brmAJniixsNlQ9LlYkdrVamrgaxHu3ZpP_99zkfFybYeuYoQNzb3PyrT8xVnz_USs_nlFMHpGUxvvz7gfKPqxcLvgLJr4cwI9yzaSY9CD4qW181QVcnL_WzpQ8xx6AuhhHZQ1l_3GG4InTk8ahE7U2ZHVu8RrX6d01pMgc3piEcet9RgFLnhbTg3YIiKGoAbN42wJn_x3lgIAC42T9mbmTsHyUdS6nUQ",\n "use": "sig"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `getAccessTokenOIDC`\n\nOpenID Connect configuration for Access Token API as identity provider\n\n`GET /v1/access-tokens/.well-known/openid-configuration`\n\n```ts\nconst { data } = await client.getAccessTokenOIDC()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "issuer": "https://access-token.sls.epilot.io/v1/access-tokens",\n "jwks_uri": "https://access-token.sls.epilot.io/v1/access-tokens/.well-known/jwks.json"\n}\n```\n\n</details>\n\n---\n\n### `getPublicTokenJwks`\n\nGet jwks public key set to verify public tokens generated by this API\n\n`GET /v1/access-tokens/public/.well-known/jwks.json`\n\n```ts\nconst { data } = await client.getPublicTokenJwks()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "keys": [\n {\n "alg": "RS256",\n "e": "AQAB",\n "kid": "tXWU5mPMbRPczpbQwi6vbhLF4GgF3wlMDSyqo7pfeiw=",\n "kty": "RSA",\n "n": "h_QDoCjZ8W_trtYXaP7_S22wf5r5Wd9XBLED78oT44bJjQXn8ddcFV8Hik65_4IYXVX_hTTU4zpxe3H8vx2j7-Zz3O59mYMp5S0MzODNEdf5Y_2o19eis0brmAJniixsNlQ9LlYkdrVamrgaxHu3ZpP_99zkfFybYeuYoQNzb3PyrT8xVnz_USs_nlFMHpGUxvvz7gfKPqxcLvgLJr4cwI9yzaSY9CD4qW181QVcnL_WzpQ8xx6AuhhHZQ1l_3GG4InTk8ahE7U2ZHVu8RrX6d01pMgc3piEcet9RgFLnhbTg3YIiKGoAbN42wJn_x3lgIAC42T9mbmTsHyUdS6nUQ",\n "use": "sig"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `getPortalPreviewTokenJwks`\n\nGet jwks public key set to verify portal preview tokens generated by this API\n\n`GET /v1/access-tokens/portal-preview/.well-known/jwks.json`\n\n```ts\nconst { data } = await client.getPortalPreviewTokenJwks()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "keys": [\n {\n "alg": "RS256",\n "e": "AQAB",\n "kid": "tXWU5mPMbRPczpbQwi6vbhLF4GgF3wlMDSyqo7pfeiw=",\n "kty": "RSA",\n "n": "h_QDoCjZ8W_trtYXaP7_S22wf5r5Wd9XBLED78oT44bJjQXn8ddcFV8Hik65_4IYXVX_hTTU4zpxe3H8vx2j7-Zz3O59mYMp5S0MzODNEdf5Y_2o19eis0brmAJniixsNlQ9LlYkdrVamrgaxHu3ZpP_99zkfFybYeuYoQNzb3PyrT8xVnz_USs_nlFMHpGUxvvz7gfKPqxcLvgLJr4cwI9yzaSY9CD4qW181QVcnL_WzpQ8xx6AuhhHZQ1l_3GG4InTk8ahE7U2ZHVu8RrX6d01pMgc3piEcet9RgFLnhbTg3YIiKGoAbN42wJn_x3lgIAC42T9mbmTsHyUdS6nUQ",\n "use": "sig"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `getPublicTokenOIDC`\n\nOpenID Connect configuration for Access Token API a a public identity provider\n\n`GET /v1/access-tokens/public/.well-known/openid-configuration`\n\n```ts\nconst { data } = await client.getPublicTokenOIDC()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "issuer": "https://access-token.sls.epilot.io/v1/access-tokens",\n "jwks_uri": "https://access-token.sls.epilot.io/v1/access-tokens/.well-known/jwks.json"\n}\n```\n\n</details>\n\n---\n\n### `getPortalPreviewTokenOIDC`\n\nOpenID Connect configuration for Access Token API a a portal preview identity provider\n\n`GET /v1/access-tokens/portal-preview/.well-known/openid-configuration`\n\n```ts\nconst { data } = await client.getPortalPreviewTokenOIDC()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "issuer": "https://access-token.sls.epilot.io/v1/access-tokens/portal-preview",\n "jwks_uri": "https://access-token.sls.epilot.io/v1/access-tokens/portal-preview/.well-known/jwks.json"\n}\n```\n\n</details>\n\n---\n\n### `getContactIdentificationTokenJwks`\n\nGet jwks public key set to verify contact identification tokens generated by this API\n\n`GET /v1/access-tokens/contact-identification/.well-known/jwks.json`\n\n```ts\nconst { data } = await client.getContactIdentificationTokenJwks()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "keys": [\n {\n "alg": "RS256",\n "e": "AQAB",\n "kid": "tXWU5mPMbRPczpbQwi6vbhLF4GgF3wlMDSyqo7pfeiw=",\n "kty": "RSA",\n "n": "h_QDoCjZ8W_trtYXaP7_S22wf5r5Wd9XBLED78oT44bJjQXn8ddcFV8Hik65_4IYXVX_hTTU4zpxe3H8vx2j7-Zz3O59mYMp5S0MzODNEdf5Y_2o19eis0brmAJniixsNlQ9LlYkdrVamrgaxHu3ZpP_99zkfFybYeuYoQNzb3PyrT8xVnz_USs_nlFMHpGUxvvz7gfKPqxcLvgLJr4cwI9yzaSY9CD4qW181QVcnL_WzpQ8xx6AuhhHZQ1l_3GG4InTk8ahE7U2ZHVu8RrX6d01pMgc3piEcet9RgFLnhbTg3YIiKGoAbN42wJn_x3lgIAC42T9mbmTsHyUdS6nUQ",\n "use": "sig"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `getContactIdentificationTokenOIDC`\n\nOpenID Connect configuration for Access Token API as a contact identification identity provider\n\n`GET /v1/access-tokens/contact-identification/.well-known/openid-configuration`\n\n```ts\nconst { data } = await client.getContactIdentificationTokenOIDC()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "issuer": "https://access-token.sls.epilot.io/v1/access-tokens/contact-identification",\n "jwks_uri": "https://access-token.sls.epilot.io/v1/access-tokens/contact-identification/.well-known/jwks.json"\n}\n```\n\n</details>\n\n---\n\n## Schemas\n\n### `AccessToken`\n\nA JWT Access Token\n\n```ts\ntype AccessToken = string\n```\n\n### `AccessTokenId`\n\n```ts\ntype AccessTokenId = string\n```\n\n### `AccessTokenName`\n\nHuman readable name for access token\n\n```ts\ntype AccessTokenName = string\n```\n\n### `AccessTokenType`\n\nAccess token type\n\n```ts\ntype AccessTokenType = "api" | "journey" | "portal" | "assume" | "app" | "portal_preview" | "contact_identification"\n```\n\n### `AccessTokenJourneyId`\n\nJourney ID for access token type "journey"\n\n```ts\ntype AccessTokenJourneyId = string\n```\n\n### `PortalId`\n\nPortal ID for access token type "portal"\n\n```ts\ntype PortalId = string\n```\n\n### `PortalUserId`\n\nPortal User ID for access token type "portal_preview"\n\n```ts\ntype PortalUserId = string\n```\n\n### `ContactId`\n\nContact entity ID for access token type "contact_identification"\n\n```ts\ntype ContactId = string\n```\n\n### `PortalOrigin`\n\nPortal origin the token assumes, so the bearer is permission-masked the same way the corresponding portal role is.\n\n```ts\ntype PortalOrigin = "END_CUSTOMER_PORTAL" | "INSTALLER_PORTAL"\n```\n\n### `AllowedOperations`\n\nopenapi operationIds the token may call. Enforced by the API that consumes the token, which must additionally deny any operation not on this list. Baked into the token at issue time so widening the consumer\'s own allowlist later cannot retroactively widen a token that is already in circulation.\n\n```ts\ntype AllowedOperations = string[]\n```\n\n### `TokenParameters`\n\n```ts\ntype TokenParameters = {\n name: string\n token_type?: "api"\n assignments?: string[]\n expires_in?: number | string\n read_only?: boolean\n anonymize?: boolean\n} | {\n name: string\n token_type?: "journey"\n journey_id: string\n expires_in?: number | string\n} | {\n name: string\n token_type?: "portal"\n portal_id: string\n expires_in?: number | string\n} | {\n name: string\n token_type?: "assume"\n assignments?: string[]\n read_only?: boolean\n anonymize?: boolean\n} | {\n name: string\n token_type?: "app"\n assignments?: string[]\n expires_in?: number | string\n read_only?: boolean\n anonymize?: boolean\n} | {\n name: string\n token_type?: "portal_preview"\n portal_id: string\n portal_user_id: string\n} | {\n name: string\n token_type?: "contact_identification"\n portal_id: string\n contact_id: string\n surface_id: string\n origin?: "END_CUSTOMER_PORTAL" | "INSTALLER_PORTAL"\n allowed_operations: string[]\n expires_in: number\n email?: string\n}\n```\n\n### `ExpiresIn`\n\n```ts\ntype ExpiresIn = number | string\n```\n\n### `ReadOnly`\n\nWhen true, the issued token may only perform read-only actions. Any action guarded by permissions that is not read-only (i.e. not a view/export/download action) is denied, regardless of the roles the token carries.\n\n```ts\ntype ReadOnly = boolean\n```\n\n### `Anonymize`\n\nForces PII anonymization on all entity data returned to this token. Cannot be disabled by the token bearer. See entity-api anonymized responses.\n\n```ts\ntype Anonymize = boolean\n```\n\n### `AccessTokenParameters`\n\n```ts\ntype AccessTokenParameters = {\n name: string\n token_type?: "api"\n assignments?: string[]\n expires_in?: number | string\n read_only?: boolean\n anonymize?: boolean\n}\n```\n\n### `JourneyTokenParameters`\n\n```ts\ntype JourneyTokenParameters = {\n name: string\n token_type?: "journey"\n journey_id: string\n expires_in?: number | string\n}\n```\n\n### `PortalTokenParameters`\n\n```ts\ntype PortalTokenParameters = {\n name: string\n token_type?: "portal"\n portal_id: string\n expires_in?: number | string\n}\n```\n\n### `AssumeTokenParameters`\n\n```ts\ntype AssumeTokenParameters = {\n name: string\n token_type?: "assume"\n assignments?: string[]\n read_only?: boolean\n anonymize?: boolean\n}\n```\n\n### `AppTokenParameters`\n\n```ts\ntype AppTokenParameters = {\n name: string\n token_type?: "app"\n assignments?: string[]\n expires_in?: number | string\n read_only?: boolean\n anonymize?: boolean\n}\n```\n\n### `PortalPreviewTokenParameters`\n\n```ts\ntype PortalPreviewTokenParameters = {\n name: string\n token_type?: "portal_preview"\n portal_id: string\n portal_user_id: string\n}\n```\n\n### `ContactIdentificationTokenParameters`\n\nA token that acts as one contact, issued after that contact was identified by a portal\'s registration identifiers rather than by logging in. Distinct from portal_preview, which impersonates an existing portal user for a 360 operator: this kind belongs to no user, is minted for an unauthenticated cal\n\n```ts\ntype ContactIdentificationTokenParameters = {\n name: string\n token_type?: "contact_identification"\n portal_id: string\n contact_id: string\n surface_id: string\n origin?: "END_CUSTOMER_PORTAL" | "INSTALLER_PORTAL"\n allowed_operations: string[]\n expires_in: number\n email?: string\n}\n```\n\n### `AccessTokenItem`\n\n```ts\ntype AccessTokenItem = {\n id: string\n created_at: string // date-time\n name: string\n token_type?: "api" | "journey" | "portal" | "assume" | "app" | "portal_preview" | "contact_identification"\n journey_id?: string\n portal_id?: string\n portal_user_id?: string\n contact_id?: string\n origin?: "END_CUSTOMER_PORTAL" | "INSTALLER_PORTAL"\n allowed_operations?: string[]\n assignments?: string[]\n read_only?: boolean\n anonymize?: boolean\n last_used?: string // date\n expires_at?: string // date-time\n}\n```\n\n### `RoleId`\n\nFormat: `<organization_id>`:`<slug>`\n\n```ts\ntype RoleId = string\n```\n\n### `Assignments`\n\nList of role ids attached to an user\n\n```ts\ntype Assignments = string[]\n```\n';
5
- export {
6
- access_token_default as default
7
- };