@epilot/sdk 2.20.23 → 2.20.25

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 (233) hide show
  1. package/dist/apis/access-token.cjs +6 -6
  2. package/dist/apis/access-token.js +1 -1
  3. package/dist/apis/address-suggestions.cjs +6 -6
  4. package/dist/apis/address-suggestions.js +1 -1
  5. package/dist/apis/address.cjs +6 -6
  6. package/dist/apis/address.js +1 -1
  7. package/dist/apis/ai-agents.cjs +6 -6
  8. package/dist/apis/ai-agents.js +1 -1
  9. package/dist/apis/app.cjs +6 -6
  10. package/dist/apis/app.js +1 -1
  11. package/dist/apis/audit-logs.cjs +6 -6
  12. package/dist/apis/audit-logs.js +1 -1
  13. package/dist/apis/automation.cjs +6 -6
  14. package/dist/apis/automation.js +1 -1
  15. package/dist/apis/billing.cjs +6 -6
  16. package/dist/apis/billing.js +1 -1
  17. package/dist/apis/blueprint-manifest.cjs +6 -6
  18. package/dist/apis/blueprint-manifest.js +1 -1
  19. package/dist/apis/calendar.cjs +6 -6
  20. package/dist/apis/calendar.js +1 -1
  21. package/dist/apis/chat.cjs +6 -6
  22. package/dist/apis/chat.js +1 -1
  23. package/dist/apis/configuration-hub.cjs +6 -6
  24. package/dist/apis/configuration-hub.js +1 -1
  25. package/dist/apis/consent.cjs +6 -6
  26. package/dist/apis/consent.js +1 -1
  27. package/dist/apis/customer-portal.cjs +6 -6
  28. package/dist/apis/customer-portal.js +1 -1
  29. package/dist/apis/dashboard.cjs +6 -6
  30. package/dist/apis/dashboard.js +1 -1
  31. package/dist/apis/data-governance.cjs +6 -6
  32. package/dist/apis/data-governance.js +1 -1
  33. package/dist/apis/deduplication.cjs +6 -6
  34. package/dist/apis/deduplication.js +1 -1
  35. package/dist/apis/design.cjs +6 -6
  36. package/dist/apis/design.js +1 -1
  37. package/dist/apis/document.cjs +6 -6
  38. package/dist/apis/document.js +1 -1
  39. package/dist/apis/email-settings.cjs +6 -6
  40. package/dist/apis/email-settings.js +1 -1
  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.d.cts +2 -2
  45. package/dist/apis/entity-mapping.d.ts +2 -2
  46. package/dist/apis/entity-mapping.js +1 -1
  47. package/dist/apis/entity.cjs +6 -6
  48. package/dist/apis/entity.js +1 -1
  49. package/dist/apis/environments.cjs +6 -6
  50. package/dist/apis/environments.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/integration-toolkit.cjs +6 -6
  58. package/dist/apis/integration-toolkit.d.cts +2 -2
  59. package/dist/apis/integration-toolkit.d.ts +2 -2
  60. package/dist/apis/integration-toolkit.js +1 -1
  61. package/dist/apis/journey.cjs +6 -6
  62. package/dist/apis/journey.js +1 -1
  63. package/dist/apis/kanban.cjs +6 -6
  64. package/dist/apis/kanban.js +1 -1
  65. package/dist/apis/message.cjs +6 -6
  66. package/dist/apis/message.js +1 -1
  67. package/dist/apis/metering.cjs +6 -6
  68. package/dist/apis/metering.js +1 -1
  69. package/dist/apis/notes.cjs +6 -6
  70. package/dist/apis/notes.js +1 -1
  71. package/dist/apis/notification.cjs +6 -6
  72. package/dist/apis/notification.js +1 -1
  73. package/dist/apis/organization.cjs +6 -6
  74. package/dist/apis/organization.js +1 -1
  75. package/dist/apis/partner-directory.cjs +6 -6
  76. package/dist/apis/partner-directory.js +1 -1
  77. package/dist/apis/permissions.cjs +6 -6
  78. package/dist/apis/permissions.js +1 -1
  79. package/dist/apis/pricing-tier.cjs +6 -6
  80. package/dist/apis/pricing-tier.js +1 -1
  81. package/dist/apis/pricing.cjs +6 -6
  82. package/dist/apis/pricing.js +1 -1
  83. package/dist/apis/purpose.cjs +6 -6
  84. package/dist/apis/purpose.js +1 -1
  85. package/dist/apis/query.cjs +6 -6
  86. package/dist/apis/query.js +1 -1
  87. package/dist/apis/sandbox.cjs +6 -6
  88. package/dist/apis/sandbox.js +1 -1
  89. package/dist/apis/sharing.cjs +6 -6
  90. package/dist/apis/sharing.js +1 -1
  91. package/dist/apis/snapshot.cjs +6 -6
  92. package/dist/apis/snapshot.js +1 -1
  93. package/dist/apis/submission.cjs +6 -6
  94. package/dist/apis/submission.js +1 -1
  95. package/dist/apis/target.cjs +6 -6
  96. package/dist/apis/target.js +1 -1
  97. package/dist/apis/targeting.cjs +6 -6
  98. package/dist/apis/targeting.js +1 -1
  99. package/dist/apis/template-variables.cjs +6 -6
  100. package/dist/apis/template-variables.js +1 -1
  101. package/dist/apis/user.cjs +6 -6
  102. package/dist/apis/user.js +1 -1
  103. package/dist/apis/validation-rules.cjs +6 -6
  104. package/dist/apis/validation-rules.js +1 -1
  105. package/dist/apis/webhooks.cjs +6 -6
  106. package/dist/apis/webhooks.js +1 -1
  107. package/dist/apis/workflow-definition.cjs +6 -6
  108. package/dist/apis/workflow-definition.js +1 -1
  109. package/dist/apis/workflow.cjs +6 -6
  110. package/dist/apis/workflow.js +1 -1
  111. package/dist/{chunk-YCTBOY3T.cjs → chunk-PZ4TXAF5.cjs} +2 -2
  112. package/dist/{chunk-KZXOYL5D.js → chunk-X742W7MI.js} +2 -2
  113. package/dist/{entity-mapping-D67LJE74.js → entity-mapping-CBRH3VBZ.js} +1 -1
  114. package/dist/{entity-mapping-WFPSOXRK.cjs → entity-mapping-WE3QMZWA.cjs} +1 -1
  115. package/dist/{entity-mapping.d-CQv75o8M.d.cts → entity-mapping.d-8MtWa2_L.d.cts} +22 -0
  116. package/dist/{entity-mapping.d-CQv75o8M.d.ts → entity-mapping.d-8MtWa2_L.d.ts} +22 -0
  117. package/dist/index.cjs +8 -8
  118. package/dist/index.d.cts +2 -2
  119. package/dist/index.d.ts +2 -2
  120. package/dist/index.js +1 -1
  121. package/dist/integration-toolkit-FHPQSYLH.js +7 -0
  122. package/dist/integration-toolkit-YBZJK4IG.cjs +7 -0
  123. package/dist/{integration-toolkit.d-bhpB79pc.d.ts → integration-toolkit.d--hon4GPp.d.cts} +79 -26
  124. package/dist/{integration-toolkit.d-bhpB79pc.d.cts → integration-toolkit.d--hon4GPp.d.ts} +79 -26
  125. package/docs/entity-mapping.md +19 -0
  126. package/docs/integration-toolkit.md +19 -250
  127. package/package.json +1 -1
  128. package/definitions/access-token-runtime.json +0 -1
  129. package/definitions/access-token.json +0 -1025
  130. package/definitions/address-runtime.json +0 -1
  131. package/definitions/address-suggestions-runtime.json +0 -1
  132. package/definitions/address-suggestions.json +0 -582
  133. package/definitions/address.json +0 -578
  134. package/definitions/ai-agents-runtime.json +0 -1
  135. package/definitions/ai-agents.json +0 -2863
  136. package/definitions/app-runtime.json +0 -1
  137. package/definitions/app.json +0 -5994
  138. package/definitions/audit-logs-runtime.json +0 -1
  139. package/definitions/audit-logs.json +0 -305
  140. package/definitions/automation-runtime.json +0 -1
  141. package/definitions/automation.json +0 -5979
  142. package/definitions/billing-runtime.json +0 -1
  143. package/definitions/billing.json +0 -2394
  144. package/definitions/blueprint-manifest-runtime.json +0 -1
  145. package/definitions/blueprint-manifest.json +0 -7817
  146. package/definitions/calendar-runtime.json +0 -1
  147. package/definitions/calendar.json +0 -2904
  148. package/definitions/chat-runtime.json +0 -1
  149. package/definitions/chat.json +0 -2909
  150. package/definitions/configuration-hub-runtime.json +0 -1
  151. package/definitions/configuration-hub.json +0 -2250
  152. package/definitions/consent-runtime.json +0 -1
  153. package/definitions/consent.json +0 -344
  154. package/definitions/customer-portal-runtime.json +0 -1
  155. package/definitions/customer-portal.json +0 -21181
  156. package/definitions/dashboard-runtime.json +0 -1
  157. package/definitions/dashboard.json +0 -1355
  158. package/definitions/data-governance-runtime.json +0 -1
  159. package/definitions/data-governance.json +0 -1126
  160. package/definitions/deduplication-runtime.json +0 -1
  161. package/definitions/deduplication.json +0 -782
  162. package/definitions/design-runtime.json +0 -1
  163. package/definitions/design.json +0 -1827
  164. package/definitions/document-runtime.json +0 -1
  165. package/definitions/document.json +0 -758
  166. package/definitions/email-settings-runtime.json +0 -1
  167. package/definitions/email-settings.json +0 -3736
  168. package/definitions/email-template-runtime.json +0 -1
  169. package/definitions/email-template.json +0 -1441
  170. package/definitions/entity-mapping-runtime.json +0 -1
  171. package/definitions/entity-mapping.json +0 -1829
  172. package/definitions/entity-runtime.json +0 -1
  173. package/definitions/entity.json +0 -11546
  174. package/definitions/environments-runtime.json +0 -1
  175. package/definitions/environments.json +0 -988
  176. package/definitions/event-catalog-runtime.json +0 -1
  177. package/definitions/event-catalog.json +0 -2014
  178. package/definitions/file-runtime.json +0 -1
  179. package/definitions/file.json +0 -4298
  180. package/definitions/iban-runtime.json +0 -1
  181. package/definitions/iban.json +0 -132
  182. package/definitions/integration-toolkit-runtime.json +0 -1
  183. package/definitions/integration-toolkit.json +0 -13069
  184. package/definitions/journey-runtime.json +0 -1
  185. package/definitions/journey.json +0 -3586
  186. package/definitions/kanban-runtime.json +0 -1
  187. package/definitions/kanban.json +0 -1506
  188. package/definitions/message-runtime.json +0 -1
  189. package/definitions/message.json +0 -3667
  190. package/definitions/metering-runtime.json +0 -1
  191. package/definitions/metering.json +0 -3132
  192. package/definitions/notes-runtime.json +0 -1
  193. package/definitions/notes.json +0 -1698
  194. package/definitions/notification-runtime.json +0 -1
  195. package/definitions/notification.json +0 -1439
  196. package/definitions/organization-runtime.json +0 -1
  197. package/definitions/organization.json +0 -1192
  198. package/definitions/partner-directory-runtime.json +0 -1
  199. package/definitions/partner-directory.json +0 -2284
  200. package/definitions/permissions-runtime.json +0 -1
  201. package/definitions/permissions.json +0 -1598
  202. package/definitions/pricing-runtime.json +0 -1
  203. package/definitions/pricing-tier-runtime.json +0 -1
  204. package/definitions/pricing-tier.json +0 -105
  205. package/definitions/pricing.json +0 -14369
  206. package/definitions/purpose-runtime.json +0 -1
  207. package/definitions/purpose.json +0 -524
  208. package/definitions/query-runtime.json +0 -1
  209. package/definitions/query.json +0 -3178
  210. package/definitions/sandbox-runtime.json +0 -1
  211. package/definitions/sandbox.json +0 -453
  212. package/definitions/sharing-runtime.json +0 -1
  213. package/definitions/sharing.json +0 -956
  214. package/definitions/snapshot-runtime.json +0 -1
  215. package/definitions/snapshot.json +0 -1103
  216. package/definitions/submission-runtime.json +0 -1
  217. package/definitions/submission.json +0 -313
  218. package/definitions/targeting-runtime.json +0 -1
  219. package/definitions/targeting.json +0 -2285
  220. package/definitions/template-variables-runtime.json +0 -1
  221. package/definitions/template-variables.json +0 -1416
  222. package/definitions/user-runtime.json +0 -1
  223. package/definitions/user.json +0 -3051
  224. package/definitions/validation-rules-runtime.json +0 -1
  225. package/definitions/validation-rules.json +0 -2642
  226. package/definitions/webhooks-runtime.json +0 -1
  227. package/definitions/webhooks.json +0 -1875
  228. package/definitions/workflow-definition-runtime.json +0 -1
  229. package/definitions/workflow-definition.json +0 -3592
  230. package/definitions/workflow-runtime.json +0 -1
  231. package/definitions/workflow.json +0 -4669
  232. package/dist/integration-toolkit-GOFVOMNH.js +0 -7
  233. package/dist/integration-toolkit-XMM5LLK6.cjs +0 -7
@@ -1,1025 +0,0 @@
1
- {
2
- "openapi": "3.0.3",
3
- "info": {
4
- "title": "Access Token API",
5
- "version": "0.4.0",
6
- "description": "Generate Access Tokens for 3rd party applications that need access to epilot APIs.\n"
7
- },
8
- "tags": [
9
- {
10
- "name": "Access Tokens",
11
- "description": "Create Access Tokens for epilot APIs"
12
- },
13
- {
14
- "name": "Public",
15
- "description": "Well known endpoints to verify tokens generated by this API"
16
- }
17
- ],
18
- "security": [
19
- {
20
- "EpilotAuth": []
21
- },
22
- {
23
- "EpilotOrg": []
24
- }
25
- ],
26
- "paths": {
27
- "/v1/access-tokens": {
28
- "post": {
29
- "operationId": "createAccessToken",
30
- "summary": "createAccessToken",
31
- "description": "**Access Token type: `API`** (default if not specified):\n\nGenerates a new Access Token to use for calling epilot APIs.\n\nTakes optionally a list of Roles assigned to the Access Token. Defaults to current user's assignments\n\nSee [Permissions API docs](https://docs.epilot.io/api/permissions)\n\n**Access Token type: `JOURNEY`**:\n\nGenerates a Public Access Token related to a journey.\nThe journey id should be specfied.\n",
32
- "tags": [
33
- "Access Tokens"
34
- ],
35
- "requestBody": {
36
- "description": "Metadata for the Access Token",
37
- "content": {
38
- "application/json": {
39
- "schema": {
40
- "$ref": "#/components/schemas/TokenParameters"
41
- },
42
- "examples": {
43
- "api": {
44
- "value": {
45
- "name": "API Access Token",
46
- "token_type": "api",
47
- "assignments": []
48
- }
49
- },
50
- "journey": {
51
- "value": {
52
- "name": "Journey Access Token",
53
- "token_type": "journey",
54
- "journey_id": "u29g7-97gajsaog-028t02jag-a9a72tk"
55
- }
56
- },
57
- "portal": {
58
- "value": {
59
- "name": "Installer /End Customer Portal Access Token",
60
- "token_type": "portal",
61
- "portal_id": "END_CUSTOMER_PORTAL"
62
- }
63
- },
64
- "assume": {
65
- "value": {
66
- "name": "Assume Token intended for assuming a different role as a user",
67
- "token_type": "assume",
68
- "assignments": [
69
- "739224:employee"
70
- ]
71
- }
72
- },
73
- "portal_preview": {
74
- "value": {
75
- "name": "Portal Preview Token for previewing customer portal",
76
- "token_type": "portal_preview",
77
- "portal_id": "portal_abc123",
78
- "portal_user_id": "user_xyz789"
79
- }
80
- },
81
- "app": {
82
- "value": {
83
- "name": "App Access Token",
84
- "token_type": "app",
85
- "assignments": [
86
- "739224:e5c1f9b1-e41d-421d-83c4-c5626e464430"
87
- ]
88
- }
89
- },
90
- "contact_identification": {
91
- "value": {
92
- "name": "Contact Identification Token",
93
- "token_type": "contact_identification",
94
- "portal_id": "portal_abc123",
95
- "contact_id": "5da0a718-c822-403d-9f5d-20d4584e0528",
96
- "surface_id": "website-journeys",
97
- "allowed_operations": [
98
- "getContact",
99
- "getContracts"
100
- ],
101
- "expires_in": 300
102
- }
103
- }
104
- }
105
- }
106
- }
107
- },
108
- "responses": {
109
- "201": {
110
- "description": "The new generated Access Token",
111
- "content": {
112
- "application/json": {
113
- "schema": {
114
- "allOf": [
115
- {
116
- "properties": {
117
- "token": {
118
- "$ref": "#/components/schemas/AccessToken"
119
- }
120
- }
121
- },
122
- {
123
- "$ref": "#/components/schemas/AccessTokenItem"
124
- }
125
- ]
126
- }
127
- }
128
- }
129
- },
130
- "400": {
131
- "description": "Bad Request",
132
- "content": {
133
- "application/json": {
134
- "schema": {
135
- "type": "object",
136
- "properties": {
137
- "status": {
138
- "type": "integer"
139
- },
140
- "error": {
141
- "type": "string"
142
- }
143
- }
144
- }
145
- }
146
- }
147
- },
148
- "500": {
149
- "description": "Internal Server Error",
150
- "content": {
151
- "application/json": {
152
- "schema": {
153
- "type": "object",
154
- "properties": {
155
- "status": {
156
- "type": "integer"
157
- },
158
- "error": {
159
- "type": "string"
160
- }
161
- }
162
- }
163
- }
164
- }
165
- }
166
- }
167
- },
168
- "get": {
169
- "operationId": "listAccessTokens",
170
- "summary": "listAccessTokens",
171
- "description": "Lists all Access Tokens for current user (by default excludes system generated tokens)",
172
- "parameters": [
173
- {
174
- "in": "query",
175
- "name": "token_type",
176
- "description": "Filter by token types",
177
- "schema": {
178
- "type": "array",
179
- "items": {
180
- "$ref": "#/components/schemas/AccessTokenType"
181
- }
182
- }
183
- }
184
- ],
185
- "tags": [
186
- "Access Tokens"
187
- ],
188
- "responses": {
189
- "200": {
190
- "description": "List of Access Tokens",
191
- "content": {
192
- "application/json": {
193
- "schema": {
194
- "type": "array",
195
- "items": {
196
- "$ref": "#/components/schemas/AccessTokenItem"
197
- }
198
- }
199
- }
200
- }
201
- }
202
- }
203
- }
204
- },
205
- "/v1/access-tokens/{id}": {
206
- "delete": {
207
- "operationId": "revokeAccessToken",
208
- "summary": "revokeAccessToken",
209
- "description": "Revokes an Access Token so it can't be used anymore.",
210
- "parameters": [
211
- {
212
- "name": "id",
213
- "in": "path",
214
- "schema": {
215
- "$ref": "#/components/schemas/AccessTokenId"
216
- },
217
- "required": true
218
- }
219
- ],
220
- "tags": [
221
- "Access Tokens"
222
- ],
223
- "responses": {
224
- "200": {
225
- "description": "The revoked generated Access Token",
226
- "content": {
227
- "application/json": {
228
- "schema": {
229
- "$ref": "#/components/schemas/AccessTokenItem"
230
- }
231
- }
232
- }
233
- }
234
- }
235
- }
236
- },
237
- "/v1/access-tokens/.well-known/jwks.json": {
238
- "get": {
239
- "operationId": "getAccessTokenJwks",
240
- "summary": "getAccessTokenJwks",
241
- "description": "Get jwks public key set to verify access tokens generated by this API",
242
- "tags": [
243
- "Public"
244
- ],
245
- "security": [],
246
- "responses": {
247
- "200": {
248
- "description": "Set of jwks",
249
- "content": {
250
- "application/json": {
251
- "schema": {
252
- "type": "object",
253
- "properties": {
254
- "keys": {
255
- "type": "array",
256
- "items": {
257
- "type": "object",
258
- "properties": {
259
- "alg": {
260
- "type": "string",
261
- "example": "RS256"
262
- },
263
- "e": {
264
- "type": "string",
265
- "example": "AQAB"
266
- },
267
- "kid": {
268
- "type": "string",
269
- "example": "tXWU5mPMbRPczpbQwi6vbhLF4GgF3wlMDSyqo7pfeiw="
270
- },
271
- "kty": {
272
- "type": "string",
273
- "example": "RSA"
274
- },
275
- "n": {
276
- "type": "string",
277
- "example": "h_QDoCjZ8W_trtYXaP7_S22wf5r5Wd9XBLED78oT44bJjQXn8ddcFV8Hik65_4IYXVX_hTTU4zpxe3H8vx2j7-Zz3O59mYMp5S0MzODNEdf5Y_2o19eis0brmAJniixsNlQ9LlYkdrVamrgaxHu3ZpP_99zkfFybYeuYoQNzb3PyrT8xVnz_USs_nlFMHpGUxvvz7gfKPqxcLvgLJr4cwI9yzaSY9CD4qW181QVcnL_WzpQ8xx6AuhhHZQ1l_3GG4InTk8ahE7U2ZHVu8RrX6d01pMgc3piEcet9RgFLnhbTg3YIiKGoAbN42wJn_x3lgIAC42T9mbmTsHyUdS6nUQ"
278
- },
279
- "use": {
280
- "type": "string",
281
- "example": "sig"
282
- }
283
- }
284
- }
285
- }
286
- }
287
- }
288
- }
289
- }
290
- }
291
- }
292
- }
293
- },
294
- "/v1/access-tokens/.well-known/openid-configuration": {
295
- "get": {
296
- "operationId": "getAccessTokenOIDC",
297
- "summary": "getAccessTokenOIDC",
298
- "description": "OpenID Connect configuration for Access Token API as identity provider\n\nNote: This API is not a fully compliant OAuth2.0 / OIDC identity provider, but this endpoint is useful to\nautomate the process of verifying JWT tokens.\n",
299
- "tags": [
300
- "Public"
301
- ],
302
- "security": [],
303
- "responses": {
304
- "200": {
305
- "description": "OpenID Configuration",
306
- "content": {
307
- "application/json": {
308
- "schema": {
309
- "type": "object",
310
- "properties": {
311
- "issuer": {
312
- "type": "string",
313
- "format": "uri",
314
- "example": "https://access-token.sls.epilot.io/v1/access-tokens"
315
- },
316
- "jwks_uri": {
317
- "type": "string",
318
- "format": "uri",
319
- "example": "https://access-token.sls.epilot.io/v1/access-tokens/.well-known/jwks.json"
320
- }
321
- }
322
- }
323
- }
324
- }
325
- }
326
- }
327
- }
328
- },
329
- "/v1/access-tokens/public/.well-known/jwks.json": {
330
- "get": {
331
- "operationId": "getPublicTokenJwks",
332
- "summary": "getPublicTokenJwks",
333
- "description": "Get jwks public key set to verify public tokens generated by this API",
334
- "tags": [
335
- "Public"
336
- ],
337
- "security": [],
338
- "responses": {
339
- "200": {
340
- "description": "Set of jwks",
341
- "content": {
342
- "application/json": {
343
- "schema": {
344
- "type": "object",
345
- "properties": {
346
- "keys": {
347
- "type": "array",
348
- "items": {
349
- "type": "object",
350
- "properties": {
351
- "alg": {
352
- "type": "string",
353
- "example": "RS256"
354
- },
355
- "e": {
356
- "type": "string",
357
- "example": "AQAB"
358
- },
359
- "kid": {
360
- "type": "string",
361
- "example": "tXWU5mPMbRPczpbQwi6vbhLF4GgF3wlMDSyqo7pfeiw="
362
- },
363
- "kty": {
364
- "type": "string",
365
- "example": "RSA"
366
- },
367
- "n": {
368
- "type": "string",
369
- "example": "h_QDoCjZ8W_trtYXaP7_S22wf5r5Wd9XBLED78oT44bJjQXn8ddcFV8Hik65_4IYXVX_hTTU4zpxe3H8vx2j7-Zz3O59mYMp5S0MzODNEdf5Y_2o19eis0brmAJniixsNlQ9LlYkdrVamrgaxHu3ZpP_99zkfFybYeuYoQNzb3PyrT8xVnz_USs_nlFMHpGUxvvz7gfKPqxcLvgLJr4cwI9yzaSY9CD4qW181QVcnL_WzpQ8xx6AuhhHZQ1l_3GG4InTk8ahE7U2ZHVu8RrX6d01pMgc3piEcet9RgFLnhbTg3YIiKGoAbN42wJn_x3lgIAC42T9mbmTsHyUdS6nUQ"
370
- },
371
- "use": {
372
- "type": "string",
373
- "example": "sig"
374
- }
375
- }
376
- }
377
- }
378
- }
379
- }
380
- }
381
- }
382
- }
383
- }
384
- }
385
- },
386
- "/v1/access-tokens/portal-preview/.well-known/jwks.json": {
387
- "get": {
388
- "operationId": "getPortalPreviewTokenJwks",
389
- "summary": "getPortalPreviewTokenJwks",
390
- "description": "Get jwks public key set to verify portal preview tokens generated by this API",
391
- "tags": [
392
- "Public"
393
- ],
394
- "security": [],
395
- "responses": {
396
- "200": {
397
- "description": "Set of jwks",
398
- "content": {
399
- "application/json": {
400
- "schema": {
401
- "type": "object",
402
- "properties": {
403
- "keys": {
404
- "type": "array",
405
- "items": {
406
- "type": "object",
407
- "properties": {
408
- "alg": {
409
- "type": "string",
410
- "example": "RS256"
411
- },
412
- "e": {
413
- "type": "string",
414
- "example": "AQAB"
415
- },
416
- "kid": {
417
- "type": "string",
418
- "example": "tXWU5mPMbRPczpbQwi6vbhLF4GgF3wlMDSyqo7pfeiw="
419
- },
420
- "kty": {
421
- "type": "string",
422
- "example": "RSA"
423
- },
424
- "n": {
425
- "type": "string",
426
- "example": "h_QDoCjZ8W_trtYXaP7_S22wf5r5Wd9XBLED78oT44bJjQXn8ddcFV8Hik65_4IYXVX_hTTU4zpxe3H8vx2j7-Zz3O59mYMp5S0MzODNEdf5Y_2o19eis0brmAJniixsNlQ9LlYkdrVamrgaxHu3ZpP_99zkfFybYeuYoQNzb3PyrT8xVnz_USs_nlFMHpGUxvvz7gfKPqxcLvgLJr4cwI9yzaSY9CD4qW181QVcnL_WzpQ8xx6AuhhHZQ1l_3GG4InTk8ahE7U2ZHVu8RrX6d01pMgc3piEcet9RgFLnhbTg3YIiKGoAbN42wJn_x3lgIAC42T9mbmTsHyUdS6nUQ"
427
- },
428
- "use": {
429
- "type": "string",
430
- "example": "sig"
431
- }
432
- }
433
- }
434
- }
435
- }
436
- }
437
- }
438
- }
439
- }
440
- }
441
- }
442
- },
443
- "/v1/access-tokens/public/.well-known/openid-configuration": {
444
- "get": {
445
- "operationId": "getPublicTokenOIDC",
446
- "summary": "getPublicTokenOIDC",
447
- "description": "OpenID Connect configuration for Access Token API a a public identity provider\n\nNote: This API is not a fully compliant OAuth2.0 / OIDC identity provider, but this endpoint is useful to\nautomate the process of verifying JWT tokens.\n",
448
- "tags": [
449
- "Public"
450
- ],
451
- "security": [],
452
- "responses": {
453
- "200": {
454
- "description": "OpenID Configuration",
455
- "content": {
456
- "application/json": {
457
- "schema": {
458
- "type": "object",
459
- "properties": {
460
- "issuer": {
461
- "type": "string",
462
- "format": "uri",
463
- "example": "https://access-token.sls.epilot.io/v1/access-tokens"
464
- },
465
- "jwks_uri": {
466
- "type": "string",
467
- "format": "uri",
468
- "example": "https://access-token.sls.epilot.io/v1/access-tokens/.well-known/jwks.json"
469
- }
470
- }
471
- }
472
- }
473
- }
474
- }
475
- }
476
- }
477
- },
478
- "/v1/access-tokens/portal-preview/.well-known/openid-configuration": {
479
- "get": {
480
- "operationId": "getPortalPreviewTokenOIDC",
481
- "summary": "getPortalPreviewTokenOIDC",
482
- "description": "OpenID Connect configuration for Access Token API a a portal preview identity provider\n\nNote: This API is not a fully compliant OAuth2.0 / OIDC identity provider, but this endpoint is useful to\nautomate the process of verifying JWT tokens.\n",
483
- "tags": [
484
- "Public"
485
- ],
486
- "security": [],
487
- "responses": {
488
- "200": {
489
- "description": "OpenID Configuration",
490
- "content": {
491
- "application/json": {
492
- "schema": {
493
- "type": "object",
494
- "properties": {
495
- "issuer": {
496
- "type": "string",
497
- "format": "uri",
498
- "example": "https://access-token.sls.epilot.io/v1/access-tokens/portal-preview"
499
- },
500
- "jwks_uri": {
501
- "type": "string",
502
- "format": "uri",
503
- "example": "https://access-token.sls.epilot.io/v1/access-tokens/portal-preview/.well-known/jwks.json"
504
- }
505
- }
506
- }
507
- }
508
- }
509
- }
510
- }
511
- }
512
- },
513
- "/v1/access-tokens/contact-identification/.well-known/jwks.json": {
514
- "get": {
515
- "operationId": "getContactIdentificationTokenJwks",
516
- "summary": "getContactIdentificationTokenJwks",
517
- "description": "Get jwks public key set to verify contact identification tokens generated by this API",
518
- "tags": [
519
- "Public"
520
- ],
521
- "security": [],
522
- "responses": {
523
- "200": {
524
- "description": "Set of jwks",
525
- "content": {
526
- "application/json": {
527
- "schema": {
528
- "type": "object",
529
- "properties": {
530
- "keys": {
531
- "type": "array",
532
- "items": {
533
- "type": "object",
534
- "properties": {
535
- "alg": {
536
- "type": "string",
537
- "example": "RS256"
538
- },
539
- "e": {
540
- "type": "string",
541
- "example": "AQAB"
542
- },
543
- "kid": {
544
- "type": "string",
545
- "example": "tXWU5mPMbRPczpbQwi6vbhLF4GgF3wlMDSyqo7pfeiw="
546
- },
547
- "kty": {
548
- "type": "string",
549
- "example": "RSA"
550
- },
551
- "n": {
552
- "type": "string",
553
- "example": "h_QDoCjZ8W_trtYXaP7_S22wf5r5Wd9XBLED78oT44bJjQXn8ddcFV8Hik65_4IYXVX_hTTU4zpxe3H8vx2j7-Zz3O59mYMp5S0MzODNEdf5Y_2o19eis0brmAJniixsNlQ9LlYkdrVamrgaxHu3ZpP_99zkfFybYeuYoQNzb3PyrT8xVnz_USs_nlFMHpGUxvvz7gfKPqxcLvgLJr4cwI9yzaSY9CD4qW181QVcnL_WzpQ8xx6AuhhHZQ1l_3GG4InTk8ahE7U2ZHVu8RrX6d01pMgc3piEcet9RgFLnhbTg3YIiKGoAbN42wJn_x3lgIAC42T9mbmTsHyUdS6nUQ"
554
- },
555
- "use": {
556
- "type": "string",
557
- "example": "sig"
558
- }
559
- }
560
- }
561
- }
562
- }
563
- }
564
- }
565
- }
566
- }
567
- }
568
- }
569
- },
570
- "/v1/access-tokens/contact-identification/.well-known/openid-configuration": {
571
- "get": {
572
- "operationId": "getContactIdentificationTokenOIDC",
573
- "summary": "getContactIdentificationTokenOIDC",
574
- "description": "OpenID Connect configuration for Access Token API as a contact identification identity provider\n\nNote: This API is not a fully compliant OAuth2.0 / OIDC identity provider, but this endpoint is useful to\nautomate the process of verifying JWT tokens.\n",
575
- "tags": [
576
- "Public"
577
- ],
578
- "security": [],
579
- "responses": {
580
- "200": {
581
- "description": "OpenID Configuration",
582
- "content": {
583
- "application/json": {
584
- "schema": {
585
- "type": "object",
586
- "properties": {
587
- "issuer": {
588
- "type": "string",
589
- "format": "uri",
590
- "example": "https://access-token.sls.epilot.io/v1/access-tokens/contact-identification"
591
- },
592
- "jwks_uri": {
593
- "type": "string",
594
- "format": "uri",
595
- "example": "https://access-token.sls.epilot.io/v1/access-tokens/contact-identification/.well-known/jwks.json"
596
- }
597
- }
598
- }
599
- }
600
- }
601
- }
602
- }
603
- }
604
- }
605
- },
606
- "components": {
607
- "securitySchemes": {
608
- "EpilotAuth": {
609
- "type": "http",
610
- "scheme": "bearer",
611
- "description": "Authorization header with epilot OAuth2 bearer token",
612
- "bearerFormat": "JWT"
613
- },
614
- "EpilotOrg": {
615
- "description": "Overrides the target organization to allow shared tenantaccess",
616
- "name": "x-epilot-org-id",
617
- "in": "header",
618
- "type": "apiKey"
619
- }
620
- },
621
- "schemas": {
622
- "AccessToken": {
623
- "type": "string",
624
- "description": "A JWT Access Token",
625
- "example": "eyJhbGciOiJIUzI1NiIsInR5cCI6Ikp..."
626
- },
627
- "AccessTokenId": {
628
- "type": "string",
629
- "example": "api_5ZugdRXasLfWBypHi93Fk"
630
- },
631
- "AccessTokenName": {
632
- "type": "string",
633
- "description": "Human readable name for access token",
634
- "example": "Postman Access Token"
635
- },
636
- "AccessTokenType": {
637
- "type": "string",
638
- "enum": [
639
- "api",
640
- "journey",
641
- "portal",
642
- "assume",
643
- "app",
644
- "portal_preview",
645
- "contact_identification"
646
- ],
647
- "description": "Access token type",
648
- "example": "api"
649
- },
650
- "AccessTokenJourneyId": {
651
- "type": "string",
652
- "description": "Journey ID for access token type \"journey\""
653
- },
654
- "PortalId": {
655
- "type": "string",
656
- "description": "Portal ID for access token type \"portal\""
657
- },
658
- "PortalUserId": {
659
- "type": "string",
660
- "description": "Portal User ID for access token type \"portal_preview\""
661
- },
662
- "ContactId": {
663
- "type": "string",
664
- "description": "Contact entity ID for access token type \"contact_identification\"",
665
- "example": "5da0a718-c822-403d-9f5d-20d4584e0528"
666
- },
667
- "AllowedOperations": {
668
- "type": "array",
669
- "description": "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.",
670
- "items": {
671
- "type": "string"
672
- },
673
- "example": [
674
- "getContact",
675
- "getContracts"
676
- ]
677
- },
678
- "TokenParameters": {
679
- "anyOf": [
680
- {
681
- "$ref": "#/components/schemas/AccessTokenParameters"
682
- },
683
- {
684
- "$ref": "#/components/schemas/JourneyTokenParameters"
685
- },
686
- {
687
- "$ref": "#/components/schemas/PortalTokenParameters"
688
- },
689
- {
690
- "$ref": "#/components/schemas/AssumeTokenParameters"
691
- },
692
- {
693
- "$ref": "#/components/schemas/AppTokenParameters"
694
- },
695
- {
696
- "$ref": "#/components/schemas/PortalPreviewTokenParameters"
697
- },
698
- {
699
- "$ref": "#/components/schemas/ContactIdentificationTokenParameters"
700
- }
701
- ]
702
- },
703
- "ExpiresIn": {
704
- "oneOf": [
705
- {
706
- "type": "integer",
707
- "format": "int32",
708
- "description": "Expiration time in seconds. api tokens may live up to 365 days (31536000); all other token types are capped at 7 days (604800) server-side.",
709
- "example": 3600,
710
- "minimum": 30,
711
- "maximum": 31536000
712
- },
713
- {
714
- "type": "string",
715
- "description": "Expiration time as a string with time units (e.g., '10h', '7d', '2 days')",
716
- "example": "1h",
717
- "pattern": "^[0-9]+ ?(ms|milliseconds?|s|seconds?|m|minutes?|h|hours?|d|days?|w|weeks?|y|years?)?$"
718
- }
719
- ]
720
- },
721
- "ReadOnly": {
722
- "type": "boolean",
723
- "description": "When 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.",
724
- "example": true
725
- },
726
- "Anonymize": {
727
- "type": "boolean",
728
- "default": false,
729
- "description": "Forces PII anonymization on all entity data returned to this token. Cannot be disabled by the token bearer. See entity-api anonymized responses.",
730
- "example": true
731
- },
732
- "AccessTokenParameters": {
733
- "type": "object",
734
- "additionalProperties": false,
735
- "properties": {
736
- "name": {
737
- "$ref": "#/components/schemas/AccessTokenName"
738
- },
739
- "token_type": {
740
- "type": "string",
741
- "enum": [
742
- "api"
743
- ]
744
- },
745
- "assignments": {
746
- "$ref": "#/components/schemas/Assignments"
747
- },
748
- "expires_in": {
749
- "$ref": "#/components/schemas/ExpiresIn"
750
- },
751
- "read_only": {
752
- "$ref": "#/components/schemas/ReadOnly"
753
- },
754
- "anonymize": {
755
- "$ref": "#/components/schemas/Anonymize"
756
- }
757
- },
758
- "required": [
759
- "name"
760
- ]
761
- },
762
- "JourneyTokenParameters": {
763
- "type": "object",
764
- "additionalProperties": false,
765
- "properties": {
766
- "name": {
767
- "$ref": "#/components/schemas/AccessTokenName"
768
- },
769
- "token_type": {
770
- "type": "string",
771
- "enum": [
772
- "journey"
773
- ]
774
- },
775
- "journey_id": {
776
- "$ref": "#/components/schemas/AccessTokenJourneyId"
777
- },
778
- "expires_in": {
779
- "$ref": "#/components/schemas/ExpiresIn"
780
- }
781
- },
782
- "required": [
783
- "name",
784
- "journey_id"
785
- ]
786
- },
787
- "PortalTokenParameters": {
788
- "type": "object",
789
- "additionalProperties": false,
790
- "properties": {
791
- "name": {
792
- "$ref": "#/components/schemas/AccessTokenName"
793
- },
794
- "token_type": {
795
- "type": "string",
796
- "enum": [
797
- "portal"
798
- ]
799
- },
800
- "portal_id": {
801
- "$ref": "#/components/schemas/PortalId"
802
- },
803
- "expires_in": {
804
- "$ref": "#/components/schemas/ExpiresIn"
805
- }
806
- },
807
- "required": [
808
- "name",
809
- "portal_id"
810
- ]
811
- },
812
- "AssumeTokenParameters": {
813
- "type": "object",
814
- "additionalProperties": false,
815
- "properties": {
816
- "name": {
817
- "$ref": "#/components/schemas/AccessTokenName"
818
- },
819
- "token_type": {
820
- "type": "string",
821
- "enum": [
822
- "assume"
823
- ]
824
- },
825
- "assignments": {
826
- "$ref": "#/components/schemas/Assignments"
827
- },
828
- "read_only": {
829
- "$ref": "#/components/schemas/ReadOnly"
830
- },
831
- "anonymize": {
832
- "$ref": "#/components/schemas/Anonymize"
833
- }
834
- },
835
- "required": [
836
- "name"
837
- ]
838
- },
839
- "AppTokenParameters": {
840
- "type": "object",
841
- "additionalProperties": false,
842
- "properties": {
843
- "name": {
844
- "$ref": "#/components/schemas/AccessTokenName"
845
- },
846
- "token_type": {
847
- "type": "string",
848
- "enum": [
849
- "app"
850
- ]
851
- },
852
- "assignments": {
853
- "$ref": "#/components/schemas/Assignments"
854
- },
855
- "expires_in": {
856
- "$ref": "#/components/schemas/ExpiresIn"
857
- },
858
- "read_only": {
859
- "$ref": "#/components/schemas/ReadOnly"
860
- },
861
- "anonymize": {
862
- "$ref": "#/components/schemas/Anonymize"
863
- }
864
- },
865
- "required": [
866
- "name"
867
- ]
868
- },
869
- "PortalPreviewTokenParameters": {
870
- "type": "object",
871
- "additionalProperties": false,
872
- "properties": {
873
- "name": {
874
- "$ref": "#/components/schemas/AccessTokenName"
875
- },
876
- "token_type": {
877
- "type": "string",
878
- "enum": [
879
- "portal_preview"
880
- ]
881
- },
882
- "portal_id": {
883
- "$ref": "#/components/schemas/PortalId"
884
- },
885
- "portal_user_id": {
886
- "$ref": "#/components/schemas/PortalUserId"
887
- }
888
- },
889
- "required": [
890
- "name",
891
- "portal_id",
892
- "portal_user_id"
893
- ]
894
- },
895
- "ContactIdentificationTokenParameters": {
896
- "type": "object",
897
- "additionalProperties": false,
898
- "description": "A 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 caller, and is therefore always short-lived and restricted to an explicit operation allowlist. Never stored, so it cannot be listed or revoked - keep expires_in short.",
899
- "properties": {
900
- "name": {
901
- "$ref": "#/components/schemas/AccessTokenName"
902
- },
903
- "token_type": {
904
- "type": "string",
905
- "enum": [
906
- "contact_identification"
907
- ]
908
- },
909
- "portal_id": {
910
- "$ref": "#/components/schemas/PortalId"
911
- },
912
- "contact_id": {
913
- "$ref": "#/components/schemas/ContactId"
914
- },
915
- "surface_id": {
916
- "type": "string",
917
- "minLength": 1,
918
- "maxLength": 64,
919
- "description": "Portal surface the token is issued for (see `surfaces` on the portal config in customer-portal-api). Carried as the `custom:surface_id` claim; the consuming API resolves the surface's data access from the portal config on every request.",
920
- "example": "website-journeys"
921
- },
922
- "allowed_operations": {
923
- "$ref": "#/components/schemas/AllowedOperations"
924
- },
925
- "expires_in": {
926
- "type": "integer",
927
- "format": "int32",
928
- "minimum": 60,
929
- "maximum": 900,
930
- "description": "Lifetime in seconds. Integer only for this token type (no \"5m\" strings), and capped server-side by CONTACT_IDENTIFICATION_TOKEN_MAX_EXPIRATION_SECONDS - the value originates from portal configuration, so it is not trusted as-is.",
931
- "example": 300
932
- },
933
- "email": {
934
- "type": "string",
935
- "description": "Optional. Carried as the `email` claim when the consumer needs it (e.g. to attribute an activity). Omit to keep the contact's email out of the token."
936
- }
937
- },
938
- "required": [
939
- "name",
940
- "portal_id",
941
- "contact_id",
942
- "surface_id",
943
- "allowed_operations",
944
- "expires_in"
945
- ]
946
- },
947
- "AccessTokenItem": {
948
- "type": "object",
949
- "properties": {
950
- "id": {
951
- "$ref": "#/components/schemas/AccessTokenId"
952
- },
953
- "created_at": {
954
- "type": "string",
955
- "format": "date-time"
956
- },
957
- "name": {
958
- "$ref": "#/components/schemas/AccessTokenName"
959
- },
960
- "token_type": {
961
- "$ref": "#/components/schemas/AccessTokenType"
962
- },
963
- "journey_id": {
964
- "$ref": "#/components/schemas/AccessTokenJourneyId"
965
- },
966
- "portal_id": {
967
- "$ref": "#/components/schemas/PortalId"
968
- },
969
- "portal_user_id": {
970
- "$ref": "#/components/schemas/PortalUserId"
971
- },
972
- "contact_id": {
973
- "$ref": "#/components/schemas/ContactId"
974
- },
975
- "allowed_operations": {
976
- "$ref": "#/components/schemas/AllowedOperations"
977
- },
978
- "assignments": {
979
- "$ref": "#/components/schemas/Assignments"
980
- },
981
- "read_only": {
982
- "$ref": "#/components/schemas/ReadOnly"
983
- },
984
- "anonymize": {
985
- "$ref": "#/components/schemas/Anonymize"
986
- },
987
- "last_used": {
988
- "type": "string",
989
- "format": "date",
990
- "description": "Last date the token was used (YYYY-MM-DD format, 1 day accuracy)",
991
- "example": "2026-02-24"
992
- },
993
- "expires_at": {
994
- "type": "string",
995
- "format": "date-time",
996
- "description": "Timestamp when the token expires and stops being accepted (only set for tokens created with expires_in)",
997
- "example": "2026-03-01T12:00:00.000Z"
998
- }
999
- },
1000
- "required": [
1001
- "id",
1002
- "created_at",
1003
- "name"
1004
- ]
1005
- },
1006
- "RoleId": {
1007
- "type": "string",
1008
- "example": "123:owner",
1009
- "description": "Format: <organization_id>:<slug>"
1010
- },
1011
- "Assignments": {
1012
- "type": "array",
1013
- "description": "List of role ids attached to an user",
1014
- "items": {
1015
- "$ref": "#/components/schemas/RoleId"
1016
- }
1017
- }
1018
- }
1019
- },
1020
- "servers": [
1021
- {
1022
- "url": "https://access-token.sls.epilot.io"
1023
- }
1024
- ]
1025
- }