@lessly/sdk-app 15.1.1 → 16.0.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/dist/analytics/index.d.cts +1 -1
- package/dist/analytics/index.d.ts +1 -1
- package/dist/brain/index.cjs +0 -5
- package/dist/brain/index.cjs.map +1 -1
- package/dist/brain/index.d.cts +2 -6
- package/dist/brain/index.d.ts +2 -6
- package/dist/brain/index.js +1 -5
- package/dist/brain/index.js.map +1 -1
- package/dist/{client.gen-CxFsxxHW.d.cts → client.gen-lpkpZleM.d.cts} +3034 -175
- package/dist/{client.gen-CxFsxxHW.d.ts → client.gen-lpkpZleM.d.ts} +3034 -175
- package/dist/consent/index.d.cts +1 -1
- package/dist/consent/index.d.ts +1 -1
- package/dist/deployment/index.d.cts +1 -1
- package/dist/deployment/index.d.ts +1 -1
- package/dist/index.cjs +906 -13
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +906 -13
- package/dist/index.js.map +1 -1
- package/dist/mail/index.d.cts +2 -2
- package/dist/mail/index.d.ts +2 -2
- package/dist/organization/index.cjs +10 -0
- package/dist/organization/index.cjs.map +1 -1
- package/dist/organization/index.d.cts +10 -2
- package/dist/organization/index.d.ts +10 -2
- package/dist/organization/index.js +9 -1
- package/dist/organization/index.js.map +1 -1
- package/dist/playground/index.cjs +66 -0
- package/dist/playground/index.cjs.map +1 -0
- package/dist/playground/index.d.cts +52 -0
- package/dist/playground/index.d.ts +52 -0
- package/dist/playground/index.js +53 -0
- package/dist/playground/index.js.map +1 -0
- package/dist/realtime/index.d.cts +1 -1
- package/dist/realtime/index.d.ts +1 -1
- package/dist/tracking/index.d.cts +1 -1
- package/dist/tracking/index.d.ts +1 -1
- package/dist/users/index.cjs +216 -0
- package/dist/users/index.cjs.map +1 -0
- package/dist/users/index.d.cts +172 -0
- package/dist/users/index.d.ts +172 -0
- package/dist/users/index.js +173 -0
- package/dist/users/index.js.map +1 -0
- package/dist/waitlist/index.d.cts +1 -1
- package/dist/waitlist/index.d.ts +1 -1
- package/package.json +12 -2
- package/src/gen/bindings.gen.ts +906 -13
- package/src/gen/brain/index.ts +1 -1
- package/src/gen/brain/queryOptions.gen.ts +0 -7
- package/src/gen/client.gen.ts +218 -5
- package/src/gen/manifest.gen.ts +1 -1
- package/src/gen/organization/index.ts +1 -1
- package/src/gen/organization/queryOptions.gen.ts +12 -0
- package/src/gen/playground/index.ts +3 -0
- package/src/gen/playground/queryOptions.gen.ts +86 -0
- package/src/gen/types.gen.ts +2976 -100
- package/src/gen/users/index.ts +3 -0
- package/src/gen/users/queryOptions.gen.ts +268 -0
|
@@ -935,96 +935,6 @@ type BrainRestoreStatusOutput = ({
|
|
|
935
935
|
snapshotId: string;
|
|
936
936
|
preRestoreSnapshotId: (string | null);
|
|
937
937
|
} | null);
|
|
938
|
-
interface BrainUsageReportInput {
|
|
939
|
-
/**
|
|
940
|
-
* How many UTC days of this product's ledger to return, ending today (default 30, max 90)
|
|
941
|
-
*/
|
|
942
|
-
days?: number;
|
|
943
|
-
}
|
|
944
|
-
interface BrainUsageReportOutput {
|
|
945
|
-
note: string;
|
|
946
|
-
/**
|
|
947
|
-
* Brain's own ledger, for THIS product only
|
|
948
|
-
*/
|
|
949
|
-
product: {
|
|
950
|
-
/**
|
|
951
|
-
* Inclusive UTC end of the window (today), YYYY-MM-DD
|
|
952
|
-
*/
|
|
953
|
-
to: string;
|
|
954
|
-
/**
|
|
955
|
-
* The window actually used, after clamping
|
|
956
|
-
*/
|
|
957
|
-
days: number;
|
|
958
|
-
/**
|
|
959
|
-
* Inclusive UTC start of the window, YYYY-MM-DD
|
|
960
|
-
*/
|
|
961
|
-
from: string;
|
|
962
|
-
rows: {
|
|
963
|
-
/**
|
|
964
|
-
* 'sync' | 'batch'; '' when the push carried none
|
|
965
|
-
*/
|
|
966
|
-
mode: string;
|
|
967
|
-
/**
|
|
968
|
-
* Manifest meter slug, e.g. llm-tokens
|
|
969
|
-
*/
|
|
970
|
-
meter: string;
|
|
971
|
-
/**
|
|
972
|
-
* Model dimension; '' when the push carried none
|
|
973
|
-
*/
|
|
974
|
-
model: string;
|
|
975
|
-
/**
|
|
976
|
-
* How many record() calls landed in this slice
|
|
977
|
-
*/
|
|
978
|
-
events: number;
|
|
979
|
-
/**
|
|
980
|
-
* Tokens we metered for this slice, delivered or not
|
|
981
|
-
*/
|
|
982
|
-
tokens: number;
|
|
983
|
-
/**
|
|
984
|
-
* Purpose dimension; '' when the push carried none
|
|
985
|
-
*/
|
|
986
|
-
purpose: string;
|
|
987
|
-
/**
|
|
988
|
-
* UTC calendar day, YYYY-MM-DD
|
|
989
|
-
*/
|
|
990
|
-
usage_date: string;
|
|
991
|
-
/**
|
|
992
|
-
* Of those events, how many billing did not accept
|
|
993
|
-
*/
|
|
994
|
-
delivery_failed: number;
|
|
995
|
-
}[];
|
|
996
|
-
/**
|
|
997
|
-
* The rows rolled up per meter across the whole window
|
|
998
|
-
*/
|
|
999
|
-
totals: {
|
|
1000
|
-
meter: string;
|
|
1001
|
-
events: number;
|
|
1002
|
-
tokens: number;
|
|
1003
|
-
delivery_failed: number;
|
|
1004
|
-
}[];
|
|
1005
|
-
product_id: string;
|
|
1006
|
-
};
|
|
1007
|
-
/**
|
|
1008
|
-
* The platform billing aggregate for the whole ORG; null if it could not be read
|
|
1009
|
-
*/
|
|
1010
|
-
platform: ({
|
|
1011
|
-
plan: string;
|
|
1012
|
-
scope: "org";
|
|
1013
|
-
meters: {
|
|
1014
|
-
unit?: string;
|
|
1015
|
-
used?: number;
|
|
1016
|
-
limit?: (number | null);
|
|
1017
|
-
remaining?: (number | null);
|
|
1018
|
-
unlimited?: boolean;
|
|
1019
|
-
meter_slug: string;
|
|
1020
|
-
}[];
|
|
1021
|
-
org_id: string;
|
|
1022
|
-
} | null);
|
|
1023
|
-
/**
|
|
1024
|
-
* Why the platform aggregate is null; null when it was read successfully
|
|
1025
|
-
*/
|
|
1026
|
-
platform_error: (string | null);
|
|
1027
|
-
}
|
|
1028
938
|
interface ConsentConfigCookieDomainUpsertInput {
|
|
1029
939
|
cookieDomain: ("" | null | string);
|
|
1030
940
|
}
|
|
@@ -2485,7 +2395,7 @@ interface DeploymentEnvironmentUpdateOutput {
|
|
|
2485
2395
|
baseEnvironmentId: (string | null);
|
|
2486
2396
|
}
|
|
2487
2397
|
interface DeploymentEventsListByEnvironmentInput {
|
|
2488
|
-
type?: ("deployment.queued" | "deployment.build.started" | "deployment.build.succeeded" | "deployment.build.failed" | "deployment.deploying" | "deployment.variable.ignored" | "deployment.healthcheck.passed" | "deployment.healthcheck.failed" | "deployment.healthy" | "deployment.failed" | "deployment.replaced" | "deployment.release.started" | "deployment.release.log" | "deployment.release.succeeded" | "deployment.release.failed" | "replica.restarted" | "service.scaled" | "service.restarted" | "service.restart-failed" | "domain.verified" | "domain.tls.issued" | "domain.tls.failed" | "domain.www-tls.issued" | "domain.www-tls.failed" | "domain.routing.active" | "domain.routing.failed" | "domain.removed" | "domain.governance.mirror-failed" | "service.slept" | "service.woke" | "service.wake_failed" | "service.sleep-enabled" | "service.sleep-disabled"
|
|
2398
|
+
type?: ("deployment.queued" | "deployment.build.started" | "deployment.build.succeeded" | "deployment.build.failed" | "deployment.deploying" | "deployment.variable.ignored" | "deployment.healthcheck.passed" | "deployment.healthcheck.failed" | "deployment.healthy" | "deployment.failed" | "deployment.replaced" | "deployment.release.started" | "deployment.release.log" | "deployment.release.succeeded" | "deployment.release.failed" | "replica.restarted" | "service.scaled" | "service.restarted" | "service.restart-failed" | "domain.verified" | "domain.tls.issued" | "domain.tls.failed" | "domain.www-tls.issued" | "domain.www-tls.failed" | "domain.routing.active" | "domain.routing.failed" | "domain.removed" | "domain.governance.mirror-failed" | "service.slept" | "service.woke" | "service.wake_failed" | "service.sleep-enabled" | "service.sleep-disabled");
|
|
2489
2399
|
limit?: number;
|
|
2490
2400
|
since?: string;
|
|
2491
2401
|
until?: string;
|
|
@@ -2493,7 +2403,7 @@ interface DeploymentEventsListByEnvironmentInput {
|
|
|
2493
2403
|
}
|
|
2494
2404
|
type DeploymentEventsListByEnvironmentOutput = {
|
|
2495
2405
|
id: string;
|
|
2496
|
-
type: ("deployment.queued" | "deployment.build.started" | "deployment.build.succeeded" | "deployment.build.failed" | "deployment.deploying" | "deployment.variable.ignored" | "deployment.healthcheck.passed" | "deployment.healthcheck.failed" | "deployment.healthy" | "deployment.failed" | "deployment.replaced" | "deployment.release.started" | "deployment.release.log" | "deployment.release.succeeded" | "deployment.release.failed" | "replica.restarted" | "service.scaled" | "service.restarted" | "service.restart-failed" | "domain.verified" | "domain.tls.issued" | "domain.tls.failed" | "domain.www-tls.issued" | "domain.www-tls.failed" | "domain.routing.active" | "domain.routing.failed" | "domain.removed" | "domain.governance.mirror-failed" | "service.slept" | "service.woke" | "service.wake_failed" | "service.sleep-enabled" | "service.sleep-disabled"
|
|
2406
|
+
type: ("deployment.queued" | "deployment.build.started" | "deployment.build.succeeded" | "deployment.build.failed" | "deployment.deploying" | "deployment.variable.ignored" | "deployment.healthcheck.passed" | "deployment.healthcheck.failed" | "deployment.healthy" | "deployment.failed" | "deployment.replaced" | "deployment.release.started" | "deployment.release.log" | "deployment.release.succeeded" | "deployment.release.failed" | "replica.restarted" | "service.scaled" | "service.restarted" | "service.restart-failed" | "domain.verified" | "domain.tls.issued" | "domain.tls.failed" | "domain.www-tls.issued" | "domain.www-tls.failed" | "domain.routing.active" | "domain.routing.failed" | "domain.removed" | "domain.governance.mirror-failed" | "service.slept" | "service.woke" | "service.wake_failed" | "service.sleep-enabled" | "service.sleep-disabled");
|
|
2497
2407
|
payload: {
|
|
2498
2408
|
[k: string]: unknown;
|
|
2499
2409
|
};
|
|
@@ -2505,7 +2415,7 @@ type DeploymentEventsListByEnvironmentOutput = {
|
|
|
2505
2415
|
environmentId: (string | null);
|
|
2506
2416
|
}[];
|
|
2507
2417
|
interface DeploymentEventsListByServiceInput {
|
|
2508
|
-
type?: ("deployment.queued" | "deployment.build.started" | "deployment.build.succeeded" | "deployment.build.failed" | "deployment.deploying" | "deployment.variable.ignored" | "deployment.healthcheck.passed" | "deployment.healthcheck.failed" | "deployment.healthy" | "deployment.failed" | "deployment.replaced" | "deployment.release.started" | "deployment.release.log" | "deployment.release.succeeded" | "deployment.release.failed" | "replica.restarted" | "service.scaled" | "service.restarted" | "service.restart-failed" | "domain.verified" | "domain.tls.issued" | "domain.tls.failed" | "domain.www-tls.issued" | "domain.www-tls.failed" | "domain.routing.active" | "domain.routing.failed" | "domain.removed" | "domain.governance.mirror-failed" | "service.slept" | "service.woke" | "service.wake_failed" | "service.sleep-enabled" | "service.sleep-disabled"
|
|
2418
|
+
type?: ("deployment.queued" | "deployment.build.started" | "deployment.build.succeeded" | "deployment.build.failed" | "deployment.deploying" | "deployment.variable.ignored" | "deployment.healthcheck.passed" | "deployment.healthcheck.failed" | "deployment.healthy" | "deployment.failed" | "deployment.replaced" | "deployment.release.started" | "deployment.release.log" | "deployment.release.succeeded" | "deployment.release.failed" | "replica.restarted" | "service.scaled" | "service.restarted" | "service.restart-failed" | "domain.verified" | "domain.tls.issued" | "domain.tls.failed" | "domain.www-tls.issued" | "domain.www-tls.failed" | "domain.routing.active" | "domain.routing.failed" | "domain.removed" | "domain.governance.mirror-failed" | "service.slept" | "service.woke" | "service.wake_failed" | "service.sleep-enabled" | "service.sleep-disabled");
|
|
2509
2419
|
limit?: number;
|
|
2510
2420
|
since?: string;
|
|
2511
2421
|
until?: string;
|
|
@@ -2514,7 +2424,7 @@ interface DeploymentEventsListByServiceInput {
|
|
|
2514
2424
|
}
|
|
2515
2425
|
type DeploymentEventsListByServiceOutput = {
|
|
2516
2426
|
id: string;
|
|
2517
|
-
type: ("deployment.queued" | "deployment.build.started" | "deployment.build.succeeded" | "deployment.build.failed" | "deployment.deploying" | "deployment.variable.ignored" | "deployment.healthcheck.passed" | "deployment.healthcheck.failed" | "deployment.healthy" | "deployment.failed" | "deployment.replaced" | "deployment.release.started" | "deployment.release.log" | "deployment.release.succeeded" | "deployment.release.failed" | "replica.restarted" | "service.scaled" | "service.restarted" | "service.restart-failed" | "domain.verified" | "domain.tls.issued" | "domain.tls.failed" | "domain.www-tls.issued" | "domain.www-tls.failed" | "domain.routing.active" | "domain.routing.failed" | "domain.removed" | "domain.governance.mirror-failed" | "service.slept" | "service.woke" | "service.wake_failed" | "service.sleep-enabled" | "service.sleep-disabled"
|
|
2427
|
+
type: ("deployment.queued" | "deployment.build.started" | "deployment.build.succeeded" | "deployment.build.failed" | "deployment.deploying" | "deployment.variable.ignored" | "deployment.healthcheck.passed" | "deployment.healthcheck.failed" | "deployment.healthy" | "deployment.failed" | "deployment.replaced" | "deployment.release.started" | "deployment.release.log" | "deployment.release.succeeded" | "deployment.release.failed" | "replica.restarted" | "service.scaled" | "service.restarted" | "service.restart-failed" | "domain.verified" | "domain.tls.issued" | "domain.tls.failed" | "domain.www-tls.issued" | "domain.www-tls.failed" | "domain.routing.active" | "domain.routing.failed" | "domain.removed" | "domain.governance.mirror-failed" | "service.slept" | "service.woke" | "service.wake_failed" | "service.sleep-enabled" | "service.sleep-disabled");
|
|
2518
2428
|
payload: {
|
|
2519
2429
|
[k: string]: unknown;
|
|
2520
2430
|
};
|
|
@@ -12757,6 +12667,19 @@ interface OrganizationConnectorsRequestOutput {
|
|
|
12757
12667
|
}
|
|
12758
12668
|
interface OrganizationCreateInput {
|
|
12759
12669
|
name: string;
|
|
12670
|
+
legalName?: string;
|
|
12671
|
+
ownerName?: string;
|
|
12672
|
+
/**
|
|
12673
|
+
* @maxItems 50
|
|
12674
|
+
*/
|
|
12675
|
+
beneficialOwners?: {
|
|
12676
|
+
name: string;
|
|
12677
|
+
country: string;
|
|
12678
|
+
share_pct: number;
|
|
12679
|
+
}[];
|
|
12680
|
+
residencyCountry?: string;
|
|
12681
|
+
ownershipConfirmed?: boolean;
|
|
12682
|
+
countryOfIncorporation?: string;
|
|
12760
12683
|
}
|
|
12761
12684
|
interface OrganizationCreateOutput {
|
|
12762
12685
|
id: string;
|
|
@@ -12824,7 +12747,7 @@ interface OrganizationExtensionsListOutput {
|
|
|
12824
12747
|
id: string;
|
|
12825
12748
|
name: string;
|
|
12826
12749
|
status: string;
|
|
12827
|
-
uiMode: ("federation" | "standalone");
|
|
12750
|
+
uiMode: ("federation" | "standalone" | "none");
|
|
12828
12751
|
version: string;
|
|
12829
12752
|
manifest: {
|
|
12830
12753
|
[k: string]: unknown;
|
|
@@ -12839,7 +12762,7 @@ interface OrganizationExtensionsListInstalledOutput {
|
|
|
12839
12762
|
id: string;
|
|
12840
12763
|
name: string;
|
|
12841
12764
|
status: string;
|
|
12842
|
-
uiMode: ("federation" | "standalone");
|
|
12765
|
+
uiMode: ("federation" | "standalone" | "none");
|
|
12843
12766
|
version: string;
|
|
12844
12767
|
manifest: {
|
|
12845
12768
|
[k: string]: unknown;
|
|
@@ -13116,6 +13039,7 @@ interface OrganizationProductAcceptInvitationOutput {
|
|
|
13116
13039
|
}
|
|
13117
13040
|
interface OrganizationProductCreateInput {
|
|
13118
13041
|
name: string;
|
|
13042
|
+
organizationId?: string;
|
|
13119
13043
|
}
|
|
13120
13044
|
interface OrganizationProductCreateOutput {
|
|
13121
13045
|
id: string;
|
|
@@ -13130,17 +13054,25 @@ interface OrganizationProductCreateOutput {
|
|
|
13130
13054
|
organizationId: string;
|
|
13131
13055
|
}
|
|
13132
13056
|
interface OrganizationProductInviteInput {
|
|
13057
|
+
role?: ("admin" | "member" | "viewer");
|
|
13133
13058
|
email: string;
|
|
13134
13059
|
productId: string;
|
|
13135
13060
|
}
|
|
13136
|
-
|
|
13061
|
+
type OrganizationProductInviteOutput = ({
|
|
13137
13062
|
id: string;
|
|
13138
13063
|
role: string;
|
|
13139
13064
|
email: (string | null);
|
|
13140
13065
|
status: string;
|
|
13066
|
+
outcome: "invited";
|
|
13141
13067
|
createdAt: string;
|
|
13142
13068
|
expiresAt: string;
|
|
13143
|
-
}
|
|
13069
|
+
} | {
|
|
13070
|
+
role: string;
|
|
13071
|
+
userId: string;
|
|
13072
|
+
outcome: "added";
|
|
13073
|
+
memberId: string;
|
|
13074
|
+
productId: string;
|
|
13075
|
+
});
|
|
13144
13076
|
interface OrganizationProductListInput {
|
|
13145
13077
|
}
|
|
13146
13078
|
interface OrganizationProductListOutput {
|
|
@@ -13217,6 +13149,22 @@ interface OrganizationProductSelectOutput {
|
|
|
13217
13149
|
name: string;
|
|
13218
13150
|
slug: string;
|
|
13219
13151
|
}
|
|
13152
|
+
interface OrganizationProductUpdateInput {
|
|
13153
|
+
name: string;
|
|
13154
|
+
productId: string;
|
|
13155
|
+
}
|
|
13156
|
+
interface OrganizationProductUpdateOutput {
|
|
13157
|
+
id: string;
|
|
13158
|
+
name: string;
|
|
13159
|
+
role: string;
|
|
13160
|
+
slug: string;
|
|
13161
|
+
demoAt: (string | null);
|
|
13162
|
+
status: string;
|
|
13163
|
+
blockedAt: (string | null);
|
|
13164
|
+
createdAt: string;
|
|
13165
|
+
archivedAt: (string | null);
|
|
13166
|
+
organizationId: string;
|
|
13167
|
+
}
|
|
13220
13168
|
interface OrganizationRolesCreateInput {
|
|
13221
13169
|
deny?: string[];
|
|
13222
13170
|
name: string;
|
|
@@ -13286,6 +13234,13 @@ interface OrganizationRolesUpdateOutput {
|
|
|
13286
13234
|
updatedAt: string;
|
|
13287
13235
|
organizationId: string;
|
|
13288
13236
|
}
|
|
13237
|
+
interface OrganizationSecurityMfaEnableInput {
|
|
13238
|
+
organizationId: string;
|
|
13239
|
+
}
|
|
13240
|
+
interface OrganizationSecurityMfaEnableOutput {
|
|
13241
|
+
mfaRequired: true;
|
|
13242
|
+
trustedDeviceAllowed: boolean;
|
|
13243
|
+
}
|
|
13289
13244
|
interface OrganizationSelectInput {
|
|
13290
13245
|
organizationId: string;
|
|
13291
13246
|
}
|
|
@@ -13296,6 +13251,194 @@ interface OrganizationSelectOutput {
|
|
|
13296
13251
|
};
|
|
13297
13252
|
activeProductId: (string | null);
|
|
13298
13253
|
}
|
|
13254
|
+
interface PlaygroundAnalyticsOverviewInput {
|
|
13255
|
+
/**
|
|
13256
|
+
* Max records per entity in recent[]; omit for the endpoint default
|
|
13257
|
+
*/
|
|
13258
|
+
limit?: number;
|
|
13259
|
+
}
|
|
13260
|
+
interface PlaygroundAnalyticsOverviewOutput {
|
|
13261
|
+
ok: boolean;
|
|
13262
|
+
minted: boolean;
|
|
13263
|
+
overview?: unknown;
|
|
13264
|
+
http_status: number;
|
|
13265
|
+
}
|
|
13266
|
+
interface PlaygroundBillingEntitlementsInput {
|
|
13267
|
+
}
|
|
13268
|
+
interface PlaygroundBillingEntitlementsOutput {
|
|
13269
|
+
ok: boolean;
|
|
13270
|
+
minted: boolean;
|
|
13271
|
+
http_status: number;
|
|
13272
|
+
entitlements?: unknown;
|
|
13273
|
+
}
|
|
13274
|
+
interface PlaygroundBillingRecordUsageInput {
|
|
13275
|
+
/**
|
|
13276
|
+
* Quantity of events to record against playground-events (SUM); defaults to 1
|
|
13277
|
+
*/
|
|
13278
|
+
value?: number;
|
|
13279
|
+
}
|
|
13280
|
+
interface PlaygroundBillingRecordUsageOutput {
|
|
13281
|
+
minted: boolean;
|
|
13282
|
+
accepted: (number | null);
|
|
13283
|
+
recorded: boolean;
|
|
13284
|
+
duplicates: (number | null);
|
|
13285
|
+
http_status: number;
|
|
13286
|
+
}
|
|
13287
|
+
interface PlaygroundClickupCreateTaskInput {
|
|
13288
|
+
/**
|
|
13289
|
+
* Task title; defaults to a fixture label
|
|
13290
|
+
*/
|
|
13291
|
+
name?: string;
|
|
13292
|
+
/**
|
|
13293
|
+
* ClickUp list id; falls back to CLICKUP_TEST_LIST_ID
|
|
13294
|
+
*/
|
|
13295
|
+
listId?: string;
|
|
13296
|
+
}
|
|
13297
|
+
interface PlaygroundClickupCreateTaskOutput {
|
|
13298
|
+
minted: boolean;
|
|
13299
|
+
task_id: (string | null);
|
|
13300
|
+
list_status: number;
|
|
13301
|
+
vend_status: number;
|
|
13302
|
+
clickup_status: number;
|
|
13303
|
+
installation_count: number;
|
|
13304
|
+
}
|
|
13305
|
+
interface PlaygroundClickupGetLastWebhookInput {
|
|
13306
|
+
}
|
|
13307
|
+
type PlaygroundClickupGetLastWebhookOutput = ({
|
|
13308
|
+
payload: string;
|
|
13309
|
+
event_id: string;
|
|
13310
|
+
provider: string;
|
|
13311
|
+
verified: boolean;
|
|
13312
|
+
product_id: string;
|
|
13313
|
+
occurred_at: string;
|
|
13314
|
+
connector_id: string;
|
|
13315
|
+
clickup_event: (string | null);
|
|
13316
|
+
receipt_count: number;
|
|
13317
|
+
} | {
|
|
13318
|
+
found: false;
|
|
13319
|
+
});
|
|
13320
|
+
interface PlaygroundClickupGetOverviewInput {
|
|
13321
|
+
}
|
|
13322
|
+
interface PlaygroundClickupGetOverviewOutput {
|
|
13323
|
+
team: ({
|
|
13324
|
+
teamId: string;
|
|
13325
|
+
teamName: string;
|
|
13326
|
+
} | null);
|
|
13327
|
+
lists: PlaygroundClickupGetOverviewOutputItems[];
|
|
13328
|
+
tasks: {
|
|
13329
|
+
id: string;
|
|
13330
|
+
name: string;
|
|
13331
|
+
status: (string | null);
|
|
13332
|
+
}[];
|
|
13333
|
+
minted: boolean;
|
|
13334
|
+
spaces: PlaygroundClickupGetOverviewOutputItems[];
|
|
13335
|
+
list_status: number;
|
|
13336
|
+
vend_status: number;
|
|
13337
|
+
lists_status: number;
|
|
13338
|
+
tasks_status: number;
|
|
13339
|
+
spaces_status: number;
|
|
13340
|
+
folders_status: number;
|
|
13341
|
+
installation_count: number;
|
|
13342
|
+
}
|
|
13343
|
+
interface PlaygroundClickupGetOverviewOutputItems {
|
|
13344
|
+
id: string;
|
|
13345
|
+
name: string;
|
|
13346
|
+
}
|
|
13347
|
+
interface PlaygroundGdriveGetLastChangeInput {
|
|
13348
|
+
}
|
|
13349
|
+
type PlaygroundGdriveGetLastChangeOutput = ({
|
|
13350
|
+
file_id: string;
|
|
13351
|
+
removed: boolean;
|
|
13352
|
+
file_name: (string | null);
|
|
13353
|
+
mime_type: (string | null);
|
|
13354
|
+
product_id: string;
|
|
13355
|
+
occurred_at: string;
|
|
13356
|
+
connector_id: string;
|
|
13357
|
+
resource_state: string;
|
|
13358
|
+
} | {
|
|
13359
|
+
found: false;
|
|
13360
|
+
});
|
|
13361
|
+
interface PlaygroundGdriveReadFileInput {
|
|
13362
|
+
/**
|
|
13363
|
+
* Drive file id; falls back to GDRIVE_TEST_FILE_ID, then the first picked file
|
|
13364
|
+
*/
|
|
13365
|
+
fileId?: string;
|
|
13366
|
+
}
|
|
13367
|
+
interface PlaygroundGdriveReadFileOutput {
|
|
13368
|
+
minted: boolean;
|
|
13369
|
+
file_id: (string | null);
|
|
13370
|
+
file_name: (string | null);
|
|
13371
|
+
mime_type: (string | null);
|
|
13372
|
+
file_count: number;
|
|
13373
|
+
get_status: number;
|
|
13374
|
+
list_status: number;
|
|
13375
|
+
vend_status: number;
|
|
13376
|
+
content_bytes: (number | null);
|
|
13377
|
+
}
|
|
13378
|
+
interface PlaygroundGoogleadsReadCustomerInput {
|
|
13379
|
+
}
|
|
13380
|
+
interface PlaygroundGoogleadsReadCustomerOutput {
|
|
13381
|
+
minted: boolean;
|
|
13382
|
+
vended: boolean;
|
|
13383
|
+
customer_id: (string | null);
|
|
13384
|
+
vend_status: number;
|
|
13385
|
+
result_count: number;
|
|
13386
|
+
search_status: number;
|
|
13387
|
+
login_customer_id: (string | null);
|
|
13388
|
+
}
|
|
13389
|
+
interface PlaygroundLifecycleGetStateInput {
|
|
13390
|
+
}
|
|
13391
|
+
interface PlaygroundLifecycleGetStateOutput {
|
|
13392
|
+
blocked: boolean;
|
|
13393
|
+
archived: boolean;
|
|
13394
|
+
productId: string;
|
|
13395
|
+
lastBlockTransition: ({
|
|
13396
|
+
eventId: string;
|
|
13397
|
+
eventName: string;
|
|
13398
|
+
productId: string;
|
|
13399
|
+
occurredAt: string;
|
|
13400
|
+
recordedAt: string;
|
|
13401
|
+
receiptCount: number;
|
|
13402
|
+
organizationId: string;
|
|
13403
|
+
cascadedFromOrg: boolean;
|
|
13404
|
+
} | null);
|
|
13405
|
+
lastArchiveTransition: ({
|
|
13406
|
+
eventId: string;
|
|
13407
|
+
eventName: string;
|
|
13408
|
+
productId: string;
|
|
13409
|
+
occurredAt: string;
|
|
13410
|
+
recordedAt: string;
|
|
13411
|
+
receiptCount: number;
|
|
13412
|
+
organizationId: string;
|
|
13413
|
+
cascadedFromOrg: boolean;
|
|
13414
|
+
} | null);
|
|
13415
|
+
}
|
|
13416
|
+
interface PlaygroundLifecycleListEventsInput {
|
|
13417
|
+
}
|
|
13418
|
+
type PlaygroundLifecycleListEventsOutput = {
|
|
13419
|
+
eventId: string;
|
|
13420
|
+
eventName: string;
|
|
13421
|
+
productId: string;
|
|
13422
|
+
occurredAt: string;
|
|
13423
|
+
recordedAt: string;
|
|
13424
|
+
receiptCount: number;
|
|
13425
|
+
organizationId: string;
|
|
13426
|
+
cascadedFromOrg: boolean;
|
|
13427
|
+
}[];
|
|
13428
|
+
interface PlaygroundWebhookGetLastInput {
|
|
13429
|
+
}
|
|
13430
|
+
type PlaygroundWebhookGetLastOutput = ({
|
|
13431
|
+
payload?: unknown;
|
|
13432
|
+
event_id: string;
|
|
13433
|
+
provider: string;
|
|
13434
|
+
verified: boolean;
|
|
13435
|
+
product_id: string;
|
|
13436
|
+
occurred_at: string;
|
|
13437
|
+
connector_id: string;
|
|
13438
|
+
delivery_count: number;
|
|
13439
|
+
} | {
|
|
13440
|
+
found: false;
|
|
13441
|
+
});
|
|
13299
13442
|
interface RealtimeApikeyCreateInput {
|
|
13300
13443
|
/**
|
|
13301
13444
|
* Human-readable label for the key, e.g. "production backend"
|
|
@@ -15127,105 +15270,2718 @@ interface TrackingSnippetsGetOutput {
|
|
|
15127
15270
|
scriptUrl: string;
|
|
15128
15271
|
minimalSnippet: string;
|
|
15129
15272
|
}
|
|
15130
|
-
interface
|
|
15131
|
-
}
|
|
15132
|
-
type WaitlistConfigGetOutput = ({
|
|
15133
|
-
createdAt: string;
|
|
15134
|
-
policyUrl: (string | null);
|
|
15135
|
-
productId: string;
|
|
15136
|
-
updatedAt: string;
|
|
15137
|
-
senderName: (string | null);
|
|
15138
|
-
consentText: string;
|
|
15139
|
-
policyLabel: (string | null);
|
|
15140
|
-
siteBaseUrl: (string | null);
|
|
15141
|
-
senderDomain: (string | null);
|
|
15142
|
-
inviteSubject: (string | null);
|
|
15143
|
-
policyVersion: string;
|
|
15144
|
-
inviteTemplate: (string | null);
|
|
15145
|
-
} | null);
|
|
15146
|
-
interface WaitlistConfigUpsertInput {
|
|
15273
|
+
interface UsersApikeysCreateInput {
|
|
15147
15274
|
/**
|
|
15148
|
-
*
|
|
15275
|
+
* A label only humans read — which backend or environment holds this key.
|
|
15149
15276
|
*/
|
|
15150
|
-
|
|
15277
|
+
name: string;
|
|
15151
15278
|
/**
|
|
15152
|
-
*
|
|
15279
|
+
* 'server' mints a SECRET key (usk_…) for the Product's backend — returned exactly once and stored hashed. 'publishable' mints a non-secret key (upk_…) that identifies this product in browser flows and stays readable.
|
|
15153
15280
|
*/
|
|
15154
|
-
|
|
15281
|
+
type: ("server" | "publishable");
|
|
15282
|
+
}
|
|
15283
|
+
interface UsersApikeysCreateOutput {
|
|
15284
|
+
id: string;
|
|
15285
|
+
key: string;
|
|
15286
|
+
name: string;
|
|
15287
|
+
type: ("server" | "publishable");
|
|
15288
|
+
value: (string | null);
|
|
15289
|
+
prefix: string;
|
|
15290
|
+
createdAt: string;
|
|
15291
|
+
revokedAt: (string | null);
|
|
15292
|
+
}
|
|
15293
|
+
interface UsersApikeysListInput {
|
|
15294
|
+
}
|
|
15295
|
+
interface UsersApikeysListOutput {
|
|
15296
|
+
keys: {
|
|
15297
|
+
id: string;
|
|
15298
|
+
name: string;
|
|
15299
|
+
type: ("server" | "publishable");
|
|
15300
|
+
value: (string | null);
|
|
15301
|
+
prefix: string;
|
|
15302
|
+
createdAt: string;
|
|
15303
|
+
revokedAt: (string | null);
|
|
15304
|
+
}[];
|
|
15305
|
+
}
|
|
15306
|
+
interface UsersApikeysRevokeInput {
|
|
15155
15307
|
/**
|
|
15156
|
-
*
|
|
15308
|
+
* Id of the key to revoke. Revocation is immediate and final.
|
|
15157
15309
|
*/
|
|
15158
|
-
|
|
15310
|
+
id: string;
|
|
15311
|
+
}
|
|
15312
|
+
interface UsersApikeysRevokeOutput {
|
|
15313
|
+
id: string;
|
|
15314
|
+
revoked: true;
|
|
15315
|
+
}
|
|
15316
|
+
interface UsersAuditListInput {
|
|
15159
15317
|
/**
|
|
15160
|
-
*
|
|
15318
|
+
* Page size, 1-100. Default 25.
|
|
15161
15319
|
*/
|
|
15162
|
-
|
|
15320
|
+
limit?: number;
|
|
15163
15321
|
/**
|
|
15164
|
-
*
|
|
15322
|
+
* ISO-8601 lower bound (inclusive) on the event timestamp.
|
|
15165
15323
|
*/
|
|
15166
|
-
|
|
15324
|
+
since?: string;
|
|
15167
15325
|
/**
|
|
15168
|
-
*
|
|
15326
|
+
* ISO-8601 upper bound (exclusive) on the event timestamp.
|
|
15169
15327
|
*/
|
|
15170
|
-
|
|
15328
|
+
until?: string;
|
|
15171
15329
|
/**
|
|
15172
|
-
*
|
|
15330
|
+
* Exact action to filter by, e.g. 'user.banned'. Omit for all actions.
|
|
15173
15331
|
*/
|
|
15174
|
-
|
|
15332
|
+
action?: string;
|
|
15175
15333
|
/**
|
|
15176
|
-
*
|
|
15334
|
+
* Opaque cursor from a previous response's `nextCursor`. Omit for the first page.
|
|
15177
15335
|
*/
|
|
15178
|
-
|
|
15336
|
+
cursor?: string;
|
|
15179
15337
|
/**
|
|
15180
|
-
*
|
|
15338
|
+
* Exact id of the audited target, e.g. a user id.
|
|
15181
15339
|
*/
|
|
15182
|
-
|
|
15183
|
-
|
|
15184
|
-
|
|
15185
|
-
|
|
15186
|
-
|
|
15187
|
-
productId: string;
|
|
15188
|
-
updatedAt: string;
|
|
15189
|
-
senderName: (string | null);
|
|
15190
|
-
consentText: string;
|
|
15191
|
-
policyLabel: (string | null);
|
|
15192
|
-
siteBaseUrl: (string | null);
|
|
15193
|
-
senderDomain: (string | null);
|
|
15194
|
-
inviteSubject: (string | null);
|
|
15195
|
-
policyVersion: string;
|
|
15196
|
-
inviteTemplate: (string | null);
|
|
15340
|
+
targetId?: string;
|
|
15341
|
+
/**
|
|
15342
|
+
* Target kind to filter by, e.g. 'user'.
|
|
15343
|
+
*/
|
|
15344
|
+
targetType?: string;
|
|
15197
15345
|
}
|
|
15198
|
-
interface
|
|
15346
|
+
interface UsersAuditListOutput {
|
|
15347
|
+
events: {
|
|
15348
|
+
id: string;
|
|
15349
|
+
ip: (string | null);
|
|
15350
|
+
action: string;
|
|
15351
|
+
actorId: (string | null);
|
|
15352
|
+
metadata: {
|
|
15353
|
+
[k: string]: unknown;
|
|
15354
|
+
};
|
|
15355
|
+
targetId: (string | null);
|
|
15356
|
+
actorType: ("operator" | "system" | "end_user");
|
|
15357
|
+
createdAt: string;
|
|
15358
|
+
productId: string;
|
|
15359
|
+
userAgent: (string | null);
|
|
15360
|
+
targetType: (string | null);
|
|
15361
|
+
}[];
|
|
15362
|
+
nextCursor: (string | null);
|
|
15199
15363
|
}
|
|
15200
|
-
interface
|
|
15201
|
-
product_id: string;
|
|
15202
|
-
script_tag: string;
|
|
15203
|
-
public_edge_url: string;
|
|
15364
|
+
interface UsersConfigGetInput {
|
|
15204
15365
|
}
|
|
15205
|
-
interface
|
|
15206
|
-
|
|
15207
|
-
* Resend even when a live invite token already exists (mints a fresh token).
|
|
15208
|
-
*/
|
|
15209
|
-
force?: boolean;
|
|
15210
|
-
/**
|
|
15211
|
-
* Explicit recipient emails (e.g. from waitlist_signups_list). Combined with filter if both given.
|
|
15212
|
-
*/
|
|
15213
|
-
emails?: string[];
|
|
15214
|
-
/**
|
|
15215
|
-
* Selection filter over signups; resolved server-side with pagination.
|
|
15216
|
-
*/
|
|
15217
|
-
filter?: {
|
|
15366
|
+
interface UsersConfigGetOutput {
|
|
15367
|
+
mfa: {
|
|
15218
15368
|
/**
|
|
15219
|
-
*
|
|
15369
|
+
* Whether a second factor is MANDATORY for this product. When true, a user may not unenroll their last verified factor. Default false.
|
|
15220
15370
|
*/
|
|
15221
|
-
|
|
15371
|
+
required: boolean;
|
|
15222
15372
|
/**
|
|
15223
|
-
*
|
|
15373
|
+
* How many single-use backup codes a batch contains. Default 10.
|
|
15224
15374
|
*/
|
|
15225
|
-
|
|
15375
|
+
backupCodeCount: number;
|
|
15376
|
+
/**
|
|
15377
|
+
* Mandatory delay on an operator-initiated factor reset, in hours — the abort window the user is emailed. Default 72.
|
|
15378
|
+
*/
|
|
15379
|
+
resetDelayHours: number;
|
|
15380
|
+
/**
|
|
15381
|
+
* How long a passed step-up challenge stays spendable, in minutes. The grant is SINGLE-USE regardless. Default 5.
|
|
15382
|
+
*/
|
|
15383
|
+
stepUpGrantMinutes: number;
|
|
15384
|
+
/**
|
|
15385
|
+
* Wrong BACKUP codes before the account is locked, counted separately from TOTP. Default 5.
|
|
15386
|
+
*/
|
|
15387
|
+
maxBackupCodeAttempts: number;
|
|
15388
|
+
/**
|
|
15389
|
+
* Wrong second-factor codes before the account is locked. Default 5.
|
|
15390
|
+
*/
|
|
15391
|
+
maxSecondFactorAttempts: number;
|
|
15392
|
+
/**
|
|
15393
|
+
* How recently the caller must have authenticated to enroll or regenerate a factor, in minutes. Default 10.
|
|
15394
|
+
*/
|
|
15395
|
+
sensitiveAuthAgeMinutes: number;
|
|
15226
15396
|
};
|
|
15227
|
-
|
|
15228
|
-
|
|
15397
|
+
email: {
|
|
15398
|
+
/**
|
|
15399
|
+
* Sender for auth email, e.g. "Acme <auth@acme.com>". MUST be on a domain verified in this product's mail toolkit. While it is null, email_code/email_link are not offered as strategies.
|
|
15400
|
+
*/
|
|
15401
|
+
from: (string | null);
|
|
15402
|
+
/**
|
|
15403
|
+
* Offer the 6-digit code strategy (email_code). Default true.
|
|
15404
|
+
*/
|
|
15405
|
+
codeEnabled: boolean;
|
|
15406
|
+
/**
|
|
15407
|
+
* Base URL magic links point at, e.g. "https://public.lessly.com/{productId}/users". Null uses the deployment default.
|
|
15408
|
+
*/
|
|
15409
|
+
linkBaseUrl: (string | null);
|
|
15410
|
+
/**
|
|
15411
|
+
* Offer the magic-link strategy (email_link). Default true.
|
|
15412
|
+
*/
|
|
15413
|
+
linkEnabled: boolean;
|
|
15414
|
+
/**
|
|
15415
|
+
* How long an emailed code or link stays usable, in minutes. Default 15.
|
|
15416
|
+
*/
|
|
15417
|
+
codeTtlMinutes: number;
|
|
15418
|
+
/**
|
|
15419
|
+
* Auth emails one address may receive per day. Default 10.
|
|
15420
|
+
*/
|
|
15421
|
+
resendDailyCap: number;
|
|
15422
|
+
/**
|
|
15423
|
+
* Wrong-code entries allowed per token before it is spent. Default 5.
|
|
15424
|
+
*/
|
|
15425
|
+
maxCodeAttempts: number;
|
|
15426
|
+
/**
|
|
15427
|
+
* Minimum seconds between two auth emails to one address. Floor of 60 is enforced regardless. Default 60.
|
|
15428
|
+
*/
|
|
15429
|
+
resendCooldownSeconds: number;
|
|
15430
|
+
};
|
|
15431
|
+
oauth: {
|
|
15432
|
+
providers: {
|
|
15433
|
+
github: UsersConfigGetOutputGoogle;
|
|
15434
|
+
google: UsersConfigGetOutputGoogle;
|
|
15435
|
+
};
|
|
15436
|
+
};
|
|
15437
|
+
hosted: {
|
|
15438
|
+
/**
|
|
15439
|
+
* Serve the hosted sign-in, sign-up and recovery pages for this product. Default true. False answers those routes with a refusal page instead — for a product that ships its own frontend and wants no second front door.
|
|
15440
|
+
*/
|
|
15441
|
+
enabled: boolean;
|
|
15442
|
+
/**
|
|
15443
|
+
* Absolute https URL of a logo rendered above the form. Null renders no logo.
|
|
15444
|
+
*/
|
|
15445
|
+
logoUrl: (string | null);
|
|
15446
|
+
/**
|
|
15447
|
+
* Terms link rendered in the footer. Null renders no link.
|
|
15448
|
+
*/
|
|
15449
|
+
termsUrl: (string | null);
|
|
15450
|
+
/**
|
|
15451
|
+
* CSS colour of the body text.
|
|
15452
|
+
*/
|
|
15453
|
+
textColor: string;
|
|
15454
|
+
/**
|
|
15455
|
+
* One line under the card. Null renders no footer.
|
|
15456
|
+
*/
|
|
15457
|
+
footerText: (string | null);
|
|
15458
|
+
/**
|
|
15459
|
+
* Privacy-policy link rendered in the footer. Null renders no link.
|
|
15460
|
+
*/
|
|
15461
|
+
privacyUrl: (string | null);
|
|
15462
|
+
/**
|
|
15463
|
+
* CSS colour for the submit button, the links and the focus ring.
|
|
15464
|
+
*/
|
|
15465
|
+
accentColor: string;
|
|
15466
|
+
/**
|
|
15467
|
+
* Shown in the heading and the page title. Default "This product".
|
|
15468
|
+
*/
|
|
15469
|
+
productName: string;
|
|
15470
|
+
/**
|
|
15471
|
+
* CSS length for the card and its controls, e.g. "12px".
|
|
15472
|
+
*/
|
|
15473
|
+
borderRadius: string;
|
|
15474
|
+
/**
|
|
15475
|
+
* CSS colour of the card itself.
|
|
15476
|
+
*/
|
|
15477
|
+
surfaceColor: string;
|
|
15478
|
+
/**
|
|
15479
|
+
* CSS colour of secondary text and hints.
|
|
15480
|
+
*/
|
|
15481
|
+
mutedTextColor: string;
|
|
15482
|
+
/**
|
|
15483
|
+
* CSS colour of the page behind the card.
|
|
15484
|
+
*/
|
|
15485
|
+
backgroundColor: string;
|
|
15486
|
+
};
|
|
15487
|
+
invite: {
|
|
15488
|
+
/**
|
|
15489
|
+
* How long an invite link stays usable, in days. Default 14.
|
|
15490
|
+
*/
|
|
15491
|
+
ttlDays: number;
|
|
15492
|
+
/**
|
|
15493
|
+
* Minimum minutes between two invite emails to one address. Default 60.
|
|
15494
|
+
*/
|
|
15495
|
+
resendCooldownMinutes: number;
|
|
15496
|
+
};
|
|
15497
|
+
status: ("active" | "paused");
|
|
15498
|
+
captcha: {
|
|
15499
|
+
enabled: boolean;
|
|
15500
|
+
siteKey: (string | null);
|
|
15501
|
+
provider: "turnstile";
|
|
15502
|
+
riskElevated: boolean;
|
|
15503
|
+
};
|
|
15504
|
+
recovery: {
|
|
15505
|
+
/**
|
|
15506
|
+
* Offer the password-recovery flow at all. Default true.
|
|
15507
|
+
*/
|
|
15508
|
+
enabled: boolean;
|
|
15509
|
+
/**
|
|
15510
|
+
* How long a reset link stays usable, in minutes. Default 60.
|
|
15511
|
+
*/
|
|
15512
|
+
ttlMinutes: number;
|
|
15513
|
+
};
|
|
15514
|
+
testMode: {
|
|
15515
|
+
/**
|
|
15516
|
+
* Opt this product into test mode. Refused outright on a production deployment — the environment gate is checked first and cannot be configured away. Turning it on is audited and raises an alert. Default false.
|
|
15517
|
+
*/
|
|
15518
|
+
enabled: boolean;
|
|
15519
|
+
};
|
|
15520
|
+
waitlist: {
|
|
15521
|
+
/**
|
|
15522
|
+
* The embeddable widget’s copy and colours.
|
|
15523
|
+
*/
|
|
15524
|
+
widget: {
|
|
15525
|
+
/**
|
|
15526
|
+
* Heading above the widget form.
|
|
15527
|
+
*/
|
|
15528
|
+
title: string;
|
|
15529
|
+
/**
|
|
15530
|
+
* Link rendered beside the consent text. Null renders no link.
|
|
15531
|
+
*/
|
|
15532
|
+
policyUrl: (string | null);
|
|
15533
|
+
/**
|
|
15534
|
+
* CSS colour for the button and the focus ring.
|
|
15535
|
+
*/
|
|
15536
|
+
accentColor: string;
|
|
15537
|
+
/**
|
|
15538
|
+
* Submit button copy.
|
|
15539
|
+
*/
|
|
15540
|
+
buttonLabel: string;
|
|
15541
|
+
/**
|
|
15542
|
+
* Consent checkbox copy. Null renders no checkbox, and the signup records the consent proof as `unspecified`.
|
|
15543
|
+
*/
|
|
15544
|
+
consentText: (string | null);
|
|
15545
|
+
/**
|
|
15546
|
+
* One line under the heading.
|
|
15547
|
+
*/
|
|
15548
|
+
description: string;
|
|
15549
|
+
/**
|
|
15550
|
+
* The privacy-policy version the widget records in each consent proof.
|
|
15551
|
+
*/
|
|
15552
|
+
policyVersion: string;
|
|
15553
|
+
/**
|
|
15554
|
+
* Shown after a submission. ONE message for every outcome: the signup route answers identically whether or not the address was already on the list.
|
|
15555
|
+
*/
|
|
15556
|
+
successMessage: string;
|
|
15557
|
+
};
|
|
15558
|
+
/**
|
|
15559
|
+
* Require a confirmation email before a waitlist signup counts. Default false — the entry is created either way, but an unconfirmed one is reported separately and is never invited.
|
|
15560
|
+
*/
|
|
15561
|
+
doubleOptIn: boolean;
|
|
15562
|
+
/**
|
|
15563
|
+
* How long a still-pending waitlist entry is kept before the sweep erases it. Default 365.
|
|
15564
|
+
*/
|
|
15565
|
+
retentionDays: number;
|
|
15566
|
+
/**
|
|
15567
|
+
* How long a double-opt-in confirmation link stays usable, in hours. Default 48.
|
|
15568
|
+
*/
|
|
15569
|
+
confirmTtlHours: number;
|
|
15570
|
+
};
|
|
15571
|
+
productId: string;
|
|
15572
|
+
retention: {
|
|
15573
|
+
/**
|
|
15574
|
+
* How long an EXPIRED flow attempt is kept after its own expiry. Default 0 — swept as soon as it dies, which is what the reaper did before this window existed.
|
|
15575
|
+
*/
|
|
15576
|
+
flowAttemptDays: number;
|
|
15577
|
+
/**
|
|
15578
|
+
* How long a SPENT or EXPIRED one-time token row (an OTP, a magic link, a recovery or abort token) is kept after it stops being usable, for forensics. The secret is a hash and the row is already dead — this only decides how long the trail lives. Default 30.
|
|
15579
|
+
*/
|
|
15580
|
+
oneTimeTokenDays: number;
|
|
15581
|
+
/**
|
|
15582
|
+
* How long an EXPIRED session and its refresh tokens are kept after expiry. Zero does not shorten any lifetime: a session past either window can never be refreshed again, so the row is already inert. Default 0.
|
|
15583
|
+
*/
|
|
15584
|
+
expiredSessionDays: number;
|
|
15585
|
+
};
|
|
15586
|
+
protection: {
|
|
15587
|
+
/**
|
|
15588
|
+
* Check passwords against the HaveIBeenPwned breach corpus (k-anonymity). Blocking at sign-up, advisory at sign-in. Default true.
|
|
15589
|
+
*/
|
|
15590
|
+
hibpEnabled: boolean;
|
|
15591
|
+
/**
|
|
15592
|
+
* How long an account stays locked. Self-healing — the lock expires on its own. Default 15.
|
|
15593
|
+
*/
|
|
15594
|
+
lockoutMinutes: number;
|
|
15595
|
+
/**
|
|
15596
|
+
* Failed sign-ins for one identifier before the account is locked. Default 10.
|
|
15597
|
+
*/
|
|
15598
|
+
maxFailedAttempts: number;
|
|
15599
|
+
/**
|
|
15600
|
+
* Flow calls allowed per IP per product per window before HTTP 429. Default 120.
|
|
15601
|
+
*/
|
|
15602
|
+
ipAttemptsPerWindow: number;
|
|
15603
|
+
/**
|
|
15604
|
+
* Sliding window the failed sign-ins are counted over, in minutes. Default 15.
|
|
15605
|
+
*/
|
|
15606
|
+
failedAttemptWindowMinutes: number;
|
|
15607
|
+
/**
|
|
15608
|
+
* Flow calls allowed per identifier per window before HTTP 429. Default 30.
|
|
15609
|
+
*/
|
|
15610
|
+
identifierAttemptsPerWindow: number;
|
|
15611
|
+
};
|
|
15612
|
+
signupMode: ("public" | "invite-only" | "waitlist");
|
|
15613
|
+
emailChange: {
|
|
15614
|
+
/**
|
|
15615
|
+
* Allow end users to change their email address. Default true.
|
|
15616
|
+
*/
|
|
15617
|
+
enabled: boolean;
|
|
15618
|
+
/**
|
|
15619
|
+
* How long after a REVERT further email changes are refused, in days. Default 7.
|
|
15620
|
+
*/
|
|
15621
|
+
cooldownDays: number;
|
|
15622
|
+
/**
|
|
15623
|
+
* How long the old address may undo the change, in days. Default 30.
|
|
15624
|
+
*/
|
|
15625
|
+
revertTtlDays: number;
|
|
15626
|
+
/**
|
|
15627
|
+
* How long the two confirmation links stay usable, in hours. Default 24.
|
|
15628
|
+
*/
|
|
15629
|
+
requestTtlHours: number;
|
|
15630
|
+
/**
|
|
15631
|
+
* Mandatory delay on an operator-assisted override, in hours — the abort window the old address is notified with. Default 72.
|
|
15632
|
+
*/
|
|
15633
|
+
overrideDelayHours: number;
|
|
15634
|
+
};
|
|
15635
|
+
notifications: {
|
|
15636
|
+
/**
|
|
15637
|
+
* Email the user the first time a session appears from an unseen device. Default true.
|
|
15638
|
+
*/
|
|
15639
|
+
newDevice: boolean;
|
|
15640
|
+
/**
|
|
15641
|
+
* Email the old address when an email change is requested, completed, reverted or overridden. Default true.
|
|
15642
|
+
*/
|
|
15643
|
+
emailChange: boolean;
|
|
15644
|
+
/**
|
|
15645
|
+
* Email the user when an operator impersonates their account. Default true.
|
|
15646
|
+
*/
|
|
15647
|
+
impersonation: boolean;
|
|
15648
|
+
/**
|
|
15649
|
+
* Email the user when their password is set or changed. Default true.
|
|
15650
|
+
*/
|
|
15651
|
+
passwordChanged: boolean;
|
|
15652
|
+
};
|
|
15653
|
+
allowedOrigins: string[];
|
|
15654
|
+
passwordPolicy: {
|
|
15655
|
+
/**
|
|
15656
|
+
* Minimum password length. Default 8.
|
|
15657
|
+
*/
|
|
15658
|
+
minLength: number;
|
|
15659
|
+
/**
|
|
15660
|
+
* Require at least one digit.
|
|
15661
|
+
*/
|
|
15662
|
+
requireNumber: boolean;
|
|
15663
|
+
/**
|
|
15664
|
+
* Require at least one non-alphanumeric character.
|
|
15665
|
+
*/
|
|
15666
|
+
requireSymbol: boolean;
|
|
15667
|
+
/**
|
|
15668
|
+
* Require at least one uppercase letter.
|
|
15669
|
+
*/
|
|
15670
|
+
requireUppercase: boolean;
|
|
15671
|
+
};
|
|
15672
|
+
sessionTtlHours: number;
|
|
15673
|
+
lifecycleBlocked: boolean;
|
|
15674
|
+
lifecycleArchived: boolean;
|
|
15675
|
+
refreshSlidingDays: number;
|
|
15676
|
+
refreshAbsoluteDays: number;
|
|
15677
|
+
redirectUriAllowlist: string[];
|
|
15678
|
+
accessTokenTtlMinutes: number;
|
|
15679
|
+
captchaSecretConfigured: boolean;
|
|
15680
|
+
}
|
|
15681
|
+
interface UsersConfigGetOutputGoogle {
|
|
15682
|
+
enabled: boolean;
|
|
15683
|
+
clientId: (string | null);
|
|
15684
|
+
secretConfigured: boolean;
|
|
15685
|
+
}
|
|
15686
|
+
interface UsersConfigUpsertInput {
|
|
15687
|
+
/**
|
|
15688
|
+
* MFA settings: backup-code batch size, the operator-reset delay, how fresh authentication must be to enroll, and the second-factor lockout ceilings. Merged field-by-field.
|
|
15689
|
+
*/
|
|
15690
|
+
mfa?: {
|
|
15691
|
+
/**
|
|
15692
|
+
* Whether a second factor is MANDATORY for this product. When true, a user may not unenroll their last verified factor. Default false.
|
|
15693
|
+
*/
|
|
15694
|
+
required?: boolean;
|
|
15695
|
+
/**
|
|
15696
|
+
* How many single-use backup codes a batch contains. Default 10.
|
|
15697
|
+
*/
|
|
15698
|
+
backupCodeCount?: number;
|
|
15699
|
+
/**
|
|
15700
|
+
* Mandatory delay on an operator-initiated factor reset, in hours — the abort window the user is emailed. Default 72.
|
|
15701
|
+
*/
|
|
15702
|
+
resetDelayHours?: number;
|
|
15703
|
+
/**
|
|
15704
|
+
* How long a passed step-up challenge stays spendable, in minutes. The grant is SINGLE-USE regardless. Default 5.
|
|
15705
|
+
*/
|
|
15706
|
+
stepUpGrantMinutes?: number;
|
|
15707
|
+
/**
|
|
15708
|
+
* Wrong BACKUP codes before the account is locked, counted separately from TOTP. Default 5.
|
|
15709
|
+
*/
|
|
15710
|
+
maxBackupCodeAttempts?: number;
|
|
15711
|
+
/**
|
|
15712
|
+
* Wrong second-factor codes before the account is locked. Default 5.
|
|
15713
|
+
*/
|
|
15714
|
+
maxSecondFactorAttempts?: number;
|
|
15715
|
+
/**
|
|
15716
|
+
* How recently the caller must have authenticated to enroll or regenerate a factor, in minutes. Default 10.
|
|
15717
|
+
*/
|
|
15718
|
+
sensitiveAuthAgeMinutes?: number;
|
|
15719
|
+
};
|
|
15720
|
+
/**
|
|
15721
|
+
* Email OTP / magic-link settings. Merged field-by-field. Set `email.from` to a sender on a domain verified in this product's mail toolkit — until then the email strategies are not offered.
|
|
15722
|
+
*/
|
|
15723
|
+
email?: {
|
|
15724
|
+
/**
|
|
15725
|
+
* Sender for auth email, e.g. "Acme <auth@acme.com>". MUST be on a domain verified in this product's mail toolkit. While it is null, email_code/email_link are not offered as strategies.
|
|
15726
|
+
*/
|
|
15727
|
+
from?: (string | null);
|
|
15728
|
+
/**
|
|
15729
|
+
* Offer the 6-digit code strategy (email_code). Default true.
|
|
15730
|
+
*/
|
|
15731
|
+
codeEnabled?: boolean;
|
|
15732
|
+
/**
|
|
15733
|
+
* Base URL magic links point at, e.g. "https://public.lessly.com/{productId}/users". Null uses the deployment default.
|
|
15734
|
+
*/
|
|
15735
|
+
linkBaseUrl?: (string | null);
|
|
15736
|
+
/**
|
|
15737
|
+
* Offer the magic-link strategy (email_link). Default true.
|
|
15738
|
+
*/
|
|
15739
|
+
linkEnabled?: boolean;
|
|
15740
|
+
/**
|
|
15741
|
+
* How long an emailed code or link stays usable, in minutes. Default 15.
|
|
15742
|
+
*/
|
|
15743
|
+
codeTtlMinutes?: number;
|
|
15744
|
+
/**
|
|
15745
|
+
* Auth emails one address may receive per day. Default 10.
|
|
15746
|
+
*/
|
|
15747
|
+
resendDailyCap?: number;
|
|
15748
|
+
/**
|
|
15749
|
+
* Wrong-code entries allowed per token before it is spent. Default 5.
|
|
15750
|
+
*/
|
|
15751
|
+
maxCodeAttempts?: number;
|
|
15752
|
+
/**
|
|
15753
|
+
* Minimum seconds between two auth emails to one address. Floor of 60 is enforced regardless. Default 60.
|
|
15754
|
+
*/
|
|
15755
|
+
resendCooldownSeconds?: number;
|
|
15756
|
+
};
|
|
15757
|
+
/**
|
|
15758
|
+
* OAuth provider credentials and switches, per provider. Merged field-by-field. A provider is offered as a sign-in strategy only when it is enabled AND a full client id + secret pair resolves — from here, or from the deployment's shared development credentials.
|
|
15759
|
+
*/
|
|
15760
|
+
oauth?: {
|
|
15761
|
+
github?: UsersConfigUpsertInputGoogle;
|
|
15762
|
+
/**
|
|
15763
|
+
* Google sign-in credentials and switch.
|
|
15764
|
+
*/
|
|
15765
|
+
google?: {
|
|
15766
|
+
/**
|
|
15767
|
+
* Offer this provider as a sign-in strategy.
|
|
15768
|
+
*/
|
|
15769
|
+
enabled?: boolean;
|
|
15770
|
+
/**
|
|
15771
|
+
* The OAuth client id from the provider console. Pass null to clear it and fall back to the deployment's shared development credentials, if it has any.
|
|
15772
|
+
*/
|
|
15773
|
+
clientId?: (string | null);
|
|
15774
|
+
/**
|
|
15775
|
+
* WRITE-ONLY. The OAuth client secret; stored encrypted and never returned. Omit to leave the stored secret untouched, pass null to clear it.
|
|
15776
|
+
*/
|
|
15777
|
+
clientSecret?: (string | null);
|
|
15778
|
+
};
|
|
15779
|
+
};
|
|
15780
|
+
/**
|
|
15781
|
+
* The hosted sign-in / sign-up / recovery pages: whether they are served, and the product name, logo, colours and footer links they render with. Merged field-by-field, so setting one colour leaves the rest alone.
|
|
15782
|
+
*/
|
|
15783
|
+
hosted?: {
|
|
15784
|
+
/**
|
|
15785
|
+
* Serve the hosted sign-in, sign-up and recovery pages for this product. Default true. False answers those routes with a refusal page instead — for a product that ships its own frontend and wants no second front door.
|
|
15786
|
+
*/
|
|
15787
|
+
enabled?: boolean;
|
|
15788
|
+
/**
|
|
15789
|
+
* Absolute https URL of a logo rendered above the form. Null renders no logo.
|
|
15790
|
+
*/
|
|
15791
|
+
logoUrl?: (string | null);
|
|
15792
|
+
/**
|
|
15793
|
+
* Terms link rendered in the footer. Null renders no link.
|
|
15794
|
+
*/
|
|
15795
|
+
termsUrl?: (string | null);
|
|
15796
|
+
/**
|
|
15797
|
+
* CSS colour of the body text.
|
|
15798
|
+
*/
|
|
15799
|
+
textColor?: string;
|
|
15800
|
+
/**
|
|
15801
|
+
* One line under the card. Null renders no footer.
|
|
15802
|
+
*/
|
|
15803
|
+
footerText?: (string | null);
|
|
15804
|
+
/**
|
|
15805
|
+
* Privacy-policy link rendered in the footer. Null renders no link.
|
|
15806
|
+
*/
|
|
15807
|
+
privacyUrl?: (string | null);
|
|
15808
|
+
/**
|
|
15809
|
+
* CSS colour for the submit button, the links and the focus ring.
|
|
15810
|
+
*/
|
|
15811
|
+
accentColor?: string;
|
|
15812
|
+
/**
|
|
15813
|
+
* Shown in the heading and the page title. Default "This product".
|
|
15814
|
+
*/
|
|
15815
|
+
productName?: string;
|
|
15816
|
+
/**
|
|
15817
|
+
* CSS length for the card and its controls, e.g. "12px".
|
|
15818
|
+
*/
|
|
15819
|
+
borderRadius?: string;
|
|
15820
|
+
/**
|
|
15821
|
+
* CSS colour of the card itself.
|
|
15822
|
+
*/
|
|
15823
|
+
surfaceColor?: string;
|
|
15824
|
+
/**
|
|
15825
|
+
* CSS colour of secondary text and hints.
|
|
15826
|
+
*/
|
|
15827
|
+
mutedTextColor?: string;
|
|
15828
|
+
/**
|
|
15829
|
+
* CSS colour of the page behind the card.
|
|
15830
|
+
*/
|
|
15831
|
+
backgroundColor?: string;
|
|
15832
|
+
};
|
|
15833
|
+
/**
|
|
15834
|
+
* Invite lifetime and re-invite cooldown. Merged field-by-field.
|
|
15835
|
+
*/
|
|
15836
|
+
invite?: {
|
|
15837
|
+
/**
|
|
15838
|
+
* How long an invite link stays usable, in days. Default 14.
|
|
15839
|
+
*/
|
|
15840
|
+
ttlDays?: number;
|
|
15841
|
+
/**
|
|
15842
|
+
* Minimum minutes between two invite emails to one address. Default 60.
|
|
15843
|
+
*/
|
|
15844
|
+
resendCooldownMinutes?: number;
|
|
15845
|
+
};
|
|
15846
|
+
/**
|
|
15847
|
+
* Captcha (Cloudflare Turnstile) settings for flow creation. Merged field-by-field.
|
|
15848
|
+
*/
|
|
15849
|
+
captcha?: {
|
|
15850
|
+
/**
|
|
15851
|
+
* Require a captcha token when a flow attempt is created.
|
|
15852
|
+
*/
|
|
15853
|
+
enabled?: boolean;
|
|
15854
|
+
/**
|
|
15855
|
+
* The public site key the Product renders the widget with.
|
|
15856
|
+
*/
|
|
15857
|
+
siteKey?: (string | null);
|
|
15858
|
+
/**
|
|
15859
|
+
* WRITE-ONLY. The provider secret used server-side to verify tokens; stored encrypted and never returned. Omit to leave the stored secret untouched, pass null to clear it.
|
|
15860
|
+
*/
|
|
15861
|
+
secretKey?: (string | null);
|
|
15862
|
+
/**
|
|
15863
|
+
* Demand a captcha from an identifier that is currently accumulating failed attempts, even when `enabled` is false. Default true.
|
|
15864
|
+
*/
|
|
15865
|
+
riskElevated?: boolean;
|
|
15866
|
+
};
|
|
15867
|
+
/**
|
|
15868
|
+
* Password-recovery settings (whether it is offered, how long a reset link lives). Merged field-by-field.
|
|
15869
|
+
*/
|
|
15870
|
+
recovery?: {
|
|
15871
|
+
/**
|
|
15872
|
+
* Offer the password-recovery flow at all. Default true.
|
|
15873
|
+
*/
|
|
15874
|
+
enabled?: boolean;
|
|
15875
|
+
/**
|
|
15876
|
+
* How long a reset link stays usable, in minutes. Default 60.
|
|
15877
|
+
*/
|
|
15878
|
+
ttlMinutes?: number;
|
|
15879
|
+
};
|
|
15880
|
+
/**
|
|
15881
|
+
* Test mode: whether this product may have TEST USERS — accounts that are excluded from metering, kept out of the default directory listing, never really emailed, and (when the deployment sets one) able to sign in with the fixed magic OTP. REFUSED on a production deployment. Merged field-by-field.
|
|
15882
|
+
*/
|
|
15883
|
+
testMode?: {
|
|
15884
|
+
/**
|
|
15885
|
+
* Opt this product into test mode. Refused outright on a production deployment — the environment gate is checked first and cannot be configured away. Turning it on is audited and raises an alert. Default false.
|
|
15886
|
+
*/
|
|
15887
|
+
enabled?: boolean;
|
|
15888
|
+
};
|
|
15889
|
+
/**
|
|
15890
|
+
* Waitlist settings: the double-opt-in toggle, how long a pending entry is retained before the sweep erases it, the confirmation link lifetime, and the embeddable widget’s copy and colours. Merged field-by-field, including inside `widget`.
|
|
15891
|
+
*/
|
|
15892
|
+
waitlist?: {
|
|
15893
|
+
/**
|
|
15894
|
+
* The embeddable widget’s copy and colours. Merged field-by-field, so setting one line leaves the rest alone.
|
|
15895
|
+
*/
|
|
15896
|
+
widget?: {
|
|
15897
|
+
/**
|
|
15898
|
+
* Heading above the widget form.
|
|
15899
|
+
*/
|
|
15900
|
+
title?: string;
|
|
15901
|
+
/**
|
|
15902
|
+
* Link rendered beside the consent text. Null renders no link.
|
|
15903
|
+
*/
|
|
15904
|
+
policyUrl?: (string | null);
|
|
15905
|
+
/**
|
|
15906
|
+
* CSS colour for the button and the focus ring.
|
|
15907
|
+
*/
|
|
15908
|
+
accentColor?: string;
|
|
15909
|
+
/**
|
|
15910
|
+
* Submit button copy.
|
|
15911
|
+
*/
|
|
15912
|
+
buttonLabel?: string;
|
|
15913
|
+
/**
|
|
15914
|
+
* Consent checkbox copy. Null renders no checkbox, and the signup records the consent proof as `unspecified`.
|
|
15915
|
+
*/
|
|
15916
|
+
consentText?: (string | null);
|
|
15917
|
+
/**
|
|
15918
|
+
* One line under the heading.
|
|
15919
|
+
*/
|
|
15920
|
+
description?: string;
|
|
15921
|
+
/**
|
|
15922
|
+
* The privacy-policy version the widget records in each consent proof.
|
|
15923
|
+
*/
|
|
15924
|
+
policyVersion?: string;
|
|
15925
|
+
/**
|
|
15926
|
+
* Shown after a submission. ONE message for every outcome: the signup route answers identically whether or not the address was already on the list.
|
|
15927
|
+
*/
|
|
15928
|
+
successMessage?: string;
|
|
15929
|
+
};
|
|
15930
|
+
/**
|
|
15931
|
+
* Require a confirmation email before a waitlist signup counts. Default false — the entry is created either way, but an unconfirmed one is reported separately and is never invited.
|
|
15932
|
+
*/
|
|
15933
|
+
doubleOptIn?: boolean;
|
|
15934
|
+
/**
|
|
15935
|
+
* How long a still-pending waitlist entry is kept before the sweep erases it. Default 365.
|
|
15936
|
+
*/
|
|
15937
|
+
retentionDays?: number;
|
|
15938
|
+
/**
|
|
15939
|
+
* How long a double-opt-in confirmation link stays usable, in hours. Default 48.
|
|
15940
|
+
*/
|
|
15941
|
+
confirmTtlHours?: number;
|
|
15942
|
+
};
|
|
15943
|
+
/**
|
|
15944
|
+
* How long DEAD rows are kept before the retention sweep removes them: spent one-time tokens, expired flow attempts, expired sessions and their refresh tokens. These are grace periods on top of expiry, never lifetimes — an unswept expired row is inert. Merged field-by-field.
|
|
15945
|
+
*/
|
|
15946
|
+
retention?: {
|
|
15947
|
+
/**
|
|
15948
|
+
* How long an EXPIRED flow attempt is kept after its own expiry. Default 0 — swept as soon as it dies, which is what the reaper did before this window existed.
|
|
15949
|
+
*/
|
|
15950
|
+
flowAttemptDays?: number;
|
|
15951
|
+
/**
|
|
15952
|
+
* How long a SPENT or EXPIRED one-time token row (an OTP, a magic link, a recovery or abort token) is kept after it stops being usable, for forensics. The secret is a hash and the row is already dead — this only decides how long the trail lives. Default 30.
|
|
15953
|
+
*/
|
|
15954
|
+
oneTimeTokenDays?: number;
|
|
15955
|
+
/**
|
|
15956
|
+
* How long an EXPIRED session and its refresh tokens are kept after expiry. Zero does not shorten any lifetime: a session past either window can never be refreshed again, so the row is already inert. Default 0.
|
|
15957
|
+
*/
|
|
15958
|
+
expiredSessionDays?: number;
|
|
15959
|
+
};
|
|
15960
|
+
/**
|
|
15961
|
+
* Rate limits, lockout and breached-password settings. Merged field-by-field.
|
|
15962
|
+
*/
|
|
15963
|
+
protection?: {
|
|
15964
|
+
/**
|
|
15965
|
+
* Check passwords against the HaveIBeenPwned breach corpus (k-anonymity). Blocking at sign-up, advisory at sign-in. Default true.
|
|
15966
|
+
*/
|
|
15967
|
+
hibpEnabled?: boolean;
|
|
15968
|
+
/**
|
|
15969
|
+
* How long an account stays locked. Self-healing — the lock expires on its own. Default 15.
|
|
15970
|
+
*/
|
|
15971
|
+
lockoutMinutes?: number;
|
|
15972
|
+
/**
|
|
15973
|
+
* Failed sign-ins for one identifier before the account is locked. Default 10.
|
|
15974
|
+
*/
|
|
15975
|
+
maxFailedAttempts?: number;
|
|
15976
|
+
/**
|
|
15977
|
+
* Flow calls allowed per IP per product per window before HTTP 429. Default 120.
|
|
15978
|
+
*/
|
|
15979
|
+
ipAttemptsPerWindow?: number;
|
|
15980
|
+
/**
|
|
15981
|
+
* Sliding window the failed sign-ins are counted over, in minutes. Default 15.
|
|
15982
|
+
*/
|
|
15983
|
+
failedAttemptWindowMinutes?: number;
|
|
15984
|
+
/**
|
|
15985
|
+
* Flow calls allowed per identifier per window before HTTP 429. Default 30.
|
|
15986
|
+
*/
|
|
15987
|
+
identifierAttemptsPerWindow?: number;
|
|
15988
|
+
};
|
|
15989
|
+
/**
|
|
15990
|
+
* How end users may join this product: 'public' (anyone), 'invite-only', or 'waitlist'. Default 'public'.
|
|
15991
|
+
*/
|
|
15992
|
+
signupMode?: ("public" | "invite-only" | "waitlist");
|
|
15993
|
+
/**
|
|
15994
|
+
* Email-change settings: confirmation lifetime, the old address's revert window, the post-revert cooldown and the operator-override delay. Merged field-by-field.
|
|
15995
|
+
*/
|
|
15996
|
+
emailChange?: {
|
|
15997
|
+
/**
|
|
15998
|
+
* Allow end users to change their email address. Default true.
|
|
15999
|
+
*/
|
|
16000
|
+
enabled?: boolean;
|
|
16001
|
+
/**
|
|
16002
|
+
* How long after a REVERT further email changes are refused, in days. Default 7.
|
|
16003
|
+
*/
|
|
16004
|
+
cooldownDays?: number;
|
|
16005
|
+
/**
|
|
16006
|
+
* How long the old address may undo the change, in days. Default 30.
|
|
16007
|
+
*/
|
|
16008
|
+
revertTtlDays?: number;
|
|
16009
|
+
/**
|
|
16010
|
+
* How long the two confirmation links stay usable, in hours. Default 24.
|
|
16011
|
+
*/
|
|
16012
|
+
requestTtlHours?: number;
|
|
16013
|
+
/**
|
|
16014
|
+
* Mandatory delay on an operator-assisted override, in hours — the abort window the old address is notified with. Default 72.
|
|
16015
|
+
*/
|
|
16016
|
+
overrideDelayHours?: number;
|
|
16017
|
+
};
|
|
16018
|
+
/**
|
|
16019
|
+
* Which security notification emails this product sends. All on by default. Merged field-by-field.
|
|
16020
|
+
*/
|
|
16021
|
+
notifications?: {
|
|
16022
|
+
/**
|
|
16023
|
+
* Email the user the first time a session appears from an unseen device. Default true.
|
|
16024
|
+
*/
|
|
16025
|
+
newDevice?: boolean;
|
|
16026
|
+
/**
|
|
16027
|
+
* Email the old address when an email change is requested, completed, reverted or overridden. Default true.
|
|
16028
|
+
*/
|
|
16029
|
+
emailChange?: boolean;
|
|
16030
|
+
/**
|
|
16031
|
+
* Email the user when an operator impersonates their account. Default true.
|
|
16032
|
+
*/
|
|
16033
|
+
impersonation?: boolean;
|
|
16034
|
+
/**
|
|
16035
|
+
* Email the user when their password is set or changed. Default true.
|
|
16036
|
+
*/
|
|
16037
|
+
passwordChanged?: boolean;
|
|
16038
|
+
};
|
|
16039
|
+
/**
|
|
16040
|
+
* Browser origins allowed to drive this product's end-user flows, up to 20. Scheme + host + port only, matched exactly. Replaces the whole list. Empty means "no browser origin" once this product has a publishable key.
|
|
16041
|
+
*
|
|
16042
|
+
* @maxItems 20
|
|
16043
|
+
*/
|
|
16044
|
+
allowedOrigins?: [] | [string] | [string, string] | [string, string, string] | [string, string, string, string] | [string, string, string, string, string] | [string, string, string, string, string, string] | [string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string];
|
|
16045
|
+
/**
|
|
16046
|
+
* Password rules for this product. Merged field-by-field into the current policy.
|
|
16047
|
+
*/
|
|
16048
|
+
passwordPolicy?: {
|
|
16049
|
+
/**
|
|
16050
|
+
* Minimum password length. Default 8.
|
|
16051
|
+
*/
|
|
16052
|
+
minLength?: number;
|
|
16053
|
+
/**
|
|
16054
|
+
* Require at least one digit.
|
|
16055
|
+
*/
|
|
16056
|
+
requireNumber?: boolean;
|
|
16057
|
+
/**
|
|
16058
|
+
* Require at least one non-alphanumeric character.
|
|
16059
|
+
*/
|
|
16060
|
+
requireSymbol?: boolean;
|
|
16061
|
+
/**
|
|
16062
|
+
* Require at least one uppercase letter.
|
|
16063
|
+
*/
|
|
16064
|
+
requireUppercase?: boolean;
|
|
16065
|
+
};
|
|
16066
|
+
/**
|
|
16067
|
+
* End-user session lifetime in hours. Default 720 (30 days).
|
|
16068
|
+
*/
|
|
16069
|
+
sessionTtlHours?: number;
|
|
16070
|
+
/**
|
|
16071
|
+
* Inactivity window of a session in days — every refresh slides it forward. Default 30.
|
|
16072
|
+
*/
|
|
16073
|
+
refreshSlidingDays?: number;
|
|
16074
|
+
/**
|
|
16075
|
+
* Hard time-box of a session in days, counted from sign-in and never extended. Default 365.
|
|
16076
|
+
*/
|
|
16077
|
+
refreshAbsoluteDays?: number;
|
|
16078
|
+
/**
|
|
16079
|
+
* Callback URIs the browser code handoff may deliver a one-time authorization code to, up to 20. Matched EXACTLY — no wildcards, no prefixes, no fragments — so list every callback in full. Replaces the whole list.
|
|
16080
|
+
*
|
|
16081
|
+
* @maxItems 20
|
|
16082
|
+
*/
|
|
16083
|
+
redirectUriAllowlist?: [] | [string] | [string, string] | [string, string, string] | [string, string, string, string] | [string, string, string, string, string] | [string, string, string, string, string, string] | [string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string];
|
|
16084
|
+
/**
|
|
16085
|
+
* Access JWT lifetime in minutes, 5-60. Default 10. Short on purpose: a revoked session dies within one TTL.
|
|
16086
|
+
*/
|
|
16087
|
+
accessTokenTtlMinutes?: number;
|
|
16088
|
+
}
|
|
16089
|
+
/**
|
|
16090
|
+
* GitHub sign-in credentials and switch.
|
|
16091
|
+
*/
|
|
16092
|
+
interface UsersConfigUpsertInputGoogle {
|
|
16093
|
+
/**
|
|
16094
|
+
* Offer this provider as a sign-in strategy.
|
|
16095
|
+
*/
|
|
16096
|
+
enabled?: boolean;
|
|
16097
|
+
/**
|
|
16098
|
+
* The OAuth client id from the provider console. Pass null to clear it and fall back to the deployment's shared development credentials, if it has any.
|
|
16099
|
+
*/
|
|
16100
|
+
clientId?: (string | null);
|
|
16101
|
+
/**
|
|
16102
|
+
* WRITE-ONLY. The OAuth client secret; stored encrypted and never returned. Omit to leave the stored secret untouched, pass null to clear it.
|
|
16103
|
+
*/
|
|
16104
|
+
clientSecret?: (string | null);
|
|
16105
|
+
}
|
|
16106
|
+
interface UsersConfigUpsertOutput {
|
|
16107
|
+
mfa: {
|
|
16108
|
+
/**
|
|
16109
|
+
* Whether a second factor is MANDATORY for this product. When true, a user may not unenroll their last verified factor. Default false.
|
|
16110
|
+
*/
|
|
16111
|
+
required: boolean;
|
|
16112
|
+
/**
|
|
16113
|
+
* How many single-use backup codes a batch contains. Default 10.
|
|
16114
|
+
*/
|
|
16115
|
+
backupCodeCount: number;
|
|
16116
|
+
/**
|
|
16117
|
+
* Mandatory delay on an operator-initiated factor reset, in hours — the abort window the user is emailed. Default 72.
|
|
16118
|
+
*/
|
|
16119
|
+
resetDelayHours: number;
|
|
16120
|
+
/**
|
|
16121
|
+
* How long a passed step-up challenge stays spendable, in minutes. The grant is SINGLE-USE regardless. Default 5.
|
|
16122
|
+
*/
|
|
16123
|
+
stepUpGrantMinutes: number;
|
|
16124
|
+
/**
|
|
16125
|
+
* Wrong BACKUP codes before the account is locked, counted separately from TOTP. Default 5.
|
|
16126
|
+
*/
|
|
16127
|
+
maxBackupCodeAttempts: number;
|
|
16128
|
+
/**
|
|
16129
|
+
* Wrong second-factor codes before the account is locked. Default 5.
|
|
16130
|
+
*/
|
|
16131
|
+
maxSecondFactorAttempts: number;
|
|
16132
|
+
/**
|
|
16133
|
+
* How recently the caller must have authenticated to enroll or regenerate a factor, in minutes. Default 10.
|
|
16134
|
+
*/
|
|
16135
|
+
sensitiveAuthAgeMinutes: number;
|
|
16136
|
+
};
|
|
16137
|
+
email: {
|
|
16138
|
+
/**
|
|
16139
|
+
* Sender for auth email, e.g. "Acme <auth@acme.com>". MUST be on a domain verified in this product's mail toolkit. While it is null, email_code/email_link are not offered as strategies.
|
|
16140
|
+
*/
|
|
16141
|
+
from: (string | null);
|
|
16142
|
+
/**
|
|
16143
|
+
* Offer the 6-digit code strategy (email_code). Default true.
|
|
16144
|
+
*/
|
|
16145
|
+
codeEnabled: boolean;
|
|
16146
|
+
/**
|
|
16147
|
+
* Base URL magic links point at, e.g. "https://public.lessly.com/{productId}/users". Null uses the deployment default.
|
|
16148
|
+
*/
|
|
16149
|
+
linkBaseUrl: (string | null);
|
|
16150
|
+
/**
|
|
16151
|
+
* Offer the magic-link strategy (email_link). Default true.
|
|
16152
|
+
*/
|
|
16153
|
+
linkEnabled: boolean;
|
|
16154
|
+
/**
|
|
16155
|
+
* How long an emailed code or link stays usable, in minutes. Default 15.
|
|
16156
|
+
*/
|
|
16157
|
+
codeTtlMinutes: number;
|
|
16158
|
+
/**
|
|
16159
|
+
* Auth emails one address may receive per day. Default 10.
|
|
16160
|
+
*/
|
|
16161
|
+
resendDailyCap: number;
|
|
16162
|
+
/**
|
|
16163
|
+
* Wrong-code entries allowed per token before it is spent. Default 5.
|
|
16164
|
+
*/
|
|
16165
|
+
maxCodeAttempts: number;
|
|
16166
|
+
/**
|
|
16167
|
+
* Minimum seconds between two auth emails to one address. Floor of 60 is enforced regardless. Default 60.
|
|
16168
|
+
*/
|
|
16169
|
+
resendCooldownSeconds: number;
|
|
16170
|
+
};
|
|
16171
|
+
oauth: {
|
|
16172
|
+
providers: {
|
|
16173
|
+
github: UsersConfigUpsertOutputGoogle;
|
|
16174
|
+
google: UsersConfigUpsertOutputGoogle;
|
|
16175
|
+
};
|
|
16176
|
+
};
|
|
16177
|
+
hosted: {
|
|
16178
|
+
/**
|
|
16179
|
+
* Serve the hosted sign-in, sign-up and recovery pages for this product. Default true. False answers those routes with a refusal page instead — for a product that ships its own frontend and wants no second front door.
|
|
16180
|
+
*/
|
|
16181
|
+
enabled: boolean;
|
|
16182
|
+
/**
|
|
16183
|
+
* Absolute https URL of a logo rendered above the form. Null renders no logo.
|
|
16184
|
+
*/
|
|
16185
|
+
logoUrl: (string | null);
|
|
16186
|
+
/**
|
|
16187
|
+
* Terms link rendered in the footer. Null renders no link.
|
|
16188
|
+
*/
|
|
16189
|
+
termsUrl: (string | null);
|
|
16190
|
+
/**
|
|
16191
|
+
* CSS colour of the body text.
|
|
16192
|
+
*/
|
|
16193
|
+
textColor: string;
|
|
16194
|
+
/**
|
|
16195
|
+
* One line under the card. Null renders no footer.
|
|
16196
|
+
*/
|
|
16197
|
+
footerText: (string | null);
|
|
16198
|
+
/**
|
|
16199
|
+
* Privacy-policy link rendered in the footer. Null renders no link.
|
|
16200
|
+
*/
|
|
16201
|
+
privacyUrl: (string | null);
|
|
16202
|
+
/**
|
|
16203
|
+
* CSS colour for the submit button, the links and the focus ring.
|
|
16204
|
+
*/
|
|
16205
|
+
accentColor: string;
|
|
16206
|
+
/**
|
|
16207
|
+
* Shown in the heading and the page title. Default "This product".
|
|
16208
|
+
*/
|
|
16209
|
+
productName: string;
|
|
16210
|
+
/**
|
|
16211
|
+
* CSS length for the card and its controls, e.g. "12px".
|
|
16212
|
+
*/
|
|
16213
|
+
borderRadius: string;
|
|
16214
|
+
/**
|
|
16215
|
+
* CSS colour of the card itself.
|
|
16216
|
+
*/
|
|
16217
|
+
surfaceColor: string;
|
|
16218
|
+
/**
|
|
16219
|
+
* CSS colour of secondary text and hints.
|
|
16220
|
+
*/
|
|
16221
|
+
mutedTextColor: string;
|
|
16222
|
+
/**
|
|
16223
|
+
* CSS colour of the page behind the card.
|
|
16224
|
+
*/
|
|
16225
|
+
backgroundColor: string;
|
|
16226
|
+
};
|
|
16227
|
+
invite: {
|
|
16228
|
+
/**
|
|
16229
|
+
* How long an invite link stays usable, in days. Default 14.
|
|
16230
|
+
*/
|
|
16231
|
+
ttlDays: number;
|
|
16232
|
+
/**
|
|
16233
|
+
* Minimum minutes between two invite emails to one address. Default 60.
|
|
16234
|
+
*/
|
|
16235
|
+
resendCooldownMinutes: number;
|
|
16236
|
+
};
|
|
16237
|
+
status: ("active" | "paused");
|
|
16238
|
+
captcha: {
|
|
16239
|
+
enabled: boolean;
|
|
16240
|
+
siteKey: (string | null);
|
|
16241
|
+
provider: "turnstile";
|
|
16242
|
+
riskElevated: boolean;
|
|
16243
|
+
};
|
|
16244
|
+
recovery: {
|
|
16245
|
+
/**
|
|
16246
|
+
* Offer the password-recovery flow at all. Default true.
|
|
16247
|
+
*/
|
|
16248
|
+
enabled: boolean;
|
|
16249
|
+
/**
|
|
16250
|
+
* How long a reset link stays usable, in minutes. Default 60.
|
|
16251
|
+
*/
|
|
16252
|
+
ttlMinutes: number;
|
|
16253
|
+
};
|
|
16254
|
+
testMode: {
|
|
16255
|
+
/**
|
|
16256
|
+
* Opt this product into test mode. Refused outright on a production deployment — the environment gate is checked first and cannot be configured away. Turning it on is audited and raises an alert. Default false.
|
|
16257
|
+
*/
|
|
16258
|
+
enabled: boolean;
|
|
16259
|
+
};
|
|
16260
|
+
waitlist: {
|
|
16261
|
+
/**
|
|
16262
|
+
* The embeddable widget’s copy and colours.
|
|
16263
|
+
*/
|
|
16264
|
+
widget: {
|
|
16265
|
+
/**
|
|
16266
|
+
* Heading above the widget form.
|
|
16267
|
+
*/
|
|
16268
|
+
title: string;
|
|
16269
|
+
/**
|
|
16270
|
+
* Link rendered beside the consent text. Null renders no link.
|
|
16271
|
+
*/
|
|
16272
|
+
policyUrl: (string | null);
|
|
16273
|
+
/**
|
|
16274
|
+
* CSS colour for the button and the focus ring.
|
|
16275
|
+
*/
|
|
16276
|
+
accentColor: string;
|
|
16277
|
+
/**
|
|
16278
|
+
* Submit button copy.
|
|
16279
|
+
*/
|
|
16280
|
+
buttonLabel: string;
|
|
16281
|
+
/**
|
|
16282
|
+
* Consent checkbox copy. Null renders no checkbox, and the signup records the consent proof as `unspecified`.
|
|
16283
|
+
*/
|
|
16284
|
+
consentText: (string | null);
|
|
16285
|
+
/**
|
|
16286
|
+
* One line under the heading.
|
|
16287
|
+
*/
|
|
16288
|
+
description: string;
|
|
16289
|
+
/**
|
|
16290
|
+
* The privacy-policy version the widget records in each consent proof.
|
|
16291
|
+
*/
|
|
16292
|
+
policyVersion: string;
|
|
16293
|
+
/**
|
|
16294
|
+
* Shown after a submission. ONE message for every outcome: the signup route answers identically whether or not the address was already on the list.
|
|
16295
|
+
*/
|
|
16296
|
+
successMessage: string;
|
|
16297
|
+
};
|
|
16298
|
+
/**
|
|
16299
|
+
* Require a confirmation email before a waitlist signup counts. Default false — the entry is created either way, but an unconfirmed one is reported separately and is never invited.
|
|
16300
|
+
*/
|
|
16301
|
+
doubleOptIn: boolean;
|
|
16302
|
+
/**
|
|
16303
|
+
* How long a still-pending waitlist entry is kept before the sweep erases it. Default 365.
|
|
16304
|
+
*/
|
|
16305
|
+
retentionDays: number;
|
|
16306
|
+
/**
|
|
16307
|
+
* How long a double-opt-in confirmation link stays usable, in hours. Default 48.
|
|
16308
|
+
*/
|
|
16309
|
+
confirmTtlHours: number;
|
|
16310
|
+
};
|
|
16311
|
+
productId: string;
|
|
16312
|
+
retention: {
|
|
16313
|
+
/**
|
|
16314
|
+
* How long an EXPIRED flow attempt is kept after its own expiry. Default 0 — swept as soon as it dies, which is what the reaper did before this window existed.
|
|
16315
|
+
*/
|
|
16316
|
+
flowAttemptDays: number;
|
|
16317
|
+
/**
|
|
16318
|
+
* How long a SPENT or EXPIRED one-time token row (an OTP, a magic link, a recovery or abort token) is kept after it stops being usable, for forensics. The secret is a hash and the row is already dead — this only decides how long the trail lives. Default 30.
|
|
16319
|
+
*/
|
|
16320
|
+
oneTimeTokenDays: number;
|
|
16321
|
+
/**
|
|
16322
|
+
* How long an EXPIRED session and its refresh tokens are kept after expiry. Zero does not shorten any lifetime: a session past either window can never be refreshed again, so the row is already inert. Default 0.
|
|
16323
|
+
*/
|
|
16324
|
+
expiredSessionDays: number;
|
|
16325
|
+
};
|
|
16326
|
+
protection: {
|
|
16327
|
+
/**
|
|
16328
|
+
* Check passwords against the HaveIBeenPwned breach corpus (k-anonymity). Blocking at sign-up, advisory at sign-in. Default true.
|
|
16329
|
+
*/
|
|
16330
|
+
hibpEnabled: boolean;
|
|
16331
|
+
/**
|
|
16332
|
+
* How long an account stays locked. Self-healing — the lock expires on its own. Default 15.
|
|
16333
|
+
*/
|
|
16334
|
+
lockoutMinutes: number;
|
|
16335
|
+
/**
|
|
16336
|
+
* Failed sign-ins for one identifier before the account is locked. Default 10.
|
|
16337
|
+
*/
|
|
16338
|
+
maxFailedAttempts: number;
|
|
16339
|
+
/**
|
|
16340
|
+
* Flow calls allowed per IP per product per window before HTTP 429. Default 120.
|
|
16341
|
+
*/
|
|
16342
|
+
ipAttemptsPerWindow: number;
|
|
16343
|
+
/**
|
|
16344
|
+
* Sliding window the failed sign-ins are counted over, in minutes. Default 15.
|
|
16345
|
+
*/
|
|
16346
|
+
failedAttemptWindowMinutes: number;
|
|
16347
|
+
/**
|
|
16348
|
+
* Flow calls allowed per identifier per window before HTTP 429. Default 30.
|
|
16349
|
+
*/
|
|
16350
|
+
identifierAttemptsPerWindow: number;
|
|
16351
|
+
};
|
|
16352
|
+
signupMode: ("public" | "invite-only" | "waitlist");
|
|
16353
|
+
emailChange: {
|
|
16354
|
+
/**
|
|
16355
|
+
* Allow end users to change their email address. Default true.
|
|
16356
|
+
*/
|
|
16357
|
+
enabled: boolean;
|
|
16358
|
+
/**
|
|
16359
|
+
* How long after a REVERT further email changes are refused, in days. Default 7.
|
|
16360
|
+
*/
|
|
16361
|
+
cooldownDays: number;
|
|
16362
|
+
/**
|
|
16363
|
+
* How long the old address may undo the change, in days. Default 30.
|
|
16364
|
+
*/
|
|
16365
|
+
revertTtlDays: number;
|
|
16366
|
+
/**
|
|
16367
|
+
* How long the two confirmation links stay usable, in hours. Default 24.
|
|
16368
|
+
*/
|
|
16369
|
+
requestTtlHours: number;
|
|
16370
|
+
/**
|
|
16371
|
+
* Mandatory delay on an operator-assisted override, in hours — the abort window the old address is notified with. Default 72.
|
|
16372
|
+
*/
|
|
16373
|
+
overrideDelayHours: number;
|
|
16374
|
+
};
|
|
16375
|
+
notifications: {
|
|
16376
|
+
/**
|
|
16377
|
+
* Email the user the first time a session appears from an unseen device. Default true.
|
|
16378
|
+
*/
|
|
16379
|
+
newDevice: boolean;
|
|
16380
|
+
/**
|
|
16381
|
+
* Email the old address when an email change is requested, completed, reverted or overridden. Default true.
|
|
16382
|
+
*/
|
|
16383
|
+
emailChange: boolean;
|
|
16384
|
+
/**
|
|
16385
|
+
* Email the user when an operator impersonates their account. Default true.
|
|
16386
|
+
*/
|
|
16387
|
+
impersonation: boolean;
|
|
16388
|
+
/**
|
|
16389
|
+
* Email the user when their password is set or changed. Default true.
|
|
16390
|
+
*/
|
|
16391
|
+
passwordChanged: boolean;
|
|
16392
|
+
};
|
|
16393
|
+
allowedOrigins: string[];
|
|
16394
|
+
passwordPolicy: {
|
|
16395
|
+
/**
|
|
16396
|
+
* Minimum password length. Default 8.
|
|
16397
|
+
*/
|
|
16398
|
+
minLength: number;
|
|
16399
|
+
/**
|
|
16400
|
+
* Require at least one digit.
|
|
16401
|
+
*/
|
|
16402
|
+
requireNumber: boolean;
|
|
16403
|
+
/**
|
|
16404
|
+
* Require at least one non-alphanumeric character.
|
|
16405
|
+
*/
|
|
16406
|
+
requireSymbol: boolean;
|
|
16407
|
+
/**
|
|
16408
|
+
* Require at least one uppercase letter.
|
|
16409
|
+
*/
|
|
16410
|
+
requireUppercase: boolean;
|
|
16411
|
+
};
|
|
16412
|
+
sessionTtlHours: number;
|
|
16413
|
+
lifecycleBlocked: boolean;
|
|
16414
|
+
lifecycleArchived: boolean;
|
|
16415
|
+
refreshSlidingDays: number;
|
|
16416
|
+
refreshAbsoluteDays: number;
|
|
16417
|
+
redirectUriAllowlist: string[];
|
|
16418
|
+
accessTokenTtlMinutes: number;
|
|
16419
|
+
captchaSecretConfigured: boolean;
|
|
16420
|
+
}
|
|
16421
|
+
interface UsersConfigUpsertOutputGoogle {
|
|
16422
|
+
enabled: boolean;
|
|
16423
|
+
clientId: (string | null);
|
|
16424
|
+
secretConfigured: boolean;
|
|
16425
|
+
}
|
|
16426
|
+
interface UsersFactorsListInput {
|
|
16427
|
+
/**
|
|
16428
|
+
* The end user whose enrolled factors to list.
|
|
16429
|
+
*/
|
|
16430
|
+
userId: string;
|
|
16431
|
+
}
|
|
16432
|
+
interface UsersFactorsListOutput {
|
|
16433
|
+
factors: {
|
|
16434
|
+
type: ("totp" | "backup_codes");
|
|
16435
|
+
status: ("unverified" | "verified");
|
|
16436
|
+
createdAt: string;
|
|
16437
|
+
remaining: (number | null);
|
|
16438
|
+
lastUsedAt: (string | null);
|
|
16439
|
+
verifiedAt: (string | null);
|
|
16440
|
+
}[];
|
|
16441
|
+
}
|
|
16442
|
+
interface UsersFactorsResetInput {
|
|
16443
|
+
/**
|
|
16444
|
+
* What identity proofing was done and under which ticket. Recorded verbatim in the audit row — this is the whole point of the tool being audited.
|
|
16445
|
+
*/
|
|
16446
|
+
reason: string;
|
|
16447
|
+
/**
|
|
16448
|
+
* The end user whose second factor is being reset.
|
|
16449
|
+
*/
|
|
16450
|
+
userId: string;
|
|
16451
|
+
}
|
|
16452
|
+
interface UsersFactorsResetOutput {
|
|
16453
|
+
requestId: string;
|
|
16454
|
+
scheduledFor: string;
|
|
16455
|
+
}
|
|
16456
|
+
interface UsersKeysListInput {
|
|
16457
|
+
}
|
|
16458
|
+
interface UsersKeysListOutput {
|
|
16459
|
+
keys: {
|
|
16460
|
+
/**
|
|
16461
|
+
* The RFC 7638 JWK thumbprint — what a token header carries.
|
|
16462
|
+
*/
|
|
16463
|
+
kid: string;
|
|
16464
|
+
/**
|
|
16465
|
+
* `standby` is pre-generated and not published; `current` signs; `retired` is still in JWKS for the overlap; `revoked` was evicted.
|
|
16466
|
+
*/
|
|
16467
|
+
state: ("standby" | "current" | "retired" | "revoked");
|
|
16468
|
+
createdAt: string;
|
|
16469
|
+
retiredAt: (string | null);
|
|
16470
|
+
revokedAt: (string | null);
|
|
16471
|
+
/**
|
|
16472
|
+
* When a retired key leaves JWKS. Null unless the key is retired.
|
|
16473
|
+
*/
|
|
16474
|
+
overlapExpiresAt: (string | null);
|
|
16475
|
+
}[];
|
|
16476
|
+
}
|
|
16477
|
+
interface UsersKeysRevokeInput {
|
|
16478
|
+
/**
|
|
16479
|
+
* The key to evict, as listed by users_keys_list.
|
|
16480
|
+
*/
|
|
16481
|
+
kid: string;
|
|
16482
|
+
/**
|
|
16483
|
+
* Why. Goes into the audit row and is the only account of the incident it keeps.
|
|
16484
|
+
*/
|
|
16485
|
+
reason?: string;
|
|
16486
|
+
/**
|
|
16487
|
+
* Sign every end user of this product out as well. Defaults to TRUE: a compromised signing key could have minted any of those sessions. Pass false ONLY when you know no forged token was ever issued.
|
|
16488
|
+
*/
|
|
16489
|
+
revokeSessions?: boolean;
|
|
16490
|
+
}
|
|
16491
|
+
interface UsersKeysRevokeOutput {
|
|
16492
|
+
/**
|
|
16493
|
+
* The fresh key minted or promoted in its place.
|
|
16494
|
+
*/
|
|
16495
|
+
currentKid: string;
|
|
16496
|
+
revokedKid: string;
|
|
16497
|
+
sessionsRevoked: number;
|
|
16498
|
+
}
|
|
16499
|
+
interface UsersKeysRotateInput {
|
|
16500
|
+
}
|
|
16501
|
+
interface UsersKeysRotateOutput {
|
|
16502
|
+
/**
|
|
16503
|
+
* The key signing from now on.
|
|
16504
|
+
*/
|
|
16505
|
+
currentKid: string;
|
|
16506
|
+
/**
|
|
16507
|
+
* The key just retired. Null if there was none.
|
|
16508
|
+
*/
|
|
16509
|
+
previousKid: (string | null);
|
|
16510
|
+
/**
|
|
16511
|
+
* When the retired key stops verifying. Both kids are in JWKS until then.
|
|
16512
|
+
*/
|
|
16513
|
+
overlapExpiresAt: (string | null);
|
|
16514
|
+
}
|
|
16515
|
+
interface UsersOpsRetentionGetInput {
|
|
16516
|
+
}
|
|
16517
|
+
interface UsersOpsRetentionGetOutput {
|
|
16518
|
+
/**
|
|
16519
|
+
* The single retention job. There is exactly one — it replaced the sessions reaper and the waitlist sweep.
|
|
16520
|
+
*/
|
|
16521
|
+
sweep: {
|
|
16522
|
+
/**
|
|
16523
|
+
* Its schedule, in cron syntax.
|
|
16524
|
+
*/
|
|
16525
|
+
cron: string;
|
|
16526
|
+
/**
|
|
16527
|
+
* What one pass removes, in the order it removes it.
|
|
16528
|
+
*/
|
|
16529
|
+
removes: string[];
|
|
16530
|
+
/**
|
|
16531
|
+
* The Synapse cron function that performs every sweep below.
|
|
16532
|
+
*/
|
|
16533
|
+
functionId: string;
|
|
16534
|
+
};
|
|
16535
|
+
/**
|
|
16536
|
+
* This product’s EFFECTIVE windows — what it configured, with the documented default filling anything it did not.
|
|
16537
|
+
*/
|
|
16538
|
+
windows: {
|
|
16539
|
+
/**
|
|
16540
|
+
* How long an EXPIRED flow attempt is kept after its own expiry. Default 0 — swept as soon as it dies, which is what the reaper did before this window existed.
|
|
16541
|
+
*/
|
|
16542
|
+
flowAttemptDays: number;
|
|
16543
|
+
/**
|
|
16544
|
+
* How long a SPENT or EXPIRED one-time token row (an OTP, a magic link, a recovery or abort token) is kept after it stops being usable, for forensics. The secret is a hash and the row is already dead — this only decides how long the trail lives. Default 30.
|
|
16545
|
+
*/
|
|
16546
|
+
oneTimeTokenDays: number;
|
|
16547
|
+
/**
|
|
16548
|
+
* How long an EXPIRED session and its refresh tokens are kept after expiry. Zero does not shorten any lifetime: a session past either window can never be refreshed again, so the row is already inert. Default 0.
|
|
16549
|
+
*/
|
|
16550
|
+
expiredSessionDays: number;
|
|
16551
|
+
};
|
|
16552
|
+
/**
|
|
16553
|
+
* The documented defaults, so a reader can tell a deliberate window from an inherited one without a second call.
|
|
16554
|
+
*/
|
|
16555
|
+
defaults: {
|
|
16556
|
+
/**
|
|
16557
|
+
* How long an EXPIRED flow attempt is kept after its own expiry. Default 0 — swept as soon as it dies, which is what the reaper did before this window existed.
|
|
16558
|
+
*/
|
|
16559
|
+
flowAttemptDays: number;
|
|
16560
|
+
/**
|
|
16561
|
+
* How long a SPENT or EXPIRED one-time token row (an OTP, a magic link, a recovery or abort token) is kept after it stops being usable, for forensics. The secret is a hash and the row is already dead — this only decides how long the trail lives. Default 30.
|
|
16562
|
+
*/
|
|
16563
|
+
oneTimeTokenDays: number;
|
|
16564
|
+
/**
|
|
16565
|
+
* How long an EXPIRED session and its refresh tokens are kept after expiry. Zero does not shorten any lifetime: a session past either window can never be refreshed again, so the row is already inert. Default 0.
|
|
16566
|
+
*/
|
|
16567
|
+
expiredSessionDays: number;
|
|
16568
|
+
};
|
|
16569
|
+
/**
|
|
16570
|
+
* What this service deliberately keeps forever, and why. Reading a retention surface that lists only what IS deleted is how an operator concludes the audit log ages out — it does not.
|
|
16571
|
+
*/
|
|
16572
|
+
notSwept: {
|
|
16573
|
+
why: string;
|
|
16574
|
+
what: string;
|
|
16575
|
+
}[];
|
|
16576
|
+
/**
|
|
16577
|
+
* How long a still-PENDING waitlist entry is kept. It lives in the `waitlist` config block rather than in `retention`, because it is not a grace period on a dead row: a pending entry never expires on its own, so this window is the whole of what makes it go away — and the sweep ERASES it (audit row, `users/waitlist-entry.erased`) rather than deleting it.
|
|
16578
|
+
*/
|
|
16579
|
+
waitlistRetentionDays: number;
|
|
16580
|
+
}
|
|
16581
|
+
interface UsersOpsSloGetInput {
|
|
16582
|
+
}
|
|
16583
|
+
interface UsersOpsSloGetOutput {
|
|
16584
|
+
/**
|
|
16585
|
+
* Every published objective and its verdict for this window.
|
|
16586
|
+
*/
|
|
16587
|
+
slos: {
|
|
16588
|
+
/**
|
|
16589
|
+
* Stable id of the objective — the key to quote in a runbook.
|
|
16590
|
+
*/
|
|
16591
|
+
id: string;
|
|
16592
|
+
/**
|
|
16593
|
+
* Short human name.
|
|
16594
|
+
*/
|
|
16595
|
+
title: string;
|
|
16596
|
+
/**
|
|
16597
|
+
* `insufficient_data` is NOT `ok`: it means the window is too quiet to judge, which an operator reading a dashboard must be able to tell apart from health.
|
|
16598
|
+
*/
|
|
16599
|
+
status: ("ok" | "breached" | "insufficient_data");
|
|
16600
|
+
/**
|
|
16601
|
+
* How many events went into `observed`.
|
|
16602
|
+
*/
|
|
16603
|
+
samples: number;
|
|
16604
|
+
/**
|
|
16605
|
+
* What this replica sees in the CURRENT window, in the same unit as `objective`. NULL when nothing was observed.
|
|
16606
|
+
*/
|
|
16607
|
+
observed: (number | null);
|
|
16608
|
+
/**
|
|
16609
|
+
* The `users/alert.raised` kind a breach of this objective fires, for wiring an alert route.
|
|
16610
|
+
*/
|
|
16611
|
+
alertKind: string;
|
|
16612
|
+
/**
|
|
16613
|
+
* The published objective, as a ratio in 0..1.
|
|
16614
|
+
*/
|
|
16615
|
+
objective: number;
|
|
16616
|
+
/**
|
|
16617
|
+
* Which side of `objective` is healthy: a success rate is at-least, an error rate at-most.
|
|
16618
|
+
*/
|
|
16619
|
+
comparator: ("at-least" | "at-most");
|
|
16620
|
+
/**
|
|
16621
|
+
* Below this many samples the ratio is not judged at all — a quiet window is not an outage.
|
|
16622
|
+
*/
|
|
16623
|
+
minSamples: number;
|
|
16624
|
+
/**
|
|
16625
|
+
* What is counted, and what is deliberately NOT counted.
|
|
16626
|
+
*/
|
|
16627
|
+
description: string;
|
|
16628
|
+
/**
|
|
16629
|
+
* The window the observation is computed over.
|
|
16630
|
+
*/
|
|
16631
|
+
windowSeconds: number;
|
|
16632
|
+
}[];
|
|
16633
|
+
/**
|
|
16634
|
+
* These numbers come from ONE replica’s in-process window, not from the whole deployment. Treat them as a spot check, not as the fleet’s error budget.
|
|
16635
|
+
*/
|
|
16636
|
+
scope: "replica";
|
|
16637
|
+
/**
|
|
16638
|
+
* The current window, exactly as the alert hook sees it.
|
|
16639
|
+
*/
|
|
16640
|
+
window: {
|
|
16641
|
+
mail: {
|
|
16642
|
+
/**
|
|
16643
|
+
* Auth emails handed to mail (a cooldown or daily cap never reaches this).
|
|
16644
|
+
*/
|
|
16645
|
+
total: number;
|
|
16646
|
+
/**
|
|
16647
|
+
* Of those, the ones mail would not take.
|
|
16648
|
+
*/
|
|
16649
|
+
failures: number;
|
|
16650
|
+
/**
|
|
16651
|
+
* failures / total. NULL when nothing was sent.
|
|
16652
|
+
*/
|
|
16653
|
+
failureRate: (number | null);
|
|
16654
|
+
};
|
|
16655
|
+
signIn: {
|
|
16656
|
+
/**
|
|
16657
|
+
* SETTLED flow attempts — completed or failed. A pending one is neither.
|
|
16658
|
+
*/
|
|
16659
|
+
total: number;
|
|
16660
|
+
/**
|
|
16661
|
+
* Of those, the ones that failed.
|
|
16662
|
+
*/
|
|
16663
|
+
failures: number;
|
|
16664
|
+
/**
|
|
16665
|
+
* completed / settled. NULL, never 0, when nothing settled.
|
|
16666
|
+
*/
|
|
16667
|
+
successRate: (number | null);
|
|
16668
|
+
};
|
|
16669
|
+
refresh: {
|
|
16670
|
+
/**
|
|
16671
|
+
* Refresh attempts.
|
|
16672
|
+
*/
|
|
16673
|
+
total: number;
|
|
16674
|
+
/**
|
|
16675
|
+
* Failed refreshes, detected reuse included.
|
|
16676
|
+
*/
|
|
16677
|
+
errors: number;
|
|
16678
|
+
/**
|
|
16679
|
+
* Detected token REUSE — theft, counted rather than rated.
|
|
16680
|
+
*/
|
|
16681
|
+
reuses: number;
|
|
16682
|
+
/**
|
|
16683
|
+
* errors / total. NULL when nothing was refreshed.
|
|
16684
|
+
*/
|
|
16685
|
+
errorRate: (number | null);
|
|
16686
|
+
};
|
|
16687
|
+
/**
|
|
16688
|
+
* Length of the evaluation window.
|
|
16689
|
+
*/
|
|
16690
|
+
windowSeconds: number;
|
|
16691
|
+
/**
|
|
16692
|
+
* ISO start of the window these numbers belong to.
|
|
16693
|
+
*/
|
|
16694
|
+
windowStartedAt: string;
|
|
16695
|
+
/**
|
|
16696
|
+
* This product’s OWN trailing sign-in failure rate, over CLOSED windows. What the anomaly signal compares the live window against — NULL until at least one window has closed.
|
|
16697
|
+
*/
|
|
16698
|
+
signInFailureBaseline: (number | null);
|
|
16699
|
+
};
|
|
16700
|
+
}
|
|
16701
|
+
interface UsersSessionsGetInput {
|
|
16702
|
+
/**
|
|
16703
|
+
* The session to read.
|
|
16704
|
+
*/
|
|
16705
|
+
sessionId: string;
|
|
16706
|
+
}
|
|
16707
|
+
interface UsersSessionsGetOutput {
|
|
16708
|
+
id: string;
|
|
16709
|
+
ip: (string | null);
|
|
16710
|
+
/**
|
|
16711
|
+
* `aal2` only if a verified second factor completed.
|
|
16712
|
+
*/
|
|
16713
|
+
aal: ("aal1" | "aal2");
|
|
16714
|
+
/**
|
|
16715
|
+
* The factors this session was established with.
|
|
16716
|
+
*/
|
|
16717
|
+
amr: string[];
|
|
16718
|
+
status: ("active" | "revoked");
|
|
16719
|
+
userId: string;
|
|
16720
|
+
createdAt: string;
|
|
16721
|
+
expiresAt: string;
|
|
16722
|
+
revokedAt: (string | null);
|
|
16723
|
+
userAgent: (string | null);
|
|
16724
|
+
revokedReason: (string | null);
|
|
16725
|
+
/**
|
|
16726
|
+
* The operator behind an impersonated session, or null for an ordinary one.
|
|
16727
|
+
*/
|
|
16728
|
+
impersonatedBy: (string | null);
|
|
16729
|
+
lastRefreshedAt: (string | null);
|
|
16730
|
+
absoluteExpiresAt: string;
|
|
16731
|
+
}
|
|
16732
|
+
interface UsersSessionsImpersonateInput {
|
|
16733
|
+
/**
|
|
16734
|
+
* Why. Recorded in the audit trail and shown to the user in the notification email — write what you would want to read in an incident review (a ticket number and one sentence).
|
|
16735
|
+
*/
|
|
16736
|
+
reason: string;
|
|
16737
|
+
/**
|
|
16738
|
+
* The end user to sign in as.
|
|
16739
|
+
*/
|
|
16740
|
+
userId: string;
|
|
16741
|
+
}
|
|
16742
|
+
interface UsersSessionsImpersonateOutput {
|
|
16743
|
+
userId: string;
|
|
16744
|
+
/**
|
|
16745
|
+
* When the session dies. It cannot be extended or refreshed.
|
|
16746
|
+
*/
|
|
16747
|
+
expiresAt: string;
|
|
16748
|
+
/**
|
|
16749
|
+
* Seconds until the access token expires.
|
|
16750
|
+
*/
|
|
16751
|
+
expiresIn: number;
|
|
16752
|
+
sessionId: string;
|
|
16753
|
+
/**
|
|
16754
|
+
* The access JWT of the impersonated session. There is NO refresh token.
|
|
16755
|
+
*/
|
|
16756
|
+
accessToken: string;
|
|
16757
|
+
}
|
|
16758
|
+
interface UsersSessionsListInput {
|
|
16759
|
+
/**
|
|
16760
|
+
* The end user whose sessions to list.
|
|
16761
|
+
*/
|
|
16762
|
+
userId: string;
|
|
16763
|
+
}
|
|
16764
|
+
interface UsersSessionsListOutput {
|
|
16765
|
+
sessions: {
|
|
16766
|
+
id: string;
|
|
16767
|
+
ip: (string | null);
|
|
16768
|
+
status: ("active" | "revoked");
|
|
16769
|
+
userId: string;
|
|
16770
|
+
createdAt: string;
|
|
16771
|
+
expiresAt: string;
|
|
16772
|
+
revokedAt: (string | null);
|
|
16773
|
+
userAgent: (string | null);
|
|
16774
|
+
lastRefreshedAt: (string | null);
|
|
16775
|
+
absoluteExpiresAt: string;
|
|
16776
|
+
}[];
|
|
16777
|
+
}
|
|
16778
|
+
interface UsersSessionsRevokeInput {
|
|
16779
|
+
/**
|
|
16780
|
+
* Revoke every session of this user.
|
|
16781
|
+
*/
|
|
16782
|
+
userId?: string;
|
|
16783
|
+
/**
|
|
16784
|
+
* Revoke exactly this session.
|
|
16785
|
+
*/
|
|
16786
|
+
sessionId?: string;
|
|
16787
|
+
}
|
|
16788
|
+
interface UsersSessionsRevokeOutput {
|
|
16789
|
+
revoked: number;
|
|
16790
|
+
}
|
|
16791
|
+
interface UsersStatsGetInput {
|
|
16792
|
+
/**
|
|
16793
|
+
* Look-back window for the TIME-BOUNDED numbers — the sign-in counters, the abuse block and `sessions.createdInWindow`: '24h', '7d', '30d' or '90d'. Default '7d'. The user, live-session and factor populations are point-in-time and ignore it.
|
|
16794
|
+
*/
|
|
16795
|
+
window?: ("24h" | "7d" | "30d" | "90d");
|
|
16796
|
+
}
|
|
16797
|
+
interface UsersStatsGetOutput {
|
|
16798
|
+
/**
|
|
16799
|
+
* Abuse signals over the window. Denied origins are deliberately absent: that check fires on unauthenticated traffic and is served by logs and metrics, not by per-product audit rows.
|
|
16800
|
+
*/
|
|
16801
|
+
abuse: {
|
|
16802
|
+
/**
|
|
16803
|
+
* Accounts locked by a failed-attempt ceiling — password and second factor both.
|
|
16804
|
+
*/
|
|
16805
|
+
lockouts: number;
|
|
16806
|
+
/**
|
|
16807
|
+
* The subset of `lockouts` caused by the SECOND-factor ceiling.
|
|
16808
|
+
*/
|
|
16809
|
+
mfaLockouts: number;
|
|
16810
|
+
/**
|
|
16811
|
+
* Mirrors `signIns.failed`, so the abuse block reads on its own.
|
|
16812
|
+
*/
|
|
16813
|
+
failedSignIns: number;
|
|
16814
|
+
/**
|
|
16815
|
+
* Breach-corpus matches against a user's password.
|
|
16816
|
+
*/
|
|
16817
|
+
pwnedPasswordsSeen: number;
|
|
16818
|
+
/**
|
|
16819
|
+
* Refresh tokens spent twice outside the grace window — theft, not staleness. Each one revoked a whole session family.
|
|
16820
|
+
*/
|
|
16821
|
+
refreshReuseDetected: number;
|
|
16822
|
+
};
|
|
16823
|
+
/**
|
|
16824
|
+
* ISO start of that window — the `created_at` floor every counter used.
|
|
16825
|
+
*/
|
|
16826
|
+
since: string;
|
|
16827
|
+
/**
|
|
16828
|
+
* Point-in-time directory populations by DERIVED status — `user` has no status column, these are computed from `waitlisted` and the ban/delete/erase timestamps.
|
|
16829
|
+
*/
|
|
16830
|
+
users: {
|
|
16831
|
+
/**
|
|
16832
|
+
* Every directory row, GDPR tombstones included.
|
|
16833
|
+
*/
|
|
16834
|
+
total: number;
|
|
16835
|
+
/**
|
|
16836
|
+
* Full accounts: not waitlisted, not banned, not deleted, not erased.
|
|
16837
|
+
*/
|
|
16838
|
+
active: number;
|
|
16839
|
+
/**
|
|
16840
|
+
* Banned accounts that are still present.
|
|
16841
|
+
*/
|
|
16842
|
+
banned: number;
|
|
16843
|
+
/**
|
|
16844
|
+
* GDPR-erased tombstones: the id survives, the PII does not.
|
|
16845
|
+
*/
|
|
16846
|
+
erased: number;
|
|
16847
|
+
/**
|
|
16848
|
+
* SOFT-deleted and still recoverable — not erased.
|
|
16849
|
+
*/
|
|
16850
|
+
deleted: number;
|
|
16851
|
+
/**
|
|
16852
|
+
* Waitlist signups with no credential yet.
|
|
16853
|
+
*/
|
|
16854
|
+
waitlisted: number;
|
|
16855
|
+
};
|
|
16856
|
+
/**
|
|
16857
|
+
* The window the time-bounded numbers were computed over.
|
|
16858
|
+
*/
|
|
16859
|
+
window: ("24h" | "7d" | "30d" | "90d");
|
|
16860
|
+
/**
|
|
16861
|
+
* Enrolled second factors (TOTP and backup-code batches).
|
|
16862
|
+
*/
|
|
16863
|
+
factors: {
|
|
16864
|
+
/**
|
|
16865
|
+
* VERIFIED second factors; an unverified enrollment gates nothing.
|
|
16866
|
+
*/
|
|
16867
|
+
verified: number;
|
|
16868
|
+
/**
|
|
16869
|
+
* Distinct users holding at least one verified factor.
|
|
16870
|
+
*/
|
|
16871
|
+
usersWithFactor: number;
|
|
16872
|
+
};
|
|
16873
|
+
/**
|
|
16874
|
+
* Sign-in outcomes over the window, from the audit log.
|
|
16875
|
+
*/
|
|
16876
|
+
signIns: {
|
|
16877
|
+
/**
|
|
16878
|
+
* Failed sign-in attempts in the window.
|
|
16879
|
+
*/
|
|
16880
|
+
failed: number;
|
|
16881
|
+
/**
|
|
16882
|
+
* Successful sign-ins in the window.
|
|
16883
|
+
*/
|
|
16884
|
+
succeeded: number;
|
|
16885
|
+
/**
|
|
16886
|
+
* succeeded / (succeeded + failed), 4 decimals. NULL — never 0 — when nothing was attempted: an idle window and a totally broken one are opposite facts.
|
|
16887
|
+
*/
|
|
16888
|
+
successRate: (number | null);
|
|
16889
|
+
};
|
|
16890
|
+
/**
|
|
16891
|
+
* Device sessions.
|
|
16892
|
+
*/
|
|
16893
|
+
sessions: {
|
|
16894
|
+
/**
|
|
16895
|
+
* Live right now: active, unrevoked and inside BOTH the sliding and absolute expiry.
|
|
16896
|
+
*/
|
|
16897
|
+
active: number;
|
|
16898
|
+
/**
|
|
16899
|
+
* Sessions established since `since`.
|
|
16900
|
+
*/
|
|
16901
|
+
createdInWindow: number;
|
|
16902
|
+
};
|
|
16903
|
+
}
|
|
16904
|
+
interface UsersUsersBanInput {
|
|
16905
|
+
/**
|
|
16906
|
+
* The opaque user id returned by users_users_create or _list.
|
|
16907
|
+
*/
|
|
16908
|
+
userId: string;
|
|
16909
|
+
}
|
|
16910
|
+
interface UsersUsersBanOutput {
|
|
16911
|
+
id: string;
|
|
16912
|
+
name: (string | null);
|
|
16913
|
+
bannedAt: (string | null);
|
|
16914
|
+
erasedAt: (string | null);
|
|
16915
|
+
imageUrl: (string | null);
|
|
16916
|
+
testUser: boolean;
|
|
16917
|
+
createdAt: string;
|
|
16918
|
+
deletedAt: (string | null);
|
|
16919
|
+
productId: string;
|
|
16920
|
+
updatedAt: string;
|
|
16921
|
+
waitlisted: boolean;
|
|
16922
|
+
identifiers: {
|
|
16923
|
+
id: string;
|
|
16924
|
+
type: "email";
|
|
16925
|
+
value: string;
|
|
16926
|
+
isPrimary: boolean;
|
|
16927
|
+
verifiedAt: (string | null);
|
|
16928
|
+
valueCanonical: string;
|
|
16929
|
+
verificationStatus: ("unverified" | "verified" | "expired");
|
|
16930
|
+
}[];
|
|
16931
|
+
lockedUntil: (string | null);
|
|
16932
|
+
lastSignInAt: (string | null);
|
|
16933
|
+
requiresReset: boolean;
|
|
16934
|
+
publicMetadata: UsersUsersBanOutputPublicMetadata;
|
|
16935
|
+
unsafeMetadata: UsersUsersBanOutputPublicMetadata;
|
|
16936
|
+
privateMetadata: UsersUsersBanOutputPublicMetadata;
|
|
16937
|
+
emailChangeLockedUntil: (string | null);
|
|
16938
|
+
}
|
|
16939
|
+
interface UsersUsersBanOutputPublicMetadata {
|
|
16940
|
+
[k: string]: unknown;
|
|
16941
|
+
}
|
|
16942
|
+
interface UsersUsersCreateInput {
|
|
16943
|
+
/**
|
|
16944
|
+
* The user's display name.
|
|
16945
|
+
*/
|
|
16946
|
+
name?: string;
|
|
16947
|
+
/**
|
|
16948
|
+
* URL of the user's avatar image.
|
|
16949
|
+
*/
|
|
16950
|
+
imageUrl?: string;
|
|
16951
|
+
/**
|
|
16952
|
+
* Optional credential to store for this user. Hashes only — this toolkit never accepts a plaintext password. Nothing verifies it until Phase 2.
|
|
16953
|
+
*/
|
|
16954
|
+
password?: {
|
|
16955
|
+
/**
|
|
16956
|
+
* A PHC-format password hash (e.g. an argon2id string) to store as-is. Never send a plaintext password.
|
|
16957
|
+
*/
|
|
16958
|
+
phcHash?: string;
|
|
16959
|
+
/**
|
|
16960
|
+
* An imported hash from another system, to be lazily rehashed on the first successful sign-in (Phase 2).
|
|
16961
|
+
*/
|
|
16962
|
+
foreignHash?: string;
|
|
16963
|
+
/**
|
|
16964
|
+
* Algorithm of `foreignHash`. Required when `foreignHash` is set.
|
|
16965
|
+
*/
|
|
16966
|
+
foreignHashAlgo?: ("bcrypt" | "argon2" | "pbkdf2" | "scrypt");
|
|
16967
|
+
};
|
|
16968
|
+
/**
|
|
16969
|
+
* Create this user as a TEST FIXTURE: excluded from metering (it never counts toward retained-users), hidden from the default users_users_list view, never really emailed, and — when the deployment configures one — able to sign in with the fixed magic OTP. REFUSED unless this product has test mode enabled, which a production deployment cannot do. There is no way to set or clear this later. Default false.
|
|
16970
|
+
*/
|
|
16971
|
+
testUser?: boolean;
|
|
16972
|
+
/**
|
|
16973
|
+
* Create the user as a waitlist signup: no way in until promoted. Default false.
|
|
16974
|
+
*/
|
|
16975
|
+
waitlisted?: boolean;
|
|
16976
|
+
/**
|
|
16977
|
+
* The email addresses that reach this user. At least one is required.
|
|
16978
|
+
*
|
|
16979
|
+
* @minItems 1
|
|
16980
|
+
*/
|
|
16981
|
+
identifiers: [
|
|
16982
|
+
{
|
|
16983
|
+
/**
|
|
16984
|
+
* Identifier kind. Only 'email' exists in this phase.
|
|
16985
|
+
*/
|
|
16986
|
+
type: "email";
|
|
16987
|
+
/**
|
|
16988
|
+
* The email address. Stored canonicalised (lowercase, NFC) plus raw for display.
|
|
16989
|
+
*/
|
|
16990
|
+
value: string;
|
|
16991
|
+
/**
|
|
16992
|
+
* Record the identifier as already verified (use for trusted imports). Only ONE verified copy of a value may exist per product; unverified duplicates are allowed. Default false.
|
|
16993
|
+
*/
|
|
16994
|
+
verified?: boolean;
|
|
16995
|
+
/**
|
|
16996
|
+
* Mark as the primary identifier of its type. The first identifier of a type defaults to primary.
|
|
16997
|
+
*/
|
|
16998
|
+
isPrimary?: boolean;
|
|
16999
|
+
},
|
|
17000
|
+
...({
|
|
17001
|
+
/**
|
|
17002
|
+
* Identifier kind. Only 'email' exists in this phase.
|
|
17003
|
+
*/
|
|
17004
|
+
type: "email";
|
|
17005
|
+
/**
|
|
17006
|
+
* The email address. Stored canonicalised (lowercase, NFC) plus raw for display.
|
|
17007
|
+
*/
|
|
17008
|
+
value: string;
|
|
17009
|
+
/**
|
|
17010
|
+
* Record the identifier as already verified (use for trusted imports). Only ONE verified copy of a value may exist per product; unverified duplicates are allowed. Default false.
|
|
17011
|
+
*/
|
|
17012
|
+
verified?: boolean;
|
|
17013
|
+
/**
|
|
17014
|
+
* Mark as the primary identifier of its type. The first identifier of a type defaults to primary.
|
|
17015
|
+
*/
|
|
17016
|
+
isPrimary?: boolean;
|
|
17017
|
+
})[]
|
|
17018
|
+
];
|
|
17019
|
+
/**
|
|
17020
|
+
* Force a password reset before the user can sign in (use for unverifiable imported hashes). Default false.
|
|
17021
|
+
*/
|
|
17022
|
+
requiresReset?: boolean;
|
|
17023
|
+
/**
|
|
17024
|
+
* Metadata the end user may READ and that may flow into the JWT. Management-plane write only.
|
|
17025
|
+
*/
|
|
17026
|
+
publicMetadata?: {
|
|
17027
|
+
[k: string]: unknown;
|
|
17028
|
+
};
|
|
17029
|
+
unsafeMetadata?: UsersUsersCreateInputPublicMetadata;
|
|
17030
|
+
privateMetadata?: UsersUsersCreateInputPublicMetadata1;
|
|
17031
|
+
}
|
|
17032
|
+
/**
|
|
17033
|
+
* Metadata the end user may WRITE in a later phase. Never trust it for authorization.
|
|
17034
|
+
*/
|
|
17035
|
+
interface UsersUsersCreateInputPublicMetadata {
|
|
17036
|
+
[k: string]: unknown;
|
|
17037
|
+
}
|
|
17038
|
+
/**
|
|
17039
|
+
* Metadata visible to the management plane only. Never exposed to the end user.
|
|
17040
|
+
*/
|
|
17041
|
+
interface UsersUsersCreateInputPublicMetadata1 {
|
|
17042
|
+
[k: string]: unknown;
|
|
17043
|
+
}
|
|
17044
|
+
interface UsersUsersCreateOutput {
|
|
17045
|
+
id: string;
|
|
17046
|
+
name: (string | null);
|
|
17047
|
+
bannedAt: (string | null);
|
|
17048
|
+
erasedAt: (string | null);
|
|
17049
|
+
imageUrl: (string | null);
|
|
17050
|
+
testUser: boolean;
|
|
17051
|
+
createdAt: string;
|
|
17052
|
+
deletedAt: (string | null);
|
|
17053
|
+
productId: string;
|
|
17054
|
+
updatedAt: string;
|
|
17055
|
+
waitlisted: boolean;
|
|
17056
|
+
identifiers: {
|
|
17057
|
+
id: string;
|
|
17058
|
+
type: "email";
|
|
17059
|
+
value: string;
|
|
17060
|
+
isPrimary: boolean;
|
|
17061
|
+
verifiedAt: (string | null);
|
|
17062
|
+
valueCanonical: string;
|
|
17063
|
+
verificationStatus: ("unverified" | "verified" | "expired");
|
|
17064
|
+
}[];
|
|
17065
|
+
lockedUntil: (string | null);
|
|
17066
|
+
lastSignInAt: (string | null);
|
|
17067
|
+
requiresReset: boolean;
|
|
17068
|
+
publicMetadata: UsersUsersCreateOutputPublicMetadata;
|
|
17069
|
+
unsafeMetadata: UsersUsersCreateOutputPublicMetadata;
|
|
17070
|
+
privateMetadata: UsersUsersCreateOutputPublicMetadata;
|
|
17071
|
+
emailChangeLockedUntil: (string | null);
|
|
17072
|
+
}
|
|
17073
|
+
interface UsersUsersCreateOutputPublicMetadata {
|
|
17074
|
+
[k: string]: unknown;
|
|
17075
|
+
}
|
|
17076
|
+
interface UsersUsersDeleteInput {
|
|
17077
|
+
/**
|
|
17078
|
+
* The opaque user id returned by users_users_create or _list.
|
|
17079
|
+
*/
|
|
17080
|
+
userId: string;
|
|
17081
|
+
}
|
|
17082
|
+
interface UsersUsersDeleteOutput {
|
|
17083
|
+
id: string;
|
|
17084
|
+
name: (string | null);
|
|
17085
|
+
bannedAt: (string | null);
|
|
17086
|
+
erasedAt: (string | null);
|
|
17087
|
+
imageUrl: (string | null);
|
|
17088
|
+
testUser: boolean;
|
|
17089
|
+
createdAt: string;
|
|
17090
|
+
deletedAt: (string | null);
|
|
17091
|
+
productId: string;
|
|
17092
|
+
updatedAt: string;
|
|
17093
|
+
waitlisted: boolean;
|
|
17094
|
+
identifiers: {
|
|
17095
|
+
id: string;
|
|
17096
|
+
type: "email";
|
|
17097
|
+
value: string;
|
|
17098
|
+
isPrimary: boolean;
|
|
17099
|
+
verifiedAt: (string | null);
|
|
17100
|
+
valueCanonical: string;
|
|
17101
|
+
verificationStatus: ("unverified" | "verified" | "expired");
|
|
17102
|
+
}[];
|
|
17103
|
+
lockedUntil: (string | null);
|
|
17104
|
+
lastSignInAt: (string | null);
|
|
17105
|
+
requiresReset: boolean;
|
|
17106
|
+
publicMetadata: UsersUsersDeleteOutputPublicMetadata;
|
|
17107
|
+
unsafeMetadata: UsersUsersDeleteOutputPublicMetadata;
|
|
17108
|
+
privateMetadata: UsersUsersDeleteOutputPublicMetadata;
|
|
17109
|
+
emailChangeLockedUntil: (string | null);
|
|
17110
|
+
}
|
|
17111
|
+
interface UsersUsersDeleteOutputPublicMetadata {
|
|
17112
|
+
[k: string]: unknown;
|
|
17113
|
+
}
|
|
17114
|
+
interface UsersUsersEraseInput {
|
|
17115
|
+
/**
|
|
17116
|
+
* The opaque user id returned by users_users_create or _list.
|
|
17117
|
+
*/
|
|
17118
|
+
userId: string;
|
|
17119
|
+
}
|
|
17120
|
+
interface UsersUsersEraseOutput {
|
|
17121
|
+
id: string;
|
|
17122
|
+
name: (string | null);
|
|
17123
|
+
bannedAt: (string | null);
|
|
17124
|
+
erasedAt: (string | null);
|
|
17125
|
+
imageUrl: (string | null);
|
|
17126
|
+
testUser: boolean;
|
|
17127
|
+
createdAt: string;
|
|
17128
|
+
deletedAt: (string | null);
|
|
17129
|
+
productId: string;
|
|
17130
|
+
updatedAt: string;
|
|
17131
|
+
waitlisted: boolean;
|
|
17132
|
+
identifiers: {
|
|
17133
|
+
id: string;
|
|
17134
|
+
type: "email";
|
|
17135
|
+
value: string;
|
|
17136
|
+
isPrimary: boolean;
|
|
17137
|
+
verifiedAt: (string | null);
|
|
17138
|
+
valueCanonical: string;
|
|
17139
|
+
verificationStatus: ("unverified" | "verified" | "expired");
|
|
17140
|
+
}[];
|
|
17141
|
+
lockedUntil: (string | null);
|
|
17142
|
+
lastSignInAt: (string | null);
|
|
17143
|
+
requiresReset: boolean;
|
|
17144
|
+
publicMetadata: UsersUsersEraseOutputPublicMetadata;
|
|
17145
|
+
unsafeMetadata: UsersUsersEraseOutputPublicMetadata;
|
|
17146
|
+
privateMetadata: UsersUsersEraseOutputPublicMetadata;
|
|
17147
|
+
emailChangeLockedUntil: (string | null);
|
|
17148
|
+
}
|
|
17149
|
+
interface UsersUsersEraseOutputPublicMetadata {
|
|
17150
|
+
[k: string]: unknown;
|
|
17151
|
+
}
|
|
17152
|
+
interface UsersUsersExportInput {
|
|
17153
|
+
/**
|
|
17154
|
+
* Rows per page, 1-500. Default 100.
|
|
17155
|
+
*/
|
|
17156
|
+
limit?: number;
|
|
17157
|
+
/**
|
|
17158
|
+
* Case-insensitive substring match against the user's identifiers (email) and name.
|
|
17159
|
+
*/
|
|
17160
|
+
query?: string;
|
|
17161
|
+
/**
|
|
17162
|
+
* Opaque cursor from the previous page's `nextCursor`. Omit for the first page.
|
|
17163
|
+
*/
|
|
17164
|
+
cursor?: string;
|
|
17165
|
+
/**
|
|
17166
|
+
* Filter by status: 'active', 'banned' or 'waitlisted'. Omit for all.
|
|
17167
|
+
*/
|
|
17168
|
+
status?: ("active" | "banned" | "waitlisted");
|
|
17169
|
+
/**
|
|
17170
|
+
* Include soft-deleted users. Default false.
|
|
17171
|
+
*/
|
|
17172
|
+
includeDeleted?: boolean;
|
|
17173
|
+
}
|
|
17174
|
+
interface UsersUsersExportOutput {
|
|
17175
|
+
count: number;
|
|
17176
|
+
users: {
|
|
17177
|
+
id: string;
|
|
17178
|
+
name: (string | null);
|
|
17179
|
+
bannedAt: (string | null);
|
|
17180
|
+
erasedAt: (string | null);
|
|
17181
|
+
imageUrl: (string | null);
|
|
17182
|
+
testUser: boolean;
|
|
17183
|
+
createdAt: string;
|
|
17184
|
+
deletedAt: (string | null);
|
|
17185
|
+
productId: string;
|
|
17186
|
+
updatedAt: string;
|
|
17187
|
+
waitlisted: boolean;
|
|
17188
|
+
identifiers: {
|
|
17189
|
+
id: string;
|
|
17190
|
+
type: "email";
|
|
17191
|
+
value: string;
|
|
17192
|
+
isPrimary: boolean;
|
|
17193
|
+
verifiedAt: (string | null);
|
|
17194
|
+
valueCanonical: string;
|
|
17195
|
+
verificationStatus: ("unverified" | "verified" | "expired");
|
|
17196
|
+
}[];
|
|
17197
|
+
lockedUntil: (string | null);
|
|
17198
|
+
lastSignInAt: (string | null);
|
|
17199
|
+
requiresReset: boolean;
|
|
17200
|
+
publicMetadata: UsersUsersExportOutputPublicMetadata;
|
|
17201
|
+
unsafeMetadata: UsersUsersExportOutputPublicMetadata;
|
|
17202
|
+
privateMetadata: UsersUsersExportOutputPublicMetadata;
|
|
17203
|
+
emailChangeLockedUntil: (string | null);
|
|
17204
|
+
}[];
|
|
17205
|
+
exportedAt: string;
|
|
17206
|
+
nextCursor: (string | null);
|
|
17207
|
+
}
|
|
17208
|
+
interface UsersUsersExportOutputPublicMetadata {
|
|
17209
|
+
[k: string]: unknown;
|
|
17210
|
+
}
|
|
17211
|
+
interface UsersUsersGetInput {
|
|
17212
|
+
/**
|
|
17213
|
+
* The opaque user id returned by users_users_create or _list.
|
|
17214
|
+
*/
|
|
17215
|
+
userId: string;
|
|
17216
|
+
}
|
|
17217
|
+
interface UsersUsersGetOutput {
|
|
17218
|
+
id: string;
|
|
17219
|
+
name: (string | null);
|
|
17220
|
+
bannedAt: (string | null);
|
|
17221
|
+
erasedAt: (string | null);
|
|
17222
|
+
imageUrl: (string | null);
|
|
17223
|
+
testUser: boolean;
|
|
17224
|
+
createdAt: string;
|
|
17225
|
+
deletedAt: (string | null);
|
|
17226
|
+
productId: string;
|
|
17227
|
+
updatedAt: string;
|
|
17228
|
+
waitlisted: boolean;
|
|
17229
|
+
identifiers: {
|
|
17230
|
+
id: string;
|
|
17231
|
+
type: "email";
|
|
17232
|
+
value: string;
|
|
17233
|
+
isPrimary: boolean;
|
|
17234
|
+
verifiedAt: (string | null);
|
|
17235
|
+
valueCanonical: string;
|
|
17236
|
+
verificationStatus: ("unverified" | "verified" | "expired");
|
|
17237
|
+
}[];
|
|
17238
|
+
lockedUntil: (string | null);
|
|
17239
|
+
lastSignInAt: (string | null);
|
|
17240
|
+
requiresReset: boolean;
|
|
17241
|
+
publicMetadata: UsersUsersGetOutputPublicMetadata;
|
|
17242
|
+
unsafeMetadata: UsersUsersGetOutputPublicMetadata;
|
|
17243
|
+
privateMetadata: UsersUsersGetOutputPublicMetadata;
|
|
17244
|
+
emailChangeLockedUntil: (string | null);
|
|
17245
|
+
}
|
|
17246
|
+
interface UsersUsersGetOutputPublicMetadata {
|
|
17247
|
+
[k: string]: unknown;
|
|
17248
|
+
}
|
|
17249
|
+
interface UsersUsersImportInput {
|
|
17250
|
+
/**
|
|
17251
|
+
* The users to import, at most 500 per call — batch client-side beyond that. Each row: identifiers (email), optional profile, optional password HASH, optional flags.
|
|
17252
|
+
*
|
|
17253
|
+
* @minItems 1
|
|
17254
|
+
* @maxItems 500
|
|
17255
|
+
*/
|
|
17256
|
+
users: [unknown, ...(unknown)[]];
|
|
17257
|
+
}
|
|
17258
|
+
interface UsersUsersImportOutput {
|
|
17259
|
+
failed: number;
|
|
17260
|
+
created: number;
|
|
17261
|
+
results: {
|
|
17262
|
+
row: number;
|
|
17263
|
+
reason: (string | null);
|
|
17264
|
+
status: ("created" | "skipped" | "failed");
|
|
17265
|
+
userId: (string | null);
|
|
17266
|
+
}[];
|
|
17267
|
+
skipped: number;
|
|
17268
|
+
requested: number;
|
|
17269
|
+
}
|
|
17270
|
+
interface UsersUsersInviteInput {
|
|
17271
|
+
/**
|
|
17272
|
+
* The invitee's display name.
|
|
17273
|
+
*/
|
|
17274
|
+
name?: string;
|
|
17275
|
+
/**
|
|
17276
|
+
* The address to invite. Stored canonicalised (lowercase, NFC) plus raw for display.
|
|
17277
|
+
*/
|
|
17278
|
+
email: string;
|
|
17279
|
+
/**
|
|
17280
|
+
* Metadata the end user may READ and that may flow into the JWT.
|
|
17281
|
+
*/
|
|
17282
|
+
publicMetadata?: {
|
|
17283
|
+
[k: string]: unknown;
|
|
17284
|
+
};
|
|
17285
|
+
/**
|
|
17286
|
+
* Metadata visible to the management plane only. Never exposed to the end user.
|
|
17287
|
+
*/
|
|
17288
|
+
privateMetadata?: {
|
|
17289
|
+
[k: string]: unknown;
|
|
17290
|
+
};
|
|
17291
|
+
}
|
|
17292
|
+
interface UsersUsersInviteOutput {
|
|
17293
|
+
mailed: boolean;
|
|
17294
|
+
userId: string;
|
|
17295
|
+
created: boolean;
|
|
17296
|
+
expiresAt: string;
|
|
17297
|
+
}
|
|
17298
|
+
interface UsersUsersListInput {
|
|
17299
|
+
/**
|
|
17300
|
+
* Page size, 1-100. Default 25.
|
|
17301
|
+
*/
|
|
17302
|
+
limit?: number;
|
|
17303
|
+
/**
|
|
17304
|
+
* Case-insensitive substring match against the user's identifiers (email) and name.
|
|
17305
|
+
*/
|
|
17306
|
+
query?: string;
|
|
17307
|
+
/**
|
|
17308
|
+
* Opaque cursor from a previous response's `nextCursor`. Omit for the first page.
|
|
17309
|
+
*/
|
|
17310
|
+
cursor?: string;
|
|
17311
|
+
/**
|
|
17312
|
+
* Filter by status: 'active' (not banned, not waitlisted), 'banned', or 'waitlisted'. Omit for all.
|
|
17313
|
+
*/
|
|
17314
|
+
status?: ("active" | "banned" | "waitlisted");
|
|
17315
|
+
/**
|
|
17316
|
+
* Include soft-deleted users. Default false — deleted users are hidden.
|
|
17317
|
+
*/
|
|
17318
|
+
includeDeleted?: boolean;
|
|
17319
|
+
/**
|
|
17320
|
+
* Include TEST USERS. Default false: a test user is a fixture, not a customer — it is excluded from metering and from this listing for the same reason. Ask for it explicitly when you are debugging the fixtures themselves.
|
|
17321
|
+
*/
|
|
17322
|
+
includeTestUsers?: boolean;
|
|
17323
|
+
/**
|
|
17324
|
+
* Include waitlist signups. Default false: a waitlisted row is somebody who ASKED to join and cannot sign in, so it is not part of the directory an operator browses. Use `status: "waitlisted"` to see only them, or `users_waitlist_list` for the funnel.
|
|
17325
|
+
*/
|
|
17326
|
+
includeWaitlisted?: boolean;
|
|
17327
|
+
}
|
|
17328
|
+
interface UsersUsersListOutput {
|
|
17329
|
+
users: {
|
|
17330
|
+
id: string;
|
|
17331
|
+
name: (string | null);
|
|
17332
|
+
bannedAt: (string | null);
|
|
17333
|
+
erasedAt: (string | null);
|
|
17334
|
+
imageUrl: (string | null);
|
|
17335
|
+
testUser: boolean;
|
|
17336
|
+
createdAt: string;
|
|
17337
|
+
deletedAt: (string | null);
|
|
17338
|
+
productId: string;
|
|
17339
|
+
updatedAt: string;
|
|
17340
|
+
waitlisted: boolean;
|
|
17341
|
+
identifiers: {
|
|
17342
|
+
id: string;
|
|
17343
|
+
type: "email";
|
|
17344
|
+
value: string;
|
|
17345
|
+
isPrimary: boolean;
|
|
17346
|
+
verifiedAt: (string | null);
|
|
17347
|
+
valueCanonical: string;
|
|
17348
|
+
verificationStatus: ("unverified" | "verified" | "expired");
|
|
17349
|
+
}[];
|
|
17350
|
+
lockedUntil: (string | null);
|
|
17351
|
+
lastSignInAt: (string | null);
|
|
17352
|
+
requiresReset: boolean;
|
|
17353
|
+
publicMetadata: UsersUsersListOutputPublicMetadata;
|
|
17354
|
+
unsafeMetadata: UsersUsersListOutputPublicMetadata;
|
|
17355
|
+
privateMetadata: UsersUsersListOutputPublicMetadata;
|
|
17356
|
+
emailChangeLockedUntil: (string | null);
|
|
17357
|
+
}[];
|
|
17358
|
+
nextCursor: (string | null);
|
|
17359
|
+
}
|
|
17360
|
+
interface UsersUsersListOutputPublicMetadata {
|
|
17361
|
+
[k: string]: unknown;
|
|
17362
|
+
}
|
|
17363
|
+
interface UsersUsersSetPrimaryIdentifierInput {
|
|
17364
|
+
/**
|
|
17365
|
+
* The address to make primary. Must not already belong, verified, to another user of this product.
|
|
17366
|
+
*/
|
|
17367
|
+
email: string;
|
|
17368
|
+
/**
|
|
17369
|
+
* What identity proofing was done and under which ticket. Recorded verbatim in the audit row — this is the whole point of the tool being audited.
|
|
17370
|
+
*/
|
|
17371
|
+
reason: string;
|
|
17372
|
+
/**
|
|
17373
|
+
* The user whose primary email address is being replaced.
|
|
17374
|
+
*/
|
|
17375
|
+
userId: string;
|
|
17376
|
+
}
|
|
17377
|
+
interface UsersUsersSetPrimaryIdentifierOutput {
|
|
17378
|
+
requestId: string;
|
|
17379
|
+
scheduledFor: string;
|
|
17380
|
+
}
|
|
17381
|
+
interface UsersUsersUnbanInput {
|
|
17382
|
+
/**
|
|
17383
|
+
* The opaque user id returned by users_users_create or _list.
|
|
17384
|
+
*/
|
|
17385
|
+
userId: string;
|
|
17386
|
+
}
|
|
17387
|
+
interface UsersUsersUnbanOutput {
|
|
17388
|
+
id: string;
|
|
17389
|
+
name: (string | null);
|
|
17390
|
+
bannedAt: (string | null);
|
|
17391
|
+
erasedAt: (string | null);
|
|
17392
|
+
imageUrl: (string | null);
|
|
17393
|
+
testUser: boolean;
|
|
17394
|
+
createdAt: string;
|
|
17395
|
+
deletedAt: (string | null);
|
|
17396
|
+
productId: string;
|
|
17397
|
+
updatedAt: string;
|
|
17398
|
+
waitlisted: boolean;
|
|
17399
|
+
identifiers: {
|
|
17400
|
+
id: string;
|
|
17401
|
+
type: "email";
|
|
17402
|
+
value: string;
|
|
17403
|
+
isPrimary: boolean;
|
|
17404
|
+
verifiedAt: (string | null);
|
|
17405
|
+
valueCanonical: string;
|
|
17406
|
+
verificationStatus: ("unverified" | "verified" | "expired");
|
|
17407
|
+
}[];
|
|
17408
|
+
lockedUntil: (string | null);
|
|
17409
|
+
lastSignInAt: (string | null);
|
|
17410
|
+
requiresReset: boolean;
|
|
17411
|
+
publicMetadata: UsersUsersUnbanOutputPublicMetadata;
|
|
17412
|
+
unsafeMetadata: UsersUsersUnbanOutputPublicMetadata;
|
|
17413
|
+
privateMetadata: UsersUsersUnbanOutputPublicMetadata;
|
|
17414
|
+
emailChangeLockedUntil: (string | null);
|
|
17415
|
+
}
|
|
17416
|
+
interface UsersUsersUnbanOutputPublicMetadata {
|
|
17417
|
+
[k: string]: unknown;
|
|
17418
|
+
}
|
|
17419
|
+
interface UsersUsersUpdateInput {
|
|
17420
|
+
/**
|
|
17421
|
+
* The user's display name. Pass null to clear.
|
|
17422
|
+
*/
|
|
17423
|
+
name?: (string | null);
|
|
17424
|
+
/**
|
|
17425
|
+
* The user to update.
|
|
17426
|
+
*/
|
|
17427
|
+
userId: string;
|
|
17428
|
+
/**
|
|
17429
|
+
* URL of the user's avatar image. Pass null to clear.
|
|
17430
|
+
*/
|
|
17431
|
+
imageUrl?: (string | null);
|
|
17432
|
+
/**
|
|
17433
|
+
* Whether the user is still a waitlist signup.
|
|
17434
|
+
*/
|
|
17435
|
+
waitlisted?: boolean;
|
|
17436
|
+
/**
|
|
17437
|
+
* ISO-8601 timestamp of a temporary, self-healing lockout — the failed-attempt ceiling sets it and it expires on its own. Pass null to unlock the account immediately (audited as `user.unlocked`).
|
|
17438
|
+
*/
|
|
17439
|
+
lockedUntil?: (string | null);
|
|
17440
|
+
/**
|
|
17441
|
+
* Whether the user must reset their password before signing in.
|
|
17442
|
+
*/
|
|
17443
|
+
requiresReset?: boolean;
|
|
17444
|
+
/**
|
|
17445
|
+
* REPLACES the whole public metadata bag. Management-plane write, end-user read.
|
|
17446
|
+
*/
|
|
17447
|
+
publicMetadata?: {
|
|
17448
|
+
[k: string]: unknown;
|
|
17449
|
+
};
|
|
17450
|
+
unsafeMetadata?: UsersUsersUpdateInputPublicMetadata;
|
|
17451
|
+
privateMetadata?: UsersUsersUpdateInputPublicMetadata1;
|
|
17452
|
+
}
|
|
17453
|
+
/**
|
|
17454
|
+
* REPLACES the whole unsafe metadata bag. End-user writable in a later phase; never authoritative.
|
|
17455
|
+
*/
|
|
17456
|
+
interface UsersUsersUpdateInputPublicMetadata {
|
|
17457
|
+
[k: string]: unknown;
|
|
17458
|
+
}
|
|
17459
|
+
/**
|
|
17460
|
+
* REPLACES the whole private metadata bag. Management plane only.
|
|
17461
|
+
*/
|
|
17462
|
+
interface UsersUsersUpdateInputPublicMetadata1 {
|
|
17463
|
+
[k: string]: unknown;
|
|
17464
|
+
}
|
|
17465
|
+
interface UsersUsersUpdateOutput {
|
|
17466
|
+
id: string;
|
|
17467
|
+
name: (string | null);
|
|
17468
|
+
bannedAt: (string | null);
|
|
17469
|
+
erasedAt: (string | null);
|
|
17470
|
+
imageUrl: (string | null);
|
|
17471
|
+
testUser: boolean;
|
|
17472
|
+
createdAt: string;
|
|
17473
|
+
deletedAt: (string | null);
|
|
17474
|
+
productId: string;
|
|
17475
|
+
updatedAt: string;
|
|
17476
|
+
waitlisted: boolean;
|
|
17477
|
+
identifiers: {
|
|
17478
|
+
id: string;
|
|
17479
|
+
type: "email";
|
|
17480
|
+
value: string;
|
|
17481
|
+
isPrimary: boolean;
|
|
17482
|
+
verifiedAt: (string | null);
|
|
17483
|
+
valueCanonical: string;
|
|
17484
|
+
verificationStatus: ("unverified" | "verified" | "expired");
|
|
17485
|
+
}[];
|
|
17486
|
+
lockedUntil: (string | null);
|
|
17487
|
+
lastSignInAt: (string | null);
|
|
17488
|
+
requiresReset: boolean;
|
|
17489
|
+
publicMetadata: UsersUsersUpdateOutputPublicMetadata;
|
|
17490
|
+
unsafeMetadata: UsersUsersUpdateOutputPublicMetadata;
|
|
17491
|
+
privateMetadata: UsersUsersUpdateOutputPublicMetadata;
|
|
17492
|
+
emailChangeLockedUntil: (string | null);
|
|
17493
|
+
}
|
|
17494
|
+
interface UsersUsersUpdateOutputPublicMetadata {
|
|
17495
|
+
[k: string]: unknown;
|
|
17496
|
+
}
|
|
17497
|
+
interface UsersWaitlistEraseInput {
|
|
17498
|
+
/**
|
|
17499
|
+
* The waitlisted user whose entry and directory row to erase.
|
|
17500
|
+
*/
|
|
17501
|
+
userId: string;
|
|
17502
|
+
}
|
|
17503
|
+
interface UsersWaitlistEraseOutput {
|
|
17504
|
+
erased: boolean;
|
|
17505
|
+
}
|
|
17506
|
+
interface UsersWaitlistFunnelInput {
|
|
17507
|
+
}
|
|
17508
|
+
interface UsersWaitlistFunnelOutput {
|
|
17509
|
+
total: number;
|
|
17510
|
+
invited: number;
|
|
17511
|
+
pending: number;
|
|
17512
|
+
withdrawn: number;
|
|
17513
|
+
registered: number;
|
|
17514
|
+
unconfirmed: number;
|
|
17515
|
+
}
|
|
17516
|
+
interface UsersWaitlistImportInput {
|
|
17517
|
+
/**
|
|
17518
|
+
* The legacy signups to import, at most 500 per call — batch client-side beyond that.
|
|
17519
|
+
*
|
|
17520
|
+
* @minItems 1
|
|
17521
|
+
* @maxItems 500
|
|
17522
|
+
*/
|
|
17523
|
+
entries: [
|
|
17524
|
+
{
|
|
17525
|
+
/**
|
|
17526
|
+
* The signup's display name.
|
|
17527
|
+
*/
|
|
17528
|
+
name?: string;
|
|
17529
|
+
/**
|
|
17530
|
+
* The consent proof from the source system. REQUIRED: a waitlist entry with no evidence of consent is exactly what this import exists to avoid creating.
|
|
17531
|
+
*/
|
|
17532
|
+
consent: {
|
|
17533
|
+
/**
|
|
17534
|
+
* The IP the source system recorded, when it recorded one.
|
|
17535
|
+
*/
|
|
17536
|
+
ip?: (string | null);
|
|
17537
|
+
/**
|
|
17538
|
+
* Where the acceptance happened in the source system, e.g. `legacy-widget`.
|
|
17539
|
+
*/
|
|
17540
|
+
source: string;
|
|
17541
|
+
/**
|
|
17542
|
+
* The user agent the source system recorded, when it recorded one.
|
|
17543
|
+
*/
|
|
17544
|
+
userAgent?: (string | null);
|
|
17545
|
+
/**
|
|
17546
|
+
* When they accepted it, as recorded by the source system. Carried over verbatim — this is the evidence, and stamping it with the import time would destroy it.
|
|
17547
|
+
*/
|
|
17548
|
+
acceptedAt: string;
|
|
17549
|
+
/**
|
|
17550
|
+
* The privacy-policy version the signer accepted in the SOURCE system.
|
|
17551
|
+
*/
|
|
17552
|
+
policyVersion: string;
|
|
17553
|
+
};
|
|
17554
|
+
/**
|
|
17555
|
+
* Whether the address had proven itself reachable in the source system. Default true — a legacy list has already been mailed. Pass false to land the row as unconfirmed, where it is reported separately and is never invited.
|
|
17556
|
+
*/
|
|
17557
|
+
confirmed?: boolean;
|
|
17558
|
+
/**
|
|
17559
|
+
* The email address on the legacy list. Stored canonicalised plus raw for display.
|
|
17560
|
+
*/
|
|
17561
|
+
identifier: string;
|
|
17562
|
+
/**
|
|
17563
|
+
* Referrer / UTM attribution the source system recorded.
|
|
17564
|
+
*/
|
|
17565
|
+
attribution?: {
|
|
17566
|
+
/**
|
|
17567
|
+
* utm_term of the visit.
|
|
17568
|
+
*/
|
|
17569
|
+
utmTerm?: string;
|
|
17570
|
+
/**
|
|
17571
|
+
* The document referrer of the signup page.
|
|
17572
|
+
*/
|
|
17573
|
+
referrer?: string;
|
|
17574
|
+
/**
|
|
17575
|
+
* utm_medium of the visit.
|
|
17576
|
+
*/
|
|
17577
|
+
utmMedium?: string;
|
|
17578
|
+
/**
|
|
17579
|
+
* utm_source of the visit.
|
|
17580
|
+
*/
|
|
17581
|
+
utmSource?: string;
|
|
17582
|
+
/**
|
|
17583
|
+
* utm_content of the visit.
|
|
17584
|
+
*/
|
|
17585
|
+
utmContent?: string;
|
|
17586
|
+
/**
|
|
17587
|
+
* The URL the signup was submitted from.
|
|
17588
|
+
*/
|
|
17589
|
+
landingPage?: string;
|
|
17590
|
+
/**
|
|
17591
|
+
* utm_campaign of the visit.
|
|
17592
|
+
*/
|
|
17593
|
+
utmCampaign?: string;
|
|
17594
|
+
};
|
|
17595
|
+
/**
|
|
17596
|
+
* End-user-writable metadata to carry onto the created user.
|
|
17597
|
+
*/
|
|
17598
|
+
unsafeMetadata?: {
|
|
17599
|
+
[k: string]: unknown;
|
|
17600
|
+
};
|
|
17601
|
+
},
|
|
17602
|
+
...({
|
|
17603
|
+
/**
|
|
17604
|
+
* The signup's display name.
|
|
17605
|
+
*/
|
|
17606
|
+
name?: string;
|
|
17607
|
+
/**
|
|
17608
|
+
* The consent proof from the source system. REQUIRED: a waitlist entry with no evidence of consent is exactly what this import exists to avoid creating.
|
|
17609
|
+
*/
|
|
17610
|
+
consent: {
|
|
17611
|
+
/**
|
|
17612
|
+
* The IP the source system recorded, when it recorded one.
|
|
17613
|
+
*/
|
|
17614
|
+
ip?: (string | null);
|
|
17615
|
+
/**
|
|
17616
|
+
* Where the acceptance happened in the source system, e.g. `legacy-widget`.
|
|
17617
|
+
*/
|
|
17618
|
+
source: string;
|
|
17619
|
+
/**
|
|
17620
|
+
* The user agent the source system recorded, when it recorded one.
|
|
17621
|
+
*/
|
|
17622
|
+
userAgent?: (string | null);
|
|
17623
|
+
/**
|
|
17624
|
+
* When they accepted it, as recorded by the source system. Carried over verbatim — this is the evidence, and stamping it with the import time would destroy it.
|
|
17625
|
+
*/
|
|
17626
|
+
acceptedAt: string;
|
|
17627
|
+
/**
|
|
17628
|
+
* The privacy-policy version the signer accepted in the SOURCE system.
|
|
17629
|
+
*/
|
|
17630
|
+
policyVersion: string;
|
|
17631
|
+
};
|
|
17632
|
+
/**
|
|
17633
|
+
* Whether the address had proven itself reachable in the source system. Default true — a legacy list has already been mailed. Pass false to land the row as unconfirmed, where it is reported separately and is never invited.
|
|
17634
|
+
*/
|
|
17635
|
+
confirmed?: boolean;
|
|
17636
|
+
/**
|
|
17637
|
+
* The email address on the legacy list. Stored canonicalised plus raw for display.
|
|
17638
|
+
*/
|
|
17639
|
+
identifier: string;
|
|
17640
|
+
/**
|
|
17641
|
+
* Referrer / UTM attribution the source system recorded.
|
|
17642
|
+
*/
|
|
17643
|
+
attribution?: {
|
|
17644
|
+
/**
|
|
17645
|
+
* utm_term of the visit.
|
|
17646
|
+
*/
|
|
17647
|
+
utmTerm?: string;
|
|
17648
|
+
/**
|
|
17649
|
+
* The document referrer of the signup page.
|
|
17650
|
+
*/
|
|
17651
|
+
referrer?: string;
|
|
17652
|
+
/**
|
|
17653
|
+
* utm_medium of the visit.
|
|
17654
|
+
*/
|
|
17655
|
+
utmMedium?: string;
|
|
17656
|
+
/**
|
|
17657
|
+
* utm_source of the visit.
|
|
17658
|
+
*/
|
|
17659
|
+
utmSource?: string;
|
|
17660
|
+
/**
|
|
17661
|
+
* utm_content of the visit.
|
|
17662
|
+
*/
|
|
17663
|
+
utmContent?: string;
|
|
17664
|
+
/**
|
|
17665
|
+
* The URL the signup was submitted from.
|
|
17666
|
+
*/
|
|
17667
|
+
landingPage?: string;
|
|
17668
|
+
/**
|
|
17669
|
+
* utm_campaign of the visit.
|
|
17670
|
+
*/
|
|
17671
|
+
utmCampaign?: string;
|
|
17672
|
+
};
|
|
17673
|
+
/**
|
|
17674
|
+
* End-user-writable metadata to carry onto the created user.
|
|
17675
|
+
*/
|
|
17676
|
+
unsafeMetadata?: {
|
|
17677
|
+
[k: string]: unknown;
|
|
17678
|
+
};
|
|
17679
|
+
})[]
|
|
17680
|
+
];
|
|
17681
|
+
}
|
|
17682
|
+
interface UsersWaitlistImportOutput {
|
|
17683
|
+
failed: number;
|
|
17684
|
+
results: {
|
|
17685
|
+
row: number;
|
|
17686
|
+
reason: (string | null);
|
|
17687
|
+
status: ("imported" | "skipped" | "failed");
|
|
17688
|
+
userId: (string | null);
|
|
17689
|
+
}[];
|
|
17690
|
+
skipped: number;
|
|
17691
|
+
imported: number;
|
|
17692
|
+
requested: number;
|
|
17693
|
+
}
|
|
17694
|
+
interface UsersWaitlistInviteInput {
|
|
17695
|
+
/**
|
|
17696
|
+
* The waitlisted users to promote, up to 100 per call. Each gets the STANDARD invite email; accepting it is what creates their credential.
|
|
17697
|
+
*
|
|
17698
|
+
* @minItems 1
|
|
17699
|
+
* @maxItems 100
|
|
17700
|
+
*/
|
|
17701
|
+
userIds: [string, ...(string)[]];
|
|
17702
|
+
}
|
|
17703
|
+
interface UsersWaitlistInviteOutput {
|
|
17704
|
+
invited: number;
|
|
17705
|
+
results: {
|
|
17706
|
+
reason: (("suppressed" | "not_found" | "already_registered") | null);
|
|
17707
|
+
status: ("invited" | "skipped");
|
|
17708
|
+
userId: string;
|
|
17709
|
+
}[];
|
|
17710
|
+
skipped: number;
|
|
17711
|
+
}
|
|
17712
|
+
interface UsersWaitlistListInput {
|
|
17713
|
+
/**
|
|
17714
|
+
* Entries per page, 1-100. Default 25.
|
|
17715
|
+
*/
|
|
17716
|
+
limit?: number;
|
|
17717
|
+
/**
|
|
17718
|
+
* Opaque cursor from the previous page's `nextCursor`. Omit for the first page.
|
|
17719
|
+
*/
|
|
17720
|
+
cursor?: string;
|
|
17721
|
+
/**
|
|
17722
|
+
* Filter by funnel status: 'pending', 'invited', 'registered' or 'withdrawn'. Omit for all.
|
|
17723
|
+
*/
|
|
17724
|
+
status?: ("pending" | "invited" | "registered" | "withdrawn");
|
|
17725
|
+
/**
|
|
17726
|
+
* Double opt-in only: false returns entries whose address never confirmed. Omit for both.
|
|
17727
|
+
*/
|
|
17728
|
+
confirmed?: boolean;
|
|
17729
|
+
}
|
|
17730
|
+
interface UsersWaitlistListOutput {
|
|
17731
|
+
entries: {
|
|
17732
|
+
status: ("pending" | "invited" | "registered" | "withdrawn");
|
|
17733
|
+
userId: string;
|
|
17734
|
+
createdAt: string;
|
|
17735
|
+
invitedAt: (string | null);
|
|
17736
|
+
identifier: string;
|
|
17737
|
+
attribution: {
|
|
17738
|
+
[k: string]: unknown;
|
|
17739
|
+
};
|
|
17740
|
+
confirmedAt: (string | null);
|
|
17741
|
+
withdrawnAt: (string | null);
|
|
17742
|
+
consentProof: {
|
|
17743
|
+
[k: string]: unknown;
|
|
17744
|
+
};
|
|
17745
|
+
registeredAt: (string | null);
|
|
17746
|
+
inviteTokenId: (string | null);
|
|
17747
|
+
}[];
|
|
17748
|
+
nextCursor: (string | null);
|
|
17749
|
+
}
|
|
17750
|
+
interface UsersWebhooksCreateInput {
|
|
17751
|
+
/**
|
|
17752
|
+
* Where deliveries are POSTed. HTTPS only, no embedded credentials.
|
|
17753
|
+
*/
|
|
17754
|
+
url: string;
|
|
17755
|
+
/**
|
|
17756
|
+
* Which events to deliver. `user.created`, `user.updated` and `user.deleted` mirror the directory; `session.revoked` fires on sign-out, ban, erase and refresh-token reuse.
|
|
17757
|
+
*
|
|
17758
|
+
* @minItems 1
|
|
17759
|
+
*/
|
|
17760
|
+
events: [("user.created" | "user.updated" | "user.deleted" | "session.revoked"), ...(("user.created" | "user.updated" | "user.deleted" | "session.revoked"))[]];
|
|
17761
|
+
/**
|
|
17762
|
+
* A label only humans read — which system this endpoint feeds.
|
|
17763
|
+
*/
|
|
17764
|
+
description?: string;
|
|
17765
|
+
}
|
|
17766
|
+
interface UsersWebhooksCreateOutput {
|
|
17767
|
+
id: string;
|
|
17768
|
+
url: string;
|
|
17769
|
+
active: boolean;
|
|
17770
|
+
events: ("user.created" | "user.updated" | "user.deleted" | "session.revoked")[];
|
|
17771
|
+
secret: string;
|
|
17772
|
+
createdAt: string;
|
|
17773
|
+
updatedAt: string;
|
|
17774
|
+
description: (string | null);
|
|
17775
|
+
secretPrefix: string;
|
|
17776
|
+
}
|
|
17777
|
+
interface UsersWebhooksDeleteInput {
|
|
17778
|
+
/**
|
|
17779
|
+
* Id of the webhook endpoint.
|
|
17780
|
+
*/
|
|
17781
|
+
id: string;
|
|
17782
|
+
}
|
|
17783
|
+
interface UsersWebhooksDeleteOutput {
|
|
17784
|
+
id: string;
|
|
17785
|
+
deleted: true;
|
|
17786
|
+
}
|
|
17787
|
+
interface UsersWebhooksDeliveriesListInput {
|
|
17788
|
+
/**
|
|
17789
|
+
* Id of the webhook endpoint whose deliveries to list.
|
|
17790
|
+
*/
|
|
17791
|
+
id: string;
|
|
17792
|
+
limit?: number;
|
|
17793
|
+
}
|
|
17794
|
+
interface UsersWebhooksDeliveriesListOutput {
|
|
17795
|
+
deliveries: {
|
|
17796
|
+
id: string;
|
|
17797
|
+
status: ("pending" | "succeeded" | "failed");
|
|
17798
|
+
eventId: string;
|
|
17799
|
+
attempts: number;
|
|
17800
|
+
createdAt: string;
|
|
17801
|
+
eventType: ("user.created" | "user.updated" | "user.deleted" | "session.revoked");
|
|
17802
|
+
lastError: (string | null);
|
|
17803
|
+
webhookId: string;
|
|
17804
|
+
lastAttemptAt: (string | null);
|
|
17805
|
+
responseStatus: (number | null);
|
|
17806
|
+
}[];
|
|
17807
|
+
}
|
|
17808
|
+
interface UsersWebhooksGetInput {
|
|
17809
|
+
/**
|
|
17810
|
+
* Id of the webhook endpoint.
|
|
17811
|
+
*/
|
|
17812
|
+
id: string;
|
|
17813
|
+
}
|
|
17814
|
+
interface UsersWebhooksGetOutput {
|
|
17815
|
+
id: string;
|
|
17816
|
+
url: string;
|
|
17817
|
+
active: boolean;
|
|
17818
|
+
events: ("user.created" | "user.updated" | "user.deleted" | "session.revoked")[];
|
|
17819
|
+
createdAt: string;
|
|
17820
|
+
updatedAt: string;
|
|
17821
|
+
description: (string | null);
|
|
17822
|
+
secretPrefix: string;
|
|
17823
|
+
}
|
|
17824
|
+
interface UsersWebhooksListInput {
|
|
17825
|
+
}
|
|
17826
|
+
interface UsersWebhooksListOutput {
|
|
17827
|
+
webhooks: {
|
|
17828
|
+
id: string;
|
|
17829
|
+
url: string;
|
|
17830
|
+
active: boolean;
|
|
17831
|
+
events: ("user.created" | "user.updated" | "user.deleted" | "session.revoked")[];
|
|
17832
|
+
createdAt: string;
|
|
17833
|
+
updatedAt: string;
|
|
17834
|
+
description: (string | null);
|
|
17835
|
+
secretPrefix: string;
|
|
17836
|
+
}[];
|
|
17837
|
+
}
|
|
17838
|
+
interface UsersWebhooksRotateSecretInput {
|
|
17839
|
+
/**
|
|
17840
|
+
* Id of the webhook endpoint.
|
|
17841
|
+
*/
|
|
17842
|
+
id: string;
|
|
17843
|
+
}
|
|
17844
|
+
interface UsersWebhooksRotateSecretOutput {
|
|
17845
|
+
id: string;
|
|
17846
|
+
url: string;
|
|
17847
|
+
active: boolean;
|
|
17848
|
+
events: ("user.created" | "user.updated" | "user.deleted" | "session.revoked")[];
|
|
17849
|
+
secret: string;
|
|
17850
|
+
createdAt: string;
|
|
17851
|
+
updatedAt: string;
|
|
17852
|
+
description: (string | null);
|
|
17853
|
+
secretPrefix: string;
|
|
17854
|
+
}
|
|
17855
|
+
interface UsersWebhooksUpdateInput {
|
|
17856
|
+
/**
|
|
17857
|
+
* Id of the webhook endpoint.
|
|
17858
|
+
*/
|
|
17859
|
+
id: string;
|
|
17860
|
+
/**
|
|
17861
|
+
* Where deliveries are POSTed. HTTPS only, no embedded credentials.
|
|
17862
|
+
*/
|
|
17863
|
+
url?: string;
|
|
17864
|
+
/**
|
|
17865
|
+
* false pauses delivery without losing the endpoint or its secret.
|
|
17866
|
+
*/
|
|
17867
|
+
active?: boolean;
|
|
17868
|
+
/**
|
|
17869
|
+
* Which events to deliver. `user.created`, `user.updated` and `user.deleted` mirror the directory; `session.revoked` fires on sign-out, ban, erase and refresh-token reuse.
|
|
17870
|
+
*
|
|
17871
|
+
* @minItems 1
|
|
17872
|
+
*/
|
|
17873
|
+
events?: [("user.created" | "user.updated" | "user.deleted" | "session.revoked"), ...(("user.created" | "user.updated" | "user.deleted" | "session.revoked"))[]];
|
|
17874
|
+
description?: (string | null);
|
|
17875
|
+
}
|
|
17876
|
+
interface UsersWebhooksUpdateOutput {
|
|
17877
|
+
id: string;
|
|
17878
|
+
url: string;
|
|
17879
|
+
active: boolean;
|
|
17880
|
+
events: ("user.created" | "user.updated" | "user.deleted" | "session.revoked")[];
|
|
17881
|
+
createdAt: string;
|
|
17882
|
+
updatedAt: string;
|
|
17883
|
+
description: (string | null);
|
|
17884
|
+
secretPrefix: string;
|
|
17885
|
+
}
|
|
17886
|
+
interface WaitlistConfigGetInput {
|
|
17887
|
+
}
|
|
17888
|
+
type WaitlistConfigGetOutput = ({
|
|
17889
|
+
createdAt: string;
|
|
17890
|
+
policyUrl: (string | null);
|
|
17891
|
+
productId: string;
|
|
17892
|
+
updatedAt: string;
|
|
17893
|
+
senderName: (string | null);
|
|
17894
|
+
consentText: string;
|
|
17895
|
+
policyLabel: (string | null);
|
|
17896
|
+
siteBaseUrl: (string | null);
|
|
17897
|
+
senderDomain: (string | null);
|
|
17898
|
+
inviteSubject: (string | null);
|
|
17899
|
+
policyVersion: string;
|
|
17900
|
+
inviteTemplate: (string | null);
|
|
17901
|
+
} | null);
|
|
17902
|
+
interface WaitlistConfigUpsertInput {
|
|
17903
|
+
/**
|
|
17904
|
+
* Policy link URL (http/https/mailto). Rendered as a structured link in the form. Null to clear.
|
|
17905
|
+
*/
|
|
17906
|
+
policyUrl?: (string | null);
|
|
17907
|
+
/**
|
|
17908
|
+
* Controller display name shown as the invite From name and in the default email body (A7§64 controller identity). Stored as-is. Null to clear (falls back to a generic sender name).
|
|
17909
|
+
*/
|
|
17910
|
+
senderName?: (string | null);
|
|
17911
|
+
/**
|
|
17912
|
+
* Plain-text consent statement shown at signup. May contain a {policy} placeholder marking the policy link. Stored as-is (no HTML sanitization).
|
|
17913
|
+
*/
|
|
17914
|
+
consentText: string;
|
|
17915
|
+
/**
|
|
17916
|
+
* Visible text for the policy link. Falls back to the URL itself if absent.
|
|
17917
|
+
*/
|
|
17918
|
+
policyLabel?: (string | null);
|
|
17919
|
+
/**
|
|
17920
|
+
* Per-product public base URL of the tenant site; invite (/signup) and opt-out (/withdraw) links are built from it. http/https only, path allowed, trailing slash stripped. Stored as-is (DP-013); not content-verified. Null to clear.
|
|
17921
|
+
*/
|
|
17922
|
+
siteBaseUrl?: (string | null);
|
|
17923
|
+
/**
|
|
17924
|
+
* Sender domain for invite emails (bare hostname). Verification happens at send time, not here. Null to clear.
|
|
17925
|
+
*/
|
|
17926
|
+
senderDomain?: (string | null);
|
|
17927
|
+
/**
|
|
17928
|
+
* Invite email subject line. Plain text, stored as-is; CR/LF stripped at send time. Null to clear (falls back to a default subject).
|
|
17929
|
+
*/
|
|
17930
|
+
inviteSubject?: (string | null);
|
|
17931
|
+
/**
|
|
17932
|
+
* Policy version label, controller-owned free string. Stored as-is, not validated for monotonicity.
|
|
17933
|
+
*/
|
|
17934
|
+
policyVersion: string;
|
|
17935
|
+
/**
|
|
17936
|
+
* Invite email template ({{vars}}). Stored as-is; rendered/validated at send time. Null to clear.
|
|
17937
|
+
*/
|
|
17938
|
+
inviteTemplate?: (string | null);
|
|
17939
|
+
}
|
|
17940
|
+
interface WaitlistConfigUpsertOutput {
|
|
17941
|
+
createdAt: string;
|
|
17942
|
+
policyUrl: (string | null);
|
|
17943
|
+
productId: string;
|
|
17944
|
+
updatedAt: string;
|
|
17945
|
+
senderName: (string | null);
|
|
17946
|
+
consentText: string;
|
|
17947
|
+
policyLabel: (string | null);
|
|
17948
|
+
siteBaseUrl: (string | null);
|
|
17949
|
+
senderDomain: (string | null);
|
|
17950
|
+
inviteSubject: (string | null);
|
|
17951
|
+
policyVersion: string;
|
|
17952
|
+
inviteTemplate: (string | null);
|
|
17953
|
+
}
|
|
17954
|
+
interface WaitlistEmbedGetInput {
|
|
17955
|
+
}
|
|
17956
|
+
interface WaitlistEmbedGetOutput {
|
|
17957
|
+
product_id: string;
|
|
17958
|
+
script_tag: string;
|
|
17959
|
+
public_edge_url: string;
|
|
17960
|
+
}
|
|
17961
|
+
interface WaitlistInvitesSendInput {
|
|
17962
|
+
/**
|
|
17963
|
+
* Resend even when a live invite token already exists (mints a fresh token).
|
|
17964
|
+
*/
|
|
17965
|
+
force?: boolean;
|
|
17966
|
+
/**
|
|
17967
|
+
* Explicit recipient emails (e.g. from waitlist_signups_list). Combined with filter if both given.
|
|
17968
|
+
*/
|
|
17969
|
+
emails?: string[];
|
|
17970
|
+
/**
|
|
17971
|
+
* Selection filter over signups; resolved server-side with pagination.
|
|
17972
|
+
*/
|
|
17973
|
+
filter?: {
|
|
17974
|
+
/**
|
|
17975
|
+
* Prefix match on email (case-insensitive).
|
|
17976
|
+
*/
|
|
17977
|
+
q?: string;
|
|
17978
|
+
/**
|
|
17979
|
+
* Select signups by status (single value or array).
|
|
17980
|
+
*/
|
|
17981
|
+
status?: (("pending" | "invited" | "registered") | ("pending" | "invited" | "registered")[]);
|
|
17982
|
+
};
|
|
17983
|
+
}
|
|
17984
|
+
interface WaitlistInvitesSendOutput {
|
|
15229
17985
|
sent: {
|
|
15230
17986
|
email: string;
|
|
15231
17987
|
emailId: string;
|
|
@@ -15387,9 +18143,6 @@ interface GeneratedClient {
|
|
|
15387
18143
|
restore: {
|
|
15388
18144
|
status(input: BrainRestoreStatusInput): Promise<BrainRestoreStatusOutput>;
|
|
15389
18145
|
};
|
|
15390
|
-
usage: {
|
|
15391
|
-
report(input: BrainUsageReportInput): Promise<BrainUsageReportOutput>;
|
|
15392
|
-
};
|
|
15393
18146
|
};
|
|
15394
18147
|
consent: {
|
|
15395
18148
|
'config-cookie-domain': {
|
|
@@ -15781,6 +18534,7 @@ interface GeneratedClient {
|
|
|
15781
18534
|
'list-roles'(input: OrganizationProductListRolesInput): Promise<OrganizationProductListRolesOutput>;
|
|
15782
18535
|
'revoke-invitation'(input: OrganizationProductRevokeInvitationInput): Promise<OrganizationProductRevokeInvitationOutput>;
|
|
15783
18536
|
select(input: OrganizationProductSelectInput): Promise<OrganizationProductSelectOutput>;
|
|
18537
|
+
update(input: OrganizationProductUpdateInput): Promise<OrganizationProductUpdateOutput>;
|
|
15784
18538
|
};
|
|
15785
18539
|
roles: {
|
|
15786
18540
|
create(input: OrganizationRolesCreateInput): Promise<OrganizationRolesCreateOutput>;
|
|
@@ -15789,6 +18543,37 @@ interface GeneratedClient {
|
|
|
15789
18543
|
list(input: OrganizationRolesListInput): Promise<OrganizationRolesListOutput>;
|
|
15790
18544
|
update(input: OrganizationRolesUpdateInput): Promise<OrganizationRolesUpdateOutput>;
|
|
15791
18545
|
};
|
|
18546
|
+
'security-mfa': {
|
|
18547
|
+
enable(input: OrganizationSecurityMfaEnableInput): Promise<OrganizationSecurityMfaEnableOutput>;
|
|
18548
|
+
};
|
|
18549
|
+
};
|
|
18550
|
+
playground: {
|
|
18551
|
+
analytics: {
|
|
18552
|
+
overview(input: PlaygroundAnalyticsOverviewInput): Promise<PlaygroundAnalyticsOverviewOutput>;
|
|
18553
|
+
};
|
|
18554
|
+
billing: {
|
|
18555
|
+
entitlements(input: PlaygroundBillingEntitlementsInput): Promise<PlaygroundBillingEntitlementsOutput>;
|
|
18556
|
+
'record-usage'(input: PlaygroundBillingRecordUsageInput): Promise<PlaygroundBillingRecordUsageOutput>;
|
|
18557
|
+
};
|
|
18558
|
+
clickup: {
|
|
18559
|
+
'create-task'(input: PlaygroundClickupCreateTaskInput): Promise<PlaygroundClickupCreateTaskOutput>;
|
|
18560
|
+
'get-last-webhook'(input: PlaygroundClickupGetLastWebhookInput): Promise<PlaygroundClickupGetLastWebhookOutput>;
|
|
18561
|
+
'get-overview'(input: PlaygroundClickupGetOverviewInput): Promise<PlaygroundClickupGetOverviewOutput>;
|
|
18562
|
+
};
|
|
18563
|
+
gdrive: {
|
|
18564
|
+
'get-last-change'(input: PlaygroundGdriveGetLastChangeInput): Promise<PlaygroundGdriveGetLastChangeOutput>;
|
|
18565
|
+
'read-file'(input: PlaygroundGdriveReadFileInput): Promise<PlaygroundGdriveReadFileOutput>;
|
|
18566
|
+
};
|
|
18567
|
+
googleads: {
|
|
18568
|
+
'read-customer'(input: PlaygroundGoogleadsReadCustomerInput): Promise<PlaygroundGoogleadsReadCustomerOutput>;
|
|
18569
|
+
};
|
|
18570
|
+
lifecycle: {
|
|
18571
|
+
'get-state'(input: PlaygroundLifecycleGetStateInput): Promise<PlaygroundLifecycleGetStateOutput>;
|
|
18572
|
+
'list-events'(input: PlaygroundLifecycleListEventsInput): Promise<PlaygroundLifecycleListEventsOutput>;
|
|
18573
|
+
};
|
|
18574
|
+
webhook: {
|
|
18575
|
+
'get-last'(input: PlaygroundWebhookGetLastInput): Promise<PlaygroundWebhookGetLastOutput>;
|
|
18576
|
+
};
|
|
15792
18577
|
};
|
|
15793
18578
|
realtime: {
|
|
15794
18579
|
apikey: {
|
|
@@ -15929,6 +18714,80 @@ interface GeneratedClient {
|
|
|
15929
18714
|
get(input: TrackingSnippetsGetInput): Promise<TrackingSnippetsGetOutput>;
|
|
15930
18715
|
};
|
|
15931
18716
|
};
|
|
18717
|
+
users: {
|
|
18718
|
+
apikeys: {
|
|
18719
|
+
create(input: UsersApikeysCreateInput): Promise<UsersApikeysCreateOutput>;
|
|
18720
|
+
list(input: UsersApikeysListInput): Promise<UsersApikeysListOutput>;
|
|
18721
|
+
revoke(input: UsersApikeysRevokeInput): Promise<UsersApikeysRevokeOutput>;
|
|
18722
|
+
};
|
|
18723
|
+
audit: {
|
|
18724
|
+
list(input: UsersAuditListInput): Promise<UsersAuditListOutput>;
|
|
18725
|
+
};
|
|
18726
|
+
config: {
|
|
18727
|
+
get(input: UsersConfigGetInput): Promise<UsersConfigGetOutput>;
|
|
18728
|
+
upsert(input: UsersConfigUpsertInput): Promise<UsersConfigUpsertOutput>;
|
|
18729
|
+
};
|
|
18730
|
+
factors: {
|
|
18731
|
+
list(input: UsersFactorsListInput): Promise<UsersFactorsListOutput>;
|
|
18732
|
+
reset(input: UsersFactorsResetInput): Promise<UsersFactorsResetOutput>;
|
|
18733
|
+
};
|
|
18734
|
+
keys: {
|
|
18735
|
+
list(input: UsersKeysListInput): Promise<UsersKeysListOutput>;
|
|
18736
|
+
revoke(input: UsersKeysRevokeInput): Promise<UsersKeysRevokeOutput>;
|
|
18737
|
+
rotate(input: UsersKeysRotateInput): Promise<UsersKeysRotateOutput>;
|
|
18738
|
+
};
|
|
18739
|
+
'ops-retention': {
|
|
18740
|
+
get(input: UsersOpsRetentionGetInput): Promise<UsersOpsRetentionGetOutput>;
|
|
18741
|
+
};
|
|
18742
|
+
'ops-slo': {
|
|
18743
|
+
get(input: UsersOpsSloGetInput): Promise<UsersOpsSloGetOutput>;
|
|
18744
|
+
};
|
|
18745
|
+
sessions: {
|
|
18746
|
+
get(input: UsersSessionsGetInput): Promise<UsersSessionsGetOutput>;
|
|
18747
|
+
impersonate(input: UsersSessionsImpersonateInput): Promise<UsersSessionsImpersonateOutput>;
|
|
18748
|
+
list(input: UsersSessionsListInput): Promise<UsersSessionsListOutput>;
|
|
18749
|
+
revoke(input: UsersSessionsRevokeInput): Promise<UsersSessionsRevokeOutput>;
|
|
18750
|
+
};
|
|
18751
|
+
stats: {
|
|
18752
|
+
get(input: UsersStatsGetInput): Promise<UsersStatsGetOutput>;
|
|
18753
|
+
};
|
|
18754
|
+
users: {
|
|
18755
|
+
ban(input: UsersUsersBanInput): Promise<UsersUsersBanOutput>;
|
|
18756
|
+
create(input: UsersUsersCreateInput): Promise<UsersUsersCreateOutput>;
|
|
18757
|
+
delete(input: UsersUsersDeleteInput): Promise<UsersUsersDeleteOutput>;
|
|
18758
|
+
erase(input: UsersUsersEraseInput): Promise<UsersUsersEraseOutput>;
|
|
18759
|
+
export(input: UsersUsersExportInput): Promise<UsersUsersExportOutput>;
|
|
18760
|
+
get(input: UsersUsersGetInput): Promise<UsersUsersGetOutput>;
|
|
18761
|
+
import(input: UsersUsersImportInput): Promise<UsersUsersImportOutput>;
|
|
18762
|
+
invite(input: UsersUsersInviteInput): Promise<UsersUsersInviteOutput>;
|
|
18763
|
+
list(input: UsersUsersListInput): Promise<UsersUsersListOutput>;
|
|
18764
|
+
unban(input: UsersUsersUnbanInput): Promise<UsersUsersUnbanOutput>;
|
|
18765
|
+
update(input: UsersUsersUpdateInput): Promise<UsersUsersUpdateOutput>;
|
|
18766
|
+
};
|
|
18767
|
+
'users-set-primary': {
|
|
18768
|
+
identifier(input: UsersUsersSetPrimaryIdentifierInput): Promise<UsersUsersSetPrimaryIdentifierOutput>;
|
|
18769
|
+
};
|
|
18770
|
+
waitlist: {
|
|
18771
|
+
erase(input: UsersWaitlistEraseInput): Promise<UsersWaitlistEraseOutput>;
|
|
18772
|
+
funnel(input: UsersWaitlistFunnelInput): Promise<UsersWaitlistFunnelOutput>;
|
|
18773
|
+
import(input: UsersWaitlistImportInput): Promise<UsersWaitlistImportOutput>;
|
|
18774
|
+
invite(input: UsersWaitlistInviteInput): Promise<UsersWaitlistInviteOutput>;
|
|
18775
|
+
list(input: UsersWaitlistListInput): Promise<UsersWaitlistListOutput>;
|
|
18776
|
+
};
|
|
18777
|
+
webhooks: {
|
|
18778
|
+
create(input: UsersWebhooksCreateInput): Promise<UsersWebhooksCreateOutput>;
|
|
18779
|
+
delete(input: UsersWebhooksDeleteInput): Promise<UsersWebhooksDeleteOutput>;
|
|
18780
|
+
get(input: UsersWebhooksGetInput): Promise<UsersWebhooksGetOutput>;
|
|
18781
|
+
list(input: UsersWebhooksListInput): Promise<UsersWebhooksListOutput>;
|
|
18782
|
+
update(input: UsersWebhooksUpdateInput): Promise<UsersWebhooksUpdateOutput>;
|
|
18783
|
+
};
|
|
18784
|
+
'webhooks-deliveries': {
|
|
18785
|
+
list(input: UsersWebhooksDeliveriesListInput): Promise<UsersWebhooksDeliveriesListOutput>;
|
|
18786
|
+
};
|
|
18787
|
+
'webhooks-rotate': {
|
|
18788
|
+
secret(input: UsersWebhooksRotateSecretInput): Promise<UsersWebhooksRotateSecretOutput>;
|
|
18789
|
+
};
|
|
18790
|
+
};
|
|
15932
18791
|
waitlist: {
|
|
15933
18792
|
config: {
|
|
15934
18793
|
get(input: WaitlistConfigGetInput): Promise<WaitlistConfigGetOutput>;
|
|
@@ -15948,4 +18807,4 @@ interface GeneratedClient {
|
|
|
15948
18807
|
};
|
|
15949
18808
|
}
|
|
15950
18809
|
|
|
15951
|
-
export type { BrainGdriveConnectionsListInput as $, AnalyticsQueryRunInput as A, BrainBackupCreateInput as B, BrainConnectorReposListInput as C, BrainConnectorReposListOutput as D, BrainDaemonBatchStatusInput as E, BrainDaemonBatchStatusOutput as F, GeneratedClient as G, BrainDaemonCreateInput as H, BrainDaemonCreateOutput as I, BrainDaemonGetInput as J, BrainDaemonGetOutput as K, BrainDaemonReingestInput as L, BrainDaemonReingestOutput as M, BrainDaemonRemoveInput as N, BrainDaemonRemoveOutput as O, BrainDaemonRunItemsInput as P, BrainDaemonRunItemsOutput as Q, BrainDaemonRunInput as R, BrainDaemonRunOutput as S, BrainDaemonRunsInput as T, BrainDaemonRunsOutput as U, BrainDaemonStatusInput as V, BrainDaemonStatusOutput as W, BrainDaemonUpdateInput as X, BrainDaemonUpdateOutput as Y, BrainDaemonsListInput as Z, BrainDaemonsListOutput as _, AnalyticsQueryRunOutput as a, DeploymentAlertDeleteInput as a$, BrainGdriveConnectionsListOutput as a0, BrainKnowledgeEntityMemoriesInput as a1, BrainKnowledgeEntityMemoriesOutput as a2, BrainKnowledgeGraphInput as a3, BrainKnowledgeGraphOutput as a4, BrainKnowledgeNeighborhoodInput as a5, BrainKnowledgeNeighborhoodOutput as a6, BrainKnowledgeRelationsInput as a7, BrainKnowledgeRelationsOutput as a8, BrainKnowledgeSearchInput as a9, ConsentConfigFloatingIconUpsertOutput as aA, ConsentConfigThemeUpsertInput as aB, ConsentConfigThemeUpsertOutput as aC, ConsentDashboardConfigGetInput as aD, ConsentDashboardConfigGetOutput as aE, ConsentDashboardDecisionsListInput as aF, ConsentDashboardDecisionsListOutput as aG, ConsentDashboardEmbedSnippetGetInput as aH, ConsentDashboardEmbedSnippetGetOutput as aI, ConsentDashboardStatsGetInput as aJ, ConsentDashboardStatsGetOutput as aK, ConsentEmbedGetInput as aL, ConsentEmbedGetOutput as aM, ConsentProvidersCreateInput as aN, ConsentProvidersCreateOutput as aO, ConsentProvidersDeleteInput as aP, ConsentProvidersDeleteOutput as aQ, ConsentProvidersListInput as aR, ConsentProvidersListOutput as aS, ConsentProvidersUpdateInput as aT, ConsentProvidersUpdateOutput as aU, ConsentRecordsExportInput as aV, ConsentRecordsExportOutput as aW, ConsentStatsGetInput as aX, ConsentStatsGetOutput as aY, DeploymentAlertCreateInput as aZ, DeploymentAlertCreateOutput as a_, BrainKnowledgeSearchOutput as aa, BrainMemoryAddInput as ab, BrainMemoryAddOutput as ac, BrainMemoryDeleteInput as ad, BrainMemoryDeleteOutput as ae, BrainMemoryGetInput as af, BrainMemoryGetOutput as ag, BrainMemoryListInput as ah, BrainMemoryListOutput as ai, BrainMemorySearchInput as aj, BrainMemorySearchOutput as ak, BrainMemoryStatsInput as al, BrainMemoryStatsOutput as am, BrainMemoryUpdateInput as an, BrainMemoryUpdateOutput as ao, BrainProductSharedMemoryResetInput as ap, BrainProductSharedMemoryResetOutput as aq, BrainRestoreStatusInput as ar, BrainRestoreStatusOutput as as, BrainUsageReportInput as at, BrainUsageReportOutput as au, ConsentConfigCookieDomainUpsertInput as av, ConsentConfigCookieDomainUpsertOutput as aw, ConsentConfigCustomizationUpsertInput as ax, ConsentConfigCustomizationUpsertOutput as ay, ConsentConfigFloatingIconUpsertInput as az, BrainBackupCreateOutput as b, DeploymentDomainGetInput as b$, DeploymentAlertDeleteOutput as b0, DeploymentAlertEventsListInput as b1, DeploymentAlertEventsListOutput as b2, DeploymentAlertListInput as b3, DeploymentAlertListOutput as b4, DeploymentAlertUpdateInput as b5, DeploymentAlertUpdateOutput as b6, DeploymentAnalyticsQueryInput as b7, DeploymentAnalyticsQueryOutput as b8, DeploymentAuditListInput as b9, DeploymentCloudSqlInstanceBackupListOutput as bA, DeploymentCloudSqlInstanceBackupInput as bB, DeploymentCloudSqlInstanceBackupOutput as bC, DeploymentCloudSqlInstanceCreateInput as bD, DeploymentCloudSqlInstanceCreateOutput as bE, DeploymentCloudSqlInstanceDeleteInput as bF, DeploymentCloudSqlInstanceDeleteOutput as bG, DeploymentCloudSqlInstanceGetInput as bH, DeploymentCloudSqlInstanceGetOutput as bI, DeploymentCloudSqlInstanceListInput as bJ, DeploymentCloudSqlInstanceListOutput as bK, DeploymentCloudSqlInstanceResizeInput as bL, DeploymentCloudSqlInstanceResizeOutput as bM, DeploymentCloudSqlInstanceRestoreInput as bN, DeploymentCloudSqlInstanceRestoreOutput as bO, DeploymentCloudSqlLogsInput as bP, DeploymentCloudSqlLogsOutput as bQ, DeploymentDeploymentCancelInput as bR, DeploymentDeploymentCancelOutput as bS, DeploymentDeploymentGetInput as bT, DeploymentDeploymentGetOutput as bU, DeploymentDeploymentListInput as bV, DeploymentDeploymentListOutput as bW, DeploymentDomainAddInput as bX, DeploymentDomainAddOutput as bY, DeploymentDomainAllowedListInput as bZ, DeploymentDomainAllowedListOutput as b_, DeploymentAuditListOutput as ba, DeploymentBuildGetInput as bb, DeploymentBuildGetOutput as bc, DeploymentBuildListInput as bd, DeploymentBuildListOutput as be, DeploymentBuildLogsInput as bf, DeploymentBuildLogsOutput as bg, DeploymentCanvasGetInput as bh, DeploymentCanvasGetOutput as bi, DeploymentCanvasMoveNodeInput as bj, DeploymentCanvasMoveNodeOutput as bk, DeploymentCloudSqlBackfillLogFlagsInput as bl, DeploymentCloudSqlBackfillLogFlagsOutput as bm, DeploymentCloudSqlDatabaseAttachInput as bn, DeploymentCloudSqlDatabaseAttachOutput as bo, DeploymentCloudSqlDatabaseCreateInput as bp, DeploymentCloudSqlDatabaseCreateOutput as bq, DeploymentCloudSqlDatabaseDeleteInput as br, DeploymentCloudSqlDatabaseDeleteOutput as bs, DeploymentCloudSqlDatabaseDetachInput as bt, DeploymentCloudSqlDatabaseDetachOutput as bu, DeploymentCloudSqlDatabaseGetInput as bv, DeploymentCloudSqlDatabaseGetOutput as bw, DeploymentCloudSqlDatabaseListInput as bx, DeploymentCloudSqlDatabaseListOutput as by, DeploymentCloudSqlInstanceBackupListInput as bz, BrainBackupRestoreInput as c, DeploymentManagedServiceTypesInput as c$, DeploymentDomainGetOutput as c0, DeploymentDomainListByServiceInput as c1, DeploymentDomainListByServiceOutput as c2, DeploymentDomainListInput as c3, DeploymentDomainListOutput as c4, DeploymentDomainRedirectWwwInput as c5, DeploymentDomainRedirectWwwOutput as c6, DeploymentDomainRemoveInput as c7, DeploymentDomainRemoveOutput as c8, DeploymentDomainRoutesAddInput as c9, DeploymentEventsListByServiceOutput as cA, DeploymentManagedServiceBackupListInput as cB, DeploymentManagedServiceBackupListOutput as cC, DeploymentManagedServiceBackupInput as cD, DeploymentManagedServiceBackupOutput as cE, DeploymentManagedServiceConnectInfoInput as cF, DeploymentManagedServiceConnectInfoOutput as cG, DeploymentManagedServiceDeleteInput as cH, DeploymentManagedServiceDeleteOutput as cI, DeploymentManagedServiceGetInput as cJ, DeploymentManagedServiceGetOutput as cK, DeploymentManagedServiceListInput as cL, DeploymentManagedServiceListOutput as cM, DeploymentManagedServiceLogsInput as cN, DeploymentManagedServiceLogsOutput as cO, DeploymentManagedServiceProvisionInput as cP, DeploymentManagedServiceProvisionOutput as cQ, DeploymentManagedServiceReconcileInput as cR, DeploymentManagedServiceReconcileOutput as cS, DeploymentManagedServiceResizeInput as cT, DeploymentManagedServiceResizeOutput as cU, DeploymentManagedServiceRestoreInput as cV, DeploymentManagedServiceRestoreOutput as cW, DeploymentManagedServiceStartInput as cX, DeploymentManagedServiceStartOutput as cY, DeploymentManagedServiceStopInput as cZ, DeploymentManagedServiceStopOutput as c_, DeploymentDomainRoutesAddOutput as ca, DeploymentDomainRoutesListInput as cb, DeploymentDomainRoutesListOutput as cc, DeploymentDomainRoutesRemoveInput as cd, DeploymentDomainRoutesRemoveOutput as ce, DeploymentDomainRoutesUpdateInput as cf, DeploymentDomainRoutesUpdateOutput as cg, DeploymentDomainVerifyInput as ch, DeploymentDomainVerifyOutput as ci, DeploymentEnvironmentCreateInput as cj, DeploymentEnvironmentCreateOutput as ck, DeploymentEnvironmentDeleteInput as cl, DeploymentEnvironmentDeleteOutput as cm, DeploymentEnvironmentForkInput as cn, DeploymentEnvironmentForkOutput as co, DeploymentEnvironmentGetInput as cp, DeploymentEnvironmentGetOutput as cq, DeploymentEnvironmentListInput as cr, DeploymentEnvironmentListOutput as cs, DeploymentEnvironmentReconcileInput as ct, DeploymentEnvironmentReconcileOutput as cu, DeploymentEnvironmentUpdateInput as cv, DeploymentEnvironmentUpdateOutput as cw, DeploymentEventsListByEnvironmentInput as cx, DeploymentEventsListByEnvironmentOutput as cy, DeploymentEventsListByServiceInput as cz, BrainBackupRestoreOutput as d, DeploymentVariableUnsetProductOutput as d$, DeploymentManagedServiceTypesOutput as d0, DeploymentMetricsGetInput as d1, DeploymentMetricsGetOutput as d2, DeploymentPreviewEnvironmentCreateInput as d3, DeploymentPreviewEnvironmentCreateOutput as d4, DeploymentPreviewEnvironmentDeleteInput as d5, DeploymentPreviewEnvironmentDeleteOutput as d6, DeploymentPreviewEnvironmentListInput as d7, DeploymentPreviewEnvironmentListOutput as d8, DeploymentPreviewPolicyGetInput as d9, DeploymentServiceWakeInput as dA, DeploymentServiceWakeOutput as dB, DeploymentSshCommandInput as dC, DeploymentSshCommandOutput as dD, DeploymentSshKeyDeleteInput as dE, DeploymentSshKeyDeleteOutput as dF, DeploymentSshKeyListInput as dG, DeploymentSshKeyListOutput as dH, DeploymentSshKeyRegisterInput as dI, DeploymentSshKeyRegisterOutput as dJ, DeploymentVariableListEnvInput as dK, DeploymentVariableListEnvOutput as dL, DeploymentVariableListProductInput as dM, DeploymentVariableListProductOutput as dN, DeploymentVariableListInput as dO, DeploymentVariableListOutput as dP, DeploymentVariableSetEnvInput as dQ, DeploymentVariableSetEnvOutput as dR, DeploymentVariableSetInput as dS, DeploymentVariableSetOutput as dT, DeploymentVariableSetProductInput as dU, DeploymentVariableSetProductOutput as dV, DeploymentVariableUnsetEnvInput as dW, DeploymentVariableUnsetEnvOutput as dX, DeploymentVariableUnsetInput as dY, DeploymentVariableUnsetOutput as dZ, DeploymentVariableUnsetProductInput as d_, DeploymentPreviewPolicyGetOutput as da, DeploymentPreviewPolicySetInput as db, DeploymentPreviewPolicySetOutput as dc, DeploymentServiceCreateInput as dd, DeploymentServiceCreateOutput as de, DeploymentServiceDeleteInput as df, DeploymentServiceDeleteOutput as dg, DeploymentServiceExecInput as dh, DeploymentServiceExecOutput as di, DeploymentServiceGetInput as dj, DeploymentServiceGetOutput as dk, DeploymentServiceListInput as dl, DeploymentServiceListOutput as dm, DeploymentServiceLogsInput as dn, DeploymentServiceLogsOutput as dp, DeploymentServiceRedeployInput as dq, DeploymentServiceRedeployOutput as dr, DeploymentServiceRestartInput as ds, DeploymentServiceRestartOutput as dt, DeploymentServiceRollbackInput as du, DeploymentServiceRollbackOutput as dv, DeploymentServiceScaleInput as dw, DeploymentServiceScaleOutput as dx, DeploymentServiceUpdateInput as dy, DeploymentServiceUpdateOutput as dz, BrainBackupStatusInput as e, MailDomainCreateOutput as e$, DeploymentVcsBranchListInput as e0, DeploymentVcsBranchListOutput as e1, DeploymentVcsConnectionListInput as e2, DeploymentVcsConnectionListOutput as e3, DeploymentVcsRepoListInput as e4, DeploymentVcsRepoListOutput as e5, DeploymentVolumeCreateInput as e6, DeploymentVolumeCreateOutput as e7, DeploymentVolumeDeleteInput as e8, DeploymentVolumeDeleteOutput as e9, MailBroadcastCreateInput as eA, MailBroadcastCreateOutput as eB, MailBroadcastDeleteInput as eC, MailBroadcastDeleteOutput as eD, MailBroadcastGetInput as eE, MailBroadcastGetOutput as eF, MailBroadcastListInput as eG, MailBroadcastListOutput as eH, MailBroadcastQueueInput as eI, MailBroadcastQueueOutput as eJ, MailBroadcastStatsInput as eK, MailBroadcastStatsOutput as eL, MailBroadcastUpdateInput as eM, MailBroadcastUpdateOutput as eN, MailContactCreateInput as eO, MailContactCreateOutput as eP, MailContactDeleteInput as eQ, MailContactDeleteOutput as eR, MailContactGetInput as eS, MailContactGetOutput as eT, MailContactListInput as eU, MailContactListOutput as eV, MailContactUpdateInput as eW, MailContactUpdateOutput as eX, MailDomainAllowedListInput as eY, MailDomainAllowedListOutput as eZ, MailDomainCreateInput as e_, DeploymentVolumeDetachInput as ea, DeploymentVolumeDetachOutput as eb, DeploymentVolumeGetInput as ec, DeploymentVolumeGetOutput as ed, DeploymentVolumeListInput as ee, DeploymentVolumeListOutput as ef, DeploymentVolumeResizeInput as eg, DeploymentVolumeResizeOutput as eh, MailApikeyCreateInput as ei, MailApikeyCreateOutput as ej, MailApikeyDeleteInput as ek, MailApikeyDeleteOutput as el, MailApikeyListInput as em, MailApikeyListOutput as en, MailAudienceCreateInput as eo, MailAudienceCreateOutput as ep, MailAudienceDeleteInput as eq, MailAudienceDeleteOutput as er, MailAudienceGetInput as es, MailAudienceGetOutput as et, MailAudienceListInput as eu, MailAudienceListOutput as ev, MailAudienceUpdateInput as ew, MailAudienceUpdateOutput as ex, MailBroadcastCancelInput as ey, MailBroadcastCancelOutput as ez, BrainBackupStatusOutput as f, OrganizationClickupListInstallationsOutput as f$, MailDomainDeleteInput as f0, MailDomainDeleteOutput as f1, MailDomainGetInput as f2, MailDomainGetOutput as f3, MailDomainListInput as f4, MailDomainListOutput as f5, MailDomainUpdateInput as f6, MailDomainUpdateOutput as f7, MailDomainVerifyInput as f8, MailDomainVerifyOutput as f9, MailTemplateListOutput as fA, MailTemplatePublishInput as fB, MailTemplatePublishOutput as fC, MailTemplateUpdateInput as fD, MailTemplateUpdateOutput as fE, MailUsageGetInput as fF, MailUsageGetOutput as fG, MailWebhookCreateInput as fH, MailWebhookCreateOutput as fI, MailWebhookDeleteInput as fJ, MailWebhookDeleteOutput as fK, MailWebhookDeliveriesListInput as fL, MailWebhookDeliveriesListOutput as fM, MailWebhookGetInput as fN, MailWebhookGetOutput as fO, MailWebhookListInput as fP, MailWebhookListOutput as fQ, MailWebhookUpdateInput as fR, MailWebhookUpdateOutput as fS, MailEmailGetOutput as fT, OrganizationAuthMeInput as fU, OrganizationAuthMeOutput as fV, OrganizationBindingsListInput as fW, OrganizationBindingsListOutput as fX, OrganizationClickupInstallInput as fY, OrganizationClickupInstallOutput as fZ, OrganizationClickupListInstallationsInput as f_, MailEmailCancelInput as fa, MailEmailCancelOutput as fb, MailEmailGetInput as fc, MailEmailSendBatchInput as fd, MailEmailSendBatchOutput as fe, MailEmailSendInput as ff, MailEmailSendOutput as fg, MailEmailUpdateInput as fh, MailEmailUpdateOutput as fi, MailReputationGetInput as fj, MailReputationGetOutput as fk, MailStatsGetInput as fl, MailStatsGetOutput as fm, MailSuppressionAddInput as fn, MailSuppressionAddOutput as fo, MailSuppressionListInput as fp, MailSuppressionListOutput as fq, MailSuppressionRemoveInput as fr, MailSuppressionRemoveOutput as fs, MailTemplateCreateInput as ft, MailTemplateCreateOutput as fu, MailTemplateDeleteInput as fv, MailTemplateDeleteOutput as fw, MailTemplateGetInput as fx, MailTemplateGetOutput as fy, MailTemplateListInput as fz, BrainBackupsListInput as g, OrganizationMemberListProductAccessOutput as g$, OrganizationCloudflareInstallInput as g0, OrganizationCloudflareInstallOutput as g1, OrganizationConnectorsApproveRequestInput as g2, OrganizationConnectorsApproveRequestOutput as g3, OrganizationConnectorsAttachInput as g4, OrganizationConnectorsAttachOutput as g5, OrganizationConnectorsDeleteInput as g6, OrganizationConnectorsDeleteOutput as g7, OrganizationConnectorsDenyRequestInput as g8, OrganizationConnectorsDenyRequestOutput as g9, OrganizationExtensionsInstallInput as gA, OrganizationExtensionsInstallOutput as gB, OrganizationExtensionsListInstalledInput as gC, OrganizationExtensionsListInstalledOutput as gD, OrganizationExtensionsListInput as gE, OrganizationExtensionsListOutput as gF, OrganizationExtensionsUninstallInput as gG, OrganizationExtensionsUninstallOutput as gH, OrganizationFeedbackSubmitInput as gI, OrganizationFeedbackSubmitOutput as gJ, OrganizationGdriveInstallInput as gK, OrganizationGdriveInstallOutput as gL, OrganizationGithubInstallInput as gM, OrganizationGithubInstallOutput as gN, OrganizationGithubListInstallationsInput as gO, OrganizationGithubListInstallationsOutput as gP, OrganizationGoogleadsInstallInput as gQ, OrganizationGoogleadsInstallOutput as gR, OrganizationListInput as gS, OrganizationListOutput as gT, OrganizationMemberAcceptInviteInput as gU, OrganizationMemberAcceptInviteOutput as gV, OrganizationMemberInviteInput as gW, OrganizationMemberInviteOutput as gX, OrganizationMemberListInvitationsInput as gY, OrganizationMemberListInvitationsOutput as gZ, OrganizationMemberListProductAccessInput as g_, OrganizationConnectorsDetachInput as ga, OrganizationConnectorsDetachOutput as gb, OrganizationConnectorsListAttachmentsInput as gc, OrganizationConnectorsListAttachmentsOutput as gd, OrganizationConnectorsListAvailableInput as ge, OrganizationConnectorsListAvailableOutput as gf, OrganizationConnectorsListOrgInput as gg, OrganizationConnectorsListOrgOutput as gh, OrganizationConnectorsListInput as gi, OrganizationConnectorsListOutput as gj, OrganizationConnectorsListRequestsInput as gk, OrganizationConnectorsListRequestsOutput as gl, OrganizationConnectorsRemoveInput as gm, OrganizationConnectorsRemoveOutput as gn, OrganizationConnectorsRequestInput as go, OrganizationConnectorsRequestOutput as gp, OrganizationCreateInput as gq, OrganizationCreateOutput as gr, OrganizationDomainsAddInput as gs, OrganizationDomainsAddOutput as gt, OrganizationDomainsGetInput as gu, OrganizationDomainsGetOutput as gv, OrganizationDomainsListInput as gw, OrganizationDomainsListOutput as gx, OrganizationDomainsRemoveInput as gy, OrganizationDomainsRemoveOutput as gz, BrainBackupsListOutput as h, RealtimeGrantRevokeOutput as h$, OrganizationMemberListInput as h0, OrganizationMemberListOutput as h1, OrganizationMemberRemoveInput as h2, OrganizationMemberRemoveOutput as h3, OrganizationMemberRevokeInvitationInput as h4, OrganizationMemberRevokeInvitationOutput as h5, OrganizationMemberSetRoleInput as h6, OrganizationMemberSetRoleOutput as h7, OrganizationMemberShareProductInput as h8, OrganizationMemberShareProductOutput as h9, OrganizationRolesDeleteInput as hA, OrganizationRolesDeleteOutput as hB, OrganizationRolesGetInput as hC, OrganizationRolesGetOutput as hD, OrganizationRolesListInput as hE, OrganizationRolesListOutput as hF, OrganizationRolesUpdateInput as hG, OrganizationRolesUpdateOutput as hH, OrganizationSelectInput as hI, OrganizationSelectOutput as hJ, RealtimeApikeyCreateInput as hK, RealtimeApikeyCreateOutput as hL, RealtimeApikeyListInput as hM, RealtimeApikeyListOutput as hN, RealtimeApikeyRevokeInput as hO, RealtimeApikeyRevokeOutput as hP, RealtimeArchiveExportInput as hQ, RealtimeArchiveExportOutput as hR, RealtimeArchiveExportStatusInput as hS, RealtimeArchiveExportStatusOutput as hT, RealtimeArchiveGetInput as hU, RealtimeArchiveGetOutput as hV, RealtimeGrantCreateInput as hW, RealtimeGrantCreateOutput as hX, RealtimeGrantListInput as hY, RealtimeGrantListOutput as hZ, RealtimeGrantRevokeInput as h_, OrganizationMemberUnshareProductInput as ha, OrganizationMemberUnshareProductOutput as hb, OrganizationMembersAssignRoleInput as hc, OrganizationMembersAssignRoleOutput as hd, OrganizationPermissionCatalogInput as he, OrganizationPermissionCatalogOutput as hf, OrganizationProductAcceptInvitationInput as hg, OrganizationProductAcceptInvitationOutput as hh, OrganizationProductCreateInput as hi, OrganizationProductCreateOutput as hj, OrganizationProductInviteInput as hk, OrganizationProductInviteOutput as hl, OrganizationProductListInvitationsInput as hm, OrganizationProductListInvitationsOutput as hn, OrganizationProductListMembersInput as ho, OrganizationProductListMembersOutput as hp, OrganizationProductListInput as hq, OrganizationProductListOutput as hr, OrganizationProductListRolesInput as hs, OrganizationProductListRolesOutput as ht, OrganizationProductRevokeInvitationInput as hu, OrganizationProductRevokeInvitationOutput as hv, OrganizationProductSelectInput as hw, OrganizationProductSelectOutput as hx, OrganizationRolesCreateInput as hy, OrganizationRolesCreateOutput as hz, BrainClickupChannelsListInput as i, TrackingEventNamesArchiveOutput as i$, RealtimeHistoryGetInput as i0, RealtimeHistoryGetOutput as i1, RealtimeMessagesPublishInput as i2, RealtimeMessagesPublishOutput as i3, RealtimeNamespaceCreateInput as i4, RealtimeNamespaceCreateOutput as i5, RealtimeNamespaceDeleteInput as i6, RealtimeNamespaceDeleteOutput as i7, RealtimeNamespaceGetInput as i8, RealtimeNamespaceGetOutput as i9, RealtimeWebhookGetInput as iA, RealtimeWebhookGetOutput as iB, RealtimeWebhookListInput as iC, RealtimeWebhookListOutput as iD, RealtimeWebhookSecretRotateInput as iE, RealtimeWebhookSecretRotateOutput as iF, RealtimeWebhookUpdateInput as iG, RealtimeWebhookUpdateOutput as iH, TrackingApiKeysCreateInput as iI, TrackingApiKeysCreateOutput as iJ, TrackingApiKeysListInput as iK, TrackingApiKeysListOutput as iL, TrackingApiKeysRevokeInput as iM, TrackingApiKeysRevokeOutput as iN, TrackingApiKeysRotateInput as iO, TrackingApiKeysRotateOutput as iP, TrackingDomainsCreateInput as iQ, TrackingDomainsCreateOutput as iR, TrackingDomainsDeleteInput as iS, TrackingDomainsDeleteOutput as iT, TrackingDomainsGetInput as iU, TrackingDomainsGetOutput as iV, TrackingDomainsListInput as iW, TrackingDomainsListOutput as iX, TrackingDomainsVerifyInput as iY, TrackingDomainsVerifyOutput as iZ, TrackingEventNamesArchiveInput as i_, RealtimeNamespaceListInput as ia, RealtimeNamespaceListOutput as ib, RealtimeNamespaceUpdateInput as ic, RealtimeNamespaceUpdateOutput as id, RealtimePresenceEnterInput as ie, RealtimePresenceEnterOutput as ig, RealtimePresenceGetInput as ih, RealtimePresenceGetOutput as ii, RealtimePresenceLeaveInput as ij, RealtimePresenceLeaveOutput as ik, RealtimePresenceStatsInput as il, RealtimePresenceStatsOutput as im, RealtimePresenceUpdateInput as io, RealtimePresenceUpdateOutput as ip, RealtimeStatusGetInput as iq, RealtimeStatusGetOutput as ir, RealtimeTokensCreateInput as is, RealtimeTokensCreateOutput as it, RealtimeWebhookCreateInput as iu, RealtimeWebhookCreateOutput as iv, RealtimeWebhookDeleteInput as iw, RealtimeWebhookDeleteOutput as ix, RealtimeWebhookDeliveriesListInput as iy, RealtimeWebhookDeliveriesListOutput as iz, BrainClickupChannelsListOutput as j, WaitlistEmbedGetOutput as j$, TrackingEventNamesListInput as j0, TrackingEventNamesListOutput as j1, TrackingEventNamesUnarchiveInput as j2, TrackingEventNamesUnarchiveOutput as j3, TrackingGoogleadsConnectionStatusInput as j4, TrackingGoogleadsConnectionStatusOutput as j5, TrackingGoogleadsConversionActionsInput as j6, TrackingGoogleadsConversionActionsOutput as j7, TrackingGoogleadsFeedbackConfigGetInput as j8, TrackingGoogleadsFeedbackConfigGetOutput as j9, TrackingLinkDomainsDeleteInput as jA, TrackingLinkDomainsDeleteOutput as jB, TrackingLinkDomainsListInput as jC, TrackingLinkDomainsListOutput as jD, TrackingLiveEventsListInput as jE, TrackingLiveEventsListOutput as jF, TrackingProfilesDeleteInput as jG, TrackingProfilesDeleteOutput as jH, TrackingProfilesExportInput as jI, TrackingProfilesExportOutput as jJ, TrackingProfilesGetInput as jK, TrackingProfilesGetOutput as jL, TrackingProfilesListInput as jM, TrackingProfilesListOutput as jN, TrackingReportsAttributedJourneyInput as jO, TrackingReportsAttributedJourneyOutput as jP, TrackingReportsRevenueBySourceInput as jQ, TrackingReportsRevenueBySourceOutput as jR, TrackingReportsSourcePeopleInput as jS, TrackingReportsSourcePeopleOutput as jT, TrackingSnippetsGetInput as jU, TrackingSnippetsGetOutput as jV, WaitlistConfigGetInput as jW, WaitlistConfigGetOutput as jX, WaitlistConfigUpsertInput as jY, WaitlistConfigUpsertOutput as jZ, WaitlistEmbedGetInput as j_, TrackingGoogleadsFeedbackConfigSetInput as ja, TrackingGoogleadsFeedbackConfigSetOutput as jb, TrackingGoogleadsFeedbackRunInput as jc, TrackingGoogleadsFeedbackRunOutput as jd, TrackingGoogleadsFeedbackStatusInput as je, TrackingGoogleadsFeedbackStatusOutput as jf, TrackingGoogleadsFeedbackUploadsInput as jg, TrackingGoogleadsFeedbackUploadsOutput as jh, TrackingGoogleadsRoasReportInput as ji, TrackingGoogleadsRoasReportOutput as jj, TrackingGoogleadsSyncNowInput as jk, TrackingGoogleadsSyncNowOutput as jl, TrackingGoogleadsTrackingHealthInput as jm, TrackingGoogleadsTrackingHealthOutput as jn, TrackingGoogleadsUsVsPlatformInput as jo, TrackingGoogleadsUsVsPlatformOutput as jp, TrackingIdentityHealthInput as jq, TrackingIdentityHealthOutput as jr, TrackingInstallDomainsCreateInput as js, TrackingInstallDomainsCreateOutput as jt, TrackingInstallDomainsDeleteInput as ju, TrackingInstallDomainsDeleteOutput as jv, TrackingInstallDomainsListInput as jw, TrackingInstallDomainsListOutput as jx, TrackingLinkDomainsCreateInput as jy, TrackingLinkDomainsCreateOutput as jz, BrainClickupConnectionsListInput as k, WaitlistInvitesSendInput as k0, WaitlistInvitesSendOutput as k1, WaitlistSignupsEraseInput as k2, WaitlistSignupsEraseOutput as k3, WaitlistSignupsFunnelInput as k4, WaitlistSignupsFunnelOutput as k5, WaitlistSignupsListInput as k6, WaitlistSignupsListOutput as k7, BrainClickupConnectionsListOutput as l, BrainClickupListsListInput as m, BrainClickupListsListOutput as n, BrainClickupSpacesListInput as o, BrainClickupSpacesListOutput as p, BrainCognitionDigestInput as q, BrainCognitionDigestOutput as r, BrainCognitionStatusInput as s, BrainCognitionStatusOutput as t, BrainCognitionSweepInput as u, BrainCognitionSweepOutput as v, BrainConnectorBranchesListInput as w, BrainConnectorBranchesListOutput as x, BrainConnectorConnectionsListInput as y, BrainConnectorConnectionsListOutput as z };
|
|
18810
|
+
export type { BrainGdriveConnectionsListInput as $, AnalyticsQueryRunInput as A, BrainBackupCreateInput as B, BrainConnectorReposListInput as C, BrainConnectorReposListOutput as D, BrainDaemonBatchStatusInput as E, BrainDaemonBatchStatusOutput as F, GeneratedClient as G, BrainDaemonCreateInput as H, BrainDaemonCreateOutput as I, BrainDaemonGetInput as J, BrainDaemonGetOutput as K, BrainDaemonReingestInput as L, BrainDaemonReingestOutput as M, BrainDaemonRemoveInput as N, BrainDaemonRemoveOutput as O, BrainDaemonRunItemsInput as P, BrainDaemonRunItemsOutput as Q, BrainDaemonRunInput as R, BrainDaemonRunOutput as S, BrainDaemonRunsInput as T, BrainDaemonRunsOutput as U, BrainDaemonStatusInput as V, BrainDaemonStatusOutput as W, BrainDaemonUpdateInput as X, BrainDaemonUpdateOutput as Y, BrainDaemonsListInput as Z, BrainDaemonsListOutput as _, AnalyticsQueryRunOutput as a, DeploymentAlertEventsListInput as a$, BrainGdriveConnectionsListOutput as a0, BrainKnowledgeEntityMemoriesInput as a1, BrainKnowledgeEntityMemoriesOutput as a2, BrainKnowledgeGraphInput as a3, BrainKnowledgeGraphOutput as a4, BrainKnowledgeNeighborhoodInput as a5, BrainKnowledgeNeighborhoodOutput as a6, BrainKnowledgeRelationsInput as a7, BrainKnowledgeRelationsOutput as a8, BrainKnowledgeSearchInput as a9, ConsentConfigThemeUpsertOutput as aA, ConsentDashboardConfigGetInput as aB, ConsentDashboardConfigGetOutput as aC, ConsentDashboardDecisionsListInput as aD, ConsentDashboardDecisionsListOutput as aE, ConsentDashboardEmbedSnippetGetInput as aF, ConsentDashboardEmbedSnippetGetOutput as aG, ConsentDashboardStatsGetInput as aH, ConsentDashboardStatsGetOutput as aI, ConsentEmbedGetInput as aJ, ConsentEmbedGetOutput as aK, ConsentProvidersCreateInput as aL, ConsentProvidersCreateOutput as aM, ConsentProvidersDeleteInput as aN, ConsentProvidersDeleteOutput as aO, ConsentProvidersListInput as aP, ConsentProvidersListOutput as aQ, ConsentProvidersUpdateInput as aR, ConsentProvidersUpdateOutput as aS, ConsentRecordsExportInput as aT, ConsentRecordsExportOutput as aU, ConsentStatsGetInput as aV, ConsentStatsGetOutput as aW, DeploymentAlertCreateInput as aX, DeploymentAlertCreateOutput as aY, DeploymentAlertDeleteInput as aZ, DeploymentAlertDeleteOutput as a_, BrainKnowledgeSearchOutput as aa, BrainMemoryAddInput as ab, BrainMemoryAddOutput as ac, BrainMemoryDeleteInput as ad, BrainMemoryDeleteOutput as ae, BrainMemoryGetInput as af, BrainMemoryGetOutput as ag, BrainMemoryListInput as ah, BrainMemoryListOutput as ai, BrainMemorySearchInput as aj, BrainMemorySearchOutput as ak, BrainMemoryStatsInput as al, BrainMemoryStatsOutput as am, BrainMemoryUpdateInput as an, BrainMemoryUpdateOutput as ao, BrainProductSharedMemoryResetInput as ap, BrainProductSharedMemoryResetOutput as aq, BrainRestoreStatusInput as ar, BrainRestoreStatusOutput as as, ConsentConfigCookieDomainUpsertInput as at, ConsentConfigCookieDomainUpsertOutput as au, ConsentConfigCustomizationUpsertInput as av, ConsentConfigCustomizationUpsertOutput as aw, ConsentConfigFloatingIconUpsertInput as ax, ConsentConfigFloatingIconUpsertOutput as ay, ConsentConfigThemeUpsertInput as az, BrainBackupCreateOutput as b, DeploymentDomainListByServiceInput as b$, DeploymentAlertEventsListOutput as b0, DeploymentAlertListInput as b1, DeploymentAlertListOutput as b2, DeploymentAlertUpdateInput as b3, DeploymentAlertUpdateOutput as b4, DeploymentAnalyticsQueryInput as b5, DeploymentAnalyticsQueryOutput as b6, DeploymentAuditListInput as b7, DeploymentAuditListOutput as b8, DeploymentBuildGetInput as b9, DeploymentCloudSqlInstanceBackupOutput as bA, DeploymentCloudSqlInstanceCreateInput as bB, DeploymentCloudSqlInstanceCreateOutput as bC, DeploymentCloudSqlInstanceDeleteInput as bD, DeploymentCloudSqlInstanceDeleteOutput as bE, DeploymentCloudSqlInstanceGetInput as bF, DeploymentCloudSqlInstanceGetOutput as bG, DeploymentCloudSqlInstanceListInput as bH, DeploymentCloudSqlInstanceListOutput as bI, DeploymentCloudSqlInstanceResizeInput as bJ, DeploymentCloudSqlInstanceResizeOutput as bK, DeploymentCloudSqlInstanceRestoreInput as bL, DeploymentCloudSqlInstanceRestoreOutput as bM, DeploymentCloudSqlLogsInput as bN, DeploymentCloudSqlLogsOutput as bO, DeploymentDeploymentCancelInput as bP, DeploymentDeploymentCancelOutput as bQ, DeploymentDeploymentGetInput as bR, DeploymentDeploymentGetOutput as bS, DeploymentDeploymentListInput as bT, DeploymentDeploymentListOutput as bU, DeploymentDomainAddInput as bV, DeploymentDomainAddOutput as bW, DeploymentDomainAllowedListInput as bX, DeploymentDomainAllowedListOutput as bY, DeploymentDomainGetInput as bZ, DeploymentDomainGetOutput as b_, DeploymentBuildGetOutput as ba, DeploymentBuildListInput as bb, DeploymentBuildListOutput as bc, DeploymentBuildLogsInput as bd, DeploymentBuildLogsOutput as be, DeploymentCanvasGetInput as bf, DeploymentCanvasGetOutput as bg, DeploymentCanvasMoveNodeInput as bh, DeploymentCanvasMoveNodeOutput as bi, DeploymentCloudSqlBackfillLogFlagsInput as bj, DeploymentCloudSqlBackfillLogFlagsOutput as bk, DeploymentCloudSqlDatabaseAttachInput as bl, DeploymentCloudSqlDatabaseAttachOutput as bm, DeploymentCloudSqlDatabaseCreateInput as bn, DeploymentCloudSqlDatabaseCreateOutput as bo, DeploymentCloudSqlDatabaseDeleteInput as bp, DeploymentCloudSqlDatabaseDeleteOutput as bq, DeploymentCloudSqlDatabaseDetachInput as br, DeploymentCloudSqlDatabaseDetachOutput as bs, DeploymentCloudSqlDatabaseGetInput as bt, DeploymentCloudSqlDatabaseGetOutput as bu, DeploymentCloudSqlDatabaseListInput as bv, DeploymentCloudSqlDatabaseListOutput as bw, DeploymentCloudSqlInstanceBackupListInput as bx, DeploymentCloudSqlInstanceBackupListOutput as by, DeploymentCloudSqlInstanceBackupInput as bz, BrainBackupRestoreInput as c, DeploymentMetricsGetInput as c$, DeploymentDomainListByServiceOutput as c0, DeploymentDomainListInput as c1, DeploymentDomainListOutput as c2, DeploymentDomainRedirectWwwInput as c3, DeploymentDomainRedirectWwwOutput as c4, DeploymentDomainRemoveInput as c5, DeploymentDomainRemoveOutput as c6, DeploymentDomainRoutesAddInput as c7, DeploymentDomainRoutesAddOutput as c8, DeploymentDomainRoutesListInput as c9, DeploymentManagedServiceBackupListOutput as cA, DeploymentManagedServiceBackupInput as cB, DeploymentManagedServiceBackupOutput as cC, DeploymentManagedServiceConnectInfoInput as cD, DeploymentManagedServiceConnectInfoOutput as cE, DeploymentManagedServiceDeleteInput as cF, DeploymentManagedServiceDeleteOutput as cG, DeploymentManagedServiceGetInput as cH, DeploymentManagedServiceGetOutput as cI, DeploymentManagedServiceListInput as cJ, DeploymentManagedServiceListOutput as cK, DeploymentManagedServiceLogsInput as cL, DeploymentManagedServiceLogsOutput as cM, DeploymentManagedServiceProvisionInput as cN, DeploymentManagedServiceProvisionOutput as cO, DeploymentManagedServiceReconcileInput as cP, DeploymentManagedServiceReconcileOutput as cQ, DeploymentManagedServiceResizeInput as cR, DeploymentManagedServiceResizeOutput as cS, DeploymentManagedServiceRestoreInput as cT, DeploymentManagedServiceRestoreOutput as cU, DeploymentManagedServiceStartInput as cV, DeploymentManagedServiceStartOutput as cW, DeploymentManagedServiceStopInput as cX, DeploymentManagedServiceStopOutput as cY, DeploymentManagedServiceTypesInput as cZ, DeploymentManagedServiceTypesOutput as c_, DeploymentDomainRoutesListOutput as ca, DeploymentDomainRoutesRemoveInput as cb, DeploymentDomainRoutesRemoveOutput as cc, DeploymentDomainRoutesUpdateInput as cd, DeploymentDomainRoutesUpdateOutput as ce, DeploymentDomainVerifyInput as cf, DeploymentDomainVerifyOutput as cg, DeploymentEnvironmentCreateInput as ch, DeploymentEnvironmentCreateOutput as ci, DeploymentEnvironmentDeleteInput as cj, DeploymentEnvironmentDeleteOutput as ck, DeploymentEnvironmentForkInput as cl, DeploymentEnvironmentForkOutput as cm, DeploymentEnvironmentGetInput as cn, DeploymentEnvironmentGetOutput as co, DeploymentEnvironmentListInput as cp, DeploymentEnvironmentListOutput as cq, DeploymentEnvironmentReconcileInput as cr, DeploymentEnvironmentReconcileOutput as cs, DeploymentEnvironmentUpdateInput as ct, DeploymentEnvironmentUpdateOutput as cu, DeploymentEventsListByEnvironmentInput as cv, DeploymentEventsListByEnvironmentOutput as cw, DeploymentEventsListByServiceInput as cx, DeploymentEventsListByServiceOutput as cy, DeploymentManagedServiceBackupListInput as cz, BrainBackupRestoreOutput as d, DeploymentVcsBranchListOutput as d$, DeploymentMetricsGetOutput as d0, DeploymentPreviewEnvironmentCreateInput as d1, DeploymentPreviewEnvironmentCreateOutput as d2, DeploymentPreviewEnvironmentDeleteInput as d3, DeploymentPreviewEnvironmentDeleteOutput as d4, DeploymentPreviewEnvironmentListInput as d5, DeploymentPreviewEnvironmentListOutput as d6, DeploymentPreviewPolicyGetInput as d7, DeploymentPreviewPolicyGetOutput as d8, DeploymentPreviewPolicySetInput as d9, DeploymentSshCommandInput as dA, DeploymentSshCommandOutput as dB, DeploymentSshKeyDeleteInput as dC, DeploymentSshKeyDeleteOutput as dD, DeploymentSshKeyListInput as dE, DeploymentSshKeyListOutput as dF, DeploymentSshKeyRegisterInput as dG, DeploymentSshKeyRegisterOutput as dH, DeploymentVariableListEnvInput as dI, DeploymentVariableListEnvOutput as dJ, DeploymentVariableListProductInput as dK, DeploymentVariableListProductOutput as dL, DeploymentVariableListInput as dM, DeploymentVariableListOutput as dN, DeploymentVariableSetEnvInput as dO, DeploymentVariableSetEnvOutput as dP, DeploymentVariableSetInput as dQ, DeploymentVariableSetOutput as dR, DeploymentVariableSetProductInput as dS, DeploymentVariableSetProductOutput as dT, DeploymentVariableUnsetEnvInput as dU, DeploymentVariableUnsetEnvOutput as dV, DeploymentVariableUnsetInput as dW, DeploymentVariableUnsetOutput as dX, DeploymentVariableUnsetProductInput as dY, DeploymentVariableUnsetProductOutput as dZ, DeploymentVcsBranchListInput as d_, DeploymentPreviewPolicySetOutput as da, DeploymentServiceCreateInput as db, DeploymentServiceCreateOutput as dc, DeploymentServiceDeleteInput as dd, DeploymentServiceDeleteOutput as de, DeploymentServiceExecInput as df, DeploymentServiceExecOutput as dg, DeploymentServiceGetInput as dh, DeploymentServiceGetOutput as di, DeploymentServiceListInput as dj, DeploymentServiceListOutput as dk, DeploymentServiceLogsInput as dl, DeploymentServiceLogsOutput as dm, DeploymentServiceRedeployInput as dn, DeploymentServiceRedeployOutput as dp, DeploymentServiceRestartInput as dq, DeploymentServiceRestartOutput as dr, DeploymentServiceRollbackInput as ds, DeploymentServiceRollbackOutput as dt, DeploymentServiceScaleInput as du, DeploymentServiceScaleOutput as dv, DeploymentServiceUpdateInput as dw, DeploymentServiceUpdateOutput as dx, DeploymentServiceWakeInput as dy, DeploymentServiceWakeOutput as dz, BrainBackupStatusInput as e, MailDomainDeleteOutput as e$, DeploymentVcsConnectionListInput as e0, DeploymentVcsConnectionListOutput as e1, DeploymentVcsRepoListInput as e2, DeploymentVcsRepoListOutput as e3, DeploymentVolumeCreateInput as e4, DeploymentVolumeCreateOutput as e5, DeploymentVolumeDeleteInput as e6, DeploymentVolumeDeleteOutput as e7, DeploymentVolumeDetachInput as e8, DeploymentVolumeDetachOutput as e9, MailBroadcastDeleteInput as eA, MailBroadcastDeleteOutput as eB, MailBroadcastGetInput as eC, MailBroadcastGetOutput as eD, MailBroadcastListInput as eE, MailBroadcastListOutput as eF, MailBroadcastQueueInput as eG, MailBroadcastQueueOutput as eH, MailBroadcastStatsInput as eI, MailBroadcastStatsOutput as eJ, MailBroadcastUpdateInput as eK, MailBroadcastUpdateOutput as eL, MailContactCreateInput as eM, MailContactCreateOutput as eN, MailContactDeleteInput as eO, MailContactDeleteOutput as eP, MailContactGetInput as eQ, MailContactGetOutput as eR, MailContactListInput as eS, MailContactListOutput as eT, MailContactUpdateInput as eU, MailContactUpdateOutput as eV, MailDomainAllowedListInput as eW, MailDomainAllowedListOutput as eX, MailDomainCreateInput as eY, MailDomainCreateOutput as eZ, MailDomainDeleteInput as e_, DeploymentVolumeGetInput as ea, DeploymentVolumeGetOutput as eb, DeploymentVolumeListInput as ec, DeploymentVolumeListOutput as ed, DeploymentVolumeResizeInput as ee, DeploymentVolumeResizeOutput as ef, MailApikeyCreateInput as eg, MailApikeyCreateOutput as eh, MailApikeyDeleteInput as ei, MailApikeyDeleteOutput as ej, MailApikeyListInput as ek, MailApikeyListOutput as el, MailAudienceCreateInput as em, MailAudienceCreateOutput as en, MailAudienceDeleteInput as eo, MailAudienceDeleteOutput as ep, MailAudienceGetInput as eq, MailAudienceGetOutput as er, MailAudienceListInput as es, MailAudienceListOutput as et, MailAudienceUpdateInput as eu, MailAudienceUpdateOutput as ev, MailBroadcastCancelInput as ew, MailBroadcastCancelOutput as ex, MailBroadcastCreateInput as ey, MailBroadcastCreateOutput as ez, BrainBackupStatusOutput as f, OrganizationCloudflareInstallOutput as f$, MailDomainGetInput as f0, MailDomainGetOutput as f1, MailDomainListInput as f2, MailDomainListOutput as f3, MailDomainUpdateInput as f4, MailDomainUpdateOutput as f5, MailDomainVerifyInput as f6, MailDomainVerifyOutput as f7, MailEmailCancelInput as f8, MailEmailCancelOutput as f9, MailTemplatePublishOutput as fA, MailTemplateUpdateInput as fB, MailTemplateUpdateOutput as fC, MailUsageGetInput as fD, MailUsageGetOutput as fE, MailWebhookCreateInput as fF, MailWebhookCreateOutput as fG, MailWebhookDeleteInput as fH, MailWebhookDeleteOutput as fI, MailWebhookDeliveriesListInput as fJ, MailWebhookDeliveriesListOutput as fK, MailWebhookGetInput as fL, MailWebhookGetOutput as fM, MailWebhookListInput as fN, MailWebhookListOutput as fO, MailWebhookUpdateInput as fP, MailWebhookUpdateOutput as fQ, MailEmailGetOutput as fR, OrganizationAuthMeInput as fS, OrganizationAuthMeOutput as fT, OrganizationBindingsListInput as fU, OrganizationBindingsListOutput as fV, OrganizationClickupInstallInput as fW, OrganizationClickupInstallOutput as fX, OrganizationClickupListInstallationsInput as fY, OrganizationClickupListInstallationsOutput as fZ, OrganizationCloudflareInstallInput as f_, MailEmailGetInput as fa, MailEmailSendBatchInput as fb, MailEmailSendBatchOutput as fc, MailEmailSendInput as fd, MailEmailSendOutput as fe, MailEmailUpdateInput as ff, MailEmailUpdateOutput as fg, MailReputationGetInput as fh, MailReputationGetOutput as fi, MailStatsGetInput as fj, MailStatsGetOutput as fk, MailSuppressionAddInput as fl, MailSuppressionAddOutput as fm, MailSuppressionListInput as fn, MailSuppressionListOutput as fo, MailSuppressionRemoveInput as fp, MailSuppressionRemoveOutput as fq, MailTemplateCreateInput as fr, MailTemplateCreateOutput as fs, MailTemplateDeleteInput as ft, MailTemplateDeleteOutput as fu, MailTemplateGetInput as fv, MailTemplateGetOutput as fw, MailTemplateListInput as fx, MailTemplateListOutput as fy, MailTemplatePublishInput as fz, BrainBackupsListInput as g, OrganizationMemberListOutput as g$, OrganizationConnectorsApproveRequestInput as g0, OrganizationConnectorsApproveRequestOutput as g1, OrganizationConnectorsAttachInput as g2, OrganizationConnectorsAttachOutput as g3, OrganizationConnectorsDeleteInput as g4, OrganizationConnectorsDeleteOutput as g5, OrganizationConnectorsDenyRequestInput as g6, OrganizationConnectorsDenyRequestOutput as g7, OrganizationConnectorsDetachInput as g8, OrganizationConnectorsDetachOutput as g9, OrganizationExtensionsListInstalledInput as gA, OrganizationExtensionsListInstalledOutput as gB, OrganizationExtensionsListInput as gC, OrganizationExtensionsListOutput as gD, OrganizationExtensionsUninstallInput as gE, OrganizationExtensionsUninstallOutput as gF, OrganizationFeedbackSubmitInput as gG, OrganizationFeedbackSubmitOutput as gH, OrganizationGdriveInstallInput as gI, OrganizationGdriveInstallOutput as gJ, OrganizationGithubInstallInput as gK, OrganizationGithubInstallOutput as gL, OrganizationGithubListInstallationsInput as gM, OrganizationGithubListInstallationsOutput as gN, OrganizationGoogleadsInstallInput as gO, OrganizationGoogleadsInstallOutput as gP, OrganizationListInput as gQ, OrganizationListOutput as gR, OrganizationMemberAcceptInviteInput as gS, OrganizationMemberAcceptInviteOutput as gT, OrganizationMemberInviteInput as gU, OrganizationMemberInviteOutput as gV, OrganizationMemberListInvitationsInput as gW, OrganizationMemberListInvitationsOutput as gX, OrganizationMemberListProductAccessInput as gY, OrganizationMemberListProductAccessOutput as gZ, OrganizationMemberListInput as g_, OrganizationConnectorsListAttachmentsInput as ga, OrganizationConnectorsListAttachmentsOutput as gb, OrganizationConnectorsListAvailableInput as gc, OrganizationConnectorsListAvailableOutput as gd, OrganizationConnectorsListOrgInput as ge, OrganizationConnectorsListOrgOutput as gf, OrganizationConnectorsListInput as gg, OrganizationConnectorsListOutput as gh, OrganizationConnectorsListRequestsInput as gi, OrganizationConnectorsListRequestsOutput as gj, OrganizationConnectorsRemoveInput as gk, OrganizationConnectorsRemoveOutput as gl, OrganizationConnectorsRequestInput as gm, OrganizationConnectorsRequestOutput as gn, OrganizationCreateInput as go, OrganizationCreateOutput as gp, OrganizationDomainsAddInput as gq, OrganizationDomainsAddOutput as gr, OrganizationDomainsGetInput as gs, OrganizationDomainsGetOutput as gt, OrganizationDomainsListInput as gu, OrganizationDomainsListOutput as gv, OrganizationDomainsRemoveInput as gw, OrganizationDomainsRemoveOutput as gx, OrganizationExtensionsInstallInput as gy, OrganizationExtensionsInstallOutput as gz, BrainBackupsListOutput as h, PlaygroundGdriveReadFileOutput as h$, OrganizationMemberRemoveInput as h0, OrganizationMemberRemoveOutput as h1, OrganizationMemberRevokeInvitationInput as h2, OrganizationMemberRevokeInvitationOutput as h3, OrganizationMemberSetRoleInput as h4, OrganizationMemberSetRoleOutput as h5, OrganizationMemberShareProductInput as h6, OrganizationMemberShareProductOutput as h7, OrganizationMemberUnshareProductInput as h8, OrganizationMemberUnshareProductOutput as h9, OrganizationRolesDeleteInput as hA, OrganizationRolesDeleteOutput as hB, OrganizationRolesGetInput as hC, OrganizationRolesGetOutput as hD, OrganizationRolesListInput as hE, OrganizationRolesListOutput as hF, OrganizationRolesUpdateInput as hG, OrganizationRolesUpdateOutput as hH, OrganizationSecurityMfaEnableInput as hI, OrganizationSecurityMfaEnableOutput as hJ, OrganizationSelectInput as hK, OrganizationSelectOutput as hL, PlaygroundAnalyticsOverviewInput as hM, PlaygroundAnalyticsOverviewOutput as hN, PlaygroundBillingEntitlementsInput as hO, PlaygroundBillingEntitlementsOutput as hP, PlaygroundBillingRecordUsageInput as hQ, PlaygroundBillingRecordUsageOutput as hR, PlaygroundClickupCreateTaskInput as hS, PlaygroundClickupCreateTaskOutput as hT, PlaygroundClickupGetLastWebhookInput as hU, PlaygroundClickupGetLastWebhookOutput as hV, PlaygroundClickupGetOverviewInput as hW, PlaygroundClickupGetOverviewOutput as hX, PlaygroundGdriveGetLastChangeInput as hY, PlaygroundGdriveGetLastChangeOutput as hZ, PlaygroundGdriveReadFileInput as h_, OrganizationMembersAssignRoleInput as ha, OrganizationMembersAssignRoleOutput as hb, OrganizationPermissionCatalogInput as hc, OrganizationPermissionCatalogOutput as hd, OrganizationProductAcceptInvitationInput as he, OrganizationProductAcceptInvitationOutput as hf, OrganizationProductCreateInput as hg, OrganizationProductCreateOutput as hh, OrganizationProductInviteInput as hi, OrganizationProductInviteOutput as hj, OrganizationProductListInvitationsInput as hk, OrganizationProductListInvitationsOutput as hl, OrganizationProductListMembersInput as hm, OrganizationProductListMembersOutput as hn, OrganizationProductListInput as ho, OrganizationProductListOutput as hp, OrganizationProductListRolesInput as hq, OrganizationProductListRolesOutput as hr, OrganizationProductRevokeInvitationInput as hs, OrganizationProductRevokeInvitationOutput as ht, OrganizationProductSelectInput as hu, OrganizationProductSelectOutput as hv, OrganizationProductUpdateInput as hw, OrganizationProductUpdateOutput as hx, OrganizationRolesCreateInput as hy, OrganizationRolesCreateOutput as hz, BrainClickupChannelsListInput as i, RealtimeWebhookGetOutput as i$, PlaygroundGoogleadsReadCustomerInput as i0, PlaygroundGoogleadsReadCustomerOutput as i1, PlaygroundLifecycleGetStateInput as i2, PlaygroundLifecycleGetStateOutput as i3, PlaygroundLifecycleListEventsInput as i4, PlaygroundLifecycleListEventsOutput as i5, PlaygroundWebhookGetLastInput as i6, PlaygroundWebhookGetLastOutput as i7, RealtimeApikeyCreateInput as i8, RealtimeApikeyCreateOutput as i9, RealtimeNamespaceGetInput as iA, RealtimeNamespaceGetOutput as iB, RealtimeNamespaceListInput as iC, RealtimeNamespaceListOutput as iD, RealtimeNamespaceUpdateInput as iE, RealtimeNamespaceUpdateOutput as iF, RealtimePresenceEnterInput as iG, RealtimePresenceEnterOutput as iH, RealtimePresenceGetInput as iI, RealtimePresenceGetOutput as iJ, RealtimePresenceLeaveInput as iK, RealtimePresenceLeaveOutput as iL, RealtimePresenceStatsInput as iM, RealtimePresenceStatsOutput as iN, RealtimePresenceUpdateInput as iO, RealtimePresenceUpdateOutput as iP, RealtimeStatusGetInput as iQ, RealtimeStatusGetOutput as iR, RealtimeTokensCreateInput as iS, RealtimeTokensCreateOutput as iT, RealtimeWebhookCreateInput as iU, RealtimeWebhookCreateOutput as iV, RealtimeWebhookDeleteInput as iW, RealtimeWebhookDeleteOutput as iX, RealtimeWebhookDeliveriesListInput as iY, RealtimeWebhookDeliveriesListOutput as iZ, RealtimeWebhookGetInput as i_, RealtimeApikeyListInput as ia, RealtimeApikeyListOutput as ib, RealtimeApikeyRevokeInput as ic, RealtimeApikeyRevokeOutput as id, RealtimeArchiveExportInput as ie, RealtimeArchiveExportOutput as ig, RealtimeArchiveExportStatusInput as ih, RealtimeArchiveExportStatusOutput as ii, RealtimeArchiveGetInput as ij, RealtimeArchiveGetOutput as ik, RealtimeGrantCreateInput as il, RealtimeGrantCreateOutput as im, RealtimeGrantListInput as io, RealtimeGrantListOutput as ip, RealtimeGrantRevokeInput as iq, RealtimeGrantRevokeOutput as ir, RealtimeHistoryGetInput as is, RealtimeHistoryGetOutput as it, RealtimeMessagesPublishInput as iu, RealtimeMessagesPublishOutput as iv, RealtimeNamespaceCreateInput as iw, RealtimeNamespaceCreateOutput as ix, RealtimeNamespaceDeleteInput as iy, RealtimeNamespaceDeleteOutput as iz, BrainClickupChannelsListOutput as j, TrackingLinkDomainsDeleteOutput as j$, RealtimeWebhookListInput as j0, RealtimeWebhookListOutput as j1, RealtimeWebhookSecretRotateInput as j2, RealtimeWebhookSecretRotateOutput as j3, RealtimeWebhookUpdateInput as j4, RealtimeWebhookUpdateOutput as j5, TrackingApiKeysCreateInput as j6, TrackingApiKeysCreateOutput as j7, TrackingApiKeysListInput as j8, TrackingApiKeysListOutput as j9, TrackingGoogleadsFeedbackConfigSetInput as jA, TrackingGoogleadsFeedbackConfigSetOutput as jB, TrackingGoogleadsFeedbackRunInput as jC, TrackingGoogleadsFeedbackRunOutput as jD, TrackingGoogleadsFeedbackStatusInput as jE, TrackingGoogleadsFeedbackStatusOutput as jF, TrackingGoogleadsFeedbackUploadsInput as jG, TrackingGoogleadsFeedbackUploadsOutput as jH, TrackingGoogleadsRoasReportInput as jI, TrackingGoogleadsRoasReportOutput as jJ, TrackingGoogleadsSyncNowInput as jK, TrackingGoogleadsSyncNowOutput as jL, TrackingGoogleadsTrackingHealthInput as jM, TrackingGoogleadsTrackingHealthOutput as jN, TrackingGoogleadsUsVsPlatformInput as jO, TrackingGoogleadsUsVsPlatformOutput as jP, TrackingIdentityHealthInput as jQ, TrackingIdentityHealthOutput as jR, TrackingInstallDomainsCreateInput as jS, TrackingInstallDomainsCreateOutput as jT, TrackingInstallDomainsDeleteInput as jU, TrackingInstallDomainsDeleteOutput as jV, TrackingInstallDomainsListInput as jW, TrackingInstallDomainsListOutput as jX, TrackingLinkDomainsCreateInput as jY, TrackingLinkDomainsCreateOutput as jZ, TrackingLinkDomainsDeleteInput as j_, TrackingApiKeysRevokeInput as ja, TrackingApiKeysRevokeOutput as jb, TrackingApiKeysRotateInput as jc, TrackingApiKeysRotateOutput as jd, TrackingDomainsCreateInput as je, TrackingDomainsCreateOutput as jf, TrackingDomainsDeleteInput as jg, TrackingDomainsDeleteOutput as jh, TrackingDomainsGetInput as ji, TrackingDomainsGetOutput as jj, TrackingDomainsListInput as jk, TrackingDomainsListOutput as jl, TrackingDomainsVerifyInput as jm, TrackingDomainsVerifyOutput as jn, TrackingEventNamesArchiveInput as jo, TrackingEventNamesArchiveOutput as jp, TrackingEventNamesListInput as jq, TrackingEventNamesListOutput as jr, TrackingEventNamesUnarchiveInput as js, TrackingEventNamesUnarchiveOutput as jt, TrackingGoogleadsConnectionStatusInput as ju, TrackingGoogleadsConnectionStatusOutput as jv, TrackingGoogleadsConversionActionsInput as jw, TrackingGoogleadsConversionActionsOutput as jx, TrackingGoogleadsFeedbackConfigGetInput as jy, TrackingGoogleadsFeedbackConfigGetOutput as jz, BrainClickupConnectionsListInput as k, UsersUsersEraseOutput as k$, TrackingLinkDomainsListInput as k0, TrackingLinkDomainsListOutput as k1, TrackingLiveEventsListInput as k2, TrackingLiveEventsListOutput as k3, TrackingProfilesDeleteInput as k4, TrackingProfilesDeleteOutput as k5, TrackingProfilesExportInput as k6, TrackingProfilesExportOutput as k7, TrackingProfilesGetInput as k8, TrackingProfilesGetOutput as k9, UsersKeysListInput as kA, UsersKeysListOutput as kB, UsersKeysRevokeInput as kC, UsersKeysRevokeOutput as kD, UsersKeysRotateInput as kE, UsersKeysRotateOutput as kF, UsersOpsRetentionGetInput as kG, UsersOpsRetentionGetOutput as kH, UsersOpsSloGetInput as kI, UsersOpsSloGetOutput as kJ, UsersSessionsGetInput as kK, UsersSessionsGetOutput as kL, UsersSessionsImpersonateInput as kM, UsersSessionsImpersonateOutput as kN, UsersSessionsListInput as kO, UsersSessionsListOutput as kP, UsersSessionsRevokeInput as kQ, UsersSessionsRevokeOutput as kR, UsersStatsGetInput as kS, UsersStatsGetOutput as kT, UsersUsersBanInput as kU, UsersUsersBanOutput as kV, UsersUsersCreateInput as kW, UsersUsersCreateOutput as kX, UsersUsersDeleteInput as kY, UsersUsersDeleteOutput as kZ, UsersUsersEraseInput as k_, TrackingProfilesListInput as ka, TrackingProfilesListOutput as kb, TrackingReportsAttributedJourneyInput as kc, TrackingReportsAttributedJourneyOutput as kd, TrackingReportsRevenueBySourceInput as ke, TrackingReportsRevenueBySourceOutput as kf, TrackingReportsSourcePeopleInput as kg, TrackingReportsSourcePeopleOutput as kh, TrackingSnippetsGetInput as ki, TrackingSnippetsGetOutput as kj, UsersApikeysCreateInput as kk, UsersApikeysCreateOutput as kl, UsersApikeysListInput as km, UsersApikeysListOutput as kn, UsersApikeysRevokeInput as ko, UsersApikeysRevokeOutput as kp, UsersAuditListInput as kq, UsersAuditListOutput as kr, UsersConfigGetInput as ks, UsersConfigGetOutput as kt, UsersConfigUpsertInput as ku, UsersConfigUpsertOutput as kv, UsersFactorsListInput as kw, UsersFactorsListOutput as kx, UsersFactorsResetInput as ky, UsersFactorsResetOutput as kz, BrainClickupConnectionsListOutput as l, UsersUsersExportInput as l0, UsersUsersExportOutput as l1, UsersUsersGetInput as l2, UsersUsersGetOutput as l3, UsersUsersImportInput as l4, UsersUsersImportOutput as l5, UsersUsersInviteInput as l6, UsersUsersInviteOutput as l7, UsersUsersListInput as l8, UsersUsersListOutput as l9, UsersWebhooksRotateSecretInput as lA, UsersWebhooksRotateSecretOutput as lB, UsersWebhooksUpdateInput as lC, UsersWebhooksUpdateOutput as lD, WaitlistConfigGetInput as lE, WaitlistConfigGetOutput as lF, WaitlistConfigUpsertInput as lG, WaitlistConfigUpsertOutput as lH, WaitlistEmbedGetInput as lI, WaitlistEmbedGetOutput as lJ, WaitlistInvitesSendInput as lK, WaitlistInvitesSendOutput as lL, WaitlistSignupsEraseInput as lM, WaitlistSignupsEraseOutput as lN, WaitlistSignupsFunnelInput as lO, WaitlistSignupsFunnelOutput as lP, WaitlistSignupsListInput as lQ, WaitlistSignupsListOutput as lR, UsersUsersSetPrimaryIdentifierInput as la, UsersUsersSetPrimaryIdentifierOutput as lb, UsersUsersUnbanInput as lc, UsersUsersUnbanOutput as ld, UsersUsersUpdateInput as le, UsersUsersUpdateOutput as lf, UsersWaitlistEraseInput as lg, UsersWaitlistEraseOutput as lh, UsersWaitlistFunnelInput as li, UsersWaitlistFunnelOutput as lj, UsersWaitlistImportInput as lk, UsersWaitlistImportOutput as ll, UsersWaitlistInviteInput as lm, UsersWaitlistInviteOutput as ln, UsersWaitlistListInput as lo, UsersWaitlistListOutput as lp, UsersWebhooksCreateInput as lq, UsersWebhooksCreateOutput as lr, UsersWebhooksDeleteInput as ls, UsersWebhooksDeleteOutput as lt, UsersWebhooksDeliveriesListInput as lu, UsersWebhooksDeliveriesListOutput as lv, UsersWebhooksGetInput as lw, UsersWebhooksGetOutput as lx, UsersWebhooksListInput as ly, UsersWebhooksListOutput as lz, BrainClickupListsListInput as m, BrainClickupListsListOutput as n, BrainClickupSpacesListInput as o, BrainClickupSpacesListOutput as p, BrainCognitionDigestInput as q, BrainCognitionDigestOutput as r, BrainCognitionStatusInput as s, BrainCognitionStatusOutput as t, BrainCognitionSweepInput as u, BrainCognitionSweepOutput as v, BrainConnectorBranchesListInput as w, BrainConnectorBranchesListOutput as x, BrainConnectorConnectionsListInput as y, BrainConnectorConnectionsListOutput as z };
|