@epilot/sdk 2.20.14 → 2.20.16

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 (126) hide show
  1. package/definitions/access-token-runtime.json +1 -1
  2. package/definitions/access-token.json +193 -3
  3. package/dist/access-token-ADVHFJ63.js +7 -0
  4. package/dist/access-token-CQMYWZIG.cjs +7 -0
  5. package/dist/{access-token-runtime-B6Z7JLUS.cjs → access-token-runtime-3HQN34OF.cjs} +2 -2
  6. package/dist/{access-token-runtime-2PSLN2U3.js → access-token-runtime-MEKGPOGL.js} +1 -1
  7. package/dist/{access-token.d-BhRUc8I-.d.cts → access-token.d-Yy-yrft_.d.cts} +213 -3
  8. package/dist/{access-token.d-BhRUc8I-.d.ts → access-token.d-Yy-yrft_.d.ts} +213 -3
  9. package/dist/apis/access-token.cjs +8 -8
  10. package/dist/apis/access-token.d.cts +2 -2
  11. package/dist/apis/access-token.d.ts +2 -2
  12. package/dist/apis/access-token.js +2 -2
  13. package/dist/apis/address-suggestions.cjs +6 -6
  14. package/dist/apis/address-suggestions.js +1 -1
  15. package/dist/apis/address.cjs +6 -6
  16. package/dist/apis/address.js +1 -1
  17. package/dist/apis/ai-agents.cjs +6 -6
  18. package/dist/apis/ai-agents.js +1 -1
  19. package/dist/apis/app.cjs +6 -6
  20. package/dist/apis/app.js +1 -1
  21. package/dist/apis/audit-logs.cjs +6 -6
  22. package/dist/apis/audit-logs.js +1 -1
  23. package/dist/apis/automation.cjs +6 -6
  24. package/dist/apis/automation.js +1 -1
  25. package/dist/apis/billing.cjs +6 -6
  26. package/dist/apis/billing.js +1 -1
  27. package/dist/apis/blueprint-manifest.cjs +6 -6
  28. package/dist/apis/blueprint-manifest.js +1 -1
  29. package/dist/apis/calendar.cjs +6 -6
  30. package/dist/apis/calendar.js +1 -1
  31. package/dist/apis/configuration-hub.cjs +6 -6
  32. package/dist/apis/configuration-hub.js +1 -1
  33. package/dist/apis/consent.cjs +6 -6
  34. package/dist/apis/consent.js +1 -1
  35. package/dist/apis/customer-portal.cjs +6 -6
  36. package/dist/apis/customer-portal.js +1 -1
  37. package/dist/apis/dashboard.cjs +6 -6
  38. package/dist/apis/dashboard.js +1 -1
  39. package/dist/apis/data-governance.cjs +6 -6
  40. package/dist/apis/data-governance.js +1 -1
  41. package/dist/apis/deduplication.cjs +6 -6
  42. package/dist/apis/deduplication.js +1 -1
  43. package/dist/apis/design.cjs +6 -6
  44. package/dist/apis/design.js +1 -1
  45. package/dist/apis/document.cjs +6 -6
  46. package/dist/apis/document.js +1 -1
  47. package/dist/apis/email-settings.cjs +6 -6
  48. package/dist/apis/email-settings.js +1 -1
  49. package/dist/apis/email-template.cjs +6 -6
  50. package/dist/apis/email-template.js +1 -1
  51. package/dist/apis/entity-mapping.cjs +6 -6
  52. package/dist/apis/entity-mapping.js +1 -1
  53. package/dist/apis/entity.cjs +6 -6
  54. package/dist/apis/entity.js +1 -1
  55. package/dist/apis/environments.cjs +6 -6
  56. package/dist/apis/environments.js +1 -1
  57. package/dist/apis/event-catalog.cjs +6 -6
  58. package/dist/apis/event-catalog.js +1 -1
  59. package/dist/apis/file.cjs +6 -6
  60. package/dist/apis/file.js +1 -1
  61. package/dist/apis/iban.cjs +6 -6
  62. package/dist/apis/iban.js +1 -1
  63. package/dist/apis/integration-toolkit.cjs +6 -6
  64. package/dist/apis/integration-toolkit.js +1 -1
  65. package/dist/apis/journey.cjs +6 -6
  66. package/dist/apis/journey.js +1 -1
  67. package/dist/apis/kanban.cjs +6 -6
  68. package/dist/apis/kanban.js +1 -1
  69. package/dist/apis/message.cjs +6 -6
  70. package/dist/apis/message.js +1 -1
  71. package/dist/apis/metering.cjs +6 -6
  72. package/dist/apis/metering.js +1 -1
  73. package/dist/apis/notes.cjs +6 -6
  74. package/dist/apis/notes.js +1 -1
  75. package/dist/apis/notification.cjs +6 -6
  76. package/dist/apis/notification.js +1 -1
  77. package/dist/apis/organization.cjs +6 -6
  78. package/dist/apis/organization.js +1 -1
  79. package/dist/apis/partner-directory.cjs +6 -6
  80. package/dist/apis/partner-directory.js +1 -1
  81. package/dist/apis/permissions.cjs +6 -6
  82. package/dist/apis/permissions.js +1 -1
  83. package/dist/apis/pricing-tier.cjs +6 -6
  84. package/dist/apis/pricing-tier.js +1 -1
  85. package/dist/apis/pricing.cjs +6 -6
  86. package/dist/apis/pricing.js +1 -1
  87. package/dist/apis/purpose.cjs +6 -6
  88. package/dist/apis/purpose.js +1 -1
  89. package/dist/apis/query.cjs +6 -6
  90. package/dist/apis/query.js +1 -1
  91. package/dist/apis/sandbox.cjs +6 -6
  92. package/dist/apis/sandbox.js +1 -1
  93. package/dist/apis/sharing.cjs +6 -6
  94. package/dist/apis/sharing.js +1 -1
  95. package/dist/apis/snapshot.cjs +6 -6
  96. package/dist/apis/snapshot.js +1 -1
  97. package/dist/apis/submission.cjs +6 -6
  98. package/dist/apis/submission.js +1 -1
  99. package/dist/apis/target.cjs +6 -6
  100. package/dist/apis/target.js +1 -1
  101. package/dist/apis/targeting.cjs +6 -6
  102. package/dist/apis/targeting.js +1 -1
  103. package/dist/apis/template-variables.cjs +6 -6
  104. package/dist/apis/template-variables.js +1 -1
  105. package/dist/apis/user.cjs +6 -6
  106. package/dist/apis/user.js +1 -1
  107. package/dist/apis/validation-rules.cjs +6 -6
  108. package/dist/apis/validation-rules.js +1 -1
  109. package/dist/apis/webhooks.cjs +6 -6
  110. package/dist/apis/webhooks.js +1 -1
  111. package/dist/apis/workflow-definition.cjs +6 -6
  112. package/dist/apis/workflow-definition.js +1 -1
  113. package/dist/apis/workflow.cjs +6 -6
  114. package/dist/apis/workflow.js +1 -1
  115. package/dist/{chunk-FONJD6VA.js → chunk-2LP3UTEA.js} +2 -2
  116. package/dist/{chunk-ELW4V3ID.cjs → chunk-BV7UB72B.cjs} +2 -2
  117. package/dist/{chunk-OHHHS4HH.js → chunk-TW4SUGOF.js} +1 -1
  118. package/dist/{chunk-S5HBBTKM.cjs → chunk-ZMBA3WV4.cjs} +1 -1
  119. package/dist/index.cjs +10 -10
  120. package/dist/index.d.cts +1 -1
  121. package/dist/index.d.ts +1 -1
  122. package/dist/index.js +2 -2
  123. package/docs/access-token.md +120 -5
  124. package/package.json +1 -1
  125. package/dist/access-token-7Y2MDFZH.cjs +0 -7
  126. package/dist/access-token-NWN7UBUP.js +0 -7
@@ -38,6 +38,21 @@ declare namespace Components {
38
38
  journey_id?: /* Journey ID for access token type "journey" */ AccessTokenJourneyId;
39
39
  portal_id?: /* Portal ID for access token type "portal" */ PortalId;
40
40
  portal_user_id?: /* Portal User ID for access token type "portal_preview" */ PortalUserId;
41
+ contact_id?: /**
42
+ * Contact entity ID for access token type "contact_identification"
43
+ * example:
44
+ * 5da0a718-c822-403d-9f5d-20d4584e0528
45
+ */
46
+ ContactId;
47
+ allowed_operations?: /**
48
+ * 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.
49
+ * example:
50
+ * [
51
+ * "getContact",
52
+ * "getContracts"
53
+ * ]
54
+ */
55
+ AllowedOperations;
41
56
  assignments?: /* List of role ids attached to an user */ Assignments;
42
57
  read_only?: /**
43
58
  * 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.
@@ -57,6 +72,12 @@ declare namespace Components {
57
72
  * 2026-02-24
58
73
  */
59
74
  last_used?: string; // date
75
+ /**
76
+ * Timestamp when the token expires and stops being accepted (only set for tokens created with expires_in)
77
+ * example:
78
+ * 2026-03-01T12:00:00.000Z
79
+ */
80
+ expires_at?: string; // date-time
60
81
  }
61
82
  /**
62
83
  * Journey ID for access token type "journey"
@@ -96,7 +117,16 @@ declare namespace Components {
96
117
  * example:
97
118
  * api
98
119
  */
99
- export type AccessTokenType = "api" | "journey" | "portal" | "assume" | "app" | "portal_preview";
120
+ export type AccessTokenType = "api" | "journey" | "portal" | "assume" | "app" | "portal_preview" | "contact_identification";
121
+ /**
122
+ * 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.
123
+ * example:
124
+ * [
125
+ * "getContact",
126
+ * "getContracts"
127
+ * ]
128
+ */
129
+ export type AllowedOperations = string[];
100
130
  /**
101
131
  * Forces PII anonymization on all entity data returned to this token. Cannot be disabled by the token bearer. See entity-api anonymized responses.
102
132
  * example:
@@ -157,6 +187,56 @@ declare namespace Components {
157
187
  */
158
188
  Anonymize;
159
189
  }
190
+ /**
191
+ * Contact entity ID for access token type "contact_identification"
192
+ * example:
193
+ * 5da0a718-c822-403d-9f5d-20d4584e0528
194
+ */
195
+ export type ContactId = string;
196
+ /**
197
+ * 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.
198
+ */
199
+ export interface ContactIdentificationTokenParameters {
200
+ name: /**
201
+ * Human readable name for access token
202
+ * example:
203
+ * Postman Access Token
204
+ */
205
+ AccessTokenName;
206
+ token_type?: "contact_identification";
207
+ portal_id: /* Portal ID for access token type "portal" */ PortalId;
208
+ contact_id: /**
209
+ * Contact entity ID for access token type "contact_identification"
210
+ * example:
211
+ * 5da0a718-c822-403d-9f5d-20d4584e0528
212
+ */
213
+ ContactId;
214
+ /**
215
+ * 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.
216
+ * example:
217
+ * website-journeys
218
+ */
219
+ surface_id: string;
220
+ allowed_operations: /**
221
+ * 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.
222
+ * example:
223
+ * [
224
+ * "getContact",
225
+ * "getContracts"
226
+ * ]
227
+ */
228
+ AllowedOperations;
229
+ /**
230
+ * 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.
231
+ * example:
232
+ * 300
233
+ */
234
+ expires_in: number; // int32
235
+ /**
236
+ * 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.
237
+ */
238
+ email?: string;
239
+ }
160
240
  export type ExpiresIn = number /* int32 */ | string /* ^[0-9]+ ?(ms|milliseconds?|s|seconds?|m|minutes?|h|hours?|d|days?|w|weeks?|y|years?)?$ */;
161
241
  export interface JourneyTokenParameters {
162
242
  name: /**
@@ -211,7 +291,7 @@ declare namespace Components {
211
291
  * 123:owner
212
292
  */
213
293
  export type RoleId = string;
214
- export type TokenParameters = AccessTokenParameters | JourneyTokenParameters | PortalTokenParameters | AssumeTokenParameters | AppTokenParameters | PortalPreviewTokenParameters;
294
+ export type TokenParameters = AccessTokenParameters | JourneyTokenParameters | PortalTokenParameters | AssumeTokenParameters | AppTokenParameters | PortalPreviewTokenParameters | /* 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. */ ContactIdentificationTokenParameters;
215
295
  }
216
296
  }
217
297
  declare namespace Paths {
@@ -246,6 +326,21 @@ declare namespace Paths {
246
326
  journey_id?: /* Journey ID for access token type "journey" */ Components.Schemas.AccessTokenJourneyId;
247
327
  portal_id?: /* Portal ID for access token type "portal" */ Components.Schemas.PortalId;
248
328
  portal_user_id?: /* Portal User ID for access token type "portal_preview" */ Components.Schemas.PortalUserId;
329
+ contact_id?: /**
330
+ * Contact entity ID for access token type "contact_identification"
331
+ * example:
332
+ * 5da0a718-c822-403d-9f5d-20d4584e0528
333
+ */
334
+ Components.Schemas.ContactId;
335
+ allowed_operations?: /**
336
+ * 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.
337
+ * example:
338
+ * [
339
+ * "getContact",
340
+ * "getContracts"
341
+ * ]
342
+ */
343
+ Components.Schemas.AllowedOperations;
249
344
  assignments?: /* List of role ids attached to an user */ Components.Schemas.Assignments;
250
345
  read_only?: /**
251
346
  * 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.
@@ -265,6 +360,12 @@ declare namespace Paths {
265
360
  * 2026-02-24
266
361
  */
267
362
  last_used?: string; // date
363
+ /**
364
+ * Timestamp when the token expires and stops being accepted (only set for tokens created with expires_in)
365
+ * example:
366
+ * 2026-03-01T12:00:00.000Z
367
+ */
368
+ expires_at?: string; // date-time
268
369
  }
269
370
  export interface $400 {
270
371
  status?: number;
@@ -330,6 +431,60 @@ declare namespace Paths {
330
431
  }
331
432
  }
332
433
  }
434
+ namespace GetContactIdentificationTokenJwks {
435
+ namespace Responses {
436
+ export interface $200 {
437
+ keys?: {
438
+ /**
439
+ * example:
440
+ * RS256
441
+ */
442
+ alg?: string;
443
+ /**
444
+ * example:
445
+ * AQAB
446
+ */
447
+ e?: string;
448
+ /**
449
+ * example:
450
+ * tXWU5mPMbRPczpbQwi6vbhLF4GgF3wlMDSyqo7pfeiw=
451
+ */
452
+ kid?: string;
453
+ /**
454
+ * example:
455
+ * RSA
456
+ */
457
+ kty?: string;
458
+ /**
459
+ * example:
460
+ * h_QDoCjZ8W_trtYXaP7_S22wf5r5Wd9XBLED78oT44bJjQXn8ddcFV8Hik65_4IYXVX_hTTU4zpxe3H8vx2j7-Zz3O59mYMp5S0MzODNEdf5Y_2o19eis0brmAJniixsNlQ9LlYkdrVamrgaxHu3ZpP_99zkfFybYeuYoQNzb3PyrT8xVnz_USs_nlFMHpGUxvvz7gfKPqxcLvgLJr4cwI9yzaSY9CD4qW181QVcnL_WzpQ8xx6AuhhHZQ1l_3GG4InTk8ahE7U2ZHVu8RrX6d01pMgc3piEcet9RgFLnhbTg3YIiKGoAbN42wJn_x3lgIAC42T9mbmTsHyUdS6nUQ
461
+ */
462
+ n?: string;
463
+ /**
464
+ * example:
465
+ * sig
466
+ */
467
+ use?: string;
468
+ }[];
469
+ }
470
+ }
471
+ }
472
+ namespace GetContactIdentificationTokenOIDC {
473
+ namespace Responses {
474
+ export interface $200 {
475
+ /**
476
+ * example:
477
+ * https://access-token.sls.epilot.io/v1/access-tokens/contact-identification
478
+ */
479
+ issuer?: string; // uri
480
+ /**
481
+ * example:
482
+ * https://access-token.sls.epilot.io/v1/access-tokens/contact-identification/.well-known/jwks.json
483
+ */
484
+ jwks_uri?: string; // uri
485
+ }
486
+ }
487
+ }
333
488
  namespace GetPortalPreviewTokenJwks {
334
489
  namespace Responses {
335
490
  export interface $200 {
@@ -587,6 +742,30 @@ interface OperationMethods {
587
742
  data?: any,
588
743
  config?: AxiosRequestConfig
589
744
  ): OperationResponse<Paths.GetPortalPreviewTokenOIDC.Responses.$200>
745
+ /**
746
+ * getContactIdentificationTokenJwks - getContactIdentificationTokenJwks
747
+ *
748
+ * Get jwks public key set to verify contact identification tokens generated by this API
749
+ */
750
+ 'getContactIdentificationTokenJwks'(
751
+ parameters?: Parameters<UnknownParamsObject> | null,
752
+ data?: any,
753
+ config?: AxiosRequestConfig
754
+ ): OperationResponse<Paths.GetContactIdentificationTokenJwks.Responses.$200>
755
+ /**
756
+ * getContactIdentificationTokenOIDC - getContactIdentificationTokenOIDC
757
+ *
758
+ * OpenID Connect configuration for Access Token API as a contact identification identity provider
759
+ *
760
+ * Note: This API is not a fully compliant OAuth2.0 / OIDC identity provider, but this endpoint is useful to
761
+ * automate the process of verifying JWT tokens.
762
+ *
763
+ */
764
+ 'getContactIdentificationTokenOIDC'(
765
+ parameters?: Parameters<UnknownParamsObject> | null,
766
+ data?: any,
767
+ config?: AxiosRequestConfig
768
+ ): OperationResponse<Paths.GetContactIdentificationTokenOIDC.Responses.$200>
590
769
  }
591
770
 
592
771
  interface PathsDictionary {
@@ -720,6 +899,34 @@ interface PathsDictionary {
720
899
  config?: AxiosRequestConfig
721
900
  ): OperationResponse<Paths.GetPortalPreviewTokenOIDC.Responses.$200>
722
901
  }
902
+ ['/v1/access-tokens/contact-identification/.well-known/jwks.json']: {
903
+ /**
904
+ * getContactIdentificationTokenJwks - getContactIdentificationTokenJwks
905
+ *
906
+ * Get jwks public key set to verify contact identification tokens generated by this API
907
+ */
908
+ 'get'(
909
+ parameters?: Parameters<UnknownParamsObject> | null,
910
+ data?: any,
911
+ config?: AxiosRequestConfig
912
+ ): OperationResponse<Paths.GetContactIdentificationTokenJwks.Responses.$200>
913
+ }
914
+ ['/v1/access-tokens/contact-identification/.well-known/openid-configuration']: {
915
+ /**
916
+ * getContactIdentificationTokenOIDC - getContactIdentificationTokenOIDC
917
+ *
918
+ * OpenID Connect configuration for Access Token API as a contact identification identity provider
919
+ *
920
+ * Note: This API is not a fully compliant OAuth2.0 / OIDC identity provider, but this endpoint is useful to
921
+ * automate the process of verifying JWT tokens.
922
+ *
923
+ */
924
+ 'get'(
925
+ parameters?: Parameters<UnknownParamsObject> | null,
926
+ data?: any,
927
+ config?: AxiosRequestConfig
928
+ ): OperationResponse<Paths.GetContactIdentificationTokenOIDC.Responses.$200>
929
+ }
723
930
  }
724
931
 
725
932
  type Client = OpenAPIClient<OperationMethods, PathsDictionary>
@@ -732,10 +939,13 @@ type AccessTokenJourneyId = Components.Schemas.AccessTokenJourneyId;
732
939
  type AccessTokenName = Components.Schemas.AccessTokenName;
733
940
  type AccessTokenParameters = Components.Schemas.AccessTokenParameters;
734
941
  type AccessTokenType = Components.Schemas.AccessTokenType;
942
+ type AllowedOperations = Components.Schemas.AllowedOperations;
735
943
  type Anonymize = Components.Schemas.Anonymize;
736
944
  type AppTokenParameters = Components.Schemas.AppTokenParameters;
737
945
  type Assignments = Components.Schemas.Assignments;
738
946
  type AssumeTokenParameters = Components.Schemas.AssumeTokenParameters;
947
+ type ContactId = Components.Schemas.ContactId;
948
+ type ContactIdentificationTokenParameters = Components.Schemas.ContactIdentificationTokenParameters;
739
949
  type ExpiresIn = Components.Schemas.ExpiresIn;
740
950
  type JourneyTokenParameters = Components.Schemas.JourneyTokenParameters;
741
951
  type PortalId = Components.Schemas.PortalId;
@@ -746,4 +956,4 @@ type ReadOnly = Components.Schemas.ReadOnly;
746
956
  type RoleId = Components.Schemas.RoleId;
747
957
  type TokenParameters = Components.Schemas.TokenParameters;
748
958
 
749
- export { type AccessToken as A, type Client as C, type ExpiresIn as E, type JourneyTokenParameters as J, type OperationMethods as O, Paths as P, type ReadOnly as R, type TokenParameters as T, Components as a, type PathsDictionary as b, type AccessTokenId as c, type AccessTokenItem as d, type AccessTokenJourneyId as e, type AccessTokenName as f, type AccessTokenParameters as g, type AccessTokenType as h, type Anonymize as i, type AppTokenParameters as j, type Assignments as k, type AssumeTokenParameters as l, type PortalId as m, type PortalPreviewTokenParameters as n, type PortalTokenParameters as o, type PortalUserId as p, type RoleId as q };
959
+ export { type AccessToken as A, type Client as C, type ExpiresIn as E, type JourneyTokenParameters as J, type OperationMethods as O, Paths as P, type ReadOnly as R, type TokenParameters as T, Components as a, type PathsDictionary as b, type AccessTokenId as c, type AccessTokenItem as d, type AccessTokenJourneyId as e, type AccessTokenName as f, type AccessTokenParameters as g, type AccessTokenType as h, type AllowedOperations as i, type Anonymize as j, type AppTokenParameters as k, type Assignments as l, type AssumeTokenParameters as m, type ContactId as n, type ContactIdentificationTokenParameters as o, type PortalId as p, type PortalPreviewTokenParameters as q, type PortalTokenParameters as r, type PortalUserId as s, type RoleId as t };
@@ -38,6 +38,21 @@ declare namespace Components {
38
38
  journey_id?: /* Journey ID for access token type "journey" */ AccessTokenJourneyId;
39
39
  portal_id?: /* Portal ID for access token type "portal" */ PortalId;
40
40
  portal_user_id?: /* Portal User ID for access token type "portal_preview" */ PortalUserId;
41
+ contact_id?: /**
42
+ * Contact entity ID for access token type "contact_identification"
43
+ * example:
44
+ * 5da0a718-c822-403d-9f5d-20d4584e0528
45
+ */
46
+ ContactId;
47
+ allowed_operations?: /**
48
+ * 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.
49
+ * example:
50
+ * [
51
+ * "getContact",
52
+ * "getContracts"
53
+ * ]
54
+ */
55
+ AllowedOperations;
41
56
  assignments?: /* List of role ids attached to an user */ Assignments;
42
57
  read_only?: /**
43
58
  * 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.
@@ -57,6 +72,12 @@ declare namespace Components {
57
72
  * 2026-02-24
58
73
  */
59
74
  last_used?: string; // date
75
+ /**
76
+ * Timestamp when the token expires and stops being accepted (only set for tokens created with expires_in)
77
+ * example:
78
+ * 2026-03-01T12:00:00.000Z
79
+ */
80
+ expires_at?: string; // date-time
60
81
  }
61
82
  /**
62
83
  * Journey ID for access token type "journey"
@@ -96,7 +117,16 @@ declare namespace Components {
96
117
  * example:
97
118
  * api
98
119
  */
99
- export type AccessTokenType = "api" | "journey" | "portal" | "assume" | "app" | "portal_preview";
120
+ export type AccessTokenType = "api" | "journey" | "portal" | "assume" | "app" | "portal_preview" | "contact_identification";
121
+ /**
122
+ * 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.
123
+ * example:
124
+ * [
125
+ * "getContact",
126
+ * "getContracts"
127
+ * ]
128
+ */
129
+ export type AllowedOperations = string[];
100
130
  /**
101
131
  * Forces PII anonymization on all entity data returned to this token. Cannot be disabled by the token bearer. See entity-api anonymized responses.
102
132
  * example:
@@ -157,6 +187,56 @@ declare namespace Components {
157
187
  */
158
188
  Anonymize;
159
189
  }
190
+ /**
191
+ * Contact entity ID for access token type "contact_identification"
192
+ * example:
193
+ * 5da0a718-c822-403d-9f5d-20d4584e0528
194
+ */
195
+ export type ContactId = string;
196
+ /**
197
+ * 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.
198
+ */
199
+ export interface ContactIdentificationTokenParameters {
200
+ name: /**
201
+ * Human readable name for access token
202
+ * example:
203
+ * Postman Access Token
204
+ */
205
+ AccessTokenName;
206
+ token_type?: "contact_identification";
207
+ portal_id: /* Portal ID for access token type "portal" */ PortalId;
208
+ contact_id: /**
209
+ * Contact entity ID for access token type "contact_identification"
210
+ * example:
211
+ * 5da0a718-c822-403d-9f5d-20d4584e0528
212
+ */
213
+ ContactId;
214
+ /**
215
+ * 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.
216
+ * example:
217
+ * website-journeys
218
+ */
219
+ surface_id: string;
220
+ allowed_operations: /**
221
+ * 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.
222
+ * example:
223
+ * [
224
+ * "getContact",
225
+ * "getContracts"
226
+ * ]
227
+ */
228
+ AllowedOperations;
229
+ /**
230
+ * 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.
231
+ * example:
232
+ * 300
233
+ */
234
+ expires_in: number; // int32
235
+ /**
236
+ * 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.
237
+ */
238
+ email?: string;
239
+ }
160
240
  export type ExpiresIn = number /* int32 */ | string /* ^[0-9]+ ?(ms|milliseconds?|s|seconds?|m|minutes?|h|hours?|d|days?|w|weeks?|y|years?)?$ */;
161
241
  export interface JourneyTokenParameters {
162
242
  name: /**
@@ -211,7 +291,7 @@ declare namespace Components {
211
291
  * 123:owner
212
292
  */
213
293
  export type RoleId = string;
214
- export type TokenParameters = AccessTokenParameters | JourneyTokenParameters | PortalTokenParameters | AssumeTokenParameters | AppTokenParameters | PortalPreviewTokenParameters;
294
+ export type TokenParameters = AccessTokenParameters | JourneyTokenParameters | PortalTokenParameters | AssumeTokenParameters | AppTokenParameters | PortalPreviewTokenParameters | /* 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. */ ContactIdentificationTokenParameters;
215
295
  }
216
296
  }
217
297
  declare namespace Paths {
@@ -246,6 +326,21 @@ declare namespace Paths {
246
326
  journey_id?: /* Journey ID for access token type "journey" */ Components.Schemas.AccessTokenJourneyId;
247
327
  portal_id?: /* Portal ID for access token type "portal" */ Components.Schemas.PortalId;
248
328
  portal_user_id?: /* Portal User ID for access token type "portal_preview" */ Components.Schemas.PortalUserId;
329
+ contact_id?: /**
330
+ * Contact entity ID for access token type "contact_identification"
331
+ * example:
332
+ * 5da0a718-c822-403d-9f5d-20d4584e0528
333
+ */
334
+ Components.Schemas.ContactId;
335
+ allowed_operations?: /**
336
+ * 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.
337
+ * example:
338
+ * [
339
+ * "getContact",
340
+ * "getContracts"
341
+ * ]
342
+ */
343
+ Components.Schemas.AllowedOperations;
249
344
  assignments?: /* List of role ids attached to an user */ Components.Schemas.Assignments;
250
345
  read_only?: /**
251
346
  * 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.
@@ -265,6 +360,12 @@ declare namespace Paths {
265
360
  * 2026-02-24
266
361
  */
267
362
  last_used?: string; // date
363
+ /**
364
+ * Timestamp when the token expires and stops being accepted (only set for tokens created with expires_in)
365
+ * example:
366
+ * 2026-03-01T12:00:00.000Z
367
+ */
368
+ expires_at?: string; // date-time
268
369
  }
269
370
  export interface $400 {
270
371
  status?: number;
@@ -330,6 +431,60 @@ declare namespace Paths {
330
431
  }
331
432
  }
332
433
  }
434
+ namespace GetContactIdentificationTokenJwks {
435
+ namespace Responses {
436
+ export interface $200 {
437
+ keys?: {
438
+ /**
439
+ * example:
440
+ * RS256
441
+ */
442
+ alg?: string;
443
+ /**
444
+ * example:
445
+ * AQAB
446
+ */
447
+ e?: string;
448
+ /**
449
+ * example:
450
+ * tXWU5mPMbRPczpbQwi6vbhLF4GgF3wlMDSyqo7pfeiw=
451
+ */
452
+ kid?: string;
453
+ /**
454
+ * example:
455
+ * RSA
456
+ */
457
+ kty?: string;
458
+ /**
459
+ * example:
460
+ * h_QDoCjZ8W_trtYXaP7_S22wf5r5Wd9XBLED78oT44bJjQXn8ddcFV8Hik65_4IYXVX_hTTU4zpxe3H8vx2j7-Zz3O59mYMp5S0MzODNEdf5Y_2o19eis0brmAJniixsNlQ9LlYkdrVamrgaxHu3ZpP_99zkfFybYeuYoQNzb3PyrT8xVnz_USs_nlFMHpGUxvvz7gfKPqxcLvgLJr4cwI9yzaSY9CD4qW181QVcnL_WzpQ8xx6AuhhHZQ1l_3GG4InTk8ahE7U2ZHVu8RrX6d01pMgc3piEcet9RgFLnhbTg3YIiKGoAbN42wJn_x3lgIAC42T9mbmTsHyUdS6nUQ
461
+ */
462
+ n?: string;
463
+ /**
464
+ * example:
465
+ * sig
466
+ */
467
+ use?: string;
468
+ }[];
469
+ }
470
+ }
471
+ }
472
+ namespace GetContactIdentificationTokenOIDC {
473
+ namespace Responses {
474
+ export interface $200 {
475
+ /**
476
+ * example:
477
+ * https://access-token.sls.epilot.io/v1/access-tokens/contact-identification
478
+ */
479
+ issuer?: string; // uri
480
+ /**
481
+ * example:
482
+ * https://access-token.sls.epilot.io/v1/access-tokens/contact-identification/.well-known/jwks.json
483
+ */
484
+ jwks_uri?: string; // uri
485
+ }
486
+ }
487
+ }
333
488
  namespace GetPortalPreviewTokenJwks {
334
489
  namespace Responses {
335
490
  export interface $200 {
@@ -587,6 +742,30 @@ interface OperationMethods {
587
742
  data?: any,
588
743
  config?: AxiosRequestConfig
589
744
  ): OperationResponse<Paths.GetPortalPreviewTokenOIDC.Responses.$200>
745
+ /**
746
+ * getContactIdentificationTokenJwks - getContactIdentificationTokenJwks
747
+ *
748
+ * Get jwks public key set to verify contact identification tokens generated by this API
749
+ */
750
+ 'getContactIdentificationTokenJwks'(
751
+ parameters?: Parameters<UnknownParamsObject> | null,
752
+ data?: any,
753
+ config?: AxiosRequestConfig
754
+ ): OperationResponse<Paths.GetContactIdentificationTokenJwks.Responses.$200>
755
+ /**
756
+ * getContactIdentificationTokenOIDC - getContactIdentificationTokenOIDC
757
+ *
758
+ * OpenID Connect configuration for Access Token API as a contact identification identity provider
759
+ *
760
+ * Note: This API is not a fully compliant OAuth2.0 / OIDC identity provider, but this endpoint is useful to
761
+ * automate the process of verifying JWT tokens.
762
+ *
763
+ */
764
+ 'getContactIdentificationTokenOIDC'(
765
+ parameters?: Parameters<UnknownParamsObject> | null,
766
+ data?: any,
767
+ config?: AxiosRequestConfig
768
+ ): OperationResponse<Paths.GetContactIdentificationTokenOIDC.Responses.$200>
590
769
  }
591
770
 
592
771
  interface PathsDictionary {
@@ -720,6 +899,34 @@ interface PathsDictionary {
720
899
  config?: AxiosRequestConfig
721
900
  ): OperationResponse<Paths.GetPortalPreviewTokenOIDC.Responses.$200>
722
901
  }
902
+ ['/v1/access-tokens/contact-identification/.well-known/jwks.json']: {
903
+ /**
904
+ * getContactIdentificationTokenJwks - getContactIdentificationTokenJwks
905
+ *
906
+ * Get jwks public key set to verify contact identification tokens generated by this API
907
+ */
908
+ 'get'(
909
+ parameters?: Parameters<UnknownParamsObject> | null,
910
+ data?: any,
911
+ config?: AxiosRequestConfig
912
+ ): OperationResponse<Paths.GetContactIdentificationTokenJwks.Responses.$200>
913
+ }
914
+ ['/v1/access-tokens/contact-identification/.well-known/openid-configuration']: {
915
+ /**
916
+ * getContactIdentificationTokenOIDC - getContactIdentificationTokenOIDC
917
+ *
918
+ * OpenID Connect configuration for Access Token API as a contact identification identity provider
919
+ *
920
+ * Note: This API is not a fully compliant OAuth2.0 / OIDC identity provider, but this endpoint is useful to
921
+ * automate the process of verifying JWT tokens.
922
+ *
923
+ */
924
+ 'get'(
925
+ parameters?: Parameters<UnknownParamsObject> | null,
926
+ data?: any,
927
+ config?: AxiosRequestConfig
928
+ ): OperationResponse<Paths.GetContactIdentificationTokenOIDC.Responses.$200>
929
+ }
723
930
  }
724
931
 
725
932
  type Client = OpenAPIClient<OperationMethods, PathsDictionary>
@@ -732,10 +939,13 @@ type AccessTokenJourneyId = Components.Schemas.AccessTokenJourneyId;
732
939
  type AccessTokenName = Components.Schemas.AccessTokenName;
733
940
  type AccessTokenParameters = Components.Schemas.AccessTokenParameters;
734
941
  type AccessTokenType = Components.Schemas.AccessTokenType;
942
+ type AllowedOperations = Components.Schemas.AllowedOperations;
735
943
  type Anonymize = Components.Schemas.Anonymize;
736
944
  type AppTokenParameters = Components.Schemas.AppTokenParameters;
737
945
  type Assignments = Components.Schemas.Assignments;
738
946
  type AssumeTokenParameters = Components.Schemas.AssumeTokenParameters;
947
+ type ContactId = Components.Schemas.ContactId;
948
+ type ContactIdentificationTokenParameters = Components.Schemas.ContactIdentificationTokenParameters;
739
949
  type ExpiresIn = Components.Schemas.ExpiresIn;
740
950
  type JourneyTokenParameters = Components.Schemas.JourneyTokenParameters;
741
951
  type PortalId = Components.Schemas.PortalId;
@@ -746,4 +956,4 @@ type ReadOnly = Components.Schemas.ReadOnly;
746
956
  type RoleId = Components.Schemas.RoleId;
747
957
  type TokenParameters = Components.Schemas.TokenParameters;
748
958
 
749
- export { type AccessToken as A, type Client as C, type ExpiresIn as E, type JourneyTokenParameters as J, type OperationMethods as O, Paths as P, type ReadOnly as R, type TokenParameters as T, Components as a, type PathsDictionary as b, type AccessTokenId as c, type AccessTokenItem as d, type AccessTokenJourneyId as e, type AccessTokenName as f, type AccessTokenParameters as g, type AccessTokenType as h, type Anonymize as i, type AppTokenParameters as j, type Assignments as k, type AssumeTokenParameters as l, type PortalId as m, type PortalPreviewTokenParameters as n, type PortalTokenParameters as o, type PortalUserId as p, type RoleId as q };
959
+ export { type AccessToken as A, type Client as C, type ExpiresIn as E, type JourneyTokenParameters as J, type OperationMethods as O, Paths as P, type ReadOnly as R, type TokenParameters as T, Components as a, type PathsDictionary as b, type AccessTokenId as c, type AccessTokenItem as d, type AccessTokenJourneyId as e, type AccessTokenName as f, type AccessTokenParameters as g, type AccessTokenType as h, type AllowedOperations as i, type Anonymize as j, type AppTokenParameters as k, type Assignments as l, type AssumeTokenParameters as m, type ContactId as n, type ContactIdentificationTokenParameters as o, type PortalId as p, type PortalPreviewTokenParameters as q, type PortalTokenParameters as r, type PortalUserId as s, type RoleId as t };
@@ -1,30 +1,30 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }
2
2
 
3
- var _chunkS5HBBTKMcjs = require('../chunk-S5HBBTKM.cjs');
3
+ var _chunkZMBA3WV4cjs = require('../chunk-ZMBA3WV4.cjs');
4
4
 
5
5
 
6
6
 
7
7
 
8
8
 
9
- var _chunkELW4V3IDcjs = require('../chunk-ELW4V3ID.cjs');
9
+ var _chunkBV7UB72Bcjs = require('../chunk-BV7UB72B.cjs');
10
10
  require('../chunk-NJK5F5TF.cjs');
11
11
 
12
12
  // src/apis/access-token.ts
13
13
  var loadDefinition = () => {
14
- const mod = _chunkS5HBBTKMcjs.require_access_token_runtime.call(void 0, );
15
- return _chunkELW4V3IDcjs.expand.call(void 0, _nullishCoalesce(mod.default, () => ( mod)));
14
+ const mod = _chunkZMBA3WV4cjs.require_access_token_runtime.call(void 0, );
15
+ return _chunkBV7UB72Bcjs.expand.call(void 0, _nullishCoalesce(mod.default, () => ( mod)));
16
16
  };
17
17
  var _instance = null;
18
18
  var resolve = () => {
19
19
  if (!_instance) {
20
20
  const def = loadDefinition();
21
- _instance = _chunkELW4V3IDcjs.createApiClient.call(void 0, { definition: def, apiName: "accessToken" });
21
+ _instance = _chunkBV7UB72Bcjs.createApiClient.call(void 0, { definition: def, apiName: "accessToken" });
22
22
  }
23
23
  return _instance;
24
24
  };
25
- var _handle = _chunkELW4V3IDcjs.createApiHandle.call(void 0, {
25
+ var _handle = _chunkBV7UB72Bcjs.createApiHandle.call(void 0, {
26
26
  resolveClient: resolve,
27
- createClient: () => _chunkELW4V3IDcjs.createApiClient.call(void 0, { definition: loadDefinition(), apiName: "accessToken" }),
27
+ createClient: () => _chunkBV7UB72Bcjs.createApiClient.call(void 0, { definition: loadDefinition(), apiName: "accessToken" }),
28
28
  apiName: "accessToken"
29
29
  });
30
30
  var getClient = _handle.getClient;
@@ -35,4 +35,4 @@ var accessToken = _handle;
35
35
 
36
36
 
37
37
 
38
- exports.accessToken = accessToken; exports.authorize = _chunkELW4V3IDcjs.authorize; exports.createClient = createClient; exports.getClient = getClient;
38
+ exports.accessToken = accessToken; exports.authorize = _chunkBV7UB72Bcjs.authorize; exports.createClient = createClient; exports.getClient = getClient;
@@ -1,7 +1,7 @@
1
1
  import { A as ApiHandle } from '../types-ChU9Acbv.cjs';
2
2
  export { T as TokenArg, a as authorize } from '../types-ChU9Acbv.cjs';
3
- import { C as Client } from '../access-token.d-BhRUc8I-.cjs';
4
- export { A as AccessToken, c as AccessTokenId, d as AccessTokenItem, e as AccessTokenJourneyId, f as AccessTokenName, g as AccessTokenParameters, h as AccessTokenType, i as Anonymize, j as AppTokenParameters, k as Assignments, l as AssumeTokenParameters, a as Components, E as ExpiresIn, J as JourneyTokenParameters, O as OperationMethods, P as Paths, b as PathsDictionary, m as PortalId, n as PortalPreviewTokenParameters, o as PortalTokenParameters, p as PortalUserId, R as ReadOnly, q as RoleId, T as TokenParameters } from '../access-token.d-BhRUc8I-.cjs';
3
+ import { C as Client } from '../access-token.d-Yy-yrft_.cjs';
4
+ export { A as AccessToken, c as AccessTokenId, d as AccessTokenItem, e as AccessTokenJourneyId, f as AccessTokenName, g as AccessTokenParameters, h as AccessTokenType, i as AllowedOperations, j as Anonymize, k as AppTokenParameters, l as Assignments, m as AssumeTokenParameters, a as Components, n as ContactId, o as ContactIdentificationTokenParameters, E as ExpiresIn, J as JourneyTokenParameters, O as OperationMethods, P as Paths, b as PathsDictionary, p as PortalId, q as PortalPreviewTokenParameters, r as PortalTokenParameters, s as PortalUserId, R as ReadOnly, t as RoleId, T as TokenParameters } from '../access-token.d-Yy-yrft_.cjs';
5
5
  export { OpenAPIClient } from 'openapi-client-axios';
6
6
  import 'axios';
7
7
 
@@ -1,7 +1,7 @@
1
1
  import { A as ApiHandle } from '../types-ChU9Acbv.js';
2
2
  export { T as TokenArg, a as authorize } from '../types-ChU9Acbv.js';
3
- import { C as Client } from '../access-token.d-BhRUc8I-.js';
4
- export { A as AccessToken, c as AccessTokenId, d as AccessTokenItem, e as AccessTokenJourneyId, f as AccessTokenName, g as AccessTokenParameters, h as AccessTokenType, i as Anonymize, j as AppTokenParameters, k as Assignments, l as AssumeTokenParameters, a as Components, E as ExpiresIn, J as JourneyTokenParameters, O as OperationMethods, P as Paths, b as PathsDictionary, m as PortalId, n as PortalPreviewTokenParameters, o as PortalTokenParameters, p as PortalUserId, R as ReadOnly, q as RoleId, T as TokenParameters } from '../access-token.d-BhRUc8I-.js';
3
+ import { C as Client } from '../access-token.d-Yy-yrft_.js';
4
+ export { A as AccessToken, c as AccessTokenId, d as AccessTokenItem, e as AccessTokenJourneyId, f as AccessTokenName, g as AccessTokenParameters, h as AccessTokenType, i as AllowedOperations, j as Anonymize, k as AppTokenParameters, l as Assignments, m as AssumeTokenParameters, a as Components, n as ContactId, o as ContactIdentificationTokenParameters, E as ExpiresIn, J as JourneyTokenParameters, O as OperationMethods, P as Paths, b as PathsDictionary, p as PortalId, q as PortalPreviewTokenParameters, r as PortalTokenParameters, s as PortalUserId, R as ReadOnly, t as RoleId, T as TokenParameters } from '../access-token.d-Yy-yrft_.js';
5
5
  export { OpenAPIClient } from 'openapi-client-axios';
6
6
  import 'axios';
7
7