@atlasauth/backend 0.27.0 → 0.28.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 +16 -0
- package/README.md +19 -2
- package/dist/botid.js +3 -3
- package/dist/botid.js.map +1 -1
- package/dist/client/api-keys.d.ts +26 -3
- package/dist/client/api-keys.js.map +1 -1
- package/dist/client/app-events.d.ts +129 -0
- package/dist/client/app-events.js +80 -0
- package/dist/client/app-events.js.map +1 -0
- package/dist/client/import-export.d.ts +3 -0
- package/dist/client/import-export.js.map +1 -1
- package/dist/client/index.d.ts +75 -1
- package/dist/client/index.js +4 -0
- package/dist/client/index.js.map +1 -1
- package/dist/client/instance.d.ts +78 -0
- package/dist/client/instance.js +22 -0
- package/dist/client/instance.js.map +1 -1
- package/dist/client/messaging.d.ts +28 -8
- package/dist/client/messaging.js +5 -1
- package/dist/client/messaging.js.map +1 -1
- package/dist/client/privacy.d.ts +53 -0
- package/dist/client/privacy.js +10 -0
- package/dist/client/privacy.js.map +1 -1
- package/dist/client/referrals.d.ts +20 -1
- package/dist/client/referrals.js.map +1 -1
- package/dist/client/sessions.d.ts +31 -0
- package/dist/client/sessions.js +9 -0
- package/dist/client/sessions.js.map +1 -1
- package/dist/client/sign-in-tokens.d.ts +5 -1
- package/dist/client/sign-in-tokens.js +5 -1
- package/dist/client/sign-in-tokens.js.map +1 -1
- package/dist/client/test-mode.d.ts +17 -0
- package/dist/client/test-mode.js +8 -0
- package/dist/client/test-mode.js.map +1 -1
- package/dist/client/users.d.ts +30 -0
- package/dist/client/users.js.map +1 -1
- package/dist/client/webhooks.d.ts +2 -1
- package/dist/client/webhooks.js.map +1 -1
- package/dist/edge-crypto.d.ts +13 -0
- package/dist/edge-crypto.js +46 -0
- package/dist/edge-crypto.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +8 -2
- package/dist/index.js.map +1 -1
- package/dist/key-mirror.d.ts +109 -0
- package/dist/key-mirror.js +209 -0
- package/dist/key-mirror.js.map +1 -0
- package/dist/policy-source.js +4 -4
- package/dist/policy-source.js.map +1 -1
- package/dist/referral-test-calls.js +8 -8
- package/dist/referral-test-calls.js.map +1 -1
- package/dist/webhooks.d.ts +31 -0
- package/dist/webhooks.js +59 -6
- package/dist/webhooks.js.map +1 -1
- package/package.json +1 -1
|
@@ -87,6 +87,24 @@ export interface InstanceUpdateResult {
|
|
|
87
87
|
inactive_methods?: InactiveMethod[];
|
|
88
88
|
/** Methods that still work, minus the parts that need email. */
|
|
89
89
|
limited_methods?: LimitedMethod[];
|
|
90
|
+
/**
|
|
91
|
+
* What the write did not do as sent: `origin_still_referenced` (a removed
|
|
92
|
+
* origin URLs still point at) and, on a lenient write, `unknown_field` (an
|
|
93
|
+
* auth_config key that was ignored and not stored; `hint` names the endpoint
|
|
94
|
+
* for a setting that has its own, e.g. branding → PATCH /v1/branding).
|
|
95
|
+
*/
|
|
96
|
+
warnings?: InstanceUpdateWarning[];
|
|
97
|
+
}
|
|
98
|
+
/** One entry of {@link InstanceUpdateResult.warnings}. */
|
|
99
|
+
export interface InstanceUpdateWarning {
|
|
100
|
+
code: 'origin_still_referenced' | 'unknown_field' | (string & {});
|
|
101
|
+
message: string;
|
|
102
|
+
/** unknown_field: the full path, e.g. `auth_config.strategies.atlasId`. */
|
|
103
|
+
field?: string;
|
|
104
|
+
hint?: string;
|
|
105
|
+
did_you_mean?: string;
|
|
106
|
+
/** origin_still_referenced: the removed origin. */
|
|
107
|
+
origin?: string;
|
|
90
108
|
}
|
|
91
109
|
/**
|
|
92
110
|
* Setup-check codes about sign-in methods that need email. The full list is at
|
|
@@ -673,9 +691,69 @@ export interface IntegrationTokenResponse {
|
|
|
673
691
|
issuer?: string;
|
|
674
692
|
jwks_uri?: string;
|
|
675
693
|
}
|
|
694
|
+
/** "Sign in with Atlas" on the instance (`GET/PATCH /v1/instance/sign_in_with_atlas`). */
|
|
695
|
+
export interface SignInWithAtlasSettings {
|
|
696
|
+
object: 'sign_in_with_atlas';
|
|
697
|
+
/** Whether the embedded and hosted sign-in show "Continue with Atlas". */
|
|
698
|
+
enabled: boolean;
|
|
699
|
+
/** The SSO connection the button starts; null when off. */
|
|
700
|
+
connection_id: string | null;
|
|
701
|
+
/** `instance_toggle`: Atlas created the connection and its Atlas ID app. `linked`: an existing connection of yours. */
|
|
702
|
+
managed_via: 'instance_toggle' | 'linked' | null;
|
|
703
|
+
connection_status: string | null;
|
|
704
|
+
/** Whether this deployment can offer Sign in with Atlas at all. */
|
|
705
|
+
available: boolean;
|
|
706
|
+
/** The Atlas issuer the connection must point at. */
|
|
707
|
+
issuer: string | null;
|
|
708
|
+
/** Active OIDC connections to that issuer that could be linked. */
|
|
709
|
+
candidates: {
|
|
710
|
+
id: string;
|
|
711
|
+
client_id: string | null;
|
|
712
|
+
managed_by_this_instance: boolean;
|
|
713
|
+
}[];
|
|
714
|
+
}
|
|
715
|
+
export interface UpdateSignInWithAtlasBody {
|
|
716
|
+
enabled: boolean;
|
|
717
|
+
/** Link this existing connection (an active OIDC connection to the Atlas issuer). Omit to pick or create one. */
|
|
718
|
+
connection_id?: string | null;
|
|
719
|
+
}
|
|
720
|
+
/** Where the hosted pages send the browser (`GET/PATCH /v1/instance/hosted_pages`). */
|
|
721
|
+
export interface HostedPagesSettings {
|
|
722
|
+
object: 'hosted_pages';
|
|
723
|
+
/** `/hosted/sign-in` answers 302 here; null serves the hosted page. */
|
|
724
|
+
sign_in_url: string | null;
|
|
725
|
+
sign_up_url: string | null;
|
|
726
|
+
user_url: string | null;
|
|
727
|
+
/** The hosted pages these settings apply to. */
|
|
728
|
+
hosted: {
|
|
729
|
+
sign_in: string;
|
|
730
|
+
sign_up: string;
|
|
731
|
+
user: string;
|
|
732
|
+
};
|
|
733
|
+
}
|
|
734
|
+
/** Each URL https on one of the instance's allowed origins; null clears it. */
|
|
735
|
+
export interface UpdateHostedPagesBody {
|
|
736
|
+
sign_in_url?: string | null;
|
|
737
|
+
sign_up_url?: string | null;
|
|
738
|
+
user_url?: string | null;
|
|
739
|
+
}
|
|
676
740
|
export declare function instanceResource(request: RequestFn): {
|
|
677
741
|
get(): Promise<Instance>;
|
|
678
742
|
update(body: UpdateInstanceBody): Promise<InstanceUpdateResult>;
|
|
743
|
+
/**
|
|
744
|
+
* "Sign in with Atlas": read it, or turn it on or off. `enabled: true` links
|
|
745
|
+
* an existing connection to the Atlas issuer (or the one named by
|
|
746
|
+
* `connection_id`), else creates one.
|
|
747
|
+
*/
|
|
748
|
+
signInWithAtlas: {
|
|
749
|
+
get(): Promise<SignInWithAtlasSettings>;
|
|
750
|
+
update(body: UpdateSignInWithAtlasBody): Promise<SignInWithAtlasSettings>;
|
|
751
|
+
};
|
|
752
|
+
/** Send the hosted sign-in, sign-up and account pages to your app's own pages (302). */
|
|
753
|
+
hostedPages: {
|
|
754
|
+
get(): Promise<HostedPagesSettings>;
|
|
755
|
+
update(body: UpdateHostedPagesBody): Promise<HostedPagesSettings>;
|
|
756
|
+
};
|
|
679
757
|
/** Check your setup in one call: configuration the server can see is broken or risky. */
|
|
680
758
|
preflight(params?: PreflightParams): Promise<PreflightReport>;
|
|
681
759
|
/**
|
package/dist/client/instance.js
CHANGED
|
@@ -9,6 +9,28 @@ function instanceResource(request) {
|
|
|
9
9
|
update(body) {
|
|
10
10
|
return request({ method: 'PATCH', path: '/v1/instance', body });
|
|
11
11
|
},
|
|
12
|
+
/**
|
|
13
|
+
* "Sign in with Atlas": read it, or turn it on or off. `enabled: true` links
|
|
14
|
+
* an existing connection to the Atlas issuer (or the one named by
|
|
15
|
+
* `connection_id`), else creates one.
|
|
16
|
+
*/
|
|
17
|
+
signInWithAtlas: {
|
|
18
|
+
get() {
|
|
19
|
+
return request({ method: 'GET', path: '/v1/instance/sign_in_with_atlas' });
|
|
20
|
+
},
|
|
21
|
+
update(body) {
|
|
22
|
+
return request({ method: 'PATCH', path: '/v1/instance/sign_in_with_atlas', body });
|
|
23
|
+
},
|
|
24
|
+
},
|
|
25
|
+
/** Send the hosted sign-in, sign-up and account pages to your app's own pages (302). */
|
|
26
|
+
hostedPages: {
|
|
27
|
+
get() {
|
|
28
|
+
return request({ method: 'GET', path: '/v1/instance/hosted_pages' });
|
|
29
|
+
},
|
|
30
|
+
update(body) {
|
|
31
|
+
return request({ method: 'PATCH', path: '/v1/instance/hosted_pages', body });
|
|
32
|
+
},
|
|
33
|
+
},
|
|
12
34
|
/** Check your setup in one call: configuration the server can see is broken or risky. */
|
|
13
35
|
preflight(params = {}) {
|
|
14
36
|
return request({ method: 'GET', path: '/v1/instance/preflight', query: { ...params } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instance.js","sourceRoot":"","sources":["../../src/client/instance.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"instance.js","sourceRoot":"","sources":["../../src/client/instance.ts"],"names":[],"mappings":";;AAytBA,4CAwLC;AAxLD,SAAgB,gBAAgB,CAAC,OAAkB;IACjD,OAAO;QACL,GAAG;YACD,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;QAC1D,CAAC;QACD,MAAM,CAAC,IAAwB;YAC7B,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;QAClE,CAAC;QACD;;;;WAIG;QACH,eAAe,EAAE;YACf,GAAG;gBACD,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,iCAAiC,EAAE,CAAC,CAAC;YAC7E,CAAC;YACD,MAAM,CAAC,IAA+B;gBACpC,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,iCAAiC,EAAE,IAAI,EAAE,CAAC,CAAC;YACrF,CAAC;SACF;QACD,wFAAwF;QACxF,WAAW,EAAE;YACX,GAAG;gBACD,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,2BAA2B,EAAE,CAAC,CAAC;YACvE,CAAC;YACD,MAAM,CAAC,IAA2B;gBAChC,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,CAAC,CAAC;YAC/E,CAAC;SACF;QACD,yFAAyF;QACzF,SAAS,CAAC,SAA0B,EAAE;YACpC,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,wBAAwB,EAAE,KAAK,EAAE,EAAE,GAAG,MAAM,EAAE,EAAE,CAAC,CAAC;QAC1F,CAAC;QACD;;;;WAIG;QACH,mBAAmB,CAAC,SAA4B,EAAE;YAChD,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,oCAAoC,EAAE,KAAK,EAAE,EAAE,GAAG,MAAM,EAAE,EAAE,CAAC,CAAC;QACtG,CAAC;QACD,mGAAmG;QACnG,WAAW,CAAC,MAA2C;YACrD,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,EAAE,GAAG,MAAM,EAAE,EAAE,CAAC,CAAC;QACpF,CAAC;QACD;;;;WAIG;QACH,UAAU,CAAC,IAAuB;YAChC,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7E,CAAC;QACD;;;;;WAKG;QACH,iBAAiB,CAAC,SAA+C,EAAE;YACjE,OAAO,OAAO,CAAC;gBACb,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,wBAAwB;gBAC9B,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;aAC9G,CAAC,CAAC;QACL,CAAC;QACD,oEAAoE;QACpE,0BAA0B;YACxB,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,kCAAkC,EAAE,CAAC,CAAC;QAC9E,CAAC;QACD;;;WAGG;QACH,KAAK,CAAC,MAAsF;YAC1F,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,GAAG,MAAM,EAAE,EAAE,CAAC,CAAC;QAC7E,CAAC;QACD,2EAA2E;QAC3E,WAAW;YACT,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,0BAA0B,EAAE,CAAC,CAAC;QACtE,CAAC;QACD;;;WAGG;QACH,YAAY,EAAE;YACZ,+FAA+F;YAC/F,IAAI;gBACF,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,2BAA2B,EAAE,CAAC,CAAC;YACvE,CAAC;YACD,GAAG,CAAC,EAAU;gBACZ,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,6BAA6B,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YACjG,CAAC;YACD,yFAAyF;YACzF,GAAG,CAAC,EAAU,EAAE,IAAwB,EAAE,OAA6B,EAAE;gBACvE,OAAO,OAAO,CAAC;oBACb,MAAM,EAAE,KAAK;oBACb,IAAI,EAAE,6BAA6B,kBAAkB,CAAC,EAAE,CAAC,EAAE;oBAC3D,IAAI;oBACJ,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACvD,CAAC,CAAC;YACL,CAAC;YACD,MAAM,CAAC,EAAU;gBACf,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,6BAA6B,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YACpG,CAAC;YACD,2FAA2F;YAC3F,UAAU,CACR,EAAU,EACV,QAAmF,EAAE;gBAErF,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,6BAA6B,kBAAkB,CAAC,EAAE,CAAC,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC;YACnH,CAAC;YACD,4DAA4D;YAC5D,kBAAkB,CAAC,EAAU;gBAC3B,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,6BAA6B,kBAAkB,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,CAAC;YAChH,CAAC;YACD;;;;eAIG;YACH,kBAAkB,CAChB,EAAU,EACV,OAAqC,EAAE;gBAWvC,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,6BAA6B,kBAAkB,CAAC,EAAE,CAAC,uBAAuB,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7H,CAAC;YACD,wFAAwF;YACxF,YAAY,CAAC,EAAU,EAAE,WAAmB;gBAC1C,OAAO,OAAO,CAAC;oBACb,MAAM,EAAE,MAAM;oBACd,IAAI,EAAE,6BAA6B,kBAAkB,CAAC,EAAE,CAAC,kBAAkB;oBAC3E,IAAI,EAAE,EAAE,YAAY,EAAE,WAAW,EAAE;iBACpC,CAAC,CAAC;YACL,CAAC;YACD,MAAM,EAAE;gBACN,GAAG;oBACD,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,kCAAkC,EAAE,CAAC,CAAC;gBAC9E,CAAC;gBACD,GAAG,CAAC,IAA8B;oBAChC,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,kCAAkC,EAAE,IAAI,EAAE,CAAC,CAAC;gBACpF,CAAC;gBACD,MAAM;oBACJ,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,kCAAkC,EAAE,CAAC,CAAC;gBACjF,CAAC;aACF;YACD,UAAU,EAAE;gBACV,GAAG;oBACD,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,sCAAsC,EAAE,CAAC,CAAC;gBAClF,CAAC;gBACD,qCAAqC;gBACrC,GAAG,CAAC,IAAkC;oBACpC,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,sCAAsC,EAAE,IAAI,EAAE,CAAC,CAAC;gBACxF,CAAC;gBACD,MAAM;oBACJ,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,sCAAsC,EAAE,CAAC,CAAC;gBACrF,CAAC;aACF;SACF;QACD,oEAAoE;QACpE,aAAa,EAAE;YACb,GAAG;gBACD,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,6BAA6B,EAAE,CAAC,CAAC;YACzE,CAAC;YACD,kCAAkC;YAClC,GAAG,CAAC,IAA0B;gBAC5B,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,6BAA6B,EAAE,IAAI,EAAE,CAAC,CAAC;YAC/E,CAAC;YACD,+EAA+E;YAC/E,MAAM;gBACJ,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,6BAA6B,EAAE,CAAC,CAAC;YAC5E,CAAC;SACF;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -363,22 +363,38 @@ export interface ManagedEmail {
|
|
|
363
363
|
last_complaint_at: number | null;
|
|
364
364
|
};
|
|
365
365
|
reputation: 'your_provider_account';
|
|
366
|
-
/**
|
|
366
|
+
/** Whether the bounce / complaint webhook is registered on your Resend or Brevo account. */
|
|
367
367
|
feedback_webhook?: 'registered' | 'not_registered';
|
|
368
|
+
/** That webhook's id on your account. */
|
|
369
|
+
feedback_webhook_id?: string | null;
|
|
370
|
+
/** Why the last registration failed; null once it is registered. */
|
|
371
|
+
feedback_webhook_error?: string | null;
|
|
368
372
|
/** DNS automation, when set. The token is never returned. */
|
|
369
|
-
dns:
|
|
370
|
-
provider: string;
|
|
371
|
-
token_set: boolean;
|
|
372
|
-
} | null;
|
|
373
|
+
dns: ManagedEmailDnsAutomation | null;
|
|
373
374
|
failure_reason: string | null;
|
|
374
375
|
last_checked_at: number | null;
|
|
375
376
|
verified_at: number | null;
|
|
376
377
|
created_at: number;
|
|
377
378
|
updated_at: number;
|
|
378
|
-
/** Create only, with `dns`: the zone and the records Atlas wrote. */
|
|
379
|
-
dns_result?: Record<string, unknown>;
|
|
380
379
|
next_step?: string;
|
|
381
380
|
}
|
|
381
|
+
/**
|
|
382
|
+
* DNS automation runs in the background: `create` with `dns` answers at once
|
|
383
|
+
* (202) and Atlas writes the records, then checks with your provider until the
|
|
384
|
+
* domain is verified. Poll `get()` (or call `verify()`).
|
|
385
|
+
*/
|
|
386
|
+
export interface ManagedEmailDnsAutomation {
|
|
387
|
+
provider: string;
|
|
388
|
+
token_set: boolean;
|
|
389
|
+
/** `pending` (records not written yet) → `verifying` → `verified`; `failed` when Atlas stopped (see `last_error`). */
|
|
390
|
+
status?: 'pending' | 'verifying' | 'verified' | 'failed' | null;
|
|
391
|
+
/** The last DNS write or provider check error, `CODE: message`. */
|
|
392
|
+
last_error?: string | null;
|
|
393
|
+
attempts?: number;
|
|
394
|
+
/** Epoch ms of the next background step; null when nothing is due. */
|
|
395
|
+
next_check_at?: number | null;
|
|
396
|
+
started_at?: number | null;
|
|
397
|
+
}
|
|
382
398
|
export interface CreateManagedEmailBody {
|
|
383
399
|
/** The From address, bare or `"Name <address>"`. Its domain becomes the sending domain. */
|
|
384
400
|
from_address: string;
|
|
@@ -512,7 +528,11 @@ export declare function messagingResource(request: RequestFn): {
|
|
|
512
528
|
managedEmail: {
|
|
513
529
|
/** `{ configured: false }` when none is configured. */
|
|
514
530
|
get(): Promise<ManagedEmail | NotConfigured<"managed_email">>;
|
|
515
|
-
/**
|
|
531
|
+
/**
|
|
532
|
+
* Register the sending domain; returns the DNS `records` to publish. With
|
|
533
|
+
* `dns`, Atlas writes them and verifies in the background: the call
|
|
534
|
+
* returns at once and `dns.status` tracks the progress.
|
|
535
|
+
*/
|
|
516
536
|
create(body: CreateManagedEmailBody): Promise<ManagedEmail>;
|
|
517
537
|
/** Re-check the DNS records now; `verified` is true once email can be sent. */
|
|
518
538
|
verify(): Promise<ManagedEmail>;
|
package/dist/client/messaging.js
CHANGED
|
@@ -68,7 +68,11 @@ function messagingResource(request) {
|
|
|
68
68
|
get() {
|
|
69
69
|
return request({ method: 'GET', path: '/v1/messaging_providers/email/managed' });
|
|
70
70
|
},
|
|
71
|
-
/**
|
|
71
|
+
/**
|
|
72
|
+
* Register the sending domain; returns the DNS `records` to publish. With
|
|
73
|
+
* `dns`, Atlas writes them and verifies in the background: the call
|
|
74
|
+
* returns at once and `dns.status` tracks the progress.
|
|
75
|
+
*/
|
|
72
76
|
create(body) {
|
|
73
77
|
return request({ method: 'POST', path: '/v1/messaging_providers/email/managed', body });
|
|
74
78
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messaging.js","sourceRoot":"","sources":["../../src/client/messaging.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"messaging.js","sourceRoot":"","sources":["../../src/client/messaging.ts"],"names":[],"mappings":"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"}
|
package/dist/client/privacy.d.ts
CHANGED
|
@@ -111,6 +111,53 @@ export interface PrivacyOrchestratorInput {
|
|
|
111
111
|
sign_requests?: boolean;
|
|
112
112
|
completion_webhook_url?: string | null;
|
|
113
113
|
}
|
|
114
|
+
/** One call that wires a consent manager / orchestrator both ways (`POST /v1/instance/privacy_integrations/connect`). */
|
|
115
|
+
export interface PrivacyIntegrationConnectInput {
|
|
116
|
+
/** An orchestrator preset (`cookiemunch`) or `custom`. */
|
|
117
|
+
preset: string;
|
|
118
|
+
/** The orchestrator-side site (Cookie Munch: the site id). Required by the cookiemunch preset. */
|
|
119
|
+
site_id?: string;
|
|
120
|
+
/** The key the orchestrator issued to Atlas for opening cases (optional on a re-run). */
|
|
121
|
+
api_key?: string;
|
|
122
|
+
partner_link_id?: string;
|
|
123
|
+
/** The webhook URL the orchestrator shows for this instance's executor connection (optional on a re-run). */
|
|
124
|
+
completion_webhook_url?: string;
|
|
125
|
+
/** Overrides for `PUT /v1/instance/cookie_consent` (merged over the preset), or false to leave it alone. */
|
|
126
|
+
cookie_consent?: Record<string, unknown> | false;
|
|
127
|
+
/** Further orchestrator fields (name, case_url, cancel_url, sign_requests, …). */
|
|
128
|
+
orchestrator?: Omit<PrivacyOrchestratorInput, 'provider' | 'site_id' | 'api_key' | 'partner_link_id' | 'completion_webhook_url'>;
|
|
129
|
+
/** The executor key: privacy:* scopes only (default privacy:execute + privacy:grants:revoke). */
|
|
130
|
+
key?: {
|
|
131
|
+
name?: string;
|
|
132
|
+
scopes?: string[];
|
|
133
|
+
expires_at?: number | string;
|
|
134
|
+
allowed_ips?: string[];
|
|
135
|
+
allowed_origins?: string[];
|
|
136
|
+
};
|
|
137
|
+
}
|
|
138
|
+
export interface PrivacyIntegration {
|
|
139
|
+
object: 'privacy_integration';
|
|
140
|
+
preset: string | null;
|
|
141
|
+
/** Banner on, orchestrator and its completion webhook set, executor key live. */
|
|
142
|
+
connected: boolean;
|
|
143
|
+
cookie_consent: Record<string, unknown> & {
|
|
144
|
+
enabled: boolean;
|
|
145
|
+
};
|
|
146
|
+
privacy_orchestrator: PrivacyOrchestrator;
|
|
147
|
+
dsr_webhook: PrivacyOrchestrator['completion_webhook'];
|
|
148
|
+
/** `secret` only on the connect that minted it; `idempotent_replay` on a re-run. */
|
|
149
|
+
executor_key: (Record<string, unknown> & {
|
|
150
|
+
id: string;
|
|
151
|
+
scopes: string[];
|
|
152
|
+
secret?: string;
|
|
153
|
+
idempotent_replay?: boolean;
|
|
154
|
+
}) | null;
|
|
155
|
+
/** Connect only: the consent-manager site check. */
|
|
156
|
+
warnings?: Array<{
|
|
157
|
+
code: string;
|
|
158
|
+
message: string;
|
|
159
|
+
}>;
|
|
160
|
+
}
|
|
114
161
|
export declare function privacyResource(request: RequestFn): {
|
|
115
162
|
/** What this executor speaks (public). */
|
|
116
163
|
discover(): Promise<Record<string, unknown>>;
|
|
@@ -134,4 +181,10 @@ export declare function privacyResource(request: RequestFn): {
|
|
|
134
181
|
deleted: boolean;
|
|
135
182
|
}>;
|
|
136
183
|
};
|
|
184
|
+
integration: {
|
|
185
|
+
/** The consent manager, orchestrator, completion webhook and executor key, in one view. */
|
|
186
|
+
get(): Promise<PrivacyIntegration>;
|
|
187
|
+
/** Wire all of it in one idempotent call; the executor key's secret comes back once. */
|
|
188
|
+
connect(body: PrivacyIntegrationConnectInput): Promise<PrivacyIntegration>;
|
|
189
|
+
};
|
|
137
190
|
};
|
package/dist/client/privacy.js
CHANGED
|
@@ -39,6 +39,16 @@ function privacyResource(request) {
|
|
|
39
39
|
return request({ method: 'DELETE', path: '/v1/instance/privacy_orchestrator' });
|
|
40
40
|
},
|
|
41
41
|
},
|
|
42
|
+
integration: {
|
|
43
|
+
/** The consent manager, orchestrator, completion webhook and executor key, in one view. */
|
|
44
|
+
get() {
|
|
45
|
+
return request({ method: 'GET', path: '/v1/instance/privacy_integrations' });
|
|
46
|
+
},
|
|
47
|
+
/** Wire all of it in one idempotent call; the executor key's secret comes back once. */
|
|
48
|
+
connect(body) {
|
|
49
|
+
return request({ method: 'POST', path: '/v1/instance/privacy_integrations/connect', body });
|
|
50
|
+
},
|
|
51
|
+
},
|
|
42
52
|
};
|
|
43
53
|
}
|
|
44
54
|
//# sourceMappingURL=privacy.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"privacy.js","sourceRoot":"","sources":["../../src/client/privacy.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"privacy.js","sourceRoot":"","sources":["../../src/client/privacy.ts"],"names":[],"mappings":";;AAyJA,0CAgDC;AAzMD,uCAAgD;AAyJhD,SAAgB,eAAe,CAAC,OAAkB;IAChD,OAAO;QACL,0CAA0C;QAC1C,QAAQ;YACN,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC;QACzD,CAAC;QACD,iFAAiF;QACjF,MAAM,CAAC,EAAU;YACf,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,uBAAuB,IAAA,aAAG,EAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5E,CAAC;QACD,oFAAoF;QACpF,MAAM,CAAC,IAAmD;YACxD,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,kEAAkE;QAClE,aAAa,CAAC,IAA8B,EAAE,cAAuB;YACnE,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;QACzF,CAAC;QACD,UAAU,CAAC,EAAU;YACnB,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,wBAAwB,IAAA,aAAG,EAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7E,CAAC;QACD,mEAAmE;QACnE,aAAa,CAAC,EAAU,EAAE,cAAuB;YAC/C,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,wBAAwB,IAAA,aAAG,EAAC,EAAE,CAAC,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC;QACrG,CAAC;QACD,YAAY,EAAE;YACZ,GAAG;gBACD,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,mCAAmC,EAAE,CAAC,CAAC;YAC/E,CAAC;YACD,qDAAqD;YACrD,GAAG,CAAC,IAA8B;gBAChC,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,mCAAmC,EAAE,IAAI,EAAE,CAAC,CAAC;YACrF,CAAC;YACD,MAAM;gBACJ,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,mCAAmC,EAAE,CAAC,CAAC;YAClF,CAAC;SACF;QACD,WAAW,EAAE;YACX,2FAA2F;YAC3F,GAAG;gBACD,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,mCAAmC,EAAE,CAAC,CAAC;YAC/E,CAAC;YACD,wFAAwF;YACxF,OAAO,CAAC,IAAoC;gBAC1C,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,2CAA2C,EAAE,IAAI,EAAE,CAAC,CAAC;YAC9F,CAAC;SACF;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -449,11 +449,30 @@ export interface ListReferralCallsParams {
|
|
|
449
449
|
/** The id of the last call of the previous page. */
|
|
450
450
|
starting_after?: string;
|
|
451
451
|
}
|
|
452
|
+
/**
|
|
453
|
+
* What a settings write stored differently from what was sent: `renamed` (a
|
|
454
|
+
* retired provider name such as `referally`, stored as `referalli`) and
|
|
455
|
+
* `defaulted` (a newly picked platform's tracking cookies filled in).
|
|
456
|
+
*/
|
|
457
|
+
export type ReferralSettingsWarning = {
|
|
458
|
+
code: 'renamed';
|
|
459
|
+
field: string;
|
|
460
|
+
from: string;
|
|
461
|
+
to: string;
|
|
462
|
+
message: string;
|
|
463
|
+
} | {
|
|
464
|
+
code: 'defaulted';
|
|
465
|
+
field: string;
|
|
466
|
+
to: string[];
|
|
467
|
+
message: string;
|
|
468
|
+
};
|
|
452
469
|
export declare function referralsResource(request: RequestFn): {
|
|
453
470
|
/** `GET /v1/instance/referrals` — settings, connection status and the supported providers. */
|
|
454
471
|
get(): Promise<ReferralSettings>;
|
|
455
472
|
/** `PATCH /v1/instance/referrals` — partial update; secrets are write-only. */
|
|
456
|
-
update(body: UpdateReferralSettingsBody, idempotencyKey?: string): Promise<ReferralSettings
|
|
473
|
+
update(body: UpdateReferralSettingsBody, idempotencyKey?: string): Promise<ReferralSettings & {
|
|
474
|
+
warnings?: ReferralSettingsWarning[];
|
|
475
|
+
}>;
|
|
457
476
|
/**
|
|
458
477
|
* `POST /v1/instance/referrals/test` — a signed probe of the platform. `ok`
|
|
459
478
|
* when it answered 2xx or 404; `error.code` `signature_rejected` on 401/403.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"referrals.js","sourceRoot":"","sources":["../../src/client/referrals.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"referrals.js","sourceRoot":"","sources":["../../src/client/referrals.ts"],"names":[],"mappings":";;AAudA,8CA4EC;AAniBD,uCAAgD;AAudhD,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;;;;;WAKG;QACH,OAAO,CAAC,MAAc,EAAE,OAAsC,EAAE;YAC9D,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,0BAA0B,IAAA,aAAG,EAAC,MAAM,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;QAClG,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"}
|
|
@@ -58,6 +58,30 @@ export interface MintedSession {
|
|
|
58
58
|
};
|
|
59
59
|
custom_data?: Record<string, unknown> | null;
|
|
60
60
|
}
|
|
61
|
+
export interface CreateBrowserTicketParams {
|
|
62
|
+
/** The user the browser signs in as. */
|
|
63
|
+
user_id: string;
|
|
64
|
+
/** Where the ready `url` lands: one of the instance's allowed origins. Without it, no `url`. */
|
|
65
|
+
redirect_url?: string;
|
|
66
|
+
/** Ticket lifetime in seconds, 1 to 300 (default 60). */
|
|
67
|
+
expires_in_seconds?: number;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* A one-time browser sign-in ticket (`POST /v1/sessions` with
|
|
71
|
+
* `mode: "browser_ticket"`). Redeem `ticket` with
|
|
72
|
+
* `POST /v1/client/sign_ins {strategy:"ticket"}`, or open `url` in the browser.
|
|
73
|
+
*/
|
|
74
|
+
export interface BrowserTicket {
|
|
75
|
+
object: 'browser_ticket';
|
|
76
|
+
id: string;
|
|
77
|
+
user_id: string;
|
|
78
|
+
ticket: string;
|
|
79
|
+
url: string | null;
|
|
80
|
+
redirect_url: string | null;
|
|
81
|
+
expires_in: number;
|
|
82
|
+
/** ISO 8601. */
|
|
83
|
+
expires_at: string;
|
|
84
|
+
}
|
|
61
85
|
/** A JWT minted from a named JWT template. */
|
|
62
86
|
/** An identity-integration token (claims: /schemas/integration-token-v1.json). */
|
|
63
87
|
export interface SessionIntegrationToken {
|
|
@@ -93,6 +117,13 @@ export declare function sessionsResource(request: RequestFn): {
|
|
|
93
117
|
* Returns the bearer jwt + refresh token in-body. Refused for a banned user.
|
|
94
118
|
*/
|
|
95
119
|
create(params: CreateSessionParams): Promise<MintedSession>;
|
|
120
|
+
/**
|
|
121
|
+
* `POST /v1/sessions` with `mode: "browser_ticket"` — a one-time ticket that
|
|
122
|
+
* signs a BROWSER in as the user (support handoffs, E2E). No session is
|
|
123
|
+
* minted here; the browser gets one through the normal ticket exchange. The
|
|
124
|
+
* successor of the deprecated `signInTokens.create()`.
|
|
125
|
+
*/
|
|
126
|
+
createBrowserTicket(params: CreateBrowserTicketParams): Promise<BrowserTicket>;
|
|
96
127
|
/** `GET /v1/sessions?user_id=` — requires a user_id. */
|
|
97
128
|
list(params: ListSessionsParams): Promise<ListPage<Session>>;
|
|
98
129
|
get(id: string): Promise<Session>;
|
package/dist/client/sessions.js
CHANGED
|
@@ -27,6 +27,15 @@ function sessionsResource(request) {
|
|
|
27
27
|
create(params) {
|
|
28
28
|
return request({ method: 'POST', path: '/v1/sessions', body: { ...params } });
|
|
29
29
|
},
|
|
30
|
+
/**
|
|
31
|
+
* `POST /v1/sessions` with `mode: "browser_ticket"` — a one-time ticket that
|
|
32
|
+
* signs a BROWSER in as the user (support handoffs, E2E). No session is
|
|
33
|
+
* minted here; the browser gets one through the normal ticket exchange. The
|
|
34
|
+
* successor of the deprecated `signInTokens.create()`.
|
|
35
|
+
*/
|
|
36
|
+
createBrowserTicket(params) {
|
|
37
|
+
return request({ method: 'POST', path: '/v1/sessions', body: { ...params, mode: 'browser_ticket' } });
|
|
38
|
+
},
|
|
30
39
|
/** `GET /v1/sessions?user_id=` — requires a user_id. */
|
|
31
40
|
list(params) {
|
|
32
41
|
return request({ method: 'GET', path: '/v1/sessions', query: { ...params } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../src/client/sessions.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../src/client/sessions.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,13 +14,17 @@ export interface CreateSignInTokenBody {
|
|
|
14
14
|
expires_in_seconds?: number;
|
|
15
15
|
}
|
|
16
16
|
export declare function signInTokensResource(request: RequestFn): {
|
|
17
|
+
/**
|
|
18
|
+
* @deprecated The sign-in token API is deprecated (sunset 2027-04-01). Use
|
|
19
|
+
* `sessions.createBrowserTicket()`: the same one-time ticket, plus a ready URL.
|
|
20
|
+
*/
|
|
17
21
|
create(body: CreateSignInTokenBody, idempotencyKey?: string): Promise<SignInToken>;
|
|
18
22
|
/**
|
|
19
23
|
* `POST /v1/sign_in_tokens/:id/revoke` — revoke an unused sign-in token
|
|
20
24
|
* before its 60-second window elapses.
|
|
21
25
|
*
|
|
22
26
|
* @deprecated The sign-in token API is deprecated (sunset 2027-04-01).
|
|
23
|
-
*
|
|
27
|
+
* Use `sessions.createBrowserTicket()` (or `sessions.create()` for a server-side session).
|
|
24
28
|
*/
|
|
25
29
|
revoke(id: string): Promise<{
|
|
26
30
|
object: "sign_in_token";
|
|
@@ -4,6 +4,10 @@ exports.signInTokensResource = signInTokensResource;
|
|
|
4
4
|
const request_1 = require("./request");
|
|
5
5
|
function signInTokensResource(request) {
|
|
6
6
|
return {
|
|
7
|
+
/**
|
|
8
|
+
* @deprecated The sign-in token API is deprecated (sunset 2027-04-01). Use
|
|
9
|
+
* `sessions.createBrowserTicket()`: the same one-time ticket, plus a ready URL.
|
|
10
|
+
*/
|
|
7
11
|
create(body, idempotencyKey) {
|
|
8
12
|
return request({ method: 'POST', path: '/v1/sign_in_tokens', body, idempotencyKey });
|
|
9
13
|
},
|
|
@@ -12,7 +16,7 @@ function signInTokensResource(request) {
|
|
|
12
16
|
* before its 60-second window elapses.
|
|
13
17
|
*
|
|
14
18
|
* @deprecated The sign-in token API is deprecated (sunset 2027-04-01).
|
|
15
|
-
*
|
|
19
|
+
* Use `sessions.createBrowserTicket()` (or `sessions.create()` for a server-side session).
|
|
16
20
|
*/
|
|
17
21
|
revoke(id) {
|
|
18
22
|
return request({ method: 'POST', path: `/v1/sign_in_tokens/${(0, request_1.enc)(id)}/revoke` });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sign-in-tokens.js","sourceRoot":"","sources":["../../src/client/sign-in-tokens.ts"],"names":[],"mappings":";;AAkBA,
|
|
1
|
+
{"version":3,"file":"sign-in-tokens.js","sourceRoot":"","sources":["../../src/client/sign-in-tokens.ts"],"names":[],"mappings":";;AAkBA,oDAoBC;AAtCD,uCAAgD;AAkBhD,SAAgB,oBAAoB,CAAC,OAAkB;IACrD,OAAO;QACL;;;WAGG;QACH,MAAM,CAAC,IAA2B,EAAE,cAAuB;YACzD,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;QACvF,CAAC;QACD;;;;;;WAMG;QACH,MAAM,CAAC,EAAU;YACf,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAsB,IAAA,aAAG,EAAC,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC;QACnF,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { RequestFn } from './request';
|
|
2
|
+
import type { BrowserTicket } from './sessions';
|
|
2
3
|
/** The production instance's paired development (test-mode) sibling. */
|
|
3
4
|
export interface TestInstance {
|
|
4
5
|
object: 'test_instance';
|
|
@@ -24,6 +25,12 @@ export interface TestingToken {
|
|
|
24
25
|
/** Lifetime in seconds. */
|
|
25
26
|
expires_in: number;
|
|
26
27
|
}
|
|
28
|
+
/** A one-time URL that signs a browser in as a user (`POST /v1/testing/sign_in_url`). */
|
|
29
|
+
export interface TestingSignInUrl extends Omit<BrowserTicket, 'object' | 'url' | 'redirect_url'> {
|
|
30
|
+
object: 'testing_sign_in_url';
|
|
31
|
+
url: string;
|
|
32
|
+
redirect_url: string;
|
|
33
|
+
}
|
|
27
34
|
export declare function testModeResource(request: RequestFn): {
|
|
28
35
|
/**
|
|
29
36
|
* Get (creating on first call) the paired development instance. Call with
|
|
@@ -41,4 +48,14 @@ export declare function testModeResource(request: RequestFn): {
|
|
|
41
48
|
}): Promise<TestUsersPurgeResult>;
|
|
42
49
|
/** Mint a testing token. Development instances only (403 TESTING_UNAVAILABLE otherwise). */
|
|
43
50
|
createTestingToken(): Promise<TestingToken>;
|
|
51
|
+
/**
|
|
52
|
+
* A ready one-time URL that signs a browser in as `user_id` and lands on
|
|
53
|
+
* `redirect_url` (an allowed origin or localhost). Development instances only
|
|
54
|
+
* (403 TESTING_UNAVAILABLE otherwise). `@atlasauth/testing` wraps it as `signInAs`.
|
|
55
|
+
*/
|
|
56
|
+
createSignInUrl(body: {
|
|
57
|
+
user_id: string;
|
|
58
|
+
redirect_url: string;
|
|
59
|
+
expires_in_seconds?: number;
|
|
60
|
+
}): Promise<TestingSignInUrl>;
|
|
44
61
|
};
|
package/dist/client/test-mode.js
CHANGED
|
@@ -21,6 +21,14 @@ function testModeResource(request) {
|
|
|
21
21
|
createTestingToken() {
|
|
22
22
|
return request({ method: 'POST', path: '/v1/testing_tokens' });
|
|
23
23
|
},
|
|
24
|
+
/**
|
|
25
|
+
* A ready one-time URL that signs a browser in as `user_id` and lands on
|
|
26
|
+
* `redirect_url` (an allowed origin or localhost). Development instances only
|
|
27
|
+
* (403 TESTING_UNAVAILABLE otherwise). `@atlasauth/testing` wraps it as `signInAs`.
|
|
28
|
+
*/
|
|
29
|
+
createSignInUrl(body) {
|
|
30
|
+
return request({ method: 'POST', path: '/v1/testing/sign_in_url', body });
|
|
31
|
+
},
|
|
24
32
|
};
|
|
25
33
|
}
|
|
26
34
|
//# sourceMappingURL=test-mode.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-mode.js","sourceRoot":"","sources":["../../src/client/test-mode.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"test-mode.js","sourceRoot":"","sources":["../../src/client/test-mode.ts"],"names":[],"mappings":";;AAsCA,4CA6BC;AA7BD,SAAgB,gBAAgB,CAAC,OAAkB;IACjD,OAAO;QACL;;;WAGG;QACH,YAAY,CAAC,OAAoC,EAAE;YACjD,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAC;QACtE,CAAC;QACD;;;WAGG;QACH,cAAc,CAAC,OAA2B,EAAE;YAC1C,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,CAAC,CAAC;QACzE,CAAC;QACD,4FAA4F;QAC5F,kBAAkB;YAChB,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC,CAAC;QACjE,CAAC;QACD;;;;WAIG;QACH,eAAe,CAAC,IAA4E;YAC1F,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,yBAAyB,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5E,CAAC;KACF,CAAC;AACJ,CAAC"}
|
package/dist/client/users.d.ts
CHANGED
|
@@ -39,6 +39,28 @@ export interface User {
|
|
|
39
39
|
referral_code?: string | null;
|
|
40
40
|
/** The user's own referral link, when they are a referrer. */
|
|
41
41
|
referral_link?: string | null;
|
|
42
|
+
/**
|
|
43
|
+
* Every linked provider identity (sign-in, connect, imported on create or by
|
|
44
|
+
* bulk import); the same set `identities.list` returns. (Absent from servers
|
|
45
|
+
* older than this field.)
|
|
46
|
+
*/
|
|
47
|
+
external_accounts?: UserExternalAccount[];
|
|
48
|
+
}
|
|
49
|
+
/** A provider identity linked to a user. Tokens are never included. */
|
|
50
|
+
export interface UserExternalAccount {
|
|
51
|
+
object: 'external_account';
|
|
52
|
+
id: string;
|
|
53
|
+
provider: string;
|
|
54
|
+
provider_user_id: string;
|
|
55
|
+
/** The provider's address at the last sign-in or import: a snapshot, not proof of ownership. */
|
|
56
|
+
provider_email: string | null;
|
|
57
|
+
email_verified: boolean;
|
|
58
|
+
first_name?: string | null;
|
|
59
|
+
last_name?: string | null;
|
|
60
|
+
/** The provider's avatar for this identity. */
|
|
61
|
+
image_url?: string | null;
|
|
62
|
+
/** Epoch milliseconds. */
|
|
63
|
+
connected_at: number;
|
|
42
64
|
}
|
|
43
65
|
/** The inbound referral the referral platform matched for a user. */
|
|
44
66
|
export interface UserReferral {
|
|
@@ -211,6 +233,10 @@ export interface CreateUserBody {
|
|
|
211
233
|
password?: string;
|
|
212
234
|
first_name?: string;
|
|
213
235
|
last_name?: string;
|
|
236
|
+
/** The profile picture: an https URL, stored as given. */
|
|
237
|
+
image_url?: string;
|
|
238
|
+
/** Alias of `image_url`. */
|
|
239
|
+
profile_image_url?: string;
|
|
214
240
|
email_verified?: boolean;
|
|
215
241
|
/** The user must choose a new password at their first sign-in (`update_password` required action). */
|
|
216
242
|
password_change_required?: boolean;
|
|
@@ -237,6 +263,10 @@ export interface UpdateUserBody {
|
|
|
237
263
|
required_factors?: Array<'totp' | 'sms' | 'passkey' | 'push'> | null;
|
|
238
264
|
first_name?: string;
|
|
239
265
|
last_name?: string;
|
|
266
|
+
/** The profile picture: an https URL; `null` clears. */
|
|
267
|
+
image_url?: string | null;
|
|
268
|
+
/** Alias of `image_url`. */
|
|
269
|
+
profile_image_url?: string | null;
|
|
240
270
|
/**
|
|
241
271
|
* Your own id for the user; `null` clears. With referral attribution on, a
|
|
242
272
|
* change after sign-up is forwarded to the referral platform as an alias,
|