@atlasauth/backend 0.12.0 → 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # @atlasauth/backend changelog
2
2
 
3
+ ## 0.14.0
4
+
5
+ ### Added
6
+
7
+ - Referral settings carry browser capture: `browser_sources` (the referral programs whose script or cookie the browser reads; null on update resets to the provider's default), `browser_sources_default`, and `consent_provider` (`auto`, one consent manager, or `app`).
8
+
9
+ ## 0.13.0
10
+
11
+ ### Added
12
+
13
+ - **Two-way referral sync.** Referral settings carry two-way sync: `inbound` (`url`, `secret_set`, `endpoint_id`, `last_event`) on reads, write-only `inbound_secret` and `inbound_endpoint_id` on updates (null clears), and provider capability `inbound`.
14
+ - `signReferralUpdatedEvent(...)` (and `referralUpdatedEvent` on `createTestIssuer()`): builds and signs a `referral.updated` event for a referral platform reporting changes to `POST /v1/webhooks/referrals/{instance_id}`.
15
+
3
16
  ## 0.12.0
4
17
  - **Referral attribution v2.** `referrals.retryFailed({ kind?, error_code? }, idempotencyKey?)` (`POST /v1/instance/referrals/calls/retry_failed`, `ReferralRetryFailedResult` with `requeued`), `referrals.simulate({ code? })` (`POST /v1/instance/referrals/simulate`, `ReferralSimulateResult`: `call_id`, `customer_ref`, `result`, `response`), `referrals.backfill({ since, codes?, code_metadata_path? }, idempotencyKey?)` and `referrals.getBackfill(id)` (`POST /v1/instance/referrals/backfill`, `GET /v1/instance/referrals/backfill/:id`, `ReferralBackfillJob`: `users_scanned`, `users_skipped`, `calls_queued`, `truncated`, `next_since`, `calls`), and `referrals.getForUser(userId)` (`GET /v1/users/:id/referral`, `UserReferralResult`).
5
18
  - **Settings.** `ReferralSettings` and `UpdateReferralSettingsBody` gain `tracking_token`, `code_lookup_url`, `signup_code_field`, `forward_lifecycle`, `mirror_to_public_metadata` and `include_referral_claims`. `provider` can be `referally`. `ReferralProviderCapabilities` gains `alias`, `user` and `ping`; `needs` can list `tracking_token`. `ReferralConnectionStatus` gains `last_ping` (`ReferralPing`) and `alert` (`signature_rejected` or `connection_paused`). `ReferralConnectionTest` gains `ping`, `method` and `warnings`.
package/README.md CHANGED
@@ -426,6 +426,8 @@ await atlas.users.update('user_123', { referral_code: 'ada-1' }); // 409 REFERRA
426
426
  await atlas.users.flagReferral('user_123', { reason: 'self-referral' });
427
427
  ```
428
428
 
429
+ Browser capture: `browser_sources` lists the referral programs whose script or cookie the browser reads (null on update goes back to the provider's default, reported by `browser_sources_default`), and `consent_provider` picks the consent manager that decides (`auto`, one manager, or `app`).
430
+
429
431
  Enabling without what the provider needs is `422 REFERRALS_NOT_CONFIGURED`. When the platform answers late, Atlas sends the `user.referral_attributed` webhook (`UserReferralAttributedEvent`). Preflight may report `referrals_enabled_unverified` and `referrals_without_bot_protection`.
430
432
 
431
433
  ### Receive the referral protocol (referral platforms)
@@ -456,3 +458,25 @@ app.post('/atlas/:endpoint', express.raw({ type: '*/*' }), async (req, res) => {
456
458
  ```
457
459
 
458
460
  A retry of one call keeps its `atlas-id` (`deliveryId`). Sign-ups are idempotent on `customerRef`: answer a retry the same way.
461
+
462
+ ### Two-way sync
463
+
464
+ A provider with the `inbound` capability can send referral changes made after sign-up back to Atlas. The settings report `inbound.url` (give it to the platform), `inbound.secret_set`, `inbound.endpoint_id` and `inbound.last_event` (`{ at, type, outcome }`). Store the platform's event secret with `inbound_secret` (write-only, 16-512 characters) and its subscription id with `inbound_endpoint_id`:
465
+
466
+ ```ts
467
+ await atlas.referrals.update({ inbound_secret: process.env.REFERRAL_INBOUND_SECRET, inbound_endpoint_id: 'we_123' });
468
+ const { inbound } = await atlas.referrals.get(); // inbound.last_event?.outcome: 'applied', 'stale', …
469
+ ```
470
+
471
+ A platform on the Atlas referral protocol sends a `referral.updated` event to `inbound.url`, signed like an Atlas webhook with the inbound secret (or the connection's signing secret when none is set). `signReferralUpdatedEvent` builds it:
472
+
473
+ ```ts
474
+ import { signReferralUpdatedEvent } from '@atlasauth/backend';
475
+
476
+ const e = signReferralUpdatedEvent({
477
+ inboundUrl: settings.inbound.url,
478
+ secret: process.env.REFERRAL_SIGNING_SECRET!,
479
+ event: { customerRef: 'user_123', referralId: 'ref_1', status: 'qualified' },
480
+ });
481
+ await fetch(e.request());
482
+ ```
@@ -15,8 +15,12 @@ import type { UserReferralResult } from './users';
15
15
  * Referally adapter: `endpoint_url` is your Referally base URL, plus
16
16
  * `connection_id`, `signing_secret` and optionally `tracking_token`) or
17
17
  * another built-in vendor adapter.
18
- * `signing_secret` and `api_key` are write-only: reads return
19
- * `signing_secret_set` / `api_key_set`.
18
+ * `signing_secret`, `api_key` and `inbound_secret` are write-only: reads
19
+ * return `signing_secret_set` / `api_key_set` / `inbound.secret_set`.
20
+ *
21
+ * Two-way sync: a provider with the `inbound` capability sends referral
22
+ * changes made after sign-up to `inbound.url`; Atlas applies them to the
23
+ * user's referral and reports the latest one in `inbound.last_event`.
20
24
  */
21
25
  /** What a provider can do. An operation it lacks is recorded as `skipped`. */
22
26
  export interface ReferralProviderCapabilities {
@@ -32,6 +36,8 @@ export interface ReferralProviderCapabilities {
32
36
  user?: boolean;
33
37
  /** Answers a ping (org, program, clock) for the connection test. */
34
38
  ping?: boolean;
39
+ /** Sends referral changes made after sign-up to Atlas (two-way sync). */
40
+ inbound?: boolean;
35
41
  }
36
42
  /** A referral provider Atlas supports. */
37
43
  export interface ReferralProviderInfo {
@@ -93,6 +99,27 @@ export interface ReferralConnectionStatus {
93
99
  call_id?: string;
94
100
  } | null;
95
101
  }
102
+ /** What Atlas did with an inbound referral event. */
103
+ export type ReferralInboundOutcome = 'applied' | 'unchanged' | 'stale' | 'unknown_customer' | 'other_program' | 'ignored';
104
+ /** Two-way sync (`inbound` on the settings). */
105
+ export interface ReferralInboundStatus {
106
+ /** Give this URL to the platform; null when the provider sends no events. */
107
+ url: string | null;
108
+ /** Whether an inbound secret is stored (the value is never returned). */
109
+ secret_set: boolean;
110
+ /** The platform's id for Atlas's event subscription, kept for reference. */
111
+ endpoint_id: string | null;
112
+ /** The latest event received, or null when none yet. */
113
+ last_event: {
114
+ at: number;
115
+ type: string;
116
+ outcome: ReferralInboundOutcome;
117
+ } | null;
118
+ }
119
+ /** A referral program whose script or cookie the browser reads. */
120
+ export type ReferralBrowserSource = 'referally' | 'rewardful' | 'tolt' | 'promotekit' | 'firstpromoter' | 'partnerstack' | 'dub';
121
+ /** Which consent manager decides on the tracking cookie's ids: `auto` (any common one), one manager, or `app` (only the app's own decision). */
122
+ export type ReferralConsentProvider = 'auto' | 'cookiemunch' | 'onetrust' | 'cookiebot' | 'didomi' | 'usercentrics' | 'osano' | 'cookieyes' | 'complianz' | 'klaro' | 'tcf' | 'consent_mode' | 'app';
96
123
  /** What a platform answers to a ping. */
97
124
  export interface ReferralPing {
98
125
  ok: boolean;
@@ -149,6 +176,12 @@ export interface ReferralSettings {
149
176
  code_lookup_url?: string | null;
150
177
  /** Show an optional "Referral code" field on hosted sign-up. */
151
178
  signup_code_field?: boolean;
179
+ /** The referral programs whose script or cookie the browser reads, in order (the provider's default unless set). */
180
+ browser_sources?: ReferralBrowserSource[];
181
+ /** Whether `browser_sources` is the provider's default. */
182
+ browser_sources_default?: boolean;
183
+ /** Which consent manager decides on the tracking cookie's ids (default `auto`). */
184
+ consent_provider?: ReferralConsentProvider;
152
185
  /** Forward email, name and ban/unban changes to the platform (default true). */
153
186
  forward_lifecycle?: boolean;
154
187
  /** Mirror the result into `public_metadata.referral` (default false). */
@@ -158,6 +191,8 @@ export interface ReferralSettings {
158
191
  /** What the chosen provider still needs before referrals can be enabled. */
159
192
  missing?: string[];
160
193
  connection?: ReferralConnectionStatus | null;
194
+ /** Two-way sync: where the platform sends referral changes, and the latest one received. */
195
+ inbound?: ReferralInboundStatus;
161
196
  providers: ReferralProviderInfo[];
162
197
  updated_at?: number | null;
163
198
  }
@@ -176,6 +211,14 @@ export interface UpdateReferralSettingsBody {
176
211
  signing_secret?: string | null;
177
212
  /** Write-only vendor API key. */
178
213
  api_key?: string | null;
214
+ /**
215
+ * Write-only, 16-512 characters. Verifies the platform's events to
216
+ * `inbound.url`. Optional for the Atlas referral protocol (the signing
217
+ * secret is used when unset).
218
+ */
219
+ inbound_secret?: string | null;
220
+ /** The platform's id for Atlas's event subscription, kept for reference. */
221
+ inbound_endpoint_id?: string | null;
179
222
  /** 1-10 names of `[A-Za-z0-9_.-]{1,40}`. */
180
223
  url_params?: string[];
181
224
  context_cookie?: string | null;
@@ -192,6 +235,9 @@ export interface UpdateReferralSettingsBody {
192
235
  /** An https URL containing `{code}`. */
193
236
  code_lookup_url?: string | null;
194
237
  signup_code_field?: boolean;
238
+ /** The programs to read, in order; null goes back to the provider's default. */
239
+ browser_sources?: ReferralBrowserSource[] | null;
240
+ consent_provider?: ReferralConsentProvider;
195
241
  forward_lifecycle?: boolean;
196
242
  mirror_to_public_metadata?: boolean;
197
243
  include_referral_claims?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"referrals.js","sourceRoot":"","sources":["../../src/client/referrals.ts"],"names":[],"mappings":";;AAiWA,8CAmEC;AApaD,uCAAgD;AAiWhD,SAAgB,iBAAiB,CAAC,OAAkB;IAClD,OAAO;QACL,8FAA8F;QAC9F,GAAG;YACD,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC,CAAC;QACpE,CAAC;QACD,+EAA+E;QAC/E,MAAM,CAAC,IAAgC,EAAE,cAAuB;YAC9D,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,wBAAwB,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;QAC5F,CAAC;QACD;;;WAGG;QACH,IAAI;YACF,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,6BAA6B,EAAE,CAAC,CAAC;QAC1E,CAAC;QACD,uEAAuE;QACvE,SAAS,CAAC,SAAkC,EAAE;YAC5C,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,8BAA8B,EAAE,KAAK,EAAE,EAAE,GAAG,MAAM,EAAE,EAAE,CAAC,CAAC;QAChG,CAAC;QACD;;;WAGG;QACH,SAAS,CAAC,EAAU,EAAE,cAAuB;YAC3C,OAAO,OAAO,CAAC;gBACb,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,gCAAgC,IAAA,aAAG,EAAC,EAAE,CAAC,QAAQ;gBACrD,cAAc;aACf,CAAC,CAAC;QACL,CAAC;QACD,6GAA6G;QAC7G,WAAW,CACT,SAA2D,EAAE,EAC7D,cAAuB;YAEvB,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,2CAA2C,EAAE,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC;QACtH,CAAC;QACD;;;;WAIG;QACH,QAAQ,CAAC,OAA0B,EAAE;YACnC,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,iCAAiC,EAAE,IAAI,EAAE,CAAC,CAAC;QACpF,CAAC;QACD;;;;WAIG;QACH,QAAQ,CAAC,IAA0B,EAAE,cAAuB;YAC1D,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,iCAAiC,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;QACpG,CAAC;QACD,iDAAiD;QACjD,WAAW,CAAC,EAAU;YACpB,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,mCAAmC,IAAA,aAAG,EAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QACxF,CAAC;QACD;;;WAGG;QACH,UAAU,CAAC,MAAc;YACvB,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,aAAa,IAAA,aAAG,EAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;QAC/E,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"referrals.js","sourceRoot":"","sources":["../../src/client/referrals.ts"],"names":[],"mappings":";;AAkaA,8CAmEC;AAreD,uCAAgD;AAkahD,SAAgB,iBAAiB,CAAC,OAAkB;IAClD,OAAO;QACL,8FAA8F;QAC9F,GAAG;YACD,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC,CAAC;QACpE,CAAC;QACD,+EAA+E;QAC/E,MAAM,CAAC,IAAgC,EAAE,cAAuB;YAC9D,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,wBAAwB,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;QAC5F,CAAC;QACD;;;WAGG;QACH,IAAI;YACF,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,6BAA6B,EAAE,CAAC,CAAC;QAC1E,CAAC;QACD,uEAAuE;QACvE,SAAS,CAAC,SAAkC,EAAE;YAC5C,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,8BAA8B,EAAE,KAAK,EAAE,EAAE,GAAG,MAAM,EAAE,EAAE,CAAC,CAAC;QAChG,CAAC;QACD;;;WAGG;QACH,SAAS,CAAC,EAAU,EAAE,cAAuB;YAC3C,OAAO,OAAO,CAAC;gBACb,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,gCAAgC,IAAA,aAAG,EAAC,EAAE,CAAC,QAAQ;gBACrD,cAAc;aACf,CAAC,CAAC;QACL,CAAC;QACD,6GAA6G;QAC7G,WAAW,CACT,SAA2D,EAAE,EAC7D,cAAuB;YAEvB,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,2CAA2C,EAAE,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC;QACtH,CAAC;QACD;;;;WAIG;QACH,QAAQ,CAAC,OAA0B,EAAE;YACnC,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,iCAAiC,EAAE,IAAI,EAAE,CAAC,CAAC;QACpF,CAAC;QACD;;;;WAIG;QACH,QAAQ,CAAC,IAA0B,EAAE,cAAuB;YAC1D,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,iCAAiC,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;QACpG,CAAC;QACD,iDAAiD;QACjD,WAAW,CAAC,EAAU;YACpB,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,mCAAmC,IAAA,aAAG,EAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QACxF,CAAC;QACD;;;WAGG;QACH,UAAU,CAAC,MAAc;YACvB,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,aAAa,IAAA,aAAG,EAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;QAC/E,CAAC;KACF,CAAC;AACJ,CAAC"}
package/dist/index.d.ts CHANGED
@@ -13,8 +13,8 @@ export type { AtlasClient } from './client';
13
13
  export * from './client';
14
14
  export { createTestIssuer, TEST_TOKEN_TAMPERS } from './testing';
15
15
  export type { TestIssuer, CreateTestIssuerOptions, MintIdTokenOptions, TestAuthorizeOptions, TestAuthorizeResult, TestTokenTamper, } from './testing';
16
- export { signAtlasReferralCall, signReferallyCall, referallySignature, referralEmailHash, REFERALLY_API_VERSION, } from './referral-test-calls';
17
- export type { AtlasReferralCallOptions, ReferallyCallOptions, ReferallyCallOp, SignedReferralCall, } from './referral-test-calls';
16
+ export { signAtlasReferralCall, signReferallyCall, signReferralUpdatedEvent, referallySignature, referralEmailHash, REFERALLY_API_VERSION, } from './referral-test-calls';
17
+ export type { AtlasReferralCallOptions, ReferallyCallOptions, ReferallyCallOp, ReferralUpdatedEvent, ReferralUpdatedEventOptions, SignedReferralCall, } from './referral-test-calls';
18
18
  export { verifyPCActn } from './pca/verify';
19
19
  export type { PcaVerdict, PcaContext, VerifyPCActnOptions } from './pca/verify';
20
20
  export { requirePCA, defaultExtract, memoryPcaStore } from './pca/require-pca';
package/dist/index.js CHANGED
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.memoryPcaStore = exports.defaultExtract = exports.requirePCA = exports.verifyPCActn = exports.REFERALLY_API_VERSION = exports.referralEmailHash = exports.referallySignature = exports.signReferallyCall = exports.signAtlasReferralCall = exports.TEST_TOKEN_TAMPERS = exports.createTestIssuer = exports.createAtlasClient = exports.resetOidcCaches = exports.oidcVerifyIdToken = exports.oidcStart = exports.oidcLogoutUrl = exports.oidcClearCookie = exports.oidcCallback = exports.oidc = exports.OIDC_FLOW_MAX_AGE_SECONDS = exports.OIDC_FLOW_COOKIE = exports.AtlasOidcError = exports.verifyLogoutToken = exports.memoryLogoutReplayStore = exports.LogoutTokenVerifier = exports.LOGOUT_TOKEN_MAX_AGE_SECONDS = exports.LOGOUT_TOKEN_CLOCK_SKEW_SECONDS = exports.BACKCHANNEL_LOGOUT_EVENT = exports.instanceIdFromPublishableKey = exports.discoveryUrlFor = exports.JwksDiscovery = exports.DiscoveryError = void 0;
17
+ exports.memoryPcaStore = exports.defaultExtract = exports.requirePCA = exports.verifyPCActn = exports.REFERALLY_API_VERSION = exports.referralEmailHash = exports.referallySignature = exports.signReferralUpdatedEvent = exports.signReferallyCall = exports.signAtlasReferralCall = exports.TEST_TOKEN_TAMPERS = exports.createTestIssuer = exports.createAtlasClient = exports.resetOidcCaches = exports.oidcVerifyIdToken = exports.oidcStart = exports.oidcLogoutUrl = exports.oidcClearCookie = exports.oidcCallback = exports.oidc = exports.OIDC_FLOW_MAX_AGE_SECONDS = exports.OIDC_FLOW_COOKIE = exports.AtlasOidcError = exports.verifyLogoutToken = exports.memoryLogoutReplayStore = exports.LogoutTokenVerifier = exports.LOGOUT_TOKEN_MAX_AGE_SECONDS = exports.LOGOUT_TOKEN_CLOCK_SKEW_SECONDS = exports.BACKCHANNEL_LOGOUT_EVENT = exports.instanceIdFromPublishableKey = exports.discoveryUrlFor = exports.JwksDiscovery = exports.DiscoveryError = void 0;
18
18
  // §7.3 token verification — the original surface, unchanged.
19
19
  __exportStar(require("./jwks-cache"), exports);
20
20
  // OIDC discovery of the JWKS URL when only `issuer` is configured.
@@ -63,6 +63,7 @@ Object.defineProperty(exports, "TEST_TOKEN_TAMPERS", { enumerable: true, get: fu
63
63
  var referral_test_calls_1 = require("./referral-test-calls");
64
64
  Object.defineProperty(exports, "signAtlasReferralCall", { enumerable: true, get: function () { return referral_test_calls_1.signAtlasReferralCall; } });
65
65
  Object.defineProperty(exports, "signReferallyCall", { enumerable: true, get: function () { return referral_test_calls_1.signReferallyCall; } });
66
+ Object.defineProperty(exports, "signReferralUpdatedEvent", { enumerable: true, get: function () { return referral_test_calls_1.signReferralUpdatedEvent; } });
66
67
  Object.defineProperty(exports, "referallySignature", { enumerable: true, get: function () { return referral_test_calls_1.referallySignature; } });
67
68
  Object.defineProperty(exports, "referralEmailHash", { enumerable: true, get: function () { return referral_test_calls_1.referralEmailHash; } });
68
69
  Object.defineProperty(exports, "REFERALLY_API_VERSION", { enumerable: true, get: function () { return referral_test_calls_1.REFERALLY_API_VERSION; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,6DAA6D;AAC7D,+CAA6B;AAC7B,mEAAmE;AACnE,yCAA2G;AAAlG,2GAAA,cAAc,OAAA;AAAE,0GAAA,aAAa,OAAA;AAAE,4GAAA,eAAe,OAAA;AAAE,yHAAA,4BAA4B,OAAA;AACrF,2CAAyB;AACzB,8CAA4B;AAE5B,6EAA6E;AAC7E,+CAOwB;AANtB,wHAAA,wBAAwB,OAAA;AACxB,+HAAA,+BAA+B,OAAA;AAC/B,4HAAA,4BAA4B,OAAA;AAC5B,mHAAA,mBAAmB,OAAA;AACnB,uHAAA,uBAAuB,OAAA;AACvB,iHAAA,iBAAiB,OAAA;AAUnB,sEAAsE;AACtE,iFAAiF;AACjF,+BAWgB;AAVd,sGAAA,cAAc,OAAA;AACd,wGAAA,gBAAgB,OAAA;AAChB,iHAAA,yBAAyB,OAAA;AACzB,4FAAA,IAAI,OAAA;AACJ,oGAAA,YAAY,OAAA;AACZ,uGAAA,eAAe,OAAA;AACf,qGAAA,aAAa,OAAA;AACb,iGAAA,SAAS,OAAA;AACT,yGAAA,iBAAiB,OAAA;AACjB,uGAAA,eAAe,OAAA;AAcjB,oDAAoD;AACpD,6CAA2B;AAE3B,uFAAuF;AACvF,8CAA4B;AAE5B,8DAA8D;AAC9D,mCAA6C;AAApC,2GAAA,iBAAiB,OAAA;AAE1B,2CAAyB;AAEzB,yEAAyE;AACzE,2EAA2E;AAC3E,iEAAiE;AACjE,qCAAiE;AAAxD,2GAAA,gBAAgB,OAAA;AAAE,6GAAA,kBAAkB,OAAA;AAS7C,6DAM+B;AAL7B,4HAAA,qBAAqB,OAAA;AACrB,wHAAA,iBAAiB,OAAA;AACjB,yHAAA,kBAAkB,OAAA;AAClB,wHAAA,iBAAiB,OAAA;AACjB,4HAAA,qBAAqB,OAAA;AASvB,wFAAwF;AACxF,2CAA2C;AAC3C,uCAA4C;AAAnC,sGAAA,YAAY,OAAA;AAErB,iDAA+E;AAAtE,yGAAA,UAAU,OAAA;AAAE,6GAAA,cAAc,OAAA;AAAE,6GAAA,cAAc,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,6DAA6D;AAC7D,+CAA6B;AAC7B,mEAAmE;AACnE,yCAA2G;AAAlG,2GAAA,cAAc,OAAA;AAAE,0GAAA,aAAa,OAAA;AAAE,4GAAA,eAAe,OAAA;AAAE,yHAAA,4BAA4B,OAAA;AACrF,2CAAyB;AACzB,8CAA4B;AAE5B,6EAA6E;AAC7E,+CAOwB;AANtB,wHAAA,wBAAwB,OAAA;AACxB,+HAAA,+BAA+B,OAAA;AAC/B,4HAAA,4BAA4B,OAAA;AAC5B,mHAAA,mBAAmB,OAAA;AACnB,uHAAA,uBAAuB,OAAA;AACvB,iHAAA,iBAAiB,OAAA;AAUnB,sEAAsE;AACtE,iFAAiF;AACjF,+BAWgB;AAVd,sGAAA,cAAc,OAAA;AACd,wGAAA,gBAAgB,OAAA;AAChB,iHAAA,yBAAyB,OAAA;AACzB,4FAAA,IAAI,OAAA;AACJ,oGAAA,YAAY,OAAA;AACZ,uGAAA,eAAe,OAAA;AACf,qGAAA,aAAa,OAAA;AACb,iGAAA,SAAS,OAAA;AACT,yGAAA,iBAAiB,OAAA;AACjB,uGAAA,eAAe,OAAA;AAcjB,oDAAoD;AACpD,6CAA2B;AAE3B,uFAAuF;AACvF,8CAA4B;AAE5B,8DAA8D;AAC9D,mCAA6C;AAApC,2GAAA,iBAAiB,OAAA;AAE1B,2CAAyB;AAEzB,yEAAyE;AACzE,2EAA2E;AAC3E,iEAAiE;AACjE,qCAAiE;AAAxD,2GAAA,gBAAgB,OAAA;AAAE,6GAAA,kBAAkB,OAAA;AAS7C,6DAO+B;AAN7B,4HAAA,qBAAqB,OAAA;AACrB,wHAAA,iBAAiB,OAAA;AACjB,+HAAA,wBAAwB,OAAA;AACxB,yHAAA,kBAAkB,OAAA;AAClB,wHAAA,iBAAiB,OAAA;AACjB,4HAAA,qBAAqB,OAAA;AAWvB,wFAAwF;AACxF,2CAA2C;AAC3C,uCAA4C;AAAnC,sGAAA,YAAY,OAAA;AAErB,iDAA+E;AAAtE,yGAAA,UAAU,OAAA;AAAE,6GAAA,cAAc,OAAA;AAAE,6GAAA,cAAc,OAAA"}
@@ -69,3 +69,38 @@ export interface ReferallyCallOptions {
69
69
  export declare function referallySignature(secret: string, payload: string, unixSeconds: number): string;
70
70
  /** A Referally connection call, signed exactly as the Atlas `referally` adapter signs it. */
71
71
  export declare function signReferallyCall(options: ReferallyCallOptions): SignedReferralCall;
72
+ /** The fields of a `referral.updated` event; absent fields stay unchanged on the Atlas side. */
73
+ export interface ReferralUpdatedEvent {
74
+ /** The user's `customerRef` (as Atlas sent it on sign-up). This or `referralId` names the referral. */
75
+ customerRef?: string;
76
+ /** The platform's referral id. */
77
+ referralId?: string;
78
+ programId?: string;
79
+ /** The referral's status on the platform (e.g. `qualified`). */
80
+ status?: string;
81
+ partnerId?: string;
82
+ /** The referrer's `customerRef`, when the referrer is an Atlas user. */
83
+ referrerExternalRef?: string;
84
+ matchedVia?: string;
85
+ }
86
+ export interface ReferralUpdatedEventOptions {
87
+ /** The instance's inbound URL (`inbound.url` on the referral settings). */
88
+ inboundUrl: string;
89
+ /** The inbound secret, or the connection's signing secret when no inbound secret is set. */
90
+ secret: string;
91
+ event: ReferralUpdatedEvent;
92
+ /** When the change happened (ISO 8601 or epoch ms). Default: `now`. Atlas ignores events older than the last one applied. */
93
+ occurredAt?: string | number;
94
+ /** The event id (`atlas-id`), the same on every retry. Default: random. */
95
+ eventId?: string;
96
+ /** Epoch ms. Default: now. */
97
+ now?: number;
98
+ }
99
+ /**
100
+ * Two-way sync: a `referral.updated` event from the platform to an Atlas
101
+ * instance's inbound URL, signed like Atlas webhooks (`atlas-id`,
102
+ * `atlas-timestamp` in ms, `atlas-signature: v1,<base64 HMAC-SHA256 of
103
+ * "{id}.{ts}.{body}">`). Use it in a platform built on the Atlas referral
104
+ * protocol to send referral changes made after sign-up, or in its tests.
105
+ */
106
+ export declare function signReferralUpdatedEvent(options: ReferralUpdatedEventOptions): SignedReferralCall;
@@ -5,6 +5,7 @@ exports.referralEmailHash = referralEmailHash;
5
5
  exports.signAtlasReferralCall = signAtlasReferralCall;
6
6
  exports.referallySignature = referallySignature;
7
7
  exports.signReferallyCall = signReferallyCall;
8
+ exports.signReferralUpdatedEvent = signReferralUpdatedEvent;
8
9
  const node_crypto_1 = require("node:crypto");
9
10
  const referrals_1 = require("./referrals");
10
11
  function signed(url, method, headers, body) {
@@ -67,4 +68,35 @@ function signReferallyCall(options) {
67
68
  headers['x-referally-signature'] = referallySignature(options.secret, body, t);
68
69
  return signed(base, 'POST', headers, body);
69
70
  }
71
+ /**
72
+ * Two-way sync: a `referral.updated` event from the platform to an Atlas
73
+ * instance's inbound URL, signed like Atlas webhooks (`atlas-id`,
74
+ * `atlas-timestamp` in ms, `atlas-signature: v1,<base64 HMAC-SHA256 of
75
+ * "{id}.{ts}.{body}">`). Use it in a platform built on the Atlas referral
76
+ * protocol to send referral changes made after sign-up, or in its tests.
77
+ */
78
+ function signReferralUpdatedEvent(options) {
79
+ const { event } = options;
80
+ if (!event.customerRef && !event.referralId) {
81
+ throw new Error('signReferralUpdatedEvent: the event needs customerRef or referralId.');
82
+ }
83
+ const id = options.eventId ?? `rfe_${(0, node_crypto_1.randomBytes)(8).toString('hex')}`;
84
+ const timestamp = options.now ?? Date.now();
85
+ const occurred = options.occurredAt ?? timestamp;
86
+ const body = JSON.stringify({
87
+ type: 'referral.updated',
88
+ occurredAt: typeof occurred === 'number' ? new Date(occurred).toISOString() : occurred,
89
+ ...event,
90
+ });
91
+ const signature = (0, node_crypto_1.createHmac)('sha256', options.secret).update(`${id}.${timestamp}.${body}`).digest('base64');
92
+ const headers = {
93
+ 'content-type': 'application/json',
94
+ 'atlas-id': id,
95
+ 'atlas-timestamp': String(timestamp),
96
+ 'atlas-signature': `v1,${signature}`,
97
+ 'user-agent': referrals_1.REFERRAL_PROTOCOL_USER_AGENT,
98
+ [referrals_1.REFERRAL_PROTOCOL_VERSION_HEADER]: referrals_1.REFERRAL_PROTOCOL_VERSION,
99
+ };
100
+ return signed(options.inboundUrl, 'POST', headers, body);
101
+ }
70
102
  //# sourceMappingURL=referral-test-calls.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"referral-test-calls.js","sourceRoot":"","sources":["../src/referral-test-calls.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"referral-test-calls.js","sourceRoot":"","sources":["../src/referral-test-calls.ts"],"names":[],"mappings":"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"}
package/dist/testing.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { type KeyLike } from 'jose';
2
2
  import type { Jwks } from './jwks-cache';
3
3
  import type { SessionClaims } from './verify';
4
- import { type AtlasReferralCallOptions, type ReferallyCallOptions, type SignedReferralCall } from './referral-test-calls';
4
+ import { type AtlasReferralCallOptions, type ReferallyCallOptions, type ReferralUpdatedEventOptions, type SignedReferralCall } from './referral-test-calls';
5
5
  /**
6
6
  * §1.3(c) hermetic test fixtures.
7
7
  *
@@ -140,6 +140,11 @@ export interface TestIssuer {
140
140
  * `referally` sends it, to run against a local Referally in your tests.
141
141
  */
142
142
  referallyCall(options: ReferallyCallOptions): SignedReferralCall;
143
+ /**
144
+ * A signed `referral.updated` event, as a platform on the Atlas referral
145
+ * protocol sends it to an instance's inbound URL (two-way sync).
146
+ */
147
+ referralUpdatedEvent(options: ReferralUpdatedEventOptions): SignedReferralCall;
143
148
  /** The endpoint URLs `fetch` serves (and the discovery document lists). */
144
149
  endpoints: {
145
150
  discovery: string;
package/dist/testing.js CHANGED
@@ -227,6 +227,7 @@ async function createTestIssuer(options = {}) {
227
227
  mintIdToken,
228
228
  referralCall: (o) => (0, referral_test_calls_1.signAtlasReferralCall)({ ...o, now: o.now ?? clock() }),
229
229
  referallyCall: (o) => (0, referral_test_calls_1.signReferallyCall)({ ...o, now: o.now ?? clock() }),
230
+ referralUpdatedEvent: (o) => (0, referral_test_calls_1.signReferralUpdatedEvent)({ ...o, now: o.now ?? clock() }),
230
231
  authorize,
231
232
  fetch: fakeFetch,
232
233
  endpoints,
@@ -1 +1 @@
1
- {"version":3,"file":"testing.js","sourceRoot":"","sources":["../src/testing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"testing.js","sourceRoot":"","sources":["../src/testing.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@atlasauth/backend",
3
- "version": "0.12.0",
3
+ "version": "0.14.0",
4
4
  "main": "./dist/index.js",
5
5
  "types": "./dist/index.d.ts",
6
6
  "dependencies": {
7
7
  "jose": "^5.9.6",
8
- "@atlasauth/pca": "0.1.0",
9
- "@atlasauth/authz": "0.1.1"
8
+ "@atlasauth/authz": "0.1.1",
9
+ "@atlasauth/pca": "0.1.0"
10
10
  },
11
11
  "devDependencies": {
12
12
  "typescript": "^5.6.3",