@productcraft/platform-auth 0.1.2 → 0.2.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/README.md +9 -9
- package/dist/index.d.cts +2106 -238
- package/dist/index.d.ts +2106 -238
- package/package.json +3 -3
package/dist/index.d.cts
CHANGED
|
@@ -902,10 +902,15 @@ interface paths {
|
|
|
902
902
|
path?: never;
|
|
903
903
|
cookie?: never;
|
|
904
904
|
};
|
|
905
|
-
/**
|
|
905
|
+
/**
|
|
906
|
+
* List the API keys in this workspace
|
|
907
|
+
* @description Newest first, as the standard cursor-paginated `{data, pagination}` envelope (20 per page, at most 100). Plaintext tokens are never returned, only prefixes and metadata.
|
|
908
|
+
*
|
|
909
|
+
* **Deprecated legacy shape:** a request that sends neither `limit` nor `cursor` gets a bare JSON array of every key (capped at 1000), unless its `User-Agent` is a ProductCraft SDK (`productcraft-…`), which always gets the envelope. The array is kept only for `@productcraft/platform-auth` 0.0.x clients and is removed in the platform API's next major version; send `limit` (or use an SDK).
|
|
910
|
+
*/
|
|
906
911
|
get: operations["PlatformApiKeyController_list"];
|
|
907
912
|
put?: never;
|
|
908
|
-
/** Mint a new PAK. Choose what it can do with `preset` (a ready-made set such as `mail-send`) or `policy_ids` (managed policies you wrote), never both. The plaintext `token` is returned ONCE — store it now, then call `GET /v1/api-keys/self` with it to check what it can do. The minter can grant at most their own effective permissions. Cookie/JWT only — PAKs cannot mint other PAKs.
|
|
913
|
+
/** Mint a new PAK. Choose what it can do with `preset` (a ready-made set such as `mail-send`) or `policy_ids` (managed policies you wrote), never both. The plaintext `token` is returned ONCE — store it now, then call `GET /v1/api-keys/self` with it to check what it can do. The minter can grant at most their own effective permissions. Cookie/JWT only — PAKs cannot mint other PAKs. Send an `Idempotency-Key` to make a retry safe: a retry of a mint that succeeded mints nothing and answers `409 PAK_ALREADY_MINTED` with that key's `id` (the token itself is never cached). */
|
|
909
914
|
post: operations["PlatformApiKeyController_create"];
|
|
910
915
|
delete?: never;
|
|
911
916
|
options?: never;
|
|
@@ -1314,6 +1319,8 @@ interface components {
|
|
|
1314
1319
|
*/
|
|
1315
1320
|
code: string;
|
|
1316
1321
|
};
|
|
1322
|
+
/** @enum {string} */
|
|
1323
|
+
ApiKeyPresetKey: "mail-send" | "waitlist-write" | "trawl-jobs" | "readonly" | "full";
|
|
1317
1324
|
ApiKeySelfResponseDto: {
|
|
1318
1325
|
/**
|
|
1319
1326
|
* @description The permission catalog actions behind `allowed`, in the same order.
|
|
@@ -1341,30 +1348,55 @@ interface components {
|
|
|
1341
1348
|
* @description Id of the key that made this request.
|
|
1342
1349
|
*/
|
|
1343
1350
|
key_id: string;
|
|
1344
|
-
/**
|
|
1351
|
+
/**
|
|
1352
|
+
* @description Name given to the key when it was minted.
|
|
1353
|
+
* @example Production mailer
|
|
1354
|
+
*/
|
|
1345
1355
|
name: string;
|
|
1356
|
+
/** @description The workspace the key belongs to. */
|
|
1346
1357
|
workspace: components["schemas"]["ApiKeySelfWorkspaceDto"];
|
|
1358
|
+
/**
|
|
1359
|
+
* Format: uuid
|
|
1360
|
+
* @description Id of the workspace the key belongs to (also `workspace.id`). The SDKs read it once per process to bind `workspace_id` on product calls.
|
|
1361
|
+
*/
|
|
1362
|
+
workspace_id: string;
|
|
1347
1363
|
};
|
|
1348
1364
|
ApiKeySelfWorkspaceDto: {
|
|
1349
|
-
/**
|
|
1365
|
+
/**
|
|
1366
|
+
* Format: uuid
|
|
1367
|
+
* @description Id of the workspace the key belongs to.
|
|
1368
|
+
*/
|
|
1350
1369
|
id: string;
|
|
1351
|
-
/**
|
|
1370
|
+
/**
|
|
1371
|
+
* @description Display name of the workspace.
|
|
1372
|
+
* @example Acme
|
|
1373
|
+
*/
|
|
1352
1374
|
name: string;
|
|
1353
|
-
/**
|
|
1375
|
+
/**
|
|
1376
|
+
* @description Slug of the workspace (the platform routes take it positionally).
|
|
1377
|
+
* @example acme
|
|
1378
|
+
*/
|
|
1354
1379
|
slug: string;
|
|
1355
1380
|
};
|
|
1381
|
+
/** @enum {string} */
|
|
1382
|
+
ApiKeyStatus: "active" | "expired" | "revoked";
|
|
1356
1383
|
AssertionAuthorizationRequestDto: {
|
|
1357
1384
|
/** @description Action to decide, `<service>.<resource>.<verb>`. */
|
|
1358
1385
|
action: string;
|
|
1359
1386
|
/** @description URN the action targets. Omitted means `*`, the strict reading. */
|
|
1360
1387
|
resource?: string;
|
|
1361
1388
|
};
|
|
1389
|
+
/** @enum {string} */
|
|
1390
|
+
AuditActorType: "platform_user" | "system" | "pat";
|
|
1362
1391
|
AuditFeedResponseDto: {
|
|
1392
|
+
/** @description One page of feed items, newest first. */
|
|
1363
1393
|
data: components["schemas"]["FeedItemDto"][];
|
|
1364
1394
|
pagination: components["schemas"]["PaginationDto"];
|
|
1365
1395
|
/** @description Per-source diagnostics so the UI / customer can see which sources contributed to this page and which are stubbed pending the cross-service fanout. */
|
|
1366
1396
|
sources: components["schemas"]["SourceDiagnosticDto"][];
|
|
1367
1397
|
};
|
|
1398
|
+
/** @enum {string} */
|
|
1399
|
+
AuditFeedSource: "workspace_audit" | "heimdall_audit" | "agora_moderation";
|
|
1368
1400
|
AuthorizationServerMetadataDto: {
|
|
1369
1401
|
/**
|
|
1370
1402
|
* @description Non-standard. Declares that authority on this server is an IAM policy document stored on the grant, intersected per request with the authorizing human’s current workspace policy — so a demotion or an offboarding takes effect on the next call rather than at token expiry. The `scope` parameter only names a preset the human then narrows.
|
|
@@ -1381,6 +1413,7 @@ interface components {
|
|
|
1381
1413
|
*/
|
|
1382
1414
|
code_challenge_methods_supported: string[];
|
|
1383
1415
|
/**
|
|
1416
|
+
* @description OAuth grant types the token endpoint accepts (RFC 8414).
|
|
1384
1417
|
* @example [
|
|
1385
1418
|
* "authorization_code",
|
|
1386
1419
|
* "refresh_token"
|
|
@@ -1440,6 +1473,7 @@ interface components {
|
|
|
1440
1473
|
/** @description RFC 6749 token endpoint. */
|
|
1441
1474
|
token_endpoint: string;
|
|
1442
1475
|
/**
|
|
1476
|
+
* @description Client authentication methods the token endpoint accepts (RFC 8414).
|
|
1443
1477
|
* @example [
|
|
1444
1478
|
* "none",
|
|
1445
1479
|
* "client_secret_basic",
|
|
@@ -1449,13 +1483,21 @@ interface components {
|
|
|
1449
1483
|
token_endpoint_auth_methods_supported: string[];
|
|
1450
1484
|
};
|
|
1451
1485
|
AvatarUrlResponseDto: {
|
|
1486
|
+
/** @description URL of the uploaded avatar image. */
|
|
1452
1487
|
avatar_url: string;
|
|
1453
1488
|
};
|
|
1454
1489
|
BoundPolicySummaryDto: {
|
|
1490
|
+
/** @description What the policy is for, when set. */
|
|
1455
1491
|
description: string | null;
|
|
1456
|
-
/**
|
|
1492
|
+
/**
|
|
1493
|
+
* Format: uuid
|
|
1494
|
+
* @description Id of the policy.
|
|
1495
|
+
*/
|
|
1457
1496
|
id: string;
|
|
1458
|
-
/**
|
|
1497
|
+
/**
|
|
1498
|
+
* @description Name of the policy.
|
|
1499
|
+
* @example mail-readonly
|
|
1500
|
+
*/
|
|
1459
1501
|
name: string;
|
|
1460
1502
|
};
|
|
1461
1503
|
CallbackBodyDto: {
|
|
@@ -1569,17 +1611,26 @@ interface components {
|
|
|
1569
1611
|
* @description The human who consented to this grant.
|
|
1570
1612
|
*/
|
|
1571
1613
|
account_id: string;
|
|
1614
|
+
/** @description OAuth `client_id` of the connected app. */
|
|
1572
1615
|
client_id: string;
|
|
1616
|
+
/** @description Name the app registered with. */
|
|
1573
1617
|
client_name: string;
|
|
1574
|
-
/**
|
|
1618
|
+
/**
|
|
1619
|
+
* Format: date-time
|
|
1620
|
+
* @description When access was granted.
|
|
1621
|
+
*/
|
|
1575
1622
|
created_at: string;
|
|
1576
1623
|
/**
|
|
1577
1624
|
* Format: date-time
|
|
1578
1625
|
* @description When the assistant made its first successful tool call through this connection. Null until then, which is how a client that authorized but never worked shows up.
|
|
1579
1626
|
*/
|
|
1580
1627
|
first_tool_call_at: string | null;
|
|
1581
|
-
/**
|
|
1628
|
+
/**
|
|
1629
|
+
* Format: uuid
|
|
1630
|
+
* @description Id of the grant (pass it to disconnect).
|
|
1631
|
+
*/
|
|
1582
1632
|
grant_id: string;
|
|
1633
|
+
/** @description Whether ProductCraft verified the app (dynamically registered apps never are). */
|
|
1583
1634
|
is_verified: boolean;
|
|
1584
1635
|
/** @description Policy the human approved. Effective authority is this intersected with the human's current workspace policy, per request. */
|
|
1585
1636
|
policy: components["schemas"]["PolicyStatementDto"][];
|
|
@@ -1594,14 +1645,22 @@ interface components {
|
|
|
1594
1645
|
* "mail"
|
|
1595
1646
|
* ]
|
|
1596
1647
|
*/
|
|
1597
|
-
products:
|
|
1648
|
+
products: components["schemas"]["McpProduct"][] | null;
|
|
1649
|
+
/** @description Resource indicator the grant's tokens are bound to. */
|
|
1598
1650
|
resource: string;
|
|
1599
|
-
/**
|
|
1651
|
+
/**
|
|
1652
|
+
* Format: date-time
|
|
1653
|
+
* @description When the grant was revoked, or `null` while it is live.
|
|
1654
|
+
*/
|
|
1600
1655
|
revoked_at: string | null;
|
|
1601
|
-
/**
|
|
1656
|
+
/**
|
|
1657
|
+
* Format: uuid
|
|
1658
|
+
* @description Id of the workspace the grant is scoped to.
|
|
1659
|
+
*/
|
|
1602
1660
|
workspace_id: string;
|
|
1603
1661
|
};
|
|
1604
1662
|
ConnectedClientListDto: {
|
|
1663
|
+
/** @description One page of connected apps. */
|
|
1605
1664
|
data: components["schemas"]["ConnectedClientDto"][];
|
|
1606
1665
|
pagination: components["schemas"]["PaginationDto"];
|
|
1607
1666
|
};
|
|
@@ -1918,7 +1977,9 @@ interface components {
|
|
|
1918
1977
|
};
|
|
1919
1978
|
EnableWorkspaceServiceDto: {
|
|
1920
1979
|
/** @description Optional per-service settings blob captured at enable time. */
|
|
1921
|
-
settings?:
|
|
1980
|
+
settings?: {
|
|
1981
|
+
[key: string]: unknown;
|
|
1982
|
+
};
|
|
1922
1983
|
};
|
|
1923
1984
|
ErrorParamDto: {
|
|
1924
1985
|
/**
|
|
@@ -1983,7 +2044,10 @@ interface components {
|
|
|
1983
2044
|
* @example mail.domain.verified
|
|
1984
2045
|
*/
|
|
1985
2046
|
action: string;
|
|
1986
|
-
/**
|
|
2047
|
+
/**
|
|
2048
|
+
* Format: uuid
|
|
2049
|
+
* @description Account id of the actor, or `null` for system actions.
|
|
2050
|
+
*/
|
|
1987
2051
|
actor_id: string | null;
|
|
1988
2052
|
/**
|
|
1989
2053
|
* @description Actor classification — one of 'platform_user' | 'end_user' | 'm2m' | 'system' | 'pat' | 'api_key'.
|
|
@@ -1991,23 +2055,33 @@ interface components {
|
|
|
1991
2055
|
*/
|
|
1992
2056
|
actor_type: string;
|
|
1993
2057
|
/** @description Free-form metadata (jsonb). */
|
|
1994
|
-
metadata:
|
|
1995
|
-
|
|
2058
|
+
metadata: {
|
|
2059
|
+
[key: string]: unknown;
|
|
2060
|
+
};
|
|
2061
|
+
/**
|
|
2062
|
+
* @description Kind of resource the action touched.
|
|
2063
|
+
* @example workspace_membership
|
|
2064
|
+
*/
|
|
1996
2065
|
resource: string;
|
|
1997
|
-
/**
|
|
2066
|
+
/**
|
|
2067
|
+
* Format: uuid
|
|
2068
|
+
* @description Id of the resource, when it has one.
|
|
2069
|
+
*/
|
|
1998
2070
|
resource_id: string | null;
|
|
1999
2071
|
/**
|
|
2000
2072
|
* @description Which audit table this row came from.
|
|
2001
2073
|
* @example workspace_audit
|
|
2002
|
-
* @enum {string}
|
|
2003
2074
|
*/
|
|
2004
|
-
source: "
|
|
2075
|
+
source: components["schemas"]["AuditFeedSource"];
|
|
2005
2076
|
/**
|
|
2006
2077
|
* @description Stable per-source identifier. Used by the cursor to resume from the same point on the next page.
|
|
2007
2078
|
* @example 4e5f5c9e-b4ee-4401-9275-283feb66c178
|
|
2008
2079
|
*/
|
|
2009
2080
|
source_ref: string;
|
|
2010
|
-
/**
|
|
2081
|
+
/**
|
|
2082
|
+
* Format: date-time
|
|
2083
|
+
* @description When the action happened.
|
|
2084
|
+
*/
|
|
2011
2085
|
timestamp: string;
|
|
2012
2086
|
};
|
|
2013
2087
|
FeedbackResponseDto: {
|
|
@@ -2036,55 +2110,90 @@ interface components {
|
|
|
2036
2110
|
IntrospectAccountDto: {
|
|
2037
2111
|
/** @description Public HTTPS URL of the uploaded avatar, or null when no avatar is set. */
|
|
2038
2112
|
avatar_url: string | null;
|
|
2113
|
+
/** @description Display name, when set. */
|
|
2039
2114
|
display_name: string | null;
|
|
2115
|
+
/** @description Primary email of the account, when it has one. */
|
|
2040
2116
|
email: string | null;
|
|
2041
2117
|
/**
|
|
2042
2118
|
* Format: date-time
|
|
2043
2119
|
* @description Timestamp when this account verified its primary email, or null if unverified.
|
|
2044
2120
|
*/
|
|
2045
2121
|
email_verified_at: string | null;
|
|
2046
|
-
/**
|
|
2122
|
+
/**
|
|
2123
|
+
* Format: uuid
|
|
2124
|
+
* @description Id of the account.
|
|
2125
|
+
*/
|
|
2047
2126
|
id: string;
|
|
2048
2127
|
/** @description Account status (e.g. `active`, `suspended`). */
|
|
2049
2128
|
status: string;
|
|
2129
|
+
/** @description Unique username of the account. */
|
|
2050
2130
|
username: string;
|
|
2051
2131
|
};
|
|
2052
2132
|
IntrospectApiKeyResponseDto: {
|
|
2053
|
-
/**
|
|
2133
|
+
/**
|
|
2134
|
+
* Format: uuid
|
|
2135
|
+
* @description Id of the key.
|
|
2136
|
+
*/
|
|
2054
2137
|
api_key_id: string;
|
|
2055
|
-
/**
|
|
2138
|
+
/**
|
|
2139
|
+
* Format: uuid
|
|
2140
|
+
* @description Account id of the person who minted the key, or `null` when that account is gone.
|
|
2141
|
+
*/
|
|
2056
2142
|
created_by: string | null;
|
|
2143
|
+
/** @description Always `true` on a 200: unknown, revoked and expired keys answer 401. */
|
|
2057
2144
|
is_valid: boolean;
|
|
2058
2145
|
/** @description Merged effective policy across every managed policy bound to this PAK. */
|
|
2059
2146
|
policy: components["schemas"]["PolicyStatementDto"][];
|
|
2060
|
-
/**
|
|
2147
|
+
/**
|
|
2148
|
+
* Format: uuid
|
|
2149
|
+
* @description Id of the workspace the key belongs to.
|
|
2150
|
+
*/
|
|
2061
2151
|
workspace_id: string;
|
|
2062
2152
|
};
|
|
2063
2153
|
IntrospectPrincipalDto: {
|
|
2154
|
+
/** @description The account's primary email, when it has one. */
|
|
2064
2155
|
email: string | null;
|
|
2065
|
-
/**
|
|
2156
|
+
/**
|
|
2157
|
+
* Format: uuid
|
|
2158
|
+
* @description Id of the authenticated account.
|
|
2159
|
+
*/
|
|
2066
2160
|
id: string;
|
|
2161
|
+
/** @description The account's display name, when set. */
|
|
2067
2162
|
name: string | null;
|
|
2068
|
-
/**
|
|
2163
|
+
/**
|
|
2164
|
+
* Format: uuid
|
|
2165
|
+
* @description JWT subject: the account id.
|
|
2166
|
+
*/
|
|
2069
2167
|
sub: string;
|
|
2070
2168
|
};
|
|
2071
2169
|
IntrospectResponseDto: {
|
|
2170
|
+
/** @description The caller's account profile, or `null` when not authenticated. */
|
|
2072
2171
|
account?: components["schemas"]["IntrospectAccountDto"] | null;
|
|
2073
2172
|
/** @description False for an anonymous caller and for an access token whose session has been signed out. */
|
|
2074
2173
|
is_authenticated: boolean;
|
|
2174
|
+
/** @description The authenticated caller, or `null` when the request carries no valid session. */
|
|
2075
2175
|
principal?: components["schemas"]["IntrospectPrincipalDto"] | null;
|
|
2176
|
+
/** @description Workspaces the caller is a member of (empty when not authenticated). */
|
|
2076
2177
|
workspaces?: components["schemas"]["IntrospectWorkspaceListItemDto"][];
|
|
2077
2178
|
};
|
|
2078
2179
|
IntrospectRoleDto: {
|
|
2079
|
-
/**
|
|
2180
|
+
/**
|
|
2181
|
+
* Format: uuid
|
|
2182
|
+
* @description Id of the role (the key's workspace id for a workspace key).
|
|
2183
|
+
*/
|
|
2080
2184
|
id: string;
|
|
2185
|
+
/** @description Name of the role (`owner`, `admin`, `member`, a custom role, or `pak`). */
|
|
2081
2186
|
name: string;
|
|
2082
2187
|
};
|
|
2083
2188
|
IntrospectWorkspaceListItemDto: {
|
|
2084
2189
|
/** @description Workspace identity avatar (public HTTPS URL), or null when none is set. Console workspace switcher reads this. */
|
|
2085
2190
|
avatar_url: string | null;
|
|
2191
|
+
/** @description Display name of the workspace. */
|
|
2086
2192
|
display_name: string;
|
|
2087
|
-
/**
|
|
2193
|
+
/**
|
|
2194
|
+
* Format: uuid
|
|
2195
|
+
* @description Id of the workspace.
|
|
2196
|
+
*/
|
|
2088
2197
|
id: string;
|
|
2089
2198
|
/**
|
|
2090
2199
|
* @description Caller’s role name in this workspace.
|
|
@@ -2099,6 +2208,7 @@ interface components {
|
|
|
2099
2208
|
* ]
|
|
2100
2209
|
*/
|
|
2101
2210
|
services: string[];
|
|
2211
|
+
/** @description Slug of the workspace (platform routes take it positionally). */
|
|
2102
2212
|
slug: string;
|
|
2103
2213
|
};
|
|
2104
2214
|
IntrospectWorkspaceResponseDto: {
|
|
@@ -2107,9 +2217,11 @@ interface components {
|
|
|
2107
2217
|
* @description Canonical workspace UUID. Only present for members — non-members get a uniform low-information response.
|
|
2108
2218
|
*/
|
|
2109
2219
|
id?: string;
|
|
2220
|
+
/** @description Whether the caller is a member of the workspace (a workspace key bound to it counts as one). Non-members get no `id`, no role and an empty policy. */
|
|
2110
2221
|
is_member: boolean;
|
|
2111
2222
|
/** @description Effective IAM-style policy for this caller in this workspace. */
|
|
2112
2223
|
policy: components["schemas"]["PolicyStatementDto"][];
|
|
2224
|
+
/** @description The caller's role in the workspace (`{ id, name: 'pak' }` for a workspace key), or `null` for a non-member. */
|
|
2113
2225
|
role: components["schemas"]["IntrospectRoleDto"] | null;
|
|
2114
2226
|
/**
|
|
2115
2227
|
* @description Enabled services on this workspace.
|
|
@@ -2175,38 +2287,47 @@ interface components {
|
|
|
2175
2287
|
keys: components["schemas"]["JwkDto"][];
|
|
2176
2288
|
};
|
|
2177
2289
|
ListManagedPoliciesResponseDto: {
|
|
2290
|
+
/** @description One page of managed policies. */
|
|
2178
2291
|
data: components["schemas"]["ManagedPolicyResponseDto"][];
|
|
2179
2292
|
pagination: components["schemas"]["PaginationDto"];
|
|
2180
2293
|
};
|
|
2181
2294
|
ListPakPresetsResponseDto: {
|
|
2295
|
+
/** @description Every preset a key can be minted from. */
|
|
2182
2296
|
data: components["schemas"]["PakPresetDto"][];
|
|
2183
2297
|
/** @description Always a single page: there are five presets. */
|
|
2184
2298
|
pagination: components["schemas"]["PaginationDto"];
|
|
2185
2299
|
};
|
|
2186
2300
|
ListPlatformApiKeysResponseDto: {
|
|
2301
|
+
/** @description One page of API keys, newest first. */
|
|
2187
2302
|
data: components["schemas"]["PublicApiKeyDto"][];
|
|
2188
2303
|
pagination: components["schemas"]["PaginationDto"];
|
|
2189
2304
|
};
|
|
2190
2305
|
ListWorkspaceAuditLogsResponseDto: {
|
|
2306
|
+
/** @description One page of audit log entries, newest first. */
|
|
2191
2307
|
data: components["schemas"]["WorkspaceAuditLogEntryDto"][];
|
|
2192
2308
|
pagination: components["schemas"]["PaginationDto"];
|
|
2193
2309
|
};
|
|
2194
2310
|
ListWorkspaceInvitesResponseDto: {
|
|
2311
|
+
/** @description One page of invites. */
|
|
2195
2312
|
data: components["schemas"]["WorkspaceInviteListItemDto"][];
|
|
2196
2313
|
pagination: components["schemas"]["PaginationDto"];
|
|
2197
2314
|
};
|
|
2198
2315
|
ListWorkspaceMembersResponseDto: {
|
|
2316
|
+
/** @description One page of workspace members. */
|
|
2199
2317
|
data: components["schemas"]["WorkspaceMemberResponseDto"][];
|
|
2200
2318
|
pagination: components["schemas"]["PaginationDto"];
|
|
2201
2319
|
};
|
|
2202
2320
|
ListWorkspaceRolesResponseDto: {
|
|
2321
|
+
/** @description One page of roles. */
|
|
2203
2322
|
data: components["schemas"]["WorkspaceRoleResponseDto"][];
|
|
2204
2323
|
pagination: components["schemas"]["PaginationDto"];
|
|
2205
2324
|
};
|
|
2206
2325
|
ListWorkspaceServicesResponseDto: {
|
|
2326
|
+
/** @description Every product service and its state in this workspace. */
|
|
2207
2327
|
data: components["schemas"]["WorkspaceServiceStateDto"][];
|
|
2208
2328
|
};
|
|
2209
2329
|
ListWorkspacesResponseDto: {
|
|
2330
|
+
/** @description One page of workspaces the caller belongs to. */
|
|
2210
2331
|
data: components["schemas"]["WorkspaceListItemDto"][];
|
|
2211
2332
|
pagination: components["schemas"]["PaginationDto"];
|
|
2212
2333
|
};
|
|
@@ -2224,10 +2345,10 @@ interface components {
|
|
|
2224
2345
|
*/
|
|
2225
2346
|
bound_key_count: number;
|
|
2226
2347
|
/**
|
|
2348
|
+
* @description Always `true`: the policy is gone.
|
|
2227
2349
|
* @example true
|
|
2228
|
-
* @enum {number}
|
|
2229
2350
|
*/
|
|
2230
|
-
deleted:
|
|
2351
|
+
deleted: boolean;
|
|
2231
2352
|
/**
|
|
2232
2353
|
* Format: uuid
|
|
2233
2354
|
* @description The deleted policy.
|
|
@@ -2242,71 +2363,109 @@ interface components {
|
|
|
2242
2363
|
* @example 3
|
|
2243
2364
|
*/
|
|
2244
2365
|
bound_key_count: number;
|
|
2245
|
-
/**
|
|
2366
|
+
/**
|
|
2367
|
+
* Format: date-time
|
|
2368
|
+
* @description When the policy was created.
|
|
2369
|
+
*/
|
|
2246
2370
|
created_at: string;
|
|
2247
2371
|
/**
|
|
2248
2372
|
* Format: uuid
|
|
2249
2373
|
* @description Account that authored the row. Only revealed to callers with `workspace.audit.read`; plain members see null.
|
|
2250
2374
|
*/
|
|
2251
2375
|
created_by: string | null;
|
|
2376
|
+
/** @description What the policy is for, when set. */
|
|
2252
2377
|
description: string | null;
|
|
2253
|
-
/**
|
|
2378
|
+
/**
|
|
2379
|
+
* Format: uuid
|
|
2380
|
+
* @description Id of the policy.
|
|
2381
|
+
*/
|
|
2254
2382
|
id: string;
|
|
2255
|
-
/**
|
|
2383
|
+
/**
|
|
2384
|
+
* @description Name of the policy, unique in the workspace.
|
|
2385
|
+
* @example mail-readonly
|
|
2386
|
+
*/
|
|
2256
2387
|
name: string;
|
|
2257
2388
|
/** @description IAM-style policy statements bound to this managed policy. */
|
|
2258
2389
|
policy: components["schemas"]["PolicyStatementDto"][];
|
|
2259
2390
|
/**
|
|
2260
2391
|
* @description The workspace-key preset this policy was created from, or null for a policy a person wrote. Minting a key with `preset` creates this policy once per workspace and reuses it. It stays set after the policy is edited, so show it as "based on preset".
|
|
2261
2392
|
* @example mail-send
|
|
2262
|
-
* @enum {string|null}
|
|
2263
2393
|
*/
|
|
2264
|
-
preset_key: "
|
|
2265
|
-
/**
|
|
2394
|
+
preset_key: components["schemas"]["ApiKeyPresetKey"] | null;
|
|
2395
|
+
/**
|
|
2396
|
+
* Format: date-time
|
|
2397
|
+
* @description When the policy was last changed.
|
|
2398
|
+
*/
|
|
2266
2399
|
updated_at: string;
|
|
2267
|
-
/**
|
|
2400
|
+
/**
|
|
2401
|
+
* Format: uuid
|
|
2402
|
+
* @description Id of the workspace that owns the policy.
|
|
2403
|
+
*/
|
|
2268
2404
|
workspace_id: string;
|
|
2269
2405
|
};
|
|
2270
2406
|
ManagedPolicyResponseDto: {
|
|
2271
|
-
/**
|
|
2407
|
+
/**
|
|
2408
|
+
* Format: date-time
|
|
2409
|
+
* @description When the policy was created.
|
|
2410
|
+
*/
|
|
2272
2411
|
created_at: string;
|
|
2273
2412
|
/**
|
|
2274
2413
|
* Format: uuid
|
|
2275
2414
|
* @description Account that authored the row. Only revealed to callers with `workspace.audit.read`; plain members see null.
|
|
2276
2415
|
*/
|
|
2277
2416
|
created_by: string | null;
|
|
2417
|
+
/** @description What the policy is for, when set. */
|
|
2278
2418
|
description: string | null;
|
|
2279
|
-
/**
|
|
2419
|
+
/**
|
|
2420
|
+
* Format: uuid
|
|
2421
|
+
* @description Id of the policy.
|
|
2422
|
+
*/
|
|
2280
2423
|
id: string;
|
|
2281
|
-
/**
|
|
2424
|
+
/**
|
|
2425
|
+
* @description Name of the policy, unique in the workspace.
|
|
2426
|
+
* @example mail-readonly
|
|
2427
|
+
*/
|
|
2282
2428
|
name: string;
|
|
2283
2429
|
/** @description IAM-style policy statements bound to this managed policy. */
|
|
2284
2430
|
policy: components["schemas"]["PolicyStatementDto"][];
|
|
2285
2431
|
/**
|
|
2286
2432
|
* @description The workspace-key preset this policy was created from, or null for a policy a person wrote. Minting a key with `preset` creates this policy once per workspace and reuses it. It stays set after the policy is edited, so show it as "based on preset".
|
|
2287
2433
|
* @example mail-send
|
|
2288
|
-
* @enum {string|null}
|
|
2289
2434
|
*/
|
|
2290
|
-
preset_key: "
|
|
2291
|
-
/**
|
|
2435
|
+
preset_key: components["schemas"]["ApiKeyPresetKey"] | null;
|
|
2436
|
+
/**
|
|
2437
|
+
* Format: date-time
|
|
2438
|
+
* @description When the policy was last changed.
|
|
2439
|
+
*/
|
|
2292
2440
|
updated_at: string;
|
|
2293
|
-
/**
|
|
2441
|
+
/**
|
|
2442
|
+
* Format: uuid
|
|
2443
|
+
* @description Id of the workspace that owns the policy.
|
|
2444
|
+
*/
|
|
2294
2445
|
workspace_id: string;
|
|
2295
2446
|
};
|
|
2447
|
+
/** @enum {string} */
|
|
2448
|
+
McpProduct: "auth" | "mail" | "waitlist" | "social" | "trawl";
|
|
2296
2449
|
MeProfileDto: {
|
|
2297
2450
|
/** @description Short-lived (15 min) presigned GET URL for the avatar object in private object storage. NULL when no avatar has been set; the frontend then renders initials. The API mints a fresh URL on every response, so a stable bookmark of this value is not meaningful. */
|
|
2298
2451
|
avatar_url: string | null;
|
|
2452
|
+
/** @description Your display name, when set. */
|
|
2299
2453
|
display_name: string | null;
|
|
2454
|
+
/** @description Your primary email, when you have one. */
|
|
2300
2455
|
email: string | null;
|
|
2301
2456
|
/**
|
|
2302
2457
|
* Format: date-time
|
|
2303
2458
|
* @description Timestamp when this account verified its primary email, or null if unverified.
|
|
2304
2459
|
*/
|
|
2305
2460
|
email_verified_at: string | null;
|
|
2306
|
-
/**
|
|
2461
|
+
/**
|
|
2462
|
+
* Format: uuid
|
|
2463
|
+
* @description Id of your account.
|
|
2464
|
+
*/
|
|
2307
2465
|
id: string;
|
|
2308
2466
|
/** @description Account status (e.g. `active`, `suspended`). */
|
|
2309
2467
|
status: string;
|
|
2468
|
+
/** @description Your username. */
|
|
2310
2469
|
username: string;
|
|
2311
2470
|
};
|
|
2312
2471
|
MintPakResponseDto: {
|
|
@@ -2336,10 +2495,41 @@ interface components {
|
|
|
2336
2495
|
*/
|
|
2337
2496
|
error_description: string;
|
|
2338
2497
|
};
|
|
2498
|
+
OAuthTokenResponseDto: {
|
|
2499
|
+
/** @description Signed JWT, audience-bound to the resource indicator and carrying the workspace, the preset name and the client id. It carries no policy — authority is resolved per request from the grant row and the human’s live policy. */
|
|
2500
|
+
access_token: string;
|
|
2501
|
+
/**
|
|
2502
|
+
* @description Seconds until the access token expires (≤ 900).
|
|
2503
|
+
* @example 900
|
|
2504
|
+
*/
|
|
2505
|
+
expires_in: number;
|
|
2506
|
+
/** @description The policy this token carries. Effective authority is this intersected with the authorizing human's current workspace policy, re-evaluated on every call. */
|
|
2507
|
+
policy: components["schemas"]["PolicyStatementDto"][];
|
|
2508
|
+
/** @description Rotating refresh token. The one presented is consumed; replaying it revokes the whole grant family. */
|
|
2509
|
+
refresh_token: string;
|
|
2510
|
+
/**
|
|
2511
|
+
* @description Preset name(s) the grant started from. Present for RFC 6749 §5.1 compliance; it is not the authority — `policy` is.
|
|
2512
|
+
* @example mail
|
|
2513
|
+
*/
|
|
2514
|
+
scope: string;
|
|
2515
|
+
/** @example Bearer */
|
|
2516
|
+
token_type: string;
|
|
2517
|
+
/**
|
|
2518
|
+
* Format: uuid
|
|
2519
|
+
* @description Workspace the grant is scoped to.
|
|
2520
|
+
*/
|
|
2521
|
+
workspace_id: string;
|
|
2522
|
+
};
|
|
2339
2523
|
PaginationDto: {
|
|
2340
|
-
/**
|
|
2524
|
+
/**
|
|
2525
|
+
* @description Whether another page follows this one.
|
|
2526
|
+
* @example false
|
|
2527
|
+
*/
|
|
2341
2528
|
has_more: boolean;
|
|
2342
|
-
/**
|
|
2529
|
+
/**
|
|
2530
|
+
* @description Pass as `cursor` to get the next page; `null` on the last page.
|
|
2531
|
+
* @example null
|
|
2532
|
+
*/
|
|
2343
2533
|
next_cursor: string | null;
|
|
2344
2534
|
};
|
|
2345
2535
|
PakGrantPreviewDto: {
|
|
@@ -2382,14 +2572,20 @@ interface components {
|
|
|
2382
2572
|
* ]
|
|
2383
2573
|
*/
|
|
2384
2574
|
allowed: string[];
|
|
2385
|
-
/**
|
|
2575
|
+
/**
|
|
2576
|
+
* @description What a key minted from this preset can do.
|
|
2577
|
+
* @example Send email from your verified domains and check what happened to it. Cannot read message bodies or change domains.
|
|
2578
|
+
*/
|
|
2386
2579
|
description: string;
|
|
2387
2580
|
/**
|
|
2581
|
+
* @description Preset to pass as `preset` when minting a key.
|
|
2388
2582
|
* @example mail-send
|
|
2389
|
-
* @enum {string}
|
|
2390
2583
|
*/
|
|
2391
|
-
key: "
|
|
2392
|
-
/**
|
|
2584
|
+
key: components["schemas"]["ApiKeyPresetKey"];
|
|
2585
|
+
/**
|
|
2586
|
+
* @description Short human label for the preset.
|
|
2587
|
+
* @example Send email
|
|
2588
|
+
*/
|
|
2393
2589
|
label: string;
|
|
2394
2590
|
/**
|
|
2395
2591
|
* Format: uuid
|
|
@@ -2398,13 +2594,15 @@ interface components {
|
|
|
2398
2594
|
policy_id: string | null;
|
|
2399
2595
|
};
|
|
2400
2596
|
/** @description Error codes this API returns (open set: a client must accept codes it does not know; new codes are not a breaking change). Each is documented at https://productcraft.co/docs/errors#<code>. */
|
|
2401
|
-
PlatformErrorCode: ("BAD_REQUEST" | "VALIDATION_ERROR" | "UNAUTHORIZED" | "PAYMENT_REQUIRED" | "FORBIDDEN" | "NOT_FOUND" | "METHOD_NOT_ALLOWED" | "NOT_ACCEPTABLE" | "REQUEST_TIMEOUT" | "CONFLICT" | "GONE" | "PRECONDITION_FAILED" | "PAYLOAD_TOO_LARGE" | "UNSUPPORTED_MEDIA_TYPE" | "UNPROCESSABLE_ENTITY" | "PRECONDITION_REQUIRED" | "RATE_LIMITED" | "INTERNAL_SERVER_ERROR" | "NOT_IMPLEMENTED" | "BAD_GATEWAY" | "SERVICE_UNAVAILABLE" | "GATEWAY_TIMEOUT" | "SERVICE_NOT_ENABLED" | "INVALID_CREDENTIALS" | "SESSION_REVOKED" | "MCP_NOT_PERMITTED" | "MCP_WORKSPACE_MISMATCH" | "PAK_NOT_PERMITTED" | "ACTIONS_NOT_GRANTABLE" | "IDEMPOTENCY_KEY_REUSE" | "IDEMPOTENCY_KEY_REQUIRED" | "WEBHOOK_ENDPOINT_LIMIT" | "WEBHOOK_ENDPOINT_NOT_FOUND" | "WEBHOOK_ENDPOINT_NOT_SUBSCRIBED" | "WEBHOOK_EVENT_NOT_FOUND" | "WEBHOOK_EVENT_TYPE_UNKNOWN" | "ACCOUNT_DEACTIVATED" | "ACCOUNT_SUSPENDED" | "ALREADY_A_MEMBER" | "CROSS_ORIGIN_REJECTED" | "EMAIL_NOT_VERIFIED" | "INVITE_EMAIL_MISMATCH" | "INVITE_EXHAUSTED" | "INVITE_EXPIRED" | "INVITE_INVALID" | "INVITE_NOT_FOUND" | "INVITE_REVOKED" | "LAST_MEMBER" | "MEMBER_RANK_EXCEEDED" | "NOT_A_MEMBER" | "OAUTH_GRANT_ADMIN_REVOKED" | "OWNER_ROLE_REQUIRED" | "PAK_EXPIRED" | "PAK_NAME_REQUIRED" | "PAK_NAME_TOO_LONG" | "PAK_NOT_FOUND" | "PAK_REVOKED" | "PASSWORD_RESET_INVALID" | "POLICY_INVALID" | "POLICY_NAME_TAKEN" | "POLICY_NOT_FOUND" | "ROLE_HAS_MEMBERS" | "ROLE_NAME_TAKEN" | "ROLE_NOT_FOUND" | "ROLE_SYSTEM_IMMUTABLE" | "SERVICE_NOT_ACTIVATED" | "SERVICE_UNKNOWN" | "SOLE_OWNER" | "TOO_MANY_ATTEMPTS" | "WORKSPACE_KEY_REQUIRED") | string;
|
|
2597
|
+
PlatformErrorCode: ("BAD_REQUEST" | "VALIDATION_ERROR" | "UNAUTHORIZED" | "PAYMENT_REQUIRED" | "FORBIDDEN" | "NOT_FOUND" | "METHOD_NOT_ALLOWED" | "NOT_ACCEPTABLE" | "REQUEST_TIMEOUT" | "CONFLICT" | "GONE" | "PRECONDITION_FAILED" | "PAYLOAD_TOO_LARGE" | "UNSUPPORTED_MEDIA_TYPE" | "UNPROCESSABLE_ENTITY" | "PRECONDITION_REQUIRED" | "RATE_LIMITED" | "INTERNAL_SERVER_ERROR" | "NOT_IMPLEMENTED" | "BAD_GATEWAY" | "SERVICE_UNAVAILABLE" | "GATEWAY_TIMEOUT" | "SERVICE_NOT_ENABLED" | "INVALID_CREDENTIALS" | "SESSION_REVOKED" | "MCP_NOT_PERMITTED" | "MCP_WORKSPACE_MISMATCH" | "PAK_NOT_PERMITTED" | "ACTIONS_NOT_GRANTABLE" | "IDEMPOTENCY_KEY_REUSE" | "IDEMPOTENCY_KEY_REQUIRED" | "IDEMPOTENCY_IN_PROGRESS" | "WEBHOOK_ENDPOINT_LIMIT" | "WEBHOOK_ENDPOINT_NOT_FOUND" | "WEBHOOK_ENDPOINT_NOT_SUBSCRIBED" | "WEBHOOK_EVENT_NOT_FOUND" | "WEBHOOK_EVENT_TYPE_UNKNOWN" | "ACCOUNT_DEACTIVATED" | "ACCOUNT_SUSPENDED" | "ALREADY_A_MEMBER" | "CROSS_ORIGIN_REJECTED" | "EMAIL_NOT_VERIFIED" | "INVITE_EMAIL_MISMATCH" | "INVITE_EXHAUSTED" | "INVITE_EXPIRED" | "INVITE_INVALID" | "INVITE_NOT_FOUND" | "INVITE_REVOKED" | "LAST_MEMBER" | "MEMBER_RANK_EXCEEDED" | "NOT_A_MEMBER" | "OAUTH_GRANT_ADMIN_REVOKED" | "OWNER_ROLE_REQUIRED" | "PAK_ALREADY_MINTED" | "PAK_EXPIRED" | "PAK_NAME_REQUIRED" | "PAK_NAME_TOO_LONG" | "PAK_NOT_FOUND" | "PAK_REVOKED" | "PASSWORD_RESET_INVALID" | "POLICY_INVALID" | "POLICY_NAME_TAKEN" | "POLICY_NOT_FOUND" | "ROLE_HAS_MEMBERS" | "ROLE_NAME_TAKEN" | "ROLE_NOT_FOUND" | "ROLE_SYSTEM_IMMUTABLE" | "SERVICE_NOT_ACTIVATED" | "SERVICE_UNKNOWN" | "SOLE_OWNER" | "TOO_MANY_ATTEMPTS" | "WORKSPACE_KEY_REQUIRED") | string;
|
|
2402
2598
|
PolicyBindingCountDto: {
|
|
2403
2599
|
/** @description Number of platform API keys bound to this policy. */
|
|
2404
2600
|
pak: number;
|
|
2405
2601
|
/** @description Number of workspace roles bound to this policy. */
|
|
2406
2602
|
role: number;
|
|
2407
2603
|
};
|
|
2604
|
+
/** @enum {string} */
|
|
2605
|
+
PolicyEffect: "allow" | "deny";
|
|
2408
2606
|
PolicyStatementDto: {
|
|
2409
2607
|
/**
|
|
2410
2608
|
* @description Action strings the statement applies to. Wildcards (e.g. `social.*`, `*.read`, `*`) supported per `actionMatches` semantics.
|
|
@@ -2417,9 +2615,8 @@ interface components {
|
|
|
2417
2615
|
/**
|
|
2418
2616
|
* @description Whether the statement allows or denies the listed actions on the listed resources.
|
|
2419
2617
|
* @example allow
|
|
2420
|
-
* @enum {string}
|
|
2421
2618
|
*/
|
|
2422
|
-
effect: "
|
|
2619
|
+
effect: components["schemas"]["PolicyEffect"];
|
|
2423
2620
|
/**
|
|
2424
2621
|
* @description Resource URNs the statement applies to. Use `["*"]` for workspace-wide. Per-resource scoping (e.g. `pcft:agora:community/<uuid>`) is supported by the PAK lane today; the workspace-role authoring API restricts this to `["*"]` for now (see `tasks/platform-auth-api/001`).
|
|
2425
2622
|
* @example [
|
|
@@ -2444,43 +2641,63 @@ interface components {
|
|
|
2444
2641
|
preset?: "mail-send" | "waitlist-write" | "trawl-jobs" | "readonly" | "full";
|
|
2445
2642
|
};
|
|
2446
2643
|
PublicApiKeyDto: {
|
|
2447
|
-
/**
|
|
2644
|
+
/**
|
|
2645
|
+
* Format: date-time
|
|
2646
|
+
* @description When the key was minted.
|
|
2647
|
+
*/
|
|
2448
2648
|
created_at: string;
|
|
2449
|
-
/**
|
|
2649
|
+
/**
|
|
2650
|
+
* Format: uuid
|
|
2651
|
+
* @description Account id of who minted the key, or `null` when that account is gone.
|
|
2652
|
+
*/
|
|
2450
2653
|
created_by: string | null;
|
|
2654
|
+
/** @description What the key is for, when set. */
|
|
2451
2655
|
description: string | null;
|
|
2452
2656
|
/**
|
|
2453
2657
|
* Format: date-time
|
|
2454
2658
|
* @description When this key stops introspecting. `null` means it never expires.
|
|
2455
2659
|
*/
|
|
2456
2660
|
expires_at: string | null;
|
|
2457
|
-
/**
|
|
2661
|
+
/**
|
|
2662
|
+
* Format: uuid
|
|
2663
|
+
* @description Id of the key.
|
|
2664
|
+
*/
|
|
2458
2665
|
id: string;
|
|
2459
|
-
/**
|
|
2666
|
+
/**
|
|
2667
|
+
* Format: date-time
|
|
2668
|
+
* @description When the key last authenticated a request, or `null` if never.
|
|
2669
|
+
*/
|
|
2460
2670
|
last_used_at: string | null;
|
|
2671
|
+
/** @description Name of the key. */
|
|
2461
2672
|
name: string;
|
|
2462
2673
|
/** @description Managed policies currently bound to this PAK. */
|
|
2463
2674
|
policies: components["schemas"]["BoundPolicySummaryDto"][];
|
|
2464
|
-
/**
|
|
2675
|
+
/**
|
|
2676
|
+
* Format: date-time
|
|
2677
|
+
* @description When the key was revoked, or `null` while it is not.
|
|
2678
|
+
*/
|
|
2465
2679
|
revoked_at: string | null;
|
|
2466
2680
|
/**
|
|
2467
2681
|
* Format: uuid
|
|
2468
2682
|
* @description Id of the key this one replaced, when it was minted by a rotation.
|
|
2469
2683
|
*/
|
|
2470
2684
|
rotated_from: string | null;
|
|
2471
|
-
/**
|
|
2472
|
-
|
|
2473
|
-
* @enum {string}
|
|
2474
|
-
*/
|
|
2475
|
-
status: "active" | "expired" | "revoked";
|
|
2685
|
+
/** @description Lifecycle state at the time of the request. Only `active` keys introspect. `revoked` beats `expired` — revocation is a deliberate act by a named actor and the row keeps saying so. */
|
|
2686
|
+
status: components["schemas"]["ApiKeyStatus"];
|
|
2476
2687
|
/**
|
|
2477
2688
|
* @description The first ~14 chars of the token (prefix). Plaintext token is never returned after mint.
|
|
2478
2689
|
* @example pcft_live_abc123
|
|
2479
2690
|
*/
|
|
2480
2691
|
token_prefix: string;
|
|
2481
|
-
/**
|
|
2692
|
+
/**
|
|
2693
|
+
* Format: date-time
|
|
2694
|
+
* @description When the key was last changed.
|
|
2695
|
+
*/
|
|
2482
2696
|
updated_at: string;
|
|
2483
|
-
/**
|
|
2697
|
+
/**
|
|
2698
|
+
* Format: uuid
|
|
2699
|
+
* @description Id of the workspace the key belongs to.
|
|
2700
|
+
*/
|
|
2484
2701
|
workspace_id: string;
|
|
2485
2702
|
};
|
|
2486
2703
|
RefreshDto: {
|
|
@@ -2621,7 +2838,7 @@ interface components {
|
|
|
2621
2838
|
* @description Session duration: "short" (24h), "long" (90d), or integer seconds (3600–7776000). Defaults to 30 days.
|
|
2622
2839
|
* @example short
|
|
2623
2840
|
*/
|
|
2624
|
-
session_duration?:
|
|
2841
|
+
session_duration?: ("short" | "long") | number;
|
|
2625
2842
|
};
|
|
2626
2843
|
SignUpDto: {
|
|
2627
2844
|
/**
|
|
@@ -2643,7 +2860,7 @@ interface components {
|
|
|
2643
2860
|
* @description Session duration: "short" (24h), "long" (90d), or integer seconds (3600–7776000). Defaults to 30 days.
|
|
2644
2861
|
* @example long
|
|
2645
2862
|
*/
|
|
2646
|
-
session_duration?:
|
|
2863
|
+
session_duration?: ("short" | "long") | number;
|
|
2647
2864
|
/**
|
|
2648
2865
|
* @description Unique username (letters, numbers, dot, underscore, hyphen)
|
|
2649
2866
|
* @example john_doe
|
|
@@ -2651,12 +2868,19 @@ interface components {
|
|
|
2651
2868
|
username: string;
|
|
2652
2869
|
};
|
|
2653
2870
|
SourceDiagnosticDto: {
|
|
2871
|
+
/** @description How many rows the source contributed. */
|
|
2654
2872
|
count: number;
|
|
2873
|
+
/** @description Why the source was skipped, when it failed (the feed still answers with the others). */
|
|
2655
2874
|
error?: string;
|
|
2875
|
+
/** @description Whether the source contributed rows to this page. */
|
|
2656
2876
|
included: boolean;
|
|
2657
|
-
/** @
|
|
2658
|
-
source: "
|
|
2877
|
+
/** @description The audit source this diagnostic describes. */
|
|
2878
|
+
source: components["schemas"]["AuditFeedSource"];
|
|
2659
2879
|
};
|
|
2880
|
+
/** @enum {string} */
|
|
2881
|
+
StatsGranularity: "day";
|
|
2882
|
+
/** @enum {string} */
|
|
2883
|
+
StatsMetric: "audit_events";
|
|
2660
2884
|
StatsSeriesPointDto: {
|
|
2661
2885
|
/**
|
|
2662
2886
|
* Format: date
|
|
@@ -2670,6 +2894,8 @@ interface components {
|
|
|
2670
2894
|
*/
|
|
2671
2895
|
value: number;
|
|
2672
2896
|
};
|
|
2897
|
+
/** @enum {string} */
|
|
2898
|
+
StatsWindow: "1d" | "7d" | "30d";
|
|
2673
2899
|
TokenRequestDto: {
|
|
2674
2900
|
/** @description Client identifier. Required for public clients; confidential clients may instead use HTTP Basic. */
|
|
2675
2901
|
client_id?: string;
|
|
@@ -2694,29 +2920,26 @@ interface components {
|
|
|
2694
2920
|
scope?: string;
|
|
2695
2921
|
};
|
|
2696
2922
|
TokenResponseDto: {
|
|
2697
|
-
/**
|
|
2923
|
+
/**
|
|
2924
|
+
* @description Access token (JWT)
|
|
2925
|
+
* @example eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
|
|
2926
|
+
*/
|
|
2698
2927
|
access_token: string;
|
|
2699
2928
|
/**
|
|
2700
|
-
* @description
|
|
2701
|
-
* @example
|
|
2929
|
+
* @description Access token TTL in seconds
|
|
2930
|
+
* @example 3600
|
|
2702
2931
|
*/
|
|
2703
2932
|
expires_in: number;
|
|
2704
|
-
/** @description The policy this token carries. Effective authority is this intersected with the authorizing human's current workspace policy, re-evaluated on every call. */
|
|
2705
|
-
policy: components["schemas"]["PolicyStatementDto"][];
|
|
2706
|
-
/** @description Rotating refresh token. The one presented is consumed; replaying it revokes the whole grant family. */
|
|
2707
|
-
refresh_token: string;
|
|
2708
2933
|
/**
|
|
2709
|
-
* @description
|
|
2710
|
-
* @example
|
|
2934
|
+
* @description Refresh token (JWT)
|
|
2935
|
+
* @example eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
|
|
2711
2936
|
*/
|
|
2712
|
-
|
|
2713
|
-
/** @example Bearer */
|
|
2714
|
-
token_type: string;
|
|
2937
|
+
refresh_token?: string;
|
|
2715
2938
|
/**
|
|
2716
|
-
*
|
|
2717
|
-
* @
|
|
2939
|
+
* @description Token type
|
|
2940
|
+
* @example Bearer
|
|
2718
2941
|
*/
|
|
2719
|
-
|
|
2942
|
+
token_type: string;
|
|
2720
2943
|
};
|
|
2721
2944
|
UpdateMemberRoleDto: {
|
|
2722
2945
|
/**
|
|
@@ -2731,21 +2954,41 @@ interface components {
|
|
|
2731
2954
|
role_id?: string;
|
|
2732
2955
|
};
|
|
2733
2956
|
UpdateMemberRoleResponseDto: {
|
|
2734
|
-
/**
|
|
2957
|
+
/**
|
|
2958
|
+
* Format: uuid
|
|
2959
|
+
* @description Id of the member's account.
|
|
2960
|
+
*/
|
|
2735
2961
|
account_id: string;
|
|
2736
|
-
/**
|
|
2962
|
+
/**
|
|
2963
|
+
* Format: uuid
|
|
2964
|
+
* @description Id of the membership.
|
|
2965
|
+
*/
|
|
2737
2966
|
id: string;
|
|
2738
|
-
/**
|
|
2967
|
+
/**
|
|
2968
|
+
* Format: uuid
|
|
2969
|
+
* @description Account id of the member who invited them, when they joined by invite.
|
|
2970
|
+
*/
|
|
2739
2971
|
invited_by: string | null;
|
|
2740
|
-
/**
|
|
2972
|
+
/**
|
|
2973
|
+
* Format: date-time
|
|
2974
|
+
* @description When the member joined the workspace.
|
|
2975
|
+
*/
|
|
2741
2976
|
joined_at: string;
|
|
2742
|
-
/**
|
|
2977
|
+
/**
|
|
2978
|
+
* Format: uuid
|
|
2979
|
+
* @description Id of the member's new role.
|
|
2980
|
+
*/
|
|
2743
2981
|
role_id: string;
|
|
2744
|
-
/**
|
|
2982
|
+
/**
|
|
2983
|
+
* Format: uuid
|
|
2984
|
+
* @description Id of the workspace.
|
|
2985
|
+
*/
|
|
2745
2986
|
workspace_id: string;
|
|
2746
2987
|
};
|
|
2747
2988
|
UpdatePakDto: {
|
|
2989
|
+
/** @description New description of the key, or `null` to clear it. */
|
|
2748
2990
|
description?: string | null;
|
|
2991
|
+
/** @description New name of the key. */
|
|
2749
2992
|
name?: string;
|
|
2750
2993
|
};
|
|
2751
2994
|
UpdateProfileDto: {
|
|
@@ -2753,9 +2996,12 @@ interface components {
|
|
|
2753
2996
|
display_name?: string;
|
|
2754
2997
|
};
|
|
2755
2998
|
UpdateWorkspaceDto: {
|
|
2999
|
+
/** @description New display name of the workspace. */
|
|
2756
3000
|
display_name?: string;
|
|
2757
3001
|
/** @description Free-form workspace settings blob. */
|
|
2758
|
-
settings?:
|
|
3002
|
+
settings?: {
|
|
3003
|
+
[key: string]: unknown;
|
|
3004
|
+
};
|
|
2759
3005
|
/**
|
|
2760
3006
|
* @description New URL-friendly slug. Same constraints as the create form. Renames are broadcast on the workspace events queue so denormalised consumers (waitlist-api, future product surfaces) can sync. Old URLs continue to resolve for one rename cycle.
|
|
2761
3007
|
* @example acme
|
|
@@ -2791,7 +3037,9 @@ interface components {
|
|
|
2791
3037
|
policy?: components["schemas"]["PolicyStatementDto"][];
|
|
2792
3038
|
};
|
|
2793
3039
|
UpdateWorkspaceRoleDto: {
|
|
3040
|
+
/** @description New description of the role. */
|
|
2794
3041
|
description?: string;
|
|
3042
|
+
/** @description New name of the role. */
|
|
2795
3043
|
name?: string;
|
|
2796
3044
|
/** @description Replaces the role policy if provided. Omit to leave policy unchanged. */
|
|
2797
3045
|
policy?: components["schemas"]["PolicyStatementDto"][];
|
|
@@ -2820,83 +3068,162 @@ interface components {
|
|
|
2820
3068
|
/**
|
|
2821
3069
|
* @description Actor classification.
|
|
2822
3070
|
* @example platform_user
|
|
2823
|
-
* @enum {string}
|
|
2824
3071
|
*/
|
|
2825
|
-
actor_type: "
|
|
2826
|
-
/**
|
|
3072
|
+
actor_type: components["schemas"]["AuditActorType"];
|
|
3073
|
+
/**
|
|
3074
|
+
* Format: date-time
|
|
3075
|
+
* @description When the action happened.
|
|
3076
|
+
*/
|
|
2827
3077
|
created_at: string;
|
|
2828
|
-
/**
|
|
3078
|
+
/**
|
|
3079
|
+
* Format: uuid
|
|
3080
|
+
* @description Id of the entry.
|
|
3081
|
+
*/
|
|
2829
3082
|
id: string;
|
|
2830
3083
|
/** @description Originating request IP, when available. */
|
|
2831
3084
|
ip: string | null;
|
|
2832
3085
|
/** @description Free-form metadata attached to the audit row (jsonb). */
|
|
2833
|
-
metadata:
|
|
3086
|
+
metadata: {
|
|
3087
|
+
[key: string]: unknown;
|
|
3088
|
+
};
|
|
2834
3089
|
/**
|
|
2835
3090
|
* @description Resource type the action targeted.
|
|
2836
3091
|
* @example workspace_membership
|
|
2837
3092
|
*/
|
|
2838
3093
|
resource: string;
|
|
2839
|
-
/**
|
|
3094
|
+
/**
|
|
3095
|
+
* Format: uuid
|
|
3096
|
+
* @description Id of the resource the action touched, when it has one.
|
|
3097
|
+
*/
|
|
2840
3098
|
resource_id: string | null;
|
|
2841
|
-
/**
|
|
3099
|
+
/**
|
|
3100
|
+
* Format: uuid
|
|
3101
|
+
* @description Id of the workspace.
|
|
3102
|
+
*/
|
|
2842
3103
|
workspace_id: string;
|
|
2843
3104
|
};
|
|
2844
3105
|
WorkspaceAvatarUrlResponseDto: {
|
|
3106
|
+
/** @description URL of the uploaded avatar image. */
|
|
2845
3107
|
avatar_url: string;
|
|
2846
3108
|
};
|
|
2847
3109
|
WorkspaceInviteListItemDto: {
|
|
2848
3110
|
/** @description Single-use invite code embedded in the invite URL. */
|
|
2849
3111
|
code: string;
|
|
2850
|
-
/**
|
|
3112
|
+
/**
|
|
3113
|
+
* Format: date-time
|
|
3114
|
+
* @description When the invite was created.
|
|
3115
|
+
*/
|
|
2851
3116
|
created_at: string;
|
|
2852
|
-
/**
|
|
3117
|
+
/**
|
|
3118
|
+
* Format: uuid
|
|
3119
|
+
* @description Account id of the member who created the invite.
|
|
3120
|
+
*/
|
|
2853
3121
|
created_by: string;
|
|
2854
|
-
/**
|
|
3122
|
+
/**
|
|
3123
|
+
* Format: email
|
|
3124
|
+
* @description Email the invite is restricted to, or `null` for an open invite link.
|
|
3125
|
+
*/
|
|
2855
3126
|
email: string | null;
|
|
2856
|
-
/**
|
|
3127
|
+
/**
|
|
3128
|
+
* Format: date-time
|
|
3129
|
+
* @description When the invite stops working, or `null` if it never expires.
|
|
3130
|
+
*/
|
|
2857
3131
|
expires_at: string | null;
|
|
2858
|
-
/**
|
|
3132
|
+
/**
|
|
3133
|
+
* Format: uuid
|
|
3134
|
+
* @description Id of the invite.
|
|
3135
|
+
*/
|
|
2859
3136
|
id: string;
|
|
3137
|
+
/** @description How many times the invite can be accepted, or `null` for unlimited. */
|
|
2860
3138
|
max_uses: number | null;
|
|
2861
|
-
/**
|
|
3139
|
+
/**
|
|
3140
|
+
* Format: date-time
|
|
3141
|
+
* @description When the invite was revoked, or `null` while it is live.
|
|
3142
|
+
*/
|
|
2862
3143
|
revoked_at: string | null;
|
|
2863
|
-
/**
|
|
3144
|
+
/**
|
|
3145
|
+
* Format: uuid
|
|
3146
|
+
* @description Id of the role the invitee gets, or `null` for the default member role.
|
|
3147
|
+
*/
|
|
2864
3148
|
role_id: string | null;
|
|
3149
|
+
/** @description Name of the role the invitee gets, or `null` for the default member role. */
|
|
2865
3150
|
role_name: string | null;
|
|
3151
|
+
/** @description How many times the invite has been accepted. */
|
|
2866
3152
|
use_count: number;
|
|
2867
|
-
/**
|
|
3153
|
+
/**
|
|
3154
|
+
* Format: uuid
|
|
3155
|
+
* @description Id of the workspace the invite joins.
|
|
3156
|
+
*/
|
|
2868
3157
|
workspace_id: string;
|
|
2869
3158
|
};
|
|
2870
3159
|
WorkspaceInviteResponseDto: {
|
|
2871
3160
|
/** @description Single-use invite code embedded in the invite URL. */
|
|
2872
3161
|
code: string;
|
|
2873
|
-
/**
|
|
3162
|
+
/**
|
|
3163
|
+
* Format: date-time
|
|
3164
|
+
* @description When the invite was created.
|
|
3165
|
+
*/
|
|
2874
3166
|
created_at: string;
|
|
2875
|
-
/**
|
|
3167
|
+
/**
|
|
3168
|
+
* Format: uuid
|
|
3169
|
+
* @description Account id of the member who created the invite.
|
|
3170
|
+
*/
|
|
2876
3171
|
created_by: string;
|
|
2877
|
-
/**
|
|
3172
|
+
/**
|
|
3173
|
+
* Format: email
|
|
3174
|
+
* @description Email the invite is restricted to, or `null` for an open invite link.
|
|
3175
|
+
*/
|
|
2878
3176
|
email: string | null;
|
|
2879
|
-
/**
|
|
3177
|
+
/**
|
|
3178
|
+
* Format: date-time
|
|
3179
|
+
* @description When the invite stops working, or `null` if it never expires.
|
|
3180
|
+
*/
|
|
2880
3181
|
expires_at: string | null;
|
|
2881
|
-
/**
|
|
3182
|
+
/**
|
|
3183
|
+
* Format: uuid
|
|
3184
|
+
* @description Id of the invite.
|
|
3185
|
+
*/
|
|
2882
3186
|
id: string;
|
|
3187
|
+
/** @description How many times the invite can be accepted, or `null` for unlimited. */
|
|
2883
3188
|
max_uses: number | null;
|
|
2884
|
-
/**
|
|
3189
|
+
/**
|
|
3190
|
+
* Format: date-time
|
|
3191
|
+
* @description When the invite was revoked, or `null` while it is live.
|
|
3192
|
+
*/
|
|
2885
3193
|
revoked_at: string | null;
|
|
2886
|
-
/**
|
|
3194
|
+
/**
|
|
3195
|
+
* Format: uuid
|
|
3196
|
+
* @description Id of the role the invitee gets, or `null` for the default member role.
|
|
3197
|
+
*/
|
|
2887
3198
|
role_id: string | null;
|
|
3199
|
+
/** @description How many times the invite has been accepted. */
|
|
2888
3200
|
use_count: number;
|
|
2889
|
-
/**
|
|
3201
|
+
/**
|
|
3202
|
+
* Format: uuid
|
|
3203
|
+
* @description Id of the workspace the invite joins.
|
|
3204
|
+
*/
|
|
2890
3205
|
workspace_id: string;
|
|
2891
3206
|
};
|
|
2892
3207
|
WorkspaceListItemDto: {
|
|
2893
|
-
/**
|
|
3208
|
+
/**
|
|
3209
|
+
* Format: date-time
|
|
3210
|
+
* @description When the workspace was created.
|
|
3211
|
+
*/
|
|
2894
3212
|
created_at: string;
|
|
2895
|
-
/**
|
|
3213
|
+
/**
|
|
3214
|
+
* Format: uuid
|
|
3215
|
+
* @description Account id of the member who created the workspace.
|
|
3216
|
+
*/
|
|
2896
3217
|
created_by: string;
|
|
2897
|
-
/**
|
|
3218
|
+
/**
|
|
3219
|
+
* @description Display name of the workspace.
|
|
3220
|
+
* @example Acme Corp
|
|
3221
|
+
*/
|
|
2898
3222
|
display_name: string;
|
|
2899
|
-
/**
|
|
3223
|
+
/**
|
|
3224
|
+
* Format: uuid
|
|
3225
|
+
* @description Id of the workspace.
|
|
3226
|
+
*/
|
|
2900
3227
|
id: string;
|
|
2901
3228
|
/**
|
|
2902
3229
|
* @description Caller’s role name in this workspace.
|
|
@@ -2909,58 +3236,107 @@ interface components {
|
|
|
2909
3236
|
*/
|
|
2910
3237
|
member_role_id: string | null;
|
|
2911
3238
|
/** @description Free-form workspace settings blob. */
|
|
2912
|
-
settings:
|
|
2913
|
-
|
|
3239
|
+
settings: {
|
|
3240
|
+
[key: string]: unknown;
|
|
3241
|
+
};
|
|
3242
|
+
/**
|
|
3243
|
+
* @description Unique URL-friendly slug; platform routes take it positionally.
|
|
3244
|
+
* @example acme-corp
|
|
3245
|
+
*/
|
|
2914
3246
|
slug: string;
|
|
2915
3247
|
/**
|
|
2916
3248
|
* @description Workspace status (e.g. `active`).
|
|
2917
3249
|
* @example active
|
|
2918
3250
|
*/
|
|
2919
3251
|
status: string;
|
|
2920
|
-
/**
|
|
3252
|
+
/**
|
|
3253
|
+
* Format: date-time
|
|
3254
|
+
* @description When the workspace was last changed.
|
|
3255
|
+
*/
|
|
2921
3256
|
updated_at: string;
|
|
2922
3257
|
};
|
|
2923
3258
|
WorkspaceMemberResponseDto: {
|
|
2924
|
-
/**
|
|
3259
|
+
/**
|
|
3260
|
+
* Format: uuid
|
|
3261
|
+
* @description Id of the member's account.
|
|
3262
|
+
*/
|
|
2925
3263
|
account_id: string;
|
|
2926
3264
|
/** @description Presigned URL for the member's uploaded avatar, or null when they have none. Short-lived — mint a fresh one by re-reading this endpoint rather than caching the URL. */
|
|
2927
3265
|
avatar_url: string | null;
|
|
3266
|
+
/** @description The member's display name, when set. */
|
|
2928
3267
|
display_name: string | null;
|
|
2929
|
-
/**
|
|
3268
|
+
/**
|
|
3269
|
+
* Format: uuid
|
|
3270
|
+
* @description Id of the membership.
|
|
3271
|
+
*/
|
|
2930
3272
|
id: string;
|
|
2931
|
-
/**
|
|
3273
|
+
/**
|
|
3274
|
+
* Format: date-time
|
|
3275
|
+
* @description When the member joined the workspace.
|
|
3276
|
+
*/
|
|
2932
3277
|
joined_at: string;
|
|
3278
|
+
/** @description The member's primary email, when it has one. */
|
|
2933
3279
|
primary_email: string | null;
|
|
3280
|
+
/** @description Name of the member's role. */
|
|
2934
3281
|
role: string;
|
|
2935
|
-
/**
|
|
3282
|
+
/**
|
|
3283
|
+
* Format: uuid
|
|
3284
|
+
* @description Id of the member's role in this workspace.
|
|
3285
|
+
*/
|
|
2936
3286
|
role_id: string;
|
|
3287
|
+
/** @description Whether the role is a system role (`owner`, `admin`, `member`) rather than a custom one. */
|
|
2937
3288
|
role_is_system: boolean;
|
|
3289
|
+
/** @description The member's username. */
|
|
2938
3290
|
username: string;
|
|
2939
3291
|
};
|
|
2940
3292
|
WorkspaceResponseDto: {
|
|
2941
|
-
/**
|
|
3293
|
+
/**
|
|
3294
|
+
* Format: date-time
|
|
3295
|
+
* @description When the workspace was created.
|
|
3296
|
+
*/
|
|
2942
3297
|
created_at: string;
|
|
2943
|
-
/**
|
|
3298
|
+
/**
|
|
3299
|
+
* Format: uuid
|
|
3300
|
+
* @description Account id of the member who created the workspace.
|
|
3301
|
+
*/
|
|
2944
3302
|
created_by: string;
|
|
2945
|
-
/**
|
|
3303
|
+
/**
|
|
3304
|
+
* @description Display name of the workspace.
|
|
3305
|
+
* @example Acme Corp
|
|
3306
|
+
*/
|
|
2946
3307
|
display_name: string;
|
|
2947
|
-
/**
|
|
3308
|
+
/**
|
|
3309
|
+
* Format: uuid
|
|
3310
|
+
* @description Id of the workspace.
|
|
3311
|
+
*/
|
|
2948
3312
|
id: string;
|
|
2949
3313
|
/** @description Free-form workspace settings blob. */
|
|
2950
|
-
settings:
|
|
2951
|
-
|
|
3314
|
+
settings: {
|
|
3315
|
+
[key: string]: unknown;
|
|
3316
|
+
};
|
|
3317
|
+
/**
|
|
3318
|
+
* @description Unique URL-friendly slug; platform routes take it positionally.
|
|
3319
|
+
* @example acme-corp
|
|
3320
|
+
*/
|
|
2952
3321
|
slug: string;
|
|
2953
3322
|
/**
|
|
2954
3323
|
* @description Workspace status (e.g. `active`).
|
|
2955
3324
|
* @example active
|
|
2956
3325
|
*/
|
|
2957
3326
|
status: string;
|
|
2958
|
-
/**
|
|
3327
|
+
/**
|
|
3328
|
+
* Format: date-time
|
|
3329
|
+
* @description When the workspace was last changed.
|
|
3330
|
+
*/
|
|
2959
3331
|
updated_at: string;
|
|
2960
3332
|
};
|
|
2961
3333
|
WorkspaceRoleResponseDto: {
|
|
3334
|
+
/** @description What the role is for, when set. */
|
|
2962
3335
|
description: string | null;
|
|
2963
|
-
/**
|
|
3336
|
+
/**
|
|
3337
|
+
* Format: uuid
|
|
3338
|
+
* @description Id of the role.
|
|
3339
|
+
*/
|
|
2964
3340
|
id: string;
|
|
2965
3341
|
/** @description True for built-in system roles (owner/admin/member); false for custom roles. */
|
|
2966
3342
|
is_system: boolean;
|
|
@@ -2975,14 +3351,27 @@ interface components {
|
|
|
2975
3351
|
policy_id: string | null;
|
|
2976
3352
|
};
|
|
2977
3353
|
WorkspaceServiceStateDto: {
|
|
2978
|
-
/**
|
|
3354
|
+
/**
|
|
3355
|
+
* Format: date-time
|
|
3356
|
+
* @description When the service was last turned off, or `null`.
|
|
3357
|
+
*/
|
|
2979
3358
|
disabled_at: string | null;
|
|
2980
|
-
/**
|
|
3359
|
+
/**
|
|
3360
|
+
* Format: uuid
|
|
3361
|
+
* @description Account id of who last turned it off, or `null`.
|
|
3362
|
+
*/
|
|
2981
3363
|
disabled_by: string | null;
|
|
3364
|
+
/** @description Whether the service is on for the workspace. */
|
|
2982
3365
|
enabled: boolean;
|
|
2983
|
-
/**
|
|
3366
|
+
/**
|
|
3367
|
+
* Format: date-time
|
|
3368
|
+
* @description When the service was last turned on, or `null` if never.
|
|
3369
|
+
*/
|
|
2984
3370
|
enabled_at: string | null;
|
|
2985
|
-
/**
|
|
3371
|
+
/**
|
|
3372
|
+
* Format: uuid
|
|
3373
|
+
* @description Account id of who last turned it on, or `null`.
|
|
3374
|
+
*/
|
|
2986
3375
|
enabled_by: string | null;
|
|
2987
3376
|
/**
|
|
2988
3377
|
* @description Service identifier (e.g. `mail`, `waitlist`, `social`, `auth`).
|
|
@@ -2990,8 +3379,13 @@ interface components {
|
|
|
2990
3379
|
*/
|
|
2991
3380
|
service: string;
|
|
2992
3381
|
/** @description Per-service settings blob (service-specific shape). */
|
|
2993
|
-
settings:
|
|
2994
|
-
|
|
3382
|
+
settings: {
|
|
3383
|
+
[key: string]: unknown;
|
|
3384
|
+
};
|
|
3385
|
+
/**
|
|
3386
|
+
* Format: uuid
|
|
3387
|
+
* @description Id of the workspace.
|
|
3388
|
+
*/
|
|
2995
3389
|
workspace_id: string;
|
|
2996
3390
|
};
|
|
2997
3391
|
WorkspaceStatsDto: {
|
|
@@ -3016,9 +3410,8 @@ interface components {
|
|
|
3016
3410
|
/**
|
|
3017
3411
|
* @description Window the counts cover.
|
|
3018
3412
|
* @example 30d
|
|
3019
|
-
* @enum {string}
|
|
3020
3413
|
*/
|
|
3021
|
-
window: "
|
|
3414
|
+
window: components["schemas"]["StatsWindow"];
|
|
3022
3415
|
};
|
|
3023
3416
|
WorkspaceStatsInWindowDto: {
|
|
3024
3417
|
/**
|
|
@@ -3037,15 +3430,13 @@ interface components {
|
|
|
3037
3430
|
/**
|
|
3038
3431
|
* @description Bucket width.
|
|
3039
3432
|
* @example day
|
|
3040
|
-
* @enum {string}
|
|
3041
3433
|
*/
|
|
3042
|
-
granularity: "
|
|
3434
|
+
granularity: components["schemas"]["StatsGranularity"];
|
|
3043
3435
|
/**
|
|
3044
3436
|
* @description Admin-change audit events per UTC day of `created_at` (same rows as `in_window.audit_events`: reads, sign-ins and MCP tool-call rows excluded).
|
|
3045
3437
|
* @example audit_events
|
|
3046
|
-
* @enum {string}
|
|
3047
3438
|
*/
|
|
3048
|
-
metric: "
|
|
3439
|
+
metric: components["schemas"]["StatsMetric"];
|
|
3049
3440
|
/** @description Dense and zero-filled: one point per UTC day in the window, oldest first, ending today. */
|
|
3050
3441
|
points: components["schemas"]["StatsSeriesPointDto"][];
|
|
3051
3442
|
};
|
|
@@ -3090,6 +3481,18 @@ interface operations {
|
|
|
3090
3481
|
"application/json": components["schemas"]["JwksResponseDto"];
|
|
3091
3482
|
};
|
|
3092
3483
|
};
|
|
3484
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
3485
|
+
429: {
|
|
3486
|
+
headers: {
|
|
3487
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
3488
|
+
"Retry-After"?: number;
|
|
3489
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
3490
|
+
[name: string]: unknown;
|
|
3491
|
+
};
|
|
3492
|
+
content: {
|
|
3493
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3494
|
+
};
|
|
3495
|
+
};
|
|
3093
3496
|
};
|
|
3094
3497
|
};
|
|
3095
3498
|
AuthorizationServerMetadataController_metadata: {
|
|
@@ -3110,6 +3513,18 @@ interface operations {
|
|
|
3110
3513
|
"application/json": components["schemas"]["AuthorizationServerMetadataDto"];
|
|
3111
3514
|
};
|
|
3112
3515
|
};
|
|
3516
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
3517
|
+
429: {
|
|
3518
|
+
headers: {
|
|
3519
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
3520
|
+
"Retry-After"?: number;
|
|
3521
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
3522
|
+
[name: string]: unknown;
|
|
3523
|
+
};
|
|
3524
|
+
content: {
|
|
3525
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3526
|
+
};
|
|
3527
|
+
};
|
|
3113
3528
|
};
|
|
3114
3529
|
};
|
|
3115
3530
|
AccountController_deleteAccount: {
|
|
@@ -3159,6 +3574,18 @@ interface operations {
|
|
|
3159
3574
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3160
3575
|
};
|
|
3161
3576
|
};
|
|
3577
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
3578
|
+
429: {
|
|
3579
|
+
headers: {
|
|
3580
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
3581
|
+
"Retry-After"?: number;
|
|
3582
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
3583
|
+
[name: string]: unknown;
|
|
3584
|
+
};
|
|
3585
|
+
content: {
|
|
3586
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3587
|
+
};
|
|
3588
|
+
};
|
|
3162
3589
|
};
|
|
3163
3590
|
};
|
|
3164
3591
|
ApiKeySelfController_self: {
|
|
@@ -3209,6 +3636,18 @@ interface operations {
|
|
|
3209
3636
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3210
3637
|
};
|
|
3211
3638
|
};
|
|
3639
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
3640
|
+
429: {
|
|
3641
|
+
headers: {
|
|
3642
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
3643
|
+
"Retry-After"?: number;
|
|
3644
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
3645
|
+
[name: string]: unknown;
|
|
3646
|
+
};
|
|
3647
|
+
content: {
|
|
3648
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3649
|
+
};
|
|
3650
|
+
};
|
|
3212
3651
|
};
|
|
3213
3652
|
};
|
|
3214
3653
|
AuthenticationController_logout: {
|
|
@@ -3242,6 +3681,18 @@ interface operations {
|
|
|
3242
3681
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3243
3682
|
};
|
|
3244
3683
|
};
|
|
3684
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
3685
|
+
429: {
|
|
3686
|
+
headers: {
|
|
3687
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
3688
|
+
"Retry-After"?: number;
|
|
3689
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
3690
|
+
[name: string]: unknown;
|
|
3691
|
+
};
|
|
3692
|
+
content: {
|
|
3693
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3694
|
+
};
|
|
3695
|
+
};
|
|
3245
3696
|
};
|
|
3246
3697
|
};
|
|
3247
3698
|
AuthenticationController_logoutCurrent: {
|
|
@@ -3271,6 +3722,18 @@ interface operations {
|
|
|
3271
3722
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3272
3723
|
};
|
|
3273
3724
|
};
|
|
3725
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
3726
|
+
429: {
|
|
3727
|
+
headers: {
|
|
3728
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
3729
|
+
"Retry-After"?: number;
|
|
3730
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
3731
|
+
[name: string]: unknown;
|
|
3732
|
+
};
|
|
3733
|
+
content: {
|
|
3734
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3735
|
+
};
|
|
3736
|
+
};
|
|
3274
3737
|
};
|
|
3275
3738
|
};
|
|
3276
3739
|
OAuthController_callback: {
|
|
@@ -3278,6 +3741,10 @@ interface operations {
|
|
|
3278
3741
|
query?: never;
|
|
3279
3742
|
header?: never;
|
|
3280
3743
|
path: {
|
|
3744
|
+
/**
|
|
3745
|
+
* @description The sign-in provider: `google`, `github` or `apple`.
|
|
3746
|
+
* @example google
|
|
3747
|
+
*/
|
|
3281
3748
|
provider: "apple" | "google" | "github";
|
|
3282
3749
|
};
|
|
3283
3750
|
cookie?: never;
|
|
@@ -3317,6 +3784,18 @@ interface operations {
|
|
|
3317
3784
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3318
3785
|
};
|
|
3319
3786
|
};
|
|
3787
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
3788
|
+
429: {
|
|
3789
|
+
headers: {
|
|
3790
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
3791
|
+
"Retry-After"?: number;
|
|
3792
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
3793
|
+
[name: string]: unknown;
|
|
3794
|
+
};
|
|
3795
|
+
content: {
|
|
3796
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3797
|
+
};
|
|
3798
|
+
};
|
|
3320
3799
|
};
|
|
3321
3800
|
};
|
|
3322
3801
|
OAuthController_start: {
|
|
@@ -3327,7 +3806,10 @@ interface operations {
|
|
|
3327
3806
|
};
|
|
3328
3807
|
header?: never;
|
|
3329
3808
|
path: {
|
|
3330
|
-
/**
|
|
3809
|
+
/**
|
|
3810
|
+
* @description OAuth provider id. Providers are gated on env-var configuration; unconfigured providers 400 with UNKNOWN_OAUTH_PROVIDER.
|
|
3811
|
+
* @example google
|
|
3812
|
+
*/
|
|
3331
3813
|
provider: "apple" | "google" | "github";
|
|
3332
3814
|
};
|
|
3333
3815
|
cookie?: never;
|
|
@@ -3352,6 +3834,18 @@ interface operations {
|
|
|
3352
3834
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3353
3835
|
};
|
|
3354
3836
|
};
|
|
3837
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
3838
|
+
429: {
|
|
3839
|
+
headers: {
|
|
3840
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
3841
|
+
"Retry-After"?: number;
|
|
3842
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
3843
|
+
[name: string]: unknown;
|
|
3844
|
+
};
|
|
3845
|
+
content: {
|
|
3846
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3847
|
+
};
|
|
3848
|
+
};
|
|
3355
3849
|
};
|
|
3356
3850
|
};
|
|
3357
3851
|
PasswordController_requestPasswordReset: {
|
|
@@ -3385,9 +3879,11 @@ interface operations {
|
|
|
3385
3879
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3386
3880
|
};
|
|
3387
3881
|
};
|
|
3388
|
-
/** @description Rate limited: more than 10 requests/min from this IP (strict `auth` bucket). `Retry-After` header set. */
|
|
3882
|
+
/** @description Rate limited: more than 10 requests/min from this IP (strict `auth` bucket). `Retry-After` header set. Per-IP limit: rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
3389
3883
|
429: {
|
|
3390
3884
|
headers: {
|
|
3885
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
3886
|
+
"Retry-After"?: number;
|
|
3391
3887
|
"X-Request-Id": components["headers"]["RequestId"];
|
|
3392
3888
|
[name: string]: unknown;
|
|
3393
3889
|
};
|
|
@@ -3428,9 +3924,11 @@ interface operations {
|
|
|
3428
3924
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3429
3925
|
};
|
|
3430
3926
|
};
|
|
3431
|
-
/** @description Rate limited: more than 10 requests/min from this IP (strict `auth` bucket). `Retry-After` header set. */
|
|
3927
|
+
/** @description Rate limited: more than 10 requests/min from this IP (strict `auth` bucket). `Retry-After` header set. Per-IP limit: rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
3432
3928
|
429: {
|
|
3433
3929
|
headers: {
|
|
3930
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
3931
|
+
"Retry-After"?: number;
|
|
3434
3932
|
"X-Request-Id": components["headers"]["RequestId"];
|
|
3435
3933
|
[name: string]: unknown;
|
|
3436
3934
|
};
|
|
@@ -3473,6 +3971,18 @@ interface operations {
|
|
|
3473
3971
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3474
3972
|
};
|
|
3475
3973
|
};
|
|
3974
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
3975
|
+
429: {
|
|
3976
|
+
headers: {
|
|
3977
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
3978
|
+
"Retry-After"?: number;
|
|
3979
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
3980
|
+
[name: string]: unknown;
|
|
3981
|
+
};
|
|
3982
|
+
content: {
|
|
3983
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3984
|
+
};
|
|
3985
|
+
};
|
|
3476
3986
|
};
|
|
3477
3987
|
};
|
|
3478
3988
|
AuthenticationController_signin: {
|
|
@@ -3528,9 +4038,11 @@ interface operations {
|
|
|
3528
4038
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3529
4039
|
};
|
|
3530
4040
|
};
|
|
3531
|
-
/** @description Too many attempts for this identifier (`TOO_MANY_ATTEMPTS`). Two counters produce it, both keyed purely by the submitted identifier: a burst limit of 5 attempts per minute, and a 15-minute lock after 4 failed attempts. Both fire on the same attempt for a registered and an unregistered identifier. */
|
|
4041
|
+
/** @description Too many attempts for this identifier (`TOO_MANY_ATTEMPTS`). Two counters produce it, both keyed purely by the submitted identifier: a burst limit of 5 attempts per minute, and a 15-minute lock after 4 failed attempts. Both fire on the same attempt for a registered and an unregistered identifier. Per-IP limit: rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
3532
4042
|
429: {
|
|
3533
4043
|
headers: {
|
|
4044
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
4045
|
+
"Retry-After"?: number;
|
|
3534
4046
|
"X-Request-Id": components["headers"]["RequestId"];
|
|
3535
4047
|
[name: string]: unknown;
|
|
3536
4048
|
};
|
|
@@ -3573,6 +4085,18 @@ interface operations {
|
|
|
3573
4085
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3574
4086
|
};
|
|
3575
4087
|
};
|
|
4088
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
4089
|
+
429: {
|
|
4090
|
+
headers: {
|
|
4091
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
4092
|
+
"Retry-After"?: number;
|
|
4093
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
4094
|
+
[name: string]: unknown;
|
|
4095
|
+
};
|
|
4096
|
+
content: {
|
|
4097
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4098
|
+
};
|
|
4099
|
+
};
|
|
3576
4100
|
};
|
|
3577
4101
|
};
|
|
3578
4102
|
IntrospectController_introspect: {
|
|
@@ -3593,9 +4117,11 @@ interface operations {
|
|
|
3593
4117
|
"application/json": components["schemas"]["IntrospectResponseDto"];
|
|
3594
4118
|
};
|
|
3595
4119
|
};
|
|
3596
|
-
/** @description Rate limited: more than 60 requests/min from this IP (default bucket). Anonymous callers, and callers whose session has been signed out, otherwise get 200 with `is_authenticated: false`, never 401. */
|
|
4120
|
+
/** @description Rate limited: more than 60 requests/min from this IP (default bucket). Anonymous callers, and callers whose session has been signed out, otherwise get 200 with `is_authenticated: false`, never 401. Per-IP limit: rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
3597
4121
|
429: {
|
|
3598
4122
|
headers: {
|
|
4123
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
4124
|
+
"Retry-After"?: number;
|
|
3599
4125
|
"X-Request-Id": components["headers"]["RequestId"];
|
|
3600
4126
|
[name: string]: unknown;
|
|
3601
4127
|
};
|
|
@@ -3608,9 +4134,7 @@ interface operations {
|
|
|
3608
4134
|
IntrospectController_introspectApiKey: {
|
|
3609
4135
|
parameters: {
|
|
3610
4136
|
query?: never;
|
|
3611
|
-
header
|
|
3612
|
-
authorization: string;
|
|
3613
|
-
};
|
|
4137
|
+
header?: never;
|
|
3614
4138
|
path?: never;
|
|
3615
4139
|
cookie?: never;
|
|
3616
4140
|
};
|
|
@@ -3635,6 +4159,18 @@ interface operations {
|
|
|
3635
4159
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3636
4160
|
};
|
|
3637
4161
|
};
|
|
4162
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
4163
|
+
429: {
|
|
4164
|
+
headers: {
|
|
4165
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
4166
|
+
"Retry-After"?: number;
|
|
4167
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
4168
|
+
[name: string]: unknown;
|
|
4169
|
+
};
|
|
4170
|
+
content: {
|
|
4171
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4172
|
+
};
|
|
4173
|
+
};
|
|
3638
4174
|
};
|
|
3639
4175
|
};
|
|
3640
4176
|
IntrospectController_introspectWorkspace: {
|
|
@@ -3642,6 +4178,10 @@ interface operations {
|
|
|
3642
4178
|
query?: never;
|
|
3643
4179
|
header?: never;
|
|
3644
4180
|
path: {
|
|
4181
|
+
/**
|
|
4182
|
+
* @description Id of the workspace.
|
|
4183
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
4184
|
+
*/
|
|
3645
4185
|
workspace_id: string;
|
|
3646
4186
|
};
|
|
3647
4187
|
cookie?: never;
|
|
@@ -3677,6 +4217,18 @@ interface operations {
|
|
|
3677
4217
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3678
4218
|
};
|
|
3679
4219
|
};
|
|
4220
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
4221
|
+
429: {
|
|
4222
|
+
headers: {
|
|
4223
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
4224
|
+
"Retry-After"?: number;
|
|
4225
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
4226
|
+
[name: string]: unknown;
|
|
4227
|
+
};
|
|
4228
|
+
content: {
|
|
4229
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4230
|
+
};
|
|
4231
|
+
};
|
|
3680
4232
|
};
|
|
3681
4233
|
};
|
|
3682
4234
|
MeController_getMe: {
|
|
@@ -3717,6 +4269,18 @@ interface operations {
|
|
|
3717
4269
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3718
4270
|
};
|
|
3719
4271
|
};
|
|
4272
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
4273
|
+
429: {
|
|
4274
|
+
headers: {
|
|
4275
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
4276
|
+
"Retry-After"?: number;
|
|
4277
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
4278
|
+
[name: string]: unknown;
|
|
4279
|
+
};
|
|
4280
|
+
content: {
|
|
4281
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4282
|
+
};
|
|
4283
|
+
};
|
|
3720
4284
|
};
|
|
3721
4285
|
};
|
|
3722
4286
|
MeController_setAvatar: {
|
|
@@ -3767,6 +4331,18 @@ interface operations {
|
|
|
3767
4331
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3768
4332
|
};
|
|
3769
4333
|
};
|
|
4334
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
4335
|
+
429: {
|
|
4336
|
+
headers: {
|
|
4337
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
4338
|
+
"Retry-After"?: number;
|
|
4339
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
4340
|
+
[name: string]: unknown;
|
|
4341
|
+
};
|
|
4342
|
+
content: {
|
|
4343
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4344
|
+
};
|
|
4345
|
+
};
|
|
3770
4346
|
};
|
|
3771
4347
|
};
|
|
3772
4348
|
MeController_removeAvatar: {
|
|
@@ -3796,6 +4372,18 @@ interface operations {
|
|
|
3796
4372
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3797
4373
|
};
|
|
3798
4374
|
};
|
|
4375
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
4376
|
+
429: {
|
|
4377
|
+
headers: {
|
|
4378
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
4379
|
+
"Retry-After"?: number;
|
|
4380
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
4381
|
+
[name: string]: unknown;
|
|
4382
|
+
};
|
|
4383
|
+
content: {
|
|
4384
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4385
|
+
};
|
|
4386
|
+
};
|
|
3799
4387
|
};
|
|
3800
4388
|
};
|
|
3801
4389
|
HiddenGuidesController_list: {
|
|
@@ -3836,6 +4424,18 @@ interface operations {
|
|
|
3836
4424
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3837
4425
|
};
|
|
3838
4426
|
};
|
|
4427
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
4428
|
+
429: {
|
|
4429
|
+
headers: {
|
|
4430
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
4431
|
+
"Retry-After"?: number;
|
|
4432
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
4433
|
+
[name: string]: unknown;
|
|
4434
|
+
};
|
|
4435
|
+
content: {
|
|
4436
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4437
|
+
};
|
|
4438
|
+
};
|
|
3839
4439
|
};
|
|
3840
4440
|
};
|
|
3841
4441
|
HiddenGuidesController_showAll: {
|
|
@@ -3875,6 +4475,18 @@ interface operations {
|
|
|
3875
4475
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3876
4476
|
};
|
|
3877
4477
|
};
|
|
4478
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
4479
|
+
429: {
|
|
4480
|
+
headers: {
|
|
4481
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
4482
|
+
"Retry-After"?: number;
|
|
4483
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
4484
|
+
[name: string]: unknown;
|
|
4485
|
+
};
|
|
4486
|
+
content: {
|
|
4487
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4488
|
+
};
|
|
4489
|
+
};
|
|
3878
4490
|
};
|
|
3879
4491
|
};
|
|
3880
4492
|
HiddenGuidesController_hide: {
|
|
@@ -3882,7 +4494,10 @@ interface operations {
|
|
|
3882
4494
|
query?: never;
|
|
3883
4495
|
header?: never;
|
|
3884
4496
|
path: {
|
|
3885
|
-
/**
|
|
4497
|
+
/**
|
|
4498
|
+
* @description The guide: a surface name, optionally followed by `:` and a resource id, e.g. `dashboard:<workspace id>` or `all`.
|
|
4499
|
+
* @example dashboard
|
|
4500
|
+
*/
|
|
3886
4501
|
key: string;
|
|
3887
4502
|
};
|
|
3888
4503
|
cookie?: never;
|
|
@@ -3929,6 +4544,18 @@ interface operations {
|
|
|
3929
4544
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3930
4545
|
};
|
|
3931
4546
|
};
|
|
4547
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
4548
|
+
429: {
|
|
4549
|
+
headers: {
|
|
4550
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
4551
|
+
"Retry-After"?: number;
|
|
4552
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
4553
|
+
[name: string]: unknown;
|
|
4554
|
+
};
|
|
4555
|
+
content: {
|
|
4556
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4557
|
+
};
|
|
4558
|
+
};
|
|
3932
4559
|
};
|
|
3933
4560
|
};
|
|
3934
4561
|
HiddenGuidesController_show: {
|
|
@@ -3936,7 +4563,10 @@ interface operations {
|
|
|
3936
4563
|
query?: never;
|
|
3937
4564
|
header?: never;
|
|
3938
4565
|
path: {
|
|
3939
|
-
/**
|
|
4566
|
+
/**
|
|
4567
|
+
* @description The guide: a surface name, optionally followed by `:` and a resource id, e.g. `dashboard:<workspace id>` or `all`.
|
|
4568
|
+
* @example dashboard
|
|
4569
|
+
*/
|
|
3940
4570
|
key: string;
|
|
3941
4571
|
};
|
|
3942
4572
|
cookie?: never;
|
|
@@ -3981,6 +4611,18 @@ interface operations {
|
|
|
3981
4611
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
3982
4612
|
};
|
|
3983
4613
|
};
|
|
4614
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
4615
|
+
429: {
|
|
4616
|
+
headers: {
|
|
4617
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
4618
|
+
"Retry-After"?: number;
|
|
4619
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
4620
|
+
[name: string]: unknown;
|
|
4621
|
+
};
|
|
4622
|
+
content: {
|
|
4623
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4624
|
+
};
|
|
4625
|
+
};
|
|
3984
4626
|
};
|
|
3985
4627
|
};
|
|
3986
4628
|
MeController_updateProfile: {
|
|
@@ -4035,22 +4677,42 @@ interface operations {
|
|
|
4035
4677
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4036
4678
|
};
|
|
4037
4679
|
};
|
|
4680
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
4681
|
+
429: {
|
|
4682
|
+
headers: {
|
|
4683
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
4684
|
+
"Retry-After"?: number;
|
|
4685
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
4686
|
+
[name: string]: unknown;
|
|
4687
|
+
};
|
|
4688
|
+
content: {
|
|
4689
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4690
|
+
};
|
|
4691
|
+
};
|
|
4038
4692
|
};
|
|
4039
4693
|
};
|
|
4040
4694
|
OAuthAuthorizeController_authorize: {
|
|
4041
4695
|
parameters: {
|
|
4042
4696
|
query: {
|
|
4043
|
-
/**
|
|
4697
|
+
/**
|
|
4698
|
+
* @description Comma-separated products to pre-select on the consent screen (`auth`, `mail`, `waitlist`, `social`, `trawl`). A pre-selection only: the human decides. Unknown names are ignored.
|
|
4699
|
+
* @example mail,waitlist
|
|
4700
|
+
*/
|
|
4044
4701
|
products?: unknown;
|
|
4045
4702
|
/** @description RFC 8707 resource indicator. Becomes the access token `aud`. It may carry `?products=mail,waitlist`, which pre-selects products on the consent screen and is removed from the audience. */
|
|
4046
4703
|
resource?: unknown;
|
|
4047
4704
|
state?: unknown;
|
|
4705
|
+
/** @example S256 */
|
|
4048
4706
|
code_challenge_method: unknown;
|
|
4049
4707
|
code_challenge: unknown;
|
|
4050
|
-
/**
|
|
4708
|
+
/**
|
|
4709
|
+
* @description Space-delimited preset names (`readonly`, `mail`, `support`, `full`). A preset resolves to a policy template the human narrows on the consent screen; it is never authority in itself.
|
|
4710
|
+
* @example mail
|
|
4711
|
+
*/
|
|
4051
4712
|
scope: unknown;
|
|
4052
4713
|
redirect_uri: unknown;
|
|
4053
4714
|
client_id: unknown;
|
|
4715
|
+
/** @example code */
|
|
4054
4716
|
response_type: unknown;
|
|
4055
4717
|
};
|
|
4056
4718
|
header?: never;
|
|
@@ -4077,14 +4739,32 @@ interface operations {
|
|
|
4077
4739
|
"application/json": components["schemas"]["OAuthErrorResponseDto"];
|
|
4078
4740
|
};
|
|
4079
4741
|
};
|
|
4742
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
4743
|
+
429: {
|
|
4744
|
+
headers: {
|
|
4745
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
4746
|
+
"Retry-After"?: number;
|
|
4747
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
4748
|
+
[name: string]: unknown;
|
|
4749
|
+
};
|
|
4750
|
+
content: {
|
|
4751
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4752
|
+
};
|
|
4753
|
+
};
|
|
4080
4754
|
};
|
|
4081
4755
|
};
|
|
4082
4756
|
OAuthAuthorizeController_connections: {
|
|
4083
4757
|
parameters: {
|
|
4084
4758
|
query?: {
|
|
4085
|
-
/**
|
|
4086
|
-
|
|
4087
|
-
|
|
4759
|
+
/**
|
|
4760
|
+
* @description Page size. Defaults to 20, clamped to 100.
|
|
4761
|
+
* @example 20
|
|
4762
|
+
*/
|
|
4763
|
+
limit?: number;
|
|
4764
|
+
/**
|
|
4765
|
+
* @description Opaque `next_cursor` from the previous page.
|
|
4766
|
+
* @example eyJjcmVhdGVkX2F0IjoiMjAyNi0xMS0wMVQwMDowMDowMFoifQ
|
|
4767
|
+
*/
|
|
4088
4768
|
cursor?: string;
|
|
4089
4769
|
};
|
|
4090
4770
|
header?: never;
|
|
@@ -4123,6 +4803,18 @@ interface operations {
|
|
|
4123
4803
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4124
4804
|
};
|
|
4125
4805
|
};
|
|
4806
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
4807
|
+
429: {
|
|
4808
|
+
headers: {
|
|
4809
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
4810
|
+
"Retry-After"?: number;
|
|
4811
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
4812
|
+
[name: string]: unknown;
|
|
4813
|
+
};
|
|
4814
|
+
content: {
|
|
4815
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4816
|
+
};
|
|
4817
|
+
};
|
|
4126
4818
|
};
|
|
4127
4819
|
};
|
|
4128
4820
|
OAuthAuthorizeController_disconnect: {
|
|
@@ -4130,6 +4822,10 @@ interface operations {
|
|
|
4130
4822
|
query?: never;
|
|
4131
4823
|
header?: never;
|
|
4132
4824
|
path: {
|
|
4825
|
+
/**
|
|
4826
|
+
* @description Id of the grant.
|
|
4827
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
4828
|
+
*/
|
|
4133
4829
|
grant_id: string;
|
|
4134
4830
|
};
|
|
4135
4831
|
cookie?: never;
|
|
@@ -4164,6 +4860,18 @@ interface operations {
|
|
|
4164
4860
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4165
4861
|
};
|
|
4166
4862
|
};
|
|
4863
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
4864
|
+
429: {
|
|
4865
|
+
headers: {
|
|
4866
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
4867
|
+
"Retry-After"?: number;
|
|
4868
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
4869
|
+
[name: string]: unknown;
|
|
4870
|
+
};
|
|
4871
|
+
content: {
|
|
4872
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4873
|
+
};
|
|
4874
|
+
};
|
|
4167
4875
|
};
|
|
4168
4876
|
};
|
|
4169
4877
|
OAuthAuthorizeController_consentRequest: {
|
|
@@ -4171,6 +4879,10 @@ interface operations {
|
|
|
4171
4879
|
query?: never;
|
|
4172
4880
|
header?: never;
|
|
4173
4881
|
path: {
|
|
4882
|
+
/**
|
|
4883
|
+
* @description Id of the request.
|
|
4884
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
4885
|
+
*/
|
|
4174
4886
|
request_id: string;
|
|
4175
4887
|
};
|
|
4176
4888
|
cookie?: never;
|
|
@@ -4226,6 +4938,18 @@ interface operations {
|
|
|
4226
4938
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4227
4939
|
};
|
|
4228
4940
|
};
|
|
4941
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
4942
|
+
429: {
|
|
4943
|
+
headers: {
|
|
4944
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
4945
|
+
"Retry-After"?: number;
|
|
4946
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
4947
|
+
[name: string]: unknown;
|
|
4948
|
+
};
|
|
4949
|
+
content: {
|
|
4950
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4951
|
+
};
|
|
4952
|
+
};
|
|
4229
4953
|
};
|
|
4230
4954
|
};
|
|
4231
4955
|
OAuthAuthorizeController_decide: {
|
|
@@ -4233,6 +4957,10 @@ interface operations {
|
|
|
4233
4957
|
query?: never;
|
|
4234
4958
|
header?: never;
|
|
4235
4959
|
path: {
|
|
4960
|
+
/**
|
|
4961
|
+
* @description Id of the request.
|
|
4962
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
4963
|
+
*/
|
|
4236
4964
|
request_id: string;
|
|
4237
4965
|
};
|
|
4238
4966
|
cookie?: never;
|
|
@@ -4302,14 +5030,24 @@ interface operations {
|
|
|
4302
5030
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4303
5031
|
};
|
|
4304
5032
|
};
|
|
5033
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
5034
|
+
429: {
|
|
5035
|
+
headers: {
|
|
5036
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
5037
|
+
"Retry-After"?: number;
|
|
5038
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
5039
|
+
[name: string]: unknown;
|
|
5040
|
+
};
|
|
5041
|
+
content: {
|
|
5042
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5043
|
+
};
|
|
5044
|
+
};
|
|
4305
5045
|
};
|
|
4306
5046
|
};
|
|
4307
5047
|
OAuthDelegatedAuthorizationController_authorize: {
|
|
4308
5048
|
parameters: {
|
|
4309
5049
|
query?: never;
|
|
4310
|
-
header
|
|
4311
|
-
authorization: string;
|
|
4312
|
-
};
|
|
5050
|
+
header?: never;
|
|
4313
5051
|
path?: never;
|
|
4314
5052
|
cookie?: never;
|
|
4315
5053
|
};
|
|
@@ -4338,14 +5076,24 @@ interface operations {
|
|
|
4338
5076
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4339
5077
|
};
|
|
4340
5078
|
};
|
|
5079
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
5080
|
+
429: {
|
|
5081
|
+
headers: {
|
|
5082
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
5083
|
+
"Retry-After"?: number;
|
|
5084
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
5085
|
+
[name: string]: unknown;
|
|
5086
|
+
};
|
|
5087
|
+
content: {
|
|
5088
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5089
|
+
};
|
|
5090
|
+
};
|
|
4341
5091
|
};
|
|
4342
5092
|
};
|
|
4343
5093
|
OAuthDelegatedAuthorizationController_authorizeAssertion: {
|
|
4344
5094
|
parameters: {
|
|
4345
5095
|
query?: never;
|
|
4346
|
-
header
|
|
4347
|
-
authorization: string;
|
|
4348
|
-
};
|
|
5096
|
+
header?: never;
|
|
4349
5097
|
path?: never;
|
|
4350
5098
|
cookie?: never;
|
|
4351
5099
|
};
|
|
@@ -4374,14 +5122,24 @@ interface operations {
|
|
|
4374
5122
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4375
5123
|
};
|
|
4376
5124
|
};
|
|
5125
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
5126
|
+
429: {
|
|
5127
|
+
headers: {
|
|
5128
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
5129
|
+
"Retry-After"?: number;
|
|
5130
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
5131
|
+
[name: string]: unknown;
|
|
5132
|
+
};
|
|
5133
|
+
content: {
|
|
5134
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5135
|
+
};
|
|
5136
|
+
};
|
|
4377
5137
|
};
|
|
4378
5138
|
};
|
|
4379
5139
|
OAuthDelegatedAuthorizationController_authorizeBatch: {
|
|
4380
5140
|
parameters: {
|
|
4381
5141
|
query?: never;
|
|
4382
|
-
header
|
|
4383
|
-
authorization: string;
|
|
4384
|
-
};
|
|
5142
|
+
header?: never;
|
|
4385
5143
|
path?: never;
|
|
4386
5144
|
cookie?: never;
|
|
4387
5145
|
};
|
|
@@ -4420,14 +5178,24 @@ interface operations {
|
|
|
4420
5178
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4421
5179
|
};
|
|
4422
5180
|
};
|
|
5181
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
5182
|
+
429: {
|
|
5183
|
+
headers: {
|
|
5184
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
5185
|
+
"Retry-After"?: number;
|
|
5186
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
5187
|
+
[name: string]: unknown;
|
|
5188
|
+
};
|
|
5189
|
+
content: {
|
|
5190
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5191
|
+
};
|
|
5192
|
+
};
|
|
4423
5193
|
};
|
|
4424
5194
|
};
|
|
4425
5195
|
OAuthDelegatedAuthorizationController_downstreamAssertion: {
|
|
4426
5196
|
parameters: {
|
|
4427
5197
|
query?: never;
|
|
4428
|
-
header
|
|
4429
|
-
authorization: string;
|
|
4430
|
-
};
|
|
5198
|
+
header?: never;
|
|
4431
5199
|
path?: never;
|
|
4432
5200
|
cookie?: never;
|
|
4433
5201
|
};
|
|
@@ -4466,14 +5234,24 @@ interface operations {
|
|
|
4466
5234
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4467
5235
|
};
|
|
4468
5236
|
};
|
|
5237
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
5238
|
+
429: {
|
|
5239
|
+
headers: {
|
|
5240
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
5241
|
+
"Retry-After"?: number;
|
|
5242
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
5243
|
+
[name: string]: unknown;
|
|
5244
|
+
};
|
|
5245
|
+
content: {
|
|
5246
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5247
|
+
};
|
|
5248
|
+
};
|
|
4469
5249
|
};
|
|
4470
5250
|
};
|
|
4471
5251
|
OAuthDelegatedAuthorizationController_firstToolCall: {
|
|
4472
5252
|
parameters: {
|
|
4473
5253
|
query?: never;
|
|
4474
|
-
header
|
|
4475
|
-
authorization: string;
|
|
4476
|
-
};
|
|
5254
|
+
header?: never;
|
|
4477
5255
|
path?: never;
|
|
4478
5256
|
cookie?: never;
|
|
4479
5257
|
};
|
|
@@ -4497,6 +5275,18 @@ interface operations {
|
|
|
4497
5275
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4498
5276
|
};
|
|
4499
5277
|
};
|
|
5278
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
5279
|
+
429: {
|
|
5280
|
+
headers: {
|
|
5281
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
5282
|
+
"Retry-After"?: number;
|
|
5283
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
5284
|
+
[name: string]: unknown;
|
|
5285
|
+
};
|
|
5286
|
+
content: {
|
|
5287
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5288
|
+
};
|
|
5289
|
+
};
|
|
4500
5290
|
};
|
|
4501
5291
|
};
|
|
4502
5292
|
OAuthTokenController_introspect: {
|
|
@@ -4531,6 +5321,18 @@ interface operations {
|
|
|
4531
5321
|
"application/json": components["schemas"]["OAuthErrorResponseDto"];
|
|
4532
5322
|
};
|
|
4533
5323
|
};
|
|
5324
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
5325
|
+
429: {
|
|
5326
|
+
headers: {
|
|
5327
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
5328
|
+
"Retry-After"?: number;
|
|
5329
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
5330
|
+
[name: string]: unknown;
|
|
5331
|
+
};
|
|
5332
|
+
content: {
|
|
5333
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5334
|
+
};
|
|
5335
|
+
};
|
|
4534
5336
|
};
|
|
4535
5337
|
};
|
|
4536
5338
|
OAuthRegistrationController_register: {
|
|
@@ -4565,9 +5367,11 @@ interface operations {
|
|
|
4565
5367
|
"application/json": components["schemas"]["OAuthErrorResponseDto"];
|
|
4566
5368
|
};
|
|
4567
5369
|
};
|
|
4568
|
-
/** @description `invalid_request` — too many registrations from this IP. */
|
|
5370
|
+
/** @description `invalid_request` — too many registrations from this IP. Per-IP limit: rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
4569
5371
|
429: {
|
|
4570
5372
|
headers: {
|
|
5373
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
5374
|
+
"Retry-After"?: number;
|
|
4571
5375
|
"X-Request-Id": components["headers"]["RequestId"];
|
|
4572
5376
|
[name: string]: unknown;
|
|
4573
5377
|
};
|
|
@@ -4618,6 +5422,18 @@ interface operations {
|
|
|
4618
5422
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4619
5423
|
};
|
|
4620
5424
|
};
|
|
5425
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
5426
|
+
429: {
|
|
5427
|
+
headers: {
|
|
5428
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
5429
|
+
"Retry-After"?: number;
|
|
5430
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
5431
|
+
[name: string]: unknown;
|
|
5432
|
+
};
|
|
5433
|
+
content: {
|
|
5434
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5435
|
+
};
|
|
5436
|
+
};
|
|
4621
5437
|
};
|
|
4622
5438
|
};
|
|
4623
5439
|
OAuthRegistrationController_update: {
|
|
@@ -4655,6 +5471,18 @@ interface operations {
|
|
|
4655
5471
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4656
5472
|
};
|
|
4657
5473
|
};
|
|
5474
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
5475
|
+
429: {
|
|
5476
|
+
headers: {
|
|
5477
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
5478
|
+
"Retry-After"?: number;
|
|
5479
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
5480
|
+
[name: string]: unknown;
|
|
5481
|
+
};
|
|
5482
|
+
content: {
|
|
5483
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5484
|
+
};
|
|
5485
|
+
};
|
|
4658
5486
|
};
|
|
4659
5487
|
};
|
|
4660
5488
|
OAuthTokenController_revoke: {
|
|
@@ -4688,6 +5516,18 @@ interface operations {
|
|
|
4688
5516
|
"application/json": components["schemas"]["OAuthErrorResponseDto"];
|
|
4689
5517
|
};
|
|
4690
5518
|
};
|
|
5519
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
5520
|
+
429: {
|
|
5521
|
+
headers: {
|
|
5522
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
5523
|
+
"Retry-After"?: number;
|
|
5524
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
5525
|
+
[name: string]: unknown;
|
|
5526
|
+
};
|
|
5527
|
+
content: {
|
|
5528
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5529
|
+
};
|
|
5530
|
+
};
|
|
4691
5531
|
};
|
|
4692
5532
|
};
|
|
4693
5533
|
OAuthTokenController_token: {
|
|
@@ -4709,7 +5549,7 @@ interface operations {
|
|
|
4709
5549
|
[name: string]: unknown;
|
|
4710
5550
|
};
|
|
4711
5551
|
content: {
|
|
4712
|
-
"application/json": components["schemas"]["
|
|
5552
|
+
"application/json": components["schemas"]["OAuthTokenResponseDto"];
|
|
4713
5553
|
};
|
|
4714
5554
|
};
|
|
4715
5555
|
/** @description `invalid_request`, `invalid_grant`, `invalid_scope`, `invalid_target`, or `unsupported_grant_type`. */
|
|
@@ -4732,18 +5572,40 @@ interface operations {
|
|
|
4732
5572
|
"application/json": components["schemas"]["OAuthErrorResponseDto"];
|
|
4733
5573
|
};
|
|
4734
5574
|
};
|
|
5575
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
5576
|
+
429: {
|
|
5577
|
+
headers: {
|
|
5578
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
5579
|
+
"Retry-After"?: number;
|
|
5580
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
5581
|
+
[name: string]: unknown;
|
|
5582
|
+
};
|
|
5583
|
+
content: {
|
|
5584
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5585
|
+
};
|
|
5586
|
+
};
|
|
4735
5587
|
};
|
|
4736
5588
|
};
|
|
4737
5589
|
OAuthAuthorizeController_workspaceConnections: {
|
|
4738
5590
|
parameters: {
|
|
4739
5591
|
query?: {
|
|
4740
|
-
/**
|
|
4741
|
-
|
|
4742
|
-
|
|
5592
|
+
/**
|
|
5593
|
+
* @description Page size. Defaults to 20, clamped to 100.
|
|
5594
|
+
* @example 20
|
|
5595
|
+
*/
|
|
5596
|
+
limit?: number;
|
|
5597
|
+
/**
|
|
5598
|
+
* @description Opaque `next_cursor` from the previous page.
|
|
5599
|
+
* @example eyJjcmVhdGVkX2F0IjoiMjAyNi0xMS0wMVQwMDowMDowMFoifQ
|
|
5600
|
+
*/
|
|
4743
5601
|
cursor?: string;
|
|
4744
5602
|
};
|
|
4745
5603
|
header?: never;
|
|
4746
5604
|
path: {
|
|
5605
|
+
/**
|
|
5606
|
+
* @description Id of the workspace.
|
|
5607
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
5608
|
+
*/
|
|
4747
5609
|
workspace_id: string;
|
|
4748
5610
|
};
|
|
4749
5611
|
cookie?: never;
|
|
@@ -4790,6 +5652,18 @@ interface operations {
|
|
|
4790
5652
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4791
5653
|
};
|
|
4792
5654
|
};
|
|
5655
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
5656
|
+
429: {
|
|
5657
|
+
headers: {
|
|
5658
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
5659
|
+
"Retry-After"?: number;
|
|
5660
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
5661
|
+
[name: string]: unknown;
|
|
5662
|
+
};
|
|
5663
|
+
content: {
|
|
5664
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5665
|
+
};
|
|
5666
|
+
};
|
|
4793
5667
|
};
|
|
4794
5668
|
};
|
|
4795
5669
|
OAuthAuthorizeController_disconnectWorkspaceConnection: {
|
|
@@ -4797,7 +5671,15 @@ interface operations {
|
|
|
4797
5671
|
query?: never;
|
|
4798
5672
|
header?: never;
|
|
4799
5673
|
path: {
|
|
5674
|
+
/**
|
|
5675
|
+
* @description Id of the workspace.
|
|
5676
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
5677
|
+
*/
|
|
4800
5678
|
workspace_id: string;
|
|
5679
|
+
/**
|
|
5680
|
+
* @description Id of the grant.
|
|
5681
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
5682
|
+
*/
|
|
4801
5683
|
grant_id: string;
|
|
4802
5684
|
};
|
|
4803
5685
|
cookie?: never;
|
|
@@ -4842,6 +5724,18 @@ interface operations {
|
|
|
4842
5724
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4843
5725
|
};
|
|
4844
5726
|
};
|
|
5727
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
5728
|
+
429: {
|
|
5729
|
+
headers: {
|
|
5730
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
5731
|
+
"Retry-After"?: number;
|
|
5732
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
5733
|
+
[name: string]: unknown;
|
|
5734
|
+
};
|
|
5735
|
+
content: {
|
|
5736
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5737
|
+
};
|
|
5738
|
+
};
|
|
4845
5739
|
};
|
|
4846
5740
|
};
|
|
4847
5741
|
OAuthAuthorizeController_restoreWorkspaceConnection: {
|
|
@@ -4849,7 +5743,15 @@ interface operations {
|
|
|
4849
5743
|
query?: never;
|
|
4850
5744
|
header?: never;
|
|
4851
5745
|
path: {
|
|
5746
|
+
/**
|
|
5747
|
+
* @description Id of the workspace.
|
|
5748
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
5749
|
+
*/
|
|
4852
5750
|
workspace_id: string;
|
|
5751
|
+
/**
|
|
5752
|
+
* @description Id of the grant.
|
|
5753
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
5754
|
+
*/
|
|
4853
5755
|
grant_id: string;
|
|
4854
5756
|
};
|
|
4855
5757
|
cookie?: never;
|
|
@@ -4904,6 +5806,18 @@ interface operations {
|
|
|
4904
5806
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4905
5807
|
};
|
|
4906
5808
|
};
|
|
5809
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
5810
|
+
429: {
|
|
5811
|
+
headers: {
|
|
5812
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
5813
|
+
"Retry-After"?: number;
|
|
5814
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
5815
|
+
[name: string]: unknown;
|
|
5816
|
+
};
|
|
5817
|
+
content: {
|
|
5818
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5819
|
+
};
|
|
5820
|
+
};
|
|
4907
5821
|
};
|
|
4908
5822
|
};
|
|
4909
5823
|
SessionController_getSessions: {
|
|
@@ -4935,6 +5849,18 @@ interface operations {
|
|
|
4935
5849
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4936
5850
|
};
|
|
4937
5851
|
};
|
|
5852
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
5853
|
+
429: {
|
|
5854
|
+
headers: {
|
|
5855
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
5856
|
+
"Retry-After"?: number;
|
|
5857
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
5858
|
+
[name: string]: unknown;
|
|
5859
|
+
};
|
|
5860
|
+
content: {
|
|
5861
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5862
|
+
};
|
|
5863
|
+
};
|
|
4938
5864
|
};
|
|
4939
5865
|
};
|
|
4940
5866
|
SessionController_revokeOtherSessions: {
|
|
@@ -4975,6 +5901,18 @@ interface operations {
|
|
|
4975
5901
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
4976
5902
|
};
|
|
4977
5903
|
};
|
|
5904
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
5905
|
+
429: {
|
|
5906
|
+
headers: {
|
|
5907
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
5908
|
+
"Retry-After"?: number;
|
|
5909
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
5910
|
+
[name: string]: unknown;
|
|
5911
|
+
};
|
|
5912
|
+
content: {
|
|
5913
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5914
|
+
};
|
|
5915
|
+
};
|
|
4978
5916
|
};
|
|
4979
5917
|
};
|
|
4980
5918
|
SessionController_revokeSession: {
|
|
@@ -4982,6 +5920,10 @@ interface operations {
|
|
|
4982
5920
|
query?: never;
|
|
4983
5921
|
header?: never;
|
|
4984
5922
|
path: {
|
|
5923
|
+
/**
|
|
5924
|
+
* @description Id of the session.
|
|
5925
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
5926
|
+
*/
|
|
4985
5927
|
id: string;
|
|
4986
5928
|
};
|
|
4987
5929
|
cookie?: never;
|
|
@@ -5028,6 +5970,18 @@ interface operations {
|
|
|
5028
5970
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5029
5971
|
};
|
|
5030
5972
|
};
|
|
5973
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
5974
|
+
429: {
|
|
5975
|
+
headers: {
|
|
5976
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
5977
|
+
"Retry-After"?: number;
|
|
5978
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
5979
|
+
[name: string]: unknown;
|
|
5980
|
+
};
|
|
5981
|
+
content: {
|
|
5982
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5983
|
+
};
|
|
5984
|
+
};
|
|
5031
5985
|
};
|
|
5032
5986
|
};
|
|
5033
5987
|
VerificationController_resend: {
|
|
@@ -5059,6 +6013,18 @@ interface operations {
|
|
|
5059
6013
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5060
6014
|
};
|
|
5061
6015
|
};
|
|
6016
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
6017
|
+
429: {
|
|
6018
|
+
headers: {
|
|
6019
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
6020
|
+
"Retry-After"?: number;
|
|
6021
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
6022
|
+
[name: string]: unknown;
|
|
6023
|
+
};
|
|
6024
|
+
content: {
|
|
6025
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6026
|
+
};
|
|
6027
|
+
};
|
|
5062
6028
|
};
|
|
5063
6029
|
};
|
|
5064
6030
|
VerificationController_verify: {
|
|
@@ -5094,13 +6060,33 @@ interface operations {
|
|
|
5094
6060
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5095
6061
|
};
|
|
5096
6062
|
};
|
|
6063
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
6064
|
+
429: {
|
|
6065
|
+
headers: {
|
|
6066
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
6067
|
+
"Retry-After"?: number;
|
|
6068
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
6069
|
+
[name: string]: unknown;
|
|
6070
|
+
};
|
|
6071
|
+
content: {
|
|
6072
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6073
|
+
};
|
|
6074
|
+
};
|
|
5097
6075
|
};
|
|
5098
6076
|
};
|
|
5099
6077
|
WorkspaceController_listWorkspaces: {
|
|
5100
6078
|
parameters: {
|
|
5101
|
-
query
|
|
5102
|
-
|
|
5103
|
-
|
|
6079
|
+
query?: {
|
|
6080
|
+
/**
|
|
6081
|
+
* @description Page size. Defaults to 20, clamped to 100.
|
|
6082
|
+
* @example 20
|
|
6083
|
+
*/
|
|
6084
|
+
limit?: number;
|
|
6085
|
+
/**
|
|
6086
|
+
* @description Opaque `next_cursor` from the previous page.
|
|
6087
|
+
* @example eyJjcmVhdGVkX2F0IjoiMjAyNi0xMS0wMVQwMDowMDowMFoifQ
|
|
6088
|
+
*/
|
|
6089
|
+
cursor?: string;
|
|
5104
6090
|
};
|
|
5105
6091
|
header?: never;
|
|
5106
6092
|
path?: never;
|
|
@@ -5137,12 +6123,27 @@ interface operations {
|
|
|
5137
6123
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5138
6124
|
};
|
|
5139
6125
|
};
|
|
6126
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
6127
|
+
429: {
|
|
6128
|
+
headers: {
|
|
6129
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
6130
|
+
"Retry-After"?: number;
|
|
6131
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
6132
|
+
[name: string]: unknown;
|
|
6133
|
+
};
|
|
6134
|
+
content: {
|
|
6135
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6136
|
+
};
|
|
6137
|
+
};
|
|
5140
6138
|
};
|
|
5141
6139
|
};
|
|
5142
6140
|
WorkspaceController_createWorkspace: {
|
|
5143
6141
|
parameters: {
|
|
5144
6142
|
query?: never;
|
|
5145
|
-
header?:
|
|
6143
|
+
header?: {
|
|
6144
|
+
/** @description Opaque client-generated string (1-256 chars, `[A-Za-z0-9_-:]`) that deduplicates retries for 24 h. A retry with the same key and body returns the first response with `Idempotent-Replay: true` instead of creating a second resource. The SDKs send one on every create. */
|
|
6145
|
+
"Idempotency-Key"?: string;
|
|
6146
|
+
};
|
|
5146
6147
|
path?: never;
|
|
5147
6148
|
cookie?: never;
|
|
5148
6149
|
};
|
|
@@ -5154,6 +6155,8 @@ interface operations {
|
|
|
5154
6155
|
responses: {
|
|
5155
6156
|
201: {
|
|
5156
6157
|
headers: {
|
|
6158
|
+
/** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
|
|
6159
|
+
"Idempotent-Replay"?: "true";
|
|
5157
6160
|
"X-Request-Id": components["headers"]["RequestId"];
|
|
5158
6161
|
[name: string]: unknown;
|
|
5159
6162
|
};
|
|
@@ -5181,6 +6184,30 @@ interface operations {
|
|
|
5181
6184
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5182
6185
|
};
|
|
5183
6186
|
};
|
|
6187
|
+
/** @description Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
|
|
6188
|
+
409: {
|
|
6189
|
+
headers: {
|
|
6190
|
+
/** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
|
|
6191
|
+
"Retry-After"?: number;
|
|
6192
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
6193
|
+
[name: string]: unknown;
|
|
6194
|
+
};
|
|
6195
|
+
content: {
|
|
6196
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6197
|
+
};
|
|
6198
|
+
};
|
|
6199
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
6200
|
+
429: {
|
|
6201
|
+
headers: {
|
|
6202
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
6203
|
+
"Retry-After"?: number;
|
|
6204
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
6205
|
+
[name: string]: unknown;
|
|
6206
|
+
};
|
|
6207
|
+
content: {
|
|
6208
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6209
|
+
};
|
|
6210
|
+
};
|
|
5184
6211
|
};
|
|
5185
6212
|
};
|
|
5186
6213
|
WorkspaceController_acceptInvite: {
|
|
@@ -5266,9 +6293,11 @@ interface operations {
|
|
|
5266
6293
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5267
6294
|
};
|
|
5268
6295
|
};
|
|
5269
|
-
/** @description Rate limited: more than 10 requests/min from this IP (strict `auth` bucket). `Retry-After` header set. */
|
|
6296
|
+
/** @description Rate limited: more than 10 requests/min from this IP (strict `auth` bucket). `Retry-After` header set. Per-IP limit: rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
5270
6297
|
429: {
|
|
5271
6298
|
headers: {
|
|
6299
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
6300
|
+
"Retry-After"?: number;
|
|
5272
6301
|
"X-Request-Id": components["headers"]["RequestId"];
|
|
5273
6302
|
[name: string]: unknown;
|
|
5274
6303
|
};
|
|
@@ -5281,12 +6310,18 @@ interface operations {
|
|
|
5281
6310
|
WorkspaceStatsController_get: {
|
|
5282
6311
|
parameters: {
|
|
5283
6312
|
query?: {
|
|
5284
|
-
/**
|
|
6313
|
+
/**
|
|
6314
|
+
* @description Window for `in_window` and the length of `series`, in UTC days ending today.
|
|
6315
|
+
* @example 30d
|
|
6316
|
+
*/
|
|
5285
6317
|
window?: "1d" | "7d" | "30d";
|
|
5286
6318
|
};
|
|
5287
6319
|
header?: never;
|
|
5288
6320
|
path: {
|
|
5289
|
-
/**
|
|
6321
|
+
/**
|
|
6322
|
+
* @description Workspace id.
|
|
6323
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
6324
|
+
*/
|
|
5290
6325
|
workspace_id: string;
|
|
5291
6326
|
};
|
|
5292
6327
|
cookie?: never;
|
|
@@ -5343,6 +6378,18 @@ interface operations {
|
|
|
5343
6378
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5344
6379
|
};
|
|
5345
6380
|
};
|
|
6381
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
6382
|
+
429: {
|
|
6383
|
+
headers: {
|
|
6384
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
6385
|
+
"Retry-After"?: number;
|
|
6386
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
6387
|
+
[name: string]: unknown;
|
|
6388
|
+
};
|
|
6389
|
+
content: {
|
|
6390
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6391
|
+
};
|
|
6392
|
+
};
|
|
5346
6393
|
};
|
|
5347
6394
|
};
|
|
5348
6395
|
WorkspaceController_getWorkspace: {
|
|
@@ -5350,6 +6397,10 @@ interface operations {
|
|
|
5350
6397
|
query?: never;
|
|
5351
6398
|
header?: never;
|
|
5352
6399
|
path: {
|
|
6400
|
+
/**
|
|
6401
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
6402
|
+
* @example acme
|
|
6403
|
+
*/
|
|
5353
6404
|
workspace_slug: string;
|
|
5354
6405
|
};
|
|
5355
6406
|
cookie?: never;
|
|
@@ -5395,6 +6446,18 @@ interface operations {
|
|
|
5395
6446
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5396
6447
|
};
|
|
5397
6448
|
};
|
|
6449
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
6450
|
+
429: {
|
|
6451
|
+
headers: {
|
|
6452
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
6453
|
+
"Retry-After"?: number;
|
|
6454
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
6455
|
+
[name: string]: unknown;
|
|
6456
|
+
};
|
|
6457
|
+
content: {
|
|
6458
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6459
|
+
};
|
|
6460
|
+
};
|
|
5398
6461
|
};
|
|
5399
6462
|
};
|
|
5400
6463
|
WorkspaceController_deleteWorkspace: {
|
|
@@ -5402,6 +6465,10 @@ interface operations {
|
|
|
5402
6465
|
query?: never;
|
|
5403
6466
|
header?: never;
|
|
5404
6467
|
path: {
|
|
6468
|
+
/**
|
|
6469
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
6470
|
+
* @example acme
|
|
6471
|
+
*/
|
|
5405
6472
|
workspace_slug: string;
|
|
5406
6473
|
};
|
|
5407
6474
|
cookie?: never;
|
|
@@ -5436,6 +6503,18 @@ interface operations {
|
|
|
5436
6503
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5437
6504
|
};
|
|
5438
6505
|
};
|
|
6506
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
6507
|
+
429: {
|
|
6508
|
+
headers: {
|
|
6509
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
6510
|
+
"Retry-After"?: number;
|
|
6511
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
6512
|
+
[name: string]: unknown;
|
|
6513
|
+
};
|
|
6514
|
+
content: {
|
|
6515
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6516
|
+
};
|
|
6517
|
+
};
|
|
5439
6518
|
};
|
|
5440
6519
|
};
|
|
5441
6520
|
WorkspaceController_updateWorkspace: {
|
|
@@ -5443,6 +6522,10 @@ interface operations {
|
|
|
5443
6522
|
query?: never;
|
|
5444
6523
|
header?: never;
|
|
5445
6524
|
path: {
|
|
6525
|
+
/**
|
|
6526
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
6527
|
+
* @example acme
|
|
6528
|
+
*/
|
|
5446
6529
|
workspace_slug: string;
|
|
5447
6530
|
};
|
|
5448
6531
|
cookie?: never;
|
|
@@ -5503,39 +6586,59 @@ interface operations {
|
|
|
5503
6586
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5504
6587
|
};
|
|
5505
6588
|
};
|
|
6589
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
6590
|
+
429: {
|
|
6591
|
+
headers: {
|
|
6592
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
6593
|
+
"Retry-After"?: number;
|
|
6594
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
6595
|
+
[name: string]: unknown;
|
|
6596
|
+
};
|
|
6597
|
+
content: {
|
|
6598
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6599
|
+
};
|
|
6600
|
+
};
|
|
5506
6601
|
};
|
|
5507
6602
|
};
|
|
5508
6603
|
PlatformApiKeyController_list: {
|
|
5509
6604
|
parameters: {
|
|
5510
6605
|
query?: {
|
|
5511
|
-
/**
|
|
5512
|
-
|
|
5513
|
-
|
|
6606
|
+
/**
|
|
6607
|
+
* @description Page size. Defaults to 20, clamped to 100.
|
|
6608
|
+
* @example 20
|
|
6609
|
+
*/
|
|
6610
|
+
limit?: number;
|
|
6611
|
+
/**
|
|
6612
|
+
* @description Opaque `next_cursor` from the previous page.
|
|
6613
|
+
* @example eyJjcmVhdGVkX2F0IjoiMjAyNi0xMS0wMVQwMDowMDowMFoifQ
|
|
6614
|
+
*/
|
|
5514
6615
|
cursor?: string;
|
|
5515
|
-
/**
|
|
6616
|
+
/**
|
|
6617
|
+
* @description Send `false` to leave revoked keys out (the console's default view). Expired keys are still listed: they show what needs replacing. The deprecated bare array ignores it.
|
|
6618
|
+
* @example true
|
|
6619
|
+
*/
|
|
5516
6620
|
include_revoked?: "true" | "false";
|
|
5517
6621
|
};
|
|
5518
6622
|
header?: never;
|
|
5519
6623
|
path: {
|
|
6624
|
+
/**
|
|
6625
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
6626
|
+
* @example acme
|
|
6627
|
+
*/
|
|
5520
6628
|
workspace_slug: string;
|
|
5521
6629
|
};
|
|
5522
6630
|
cookie?: never;
|
|
5523
6631
|
};
|
|
5524
6632
|
requestBody?: never;
|
|
5525
6633
|
responses: {
|
|
5526
|
-
/**
|
|
5527
|
-
* @description Two shapes, selected by the request — see `oneOf`.
|
|
5528
|
-
*
|
|
5529
|
-
* - **`?limit=` or `?cursor=` present** → the standard `{data, pagination}` envelope with `next_cursor` + `has_more`. Use this; it is the only shape that pages.
|
|
5530
|
-
* - **neither present** → the legacy bare JSON array of every PAK in the workspace (capped at 1000). DEPRECATED as of 2026-09 and retained only so `@productcraft/platform-auth` <= 0.0.12 clients, which cannot send either query param, keep working. It will be removed once those clients are off it; new integrations must send `?limit=`.
|
|
5531
|
-
*/
|
|
6634
|
+
/** @description One page of keys. */
|
|
5532
6635
|
200: {
|
|
5533
6636
|
headers: {
|
|
5534
6637
|
"X-Request-Id": components["headers"]["RequestId"];
|
|
5535
6638
|
[name: string]: unknown;
|
|
5536
6639
|
};
|
|
5537
6640
|
content: {
|
|
5538
|
-
"application/json": components["schemas"]["ListPlatformApiKeysResponseDto"]
|
|
6641
|
+
"application/json": components["schemas"]["ListPlatformApiKeysResponseDto"];
|
|
5539
6642
|
};
|
|
5540
6643
|
};
|
|
5541
6644
|
/** @description Malformed `cursor`, or `include_revoked` is not `true` or `false` (`VALIDATION_ERROR`). */
|
|
@@ -5558,13 +6661,32 @@ interface operations {
|
|
|
5558
6661
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5559
6662
|
};
|
|
5560
6663
|
};
|
|
6664
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
6665
|
+
429: {
|
|
6666
|
+
headers: {
|
|
6667
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
6668
|
+
"Retry-After"?: number;
|
|
6669
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
6670
|
+
[name: string]: unknown;
|
|
6671
|
+
};
|
|
6672
|
+
content: {
|
|
6673
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6674
|
+
};
|
|
6675
|
+
};
|
|
5561
6676
|
};
|
|
5562
6677
|
};
|
|
5563
6678
|
PlatformApiKeyController_create: {
|
|
5564
6679
|
parameters: {
|
|
5565
6680
|
query?: never;
|
|
5566
|
-
header?:
|
|
6681
|
+
header?: {
|
|
6682
|
+
/** @description Opaque client-generated string (1-256 chars, `[A-Za-z0-9_-:]`) that deduplicates retries for 24 h. A retry with the same key and body mints nothing and answers `409 PAK_ALREADY_MINTED` with the first key's `id` in `details` (the token is shown once and never cached; rotate the key for a new one). The SDKs send one on every create. */
|
|
6683
|
+
"Idempotency-Key"?: string;
|
|
6684
|
+
};
|
|
5567
6685
|
path: {
|
|
6686
|
+
/**
|
|
6687
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
6688
|
+
* @example acme
|
|
6689
|
+
*/
|
|
5568
6690
|
workspace_slug: string;
|
|
5569
6691
|
};
|
|
5570
6692
|
cookie?: never;
|
|
@@ -5577,6 +6699,8 @@ interface operations {
|
|
|
5577
6699
|
responses: {
|
|
5578
6700
|
201: {
|
|
5579
6701
|
headers: {
|
|
6702
|
+
/** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
|
|
6703
|
+
"Idempotent-Replay"?: "true";
|
|
5580
6704
|
"X-Request-Id": components["headers"]["RequestId"];
|
|
5581
6705
|
[name: string]: unknown;
|
|
5582
6706
|
};
|
|
@@ -5624,6 +6748,30 @@ interface operations {
|
|
|
5624
6748
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5625
6749
|
};
|
|
5626
6750
|
};
|
|
6751
|
+
/** @description `PAK_ALREADY_MINTED`: this `Idempotency-Key` already minted a key (its `id` is in `details`); the token was shown once, so rotate that key for a new one. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
|
|
6752
|
+
409: {
|
|
6753
|
+
headers: {
|
|
6754
|
+
/** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
|
|
6755
|
+
"Retry-After"?: number;
|
|
6756
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
6757
|
+
[name: string]: unknown;
|
|
6758
|
+
};
|
|
6759
|
+
content: {
|
|
6760
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6761
|
+
};
|
|
6762
|
+
};
|
|
6763
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
6764
|
+
429: {
|
|
6765
|
+
headers: {
|
|
6766
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
6767
|
+
"Retry-After"?: number;
|
|
6768
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
6769
|
+
[name: string]: unknown;
|
|
6770
|
+
};
|
|
6771
|
+
content: {
|
|
6772
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6773
|
+
};
|
|
6774
|
+
};
|
|
5627
6775
|
};
|
|
5628
6776
|
};
|
|
5629
6777
|
PlatformApiKeyController_presets: {
|
|
@@ -5631,6 +6779,10 @@ interface operations {
|
|
|
5631
6779
|
query?: never;
|
|
5632
6780
|
header?: never;
|
|
5633
6781
|
path: {
|
|
6782
|
+
/**
|
|
6783
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
6784
|
+
* @example acme
|
|
6785
|
+
*/
|
|
5634
6786
|
workspace_slug: string;
|
|
5635
6787
|
};
|
|
5636
6788
|
cookie?: never;
|
|
@@ -5676,6 +6828,18 @@ interface operations {
|
|
|
5676
6828
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5677
6829
|
};
|
|
5678
6830
|
};
|
|
6831
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
6832
|
+
429: {
|
|
6833
|
+
headers: {
|
|
6834
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
6835
|
+
"Retry-After"?: number;
|
|
6836
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
6837
|
+
[name: string]: unknown;
|
|
6838
|
+
};
|
|
6839
|
+
content: {
|
|
6840
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6841
|
+
};
|
|
6842
|
+
};
|
|
5679
6843
|
};
|
|
5680
6844
|
};
|
|
5681
6845
|
PlatformApiKeyController_preview: {
|
|
@@ -5683,6 +6847,10 @@ interface operations {
|
|
|
5683
6847
|
query?: never;
|
|
5684
6848
|
header?: never;
|
|
5685
6849
|
path: {
|
|
6850
|
+
/**
|
|
6851
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
6852
|
+
* @example acme
|
|
6853
|
+
*/
|
|
5686
6854
|
workspace_slug: string;
|
|
5687
6855
|
};
|
|
5688
6856
|
cookie?: never;
|
|
@@ -5742,6 +6910,18 @@ interface operations {
|
|
|
5742
6910
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5743
6911
|
};
|
|
5744
6912
|
};
|
|
6913
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
6914
|
+
429: {
|
|
6915
|
+
headers: {
|
|
6916
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
6917
|
+
"Retry-After"?: number;
|
|
6918
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
6919
|
+
[name: string]: unknown;
|
|
6920
|
+
};
|
|
6921
|
+
content: {
|
|
6922
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6923
|
+
};
|
|
6924
|
+
};
|
|
5745
6925
|
};
|
|
5746
6926
|
};
|
|
5747
6927
|
PlatformApiKeyController_get: {
|
|
@@ -5749,7 +6929,15 @@ interface operations {
|
|
|
5749
6929
|
query?: never;
|
|
5750
6930
|
header?: never;
|
|
5751
6931
|
path: {
|
|
6932
|
+
/**
|
|
6933
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
6934
|
+
* @example acme
|
|
6935
|
+
*/
|
|
5752
6936
|
workspace_slug: string;
|
|
6937
|
+
/**
|
|
6938
|
+
* @description Id of the api key.
|
|
6939
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
6940
|
+
*/
|
|
5753
6941
|
id: string;
|
|
5754
6942
|
};
|
|
5755
6943
|
cookie?: never;
|
|
@@ -5805,17 +6993,40 @@ interface operations {
|
|
|
5805
6993
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5806
6994
|
};
|
|
5807
6995
|
};
|
|
6996
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
6997
|
+
429: {
|
|
6998
|
+
headers: {
|
|
6999
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
7000
|
+
"Retry-After"?: number;
|
|
7001
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
7002
|
+
[name: string]: unknown;
|
|
7003
|
+
};
|
|
7004
|
+
content: {
|
|
7005
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
7006
|
+
};
|
|
7007
|
+
};
|
|
5808
7008
|
};
|
|
5809
7009
|
};
|
|
5810
7010
|
PlatformApiKeyController_revoke: {
|
|
5811
7011
|
parameters: {
|
|
5812
7012
|
query?: {
|
|
5813
|
-
/**
|
|
7013
|
+
/**
|
|
7014
|
+
* @description When `true`, publish a `pak:revoked` Redis fan-out so subscribed services evict their caches immediately instead of waiting out the 60s TTL.
|
|
7015
|
+
* @example true
|
|
7016
|
+
*/
|
|
5814
7017
|
force?: boolean;
|
|
5815
7018
|
};
|
|
5816
7019
|
header?: never;
|
|
5817
7020
|
path: {
|
|
7021
|
+
/**
|
|
7022
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
7023
|
+
* @example acme
|
|
7024
|
+
*/
|
|
5818
7025
|
workspace_slug: string;
|
|
7026
|
+
/**
|
|
7027
|
+
* @description Id of the api key.
|
|
7028
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
7029
|
+
*/
|
|
5819
7030
|
id: string;
|
|
5820
7031
|
};
|
|
5821
7032
|
cookie?: never;
|
|
@@ -5870,6 +7081,18 @@ interface operations {
|
|
|
5870
7081
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5871
7082
|
};
|
|
5872
7083
|
};
|
|
7084
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
7085
|
+
429: {
|
|
7086
|
+
headers: {
|
|
7087
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
7088
|
+
"Retry-After"?: number;
|
|
7089
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
7090
|
+
[name: string]: unknown;
|
|
7091
|
+
};
|
|
7092
|
+
content: {
|
|
7093
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
7094
|
+
};
|
|
7095
|
+
};
|
|
5873
7096
|
};
|
|
5874
7097
|
};
|
|
5875
7098
|
PlatformApiKeyController_update: {
|
|
@@ -5877,7 +7100,15 @@ interface operations {
|
|
|
5877
7100
|
query?: never;
|
|
5878
7101
|
header?: never;
|
|
5879
7102
|
path: {
|
|
7103
|
+
/**
|
|
7104
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
7105
|
+
* @example acme
|
|
7106
|
+
*/
|
|
5880
7107
|
workspace_slug: string;
|
|
7108
|
+
/**
|
|
7109
|
+
* @description Id of the api key.
|
|
7110
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
7111
|
+
*/
|
|
5881
7112
|
id: string;
|
|
5882
7113
|
};
|
|
5883
7114
|
cookie?: never;
|
|
@@ -5947,6 +7178,18 @@ interface operations {
|
|
|
5947
7178
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
5948
7179
|
};
|
|
5949
7180
|
};
|
|
7181
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
7182
|
+
429: {
|
|
7183
|
+
headers: {
|
|
7184
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
7185
|
+
"Retry-After"?: number;
|
|
7186
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
7187
|
+
[name: string]: unknown;
|
|
7188
|
+
};
|
|
7189
|
+
content: {
|
|
7190
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
7191
|
+
};
|
|
7192
|
+
};
|
|
5950
7193
|
};
|
|
5951
7194
|
};
|
|
5952
7195
|
PlatformApiKeyController_setBindings: {
|
|
@@ -5954,7 +7197,15 @@ interface operations {
|
|
|
5954
7197
|
query?: never;
|
|
5955
7198
|
header?: never;
|
|
5956
7199
|
path: {
|
|
7200
|
+
/**
|
|
7201
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
7202
|
+
* @example acme
|
|
7203
|
+
*/
|
|
5957
7204
|
workspace_slug: string;
|
|
7205
|
+
/**
|
|
7206
|
+
* @description Id of the api key.
|
|
7207
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
7208
|
+
*/
|
|
5958
7209
|
id: string;
|
|
5959
7210
|
};
|
|
5960
7211
|
cookie?: never;
|
|
@@ -6025,6 +7276,18 @@ interface operations {
|
|
|
6025
7276
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6026
7277
|
};
|
|
6027
7278
|
};
|
|
7279
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
7280
|
+
429: {
|
|
7281
|
+
headers: {
|
|
7282
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
7283
|
+
"Retry-After"?: number;
|
|
7284
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
7285
|
+
[name: string]: unknown;
|
|
7286
|
+
};
|
|
7287
|
+
content: {
|
|
7288
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
7289
|
+
};
|
|
7290
|
+
};
|
|
6028
7291
|
};
|
|
6029
7292
|
};
|
|
6030
7293
|
PlatformApiKeyController_rotate: {
|
|
@@ -6032,7 +7295,15 @@ interface operations {
|
|
|
6032
7295
|
query?: never;
|
|
6033
7296
|
header?: never;
|
|
6034
7297
|
path: {
|
|
7298
|
+
/**
|
|
7299
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
7300
|
+
* @example acme
|
|
7301
|
+
*/
|
|
6035
7302
|
workspace_slug: string;
|
|
7303
|
+
/**
|
|
7304
|
+
* @description Id of the api key.
|
|
7305
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
7306
|
+
*/
|
|
6036
7307
|
id: string;
|
|
6037
7308
|
};
|
|
6038
7309
|
cookie?: never;
|
|
@@ -6092,30 +7363,70 @@ interface operations {
|
|
|
6092
7363
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6093
7364
|
};
|
|
6094
7365
|
};
|
|
7366
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
7367
|
+
429: {
|
|
7368
|
+
headers: {
|
|
7369
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
7370
|
+
"Retry-After"?: number;
|
|
7371
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
7372
|
+
[name: string]: unknown;
|
|
7373
|
+
};
|
|
7374
|
+
content: {
|
|
7375
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
7376
|
+
};
|
|
7377
|
+
};
|
|
6095
7378
|
};
|
|
6096
7379
|
};
|
|
6097
7380
|
WorkspaceAuditFeedController_listFeed: {
|
|
6098
7381
|
parameters: {
|
|
6099
7382
|
query?: {
|
|
6100
|
-
/**
|
|
7383
|
+
/**
|
|
7384
|
+
* @description ISO-8601 inclusive lower bound on `timestamp`. Items older than `since` are not returned.
|
|
7385
|
+
* @example 2026-11-01T00:00:00Z
|
|
7386
|
+
*/
|
|
6101
7387
|
since?: string;
|
|
6102
|
-
/**
|
|
7388
|
+
/**
|
|
7389
|
+
* @description ISO-8601 inclusive upper bound on `timestamp`. Composes with `since`, `action`, `actor_id` and with the cursor. A bare date resolves to midnight UTC, so `until=2026-05-01` excludes that day’s later entries.
|
|
7390
|
+
* @example 2026-11-01T00:00:00Z
|
|
7391
|
+
*/
|
|
6103
7392
|
until?: string;
|
|
6104
|
-
/**
|
|
7393
|
+
/**
|
|
7394
|
+
* @description Exact-match filter on the action identifier (e.g. `workspace.member.removed`). A partial string matches nothing. Mail, Waitlist, Social and Auth actions are reported under the product name (`mail.domain.verified`); the older internal spellings (`envoi.*`, `rally.*`, `agora.*`, `heimdall.*`) are still accepted here and match the same rows.
|
|
7395
|
+
* @example workspace.member.removed
|
|
7396
|
+
*/
|
|
6105
7397
|
action?: string;
|
|
6106
|
-
/**
|
|
7398
|
+
/**
|
|
7399
|
+
* @description Exact-match filter on the acting account UUID. Must be a well-formed UUID — anything else is a 400, not an empty page. System rows have a null actor and are excluded by this filter.
|
|
7400
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
7401
|
+
*/
|
|
6107
7402
|
actor_id?: string;
|
|
6108
|
-
/**
|
|
7403
|
+
/**
|
|
7404
|
+
* @description When `true`, return only admin changes: reads (any action ending `.read`), successful sign-ins (`auth.signin.succeeded`) and MCP tool-call rows (`workspace.mcp_tool.*`) are left out. The same rows the dashboard stats count as admin changes. Composes with every other filter and with the cursor; pass it on every page. Any value other than `true` or `1` means `false`.
|
|
7405
|
+
* @example false
|
|
7406
|
+
*/
|
|
6109
7407
|
changes_only?: boolean;
|
|
6110
|
-
/**
|
|
7408
|
+
/**
|
|
7409
|
+
* @description Opaque cursor from a previous response's `pagination.next_cursor`. Resumes the feed at the same merge boundary.
|
|
7410
|
+
* @example eyJjcmVhdGVkX2F0IjoiMjAyNi0xMS0wMVQwMDowMDowMFoifQ
|
|
7411
|
+
*/
|
|
6111
7412
|
cursor?: string;
|
|
6112
|
-
/**
|
|
7413
|
+
/**
|
|
7414
|
+
* @description Per-page cap. Clamped to 1..500; default 100.
|
|
7415
|
+
* @example 100
|
|
7416
|
+
*/
|
|
6113
7417
|
limit?: number;
|
|
6114
|
-
/**
|
|
7418
|
+
/**
|
|
7419
|
+
* @description Comma-separated subset of sources to include (e.g. `workspace_audit,heimdall_audit`). Omitted = all enabled sources.
|
|
7420
|
+
* @example workspace_audit,heimdall_audit
|
|
7421
|
+
*/
|
|
6115
7422
|
sources?: string;
|
|
6116
7423
|
};
|
|
6117
7424
|
header?: never;
|
|
6118
7425
|
path: {
|
|
7426
|
+
/**
|
|
7427
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
7428
|
+
* @example acme
|
|
7429
|
+
*/
|
|
6119
7430
|
workspace_slug: string;
|
|
6120
7431
|
};
|
|
6121
7432
|
cookie?: never;
|
|
@@ -6171,26 +7482,60 @@ interface operations {
|
|
|
6171
7482
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6172
7483
|
};
|
|
6173
7484
|
};
|
|
7485
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
7486
|
+
429: {
|
|
7487
|
+
headers: {
|
|
7488
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
7489
|
+
"Retry-After"?: number;
|
|
7490
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
7491
|
+
[name: string]: unknown;
|
|
7492
|
+
};
|
|
7493
|
+
content: {
|
|
7494
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
7495
|
+
};
|
|
7496
|
+
};
|
|
6174
7497
|
};
|
|
6175
7498
|
};
|
|
6176
7499
|
WorkspaceAuditController_listAuditLogs: {
|
|
6177
7500
|
parameters: {
|
|
6178
7501
|
query?: {
|
|
6179
|
-
/**
|
|
6180
|
-
|
|
6181
|
-
|
|
7502
|
+
/**
|
|
7503
|
+
* @description Page size. Defaults to 20, clamped to 100.
|
|
7504
|
+
* @example 20
|
|
7505
|
+
*/
|
|
7506
|
+
limit?: number;
|
|
7507
|
+
/**
|
|
7508
|
+
* @description Opaque `next_cursor` from the previous page.
|
|
7509
|
+
* @example eyJjcmVhdGVkX2F0IjoiMjAyNi0xMS0wMVQwMDowMDowMFoifQ
|
|
7510
|
+
*/
|
|
6182
7511
|
cursor?: string;
|
|
6183
|
-
/**
|
|
7512
|
+
/**
|
|
7513
|
+
* @description Exact-match filter on the action identifier (e.g. `workspace.member.removed`). Mail, Waitlist, Social and Auth actions are reported under the product name (`mail.domain.verified`); the older internal spellings (`envoi.*`, `rally.*`, `agora.*`, `heimdall.*`) are still accepted here and match the same rows.
|
|
7514
|
+
* @example workspace.member.removed
|
|
7515
|
+
*/
|
|
6184
7516
|
action?: string;
|
|
6185
|
-
/**
|
|
7517
|
+
/**
|
|
7518
|
+
* @description Exact-match filter on the acting account UUID. System rows have a null actor and are excluded by this filter.
|
|
7519
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
7520
|
+
*/
|
|
6186
7521
|
actor_id?: string;
|
|
6187
|
-
/**
|
|
7522
|
+
/**
|
|
7523
|
+
* @description Inclusive lower bound on `created_at`. ISO-8601 date (`2026-05-01`, midnight UTC) or date-time (`2026-05-01T09:00:00Z`). Composes with `action` / `actor_id` / `until` and with the cursor.
|
|
7524
|
+
* @example 2026-11-01T00:00:00Z
|
|
7525
|
+
*/
|
|
6188
7526
|
since?: string;
|
|
6189
|
-
/**
|
|
7527
|
+
/**
|
|
7528
|
+
* @description Inclusive upper bound on `created_at`. Same formats as `since`. Note a bare date resolves to midnight UTC, so `until=2026-05-01` excludes that day’s later entries.
|
|
7529
|
+
* @example 2026-11-01T00:00:00Z
|
|
7530
|
+
*/
|
|
6190
7531
|
until?: string;
|
|
6191
7532
|
};
|
|
6192
7533
|
header?: never;
|
|
6193
7534
|
path: {
|
|
7535
|
+
/**
|
|
7536
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
7537
|
+
* @example acme
|
|
7538
|
+
*/
|
|
6194
7539
|
workspace_slug: string;
|
|
6195
7540
|
};
|
|
6196
7541
|
cookie?: never;
|
|
@@ -6227,21 +7572,55 @@ interface operations {
|
|
|
6227
7572
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6228
7573
|
};
|
|
6229
7574
|
};
|
|
7575
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
7576
|
+
429: {
|
|
7577
|
+
headers: {
|
|
7578
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
7579
|
+
"Retry-After"?: number;
|
|
7580
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
7581
|
+
[name: string]: unknown;
|
|
7582
|
+
};
|
|
7583
|
+
content: {
|
|
7584
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
7585
|
+
};
|
|
7586
|
+
};
|
|
6230
7587
|
};
|
|
6231
7588
|
};
|
|
6232
7589
|
WorkspaceAuditController_exportAuditLogs: {
|
|
6233
7590
|
parameters: {
|
|
6234
7591
|
query?: {
|
|
6235
|
-
/**
|
|
7592
|
+
/**
|
|
7593
|
+
* @description Defaults to `ndjson`.
|
|
7594
|
+
* @example ndjson
|
|
7595
|
+
*/
|
|
6236
7596
|
format?: "ndjson" | "csv";
|
|
6237
|
-
/**
|
|
7597
|
+
/**
|
|
7598
|
+
* @description Exact-match filter on the action identifier, same rules as the list. Mail, Waitlist, Social and Auth actions are reported under the product name (`mail.domain.verified`); the older internal spellings (`envoi.*`, `rally.*`, `agora.*`, `heimdall.*`) are still accepted here and match the same rows.
|
|
7599
|
+
* @example workspace.member.removed
|
|
7600
|
+
*/
|
|
6238
7601
|
action?: string;
|
|
7602
|
+
/**
|
|
7603
|
+
* @description Exact-match filter on the acting account UUID, same rules as the list.
|
|
7604
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
7605
|
+
*/
|
|
6239
7606
|
actor_id?: string;
|
|
7607
|
+
/**
|
|
7608
|
+
* @description Inclusive lower bound on `created_at`, same formats as the list.
|
|
7609
|
+
* @example 2026-11-01T00:00:00Z
|
|
7610
|
+
*/
|
|
6240
7611
|
since?: string;
|
|
7612
|
+
/**
|
|
7613
|
+
* @description Inclusive upper bound on `created_at`, same formats as the list.
|
|
7614
|
+
* @example 2026-11-01T00:00:00Z
|
|
7615
|
+
*/
|
|
6241
7616
|
until?: string;
|
|
6242
7617
|
};
|
|
6243
7618
|
header?: never;
|
|
6244
7619
|
path: {
|
|
7620
|
+
/**
|
|
7621
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
7622
|
+
* @example acme
|
|
7623
|
+
*/
|
|
6245
7624
|
workspace_slug: string;
|
|
6246
7625
|
};
|
|
6247
7626
|
cookie?: never;
|
|
@@ -6309,6 +7688,18 @@ interface operations {
|
|
|
6309
7688
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6310
7689
|
};
|
|
6311
7690
|
};
|
|
7691
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
7692
|
+
429: {
|
|
7693
|
+
headers: {
|
|
7694
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
7695
|
+
"Retry-After"?: number;
|
|
7696
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
7697
|
+
[name: string]: unknown;
|
|
7698
|
+
};
|
|
7699
|
+
content: {
|
|
7700
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
7701
|
+
};
|
|
7702
|
+
};
|
|
6312
7703
|
};
|
|
6313
7704
|
};
|
|
6314
7705
|
WorkspaceController_setAvatar: {
|
|
@@ -6316,6 +7707,10 @@ interface operations {
|
|
|
6316
7707
|
query?: never;
|
|
6317
7708
|
header?: never;
|
|
6318
7709
|
path: {
|
|
7710
|
+
/**
|
|
7711
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
7712
|
+
* @example acme
|
|
7713
|
+
*/
|
|
6319
7714
|
workspace_slug: string;
|
|
6320
7715
|
};
|
|
6321
7716
|
cookie?: never;
|
|
@@ -6361,6 +7756,18 @@ interface operations {
|
|
|
6361
7756
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6362
7757
|
};
|
|
6363
7758
|
};
|
|
7759
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
7760
|
+
429: {
|
|
7761
|
+
headers: {
|
|
7762
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
7763
|
+
"Retry-After"?: number;
|
|
7764
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
7765
|
+
[name: string]: unknown;
|
|
7766
|
+
};
|
|
7767
|
+
content: {
|
|
7768
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
7769
|
+
};
|
|
7770
|
+
};
|
|
6364
7771
|
};
|
|
6365
7772
|
};
|
|
6366
7773
|
WorkspaceController_removeAvatar: {
|
|
@@ -6368,6 +7775,10 @@ interface operations {
|
|
|
6368
7775
|
query?: never;
|
|
6369
7776
|
header?: never;
|
|
6370
7777
|
path: {
|
|
7778
|
+
/**
|
|
7779
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
7780
|
+
* @example acme
|
|
7781
|
+
*/
|
|
6371
7782
|
workspace_slug: string;
|
|
6372
7783
|
};
|
|
6373
7784
|
cookie?: never;
|
|
@@ -6412,18 +7823,40 @@ interface operations {
|
|
|
6412
7823
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6413
7824
|
};
|
|
6414
7825
|
};
|
|
7826
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
7827
|
+
429: {
|
|
7828
|
+
headers: {
|
|
7829
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
7830
|
+
"Retry-After"?: number;
|
|
7831
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
7832
|
+
[name: string]: unknown;
|
|
7833
|
+
};
|
|
7834
|
+
content: {
|
|
7835
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
7836
|
+
};
|
|
7837
|
+
};
|
|
6415
7838
|
};
|
|
6416
7839
|
};
|
|
6417
7840
|
WorkspaceController_listInvites: {
|
|
6418
7841
|
parameters: {
|
|
6419
7842
|
query?: {
|
|
6420
|
-
/**
|
|
6421
|
-
|
|
6422
|
-
|
|
7843
|
+
/**
|
|
7844
|
+
* @description Page size. Defaults to 20, clamped to 100.
|
|
7845
|
+
* @example 20
|
|
7846
|
+
*/
|
|
7847
|
+
limit?: number;
|
|
7848
|
+
/**
|
|
7849
|
+
* @description Opaque `next_cursor` from the previous page.
|
|
7850
|
+
* @example eyJjcmVhdGVkX2F0IjoiMjAyNi0xMS0wMVQwMDowMDowMFoifQ
|
|
7851
|
+
*/
|
|
6423
7852
|
cursor?: string;
|
|
6424
7853
|
};
|
|
6425
7854
|
header?: never;
|
|
6426
7855
|
path: {
|
|
7856
|
+
/**
|
|
7857
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
7858
|
+
* @example acme
|
|
7859
|
+
*/
|
|
6427
7860
|
workspace_slug: string;
|
|
6428
7861
|
};
|
|
6429
7862
|
cookie?: never;
|
|
@@ -6479,13 +7912,32 @@ interface operations {
|
|
|
6479
7912
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6480
7913
|
};
|
|
6481
7914
|
};
|
|
7915
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
7916
|
+
429: {
|
|
7917
|
+
headers: {
|
|
7918
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
7919
|
+
"Retry-After"?: number;
|
|
7920
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
7921
|
+
[name: string]: unknown;
|
|
7922
|
+
};
|
|
7923
|
+
content: {
|
|
7924
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
7925
|
+
};
|
|
7926
|
+
};
|
|
6482
7927
|
};
|
|
6483
7928
|
};
|
|
6484
7929
|
WorkspaceController_createInvite: {
|
|
6485
7930
|
parameters: {
|
|
6486
7931
|
query?: never;
|
|
6487
|
-
header?:
|
|
7932
|
+
header?: {
|
|
7933
|
+
/** @description Opaque client-generated string (1-256 chars, `[A-Za-z0-9_-:]`) that deduplicates retries for 24 h. A retry with the same key and body returns the first response with `Idempotent-Replay: true` instead of creating a second resource. The SDKs send one on every create. */
|
|
7934
|
+
"Idempotency-Key"?: string;
|
|
7935
|
+
};
|
|
6488
7936
|
path: {
|
|
7937
|
+
/**
|
|
7938
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
7939
|
+
* @example acme
|
|
7940
|
+
*/
|
|
6489
7941
|
workspace_slug: string;
|
|
6490
7942
|
};
|
|
6491
7943
|
cookie?: never;
|
|
@@ -6498,6 +7950,8 @@ interface operations {
|
|
|
6498
7950
|
responses: {
|
|
6499
7951
|
201: {
|
|
6500
7952
|
headers: {
|
|
7953
|
+
/** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
|
|
7954
|
+
"Idempotent-Replay"?: "true";
|
|
6501
7955
|
"X-Request-Id": components["headers"]["RequestId"];
|
|
6502
7956
|
[name: string]: unknown;
|
|
6503
7957
|
};
|
|
@@ -6545,6 +7999,30 @@ interface operations {
|
|
|
6545
7999
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6546
8000
|
};
|
|
6547
8001
|
};
|
|
8002
|
+
/** @description Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
|
|
8003
|
+
409: {
|
|
8004
|
+
headers: {
|
|
8005
|
+
/** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
|
|
8006
|
+
"Retry-After"?: number;
|
|
8007
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
8008
|
+
[name: string]: unknown;
|
|
8009
|
+
};
|
|
8010
|
+
content: {
|
|
8011
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
8012
|
+
};
|
|
8013
|
+
};
|
|
8014
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
8015
|
+
429: {
|
|
8016
|
+
headers: {
|
|
8017
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
8018
|
+
"Retry-After"?: number;
|
|
8019
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
8020
|
+
[name: string]: unknown;
|
|
8021
|
+
};
|
|
8022
|
+
content: {
|
|
8023
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
8024
|
+
};
|
|
8025
|
+
};
|
|
6548
8026
|
};
|
|
6549
8027
|
};
|
|
6550
8028
|
WorkspaceController_revokeInvite: {
|
|
@@ -6552,7 +8030,15 @@ interface operations {
|
|
|
6552
8030
|
query?: never;
|
|
6553
8031
|
header?: never;
|
|
6554
8032
|
path: {
|
|
8033
|
+
/**
|
|
8034
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
8035
|
+
* @example acme
|
|
8036
|
+
*/
|
|
6555
8037
|
workspace_slug: string;
|
|
8038
|
+
/**
|
|
8039
|
+
* @description Id of the invite.
|
|
8040
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
8041
|
+
*/
|
|
6556
8042
|
invite_id: string;
|
|
6557
8043
|
};
|
|
6558
8044
|
cookie?: never;
|
|
@@ -6597,22 +8083,50 @@ interface operations {
|
|
|
6597
8083
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6598
8084
|
};
|
|
6599
8085
|
};
|
|
8086
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
8087
|
+
429: {
|
|
8088
|
+
headers: {
|
|
8089
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
8090
|
+
"Retry-After"?: number;
|
|
8091
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
8092
|
+
[name: string]: unknown;
|
|
8093
|
+
};
|
|
8094
|
+
content: {
|
|
8095
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
8096
|
+
};
|
|
8097
|
+
};
|
|
6600
8098
|
};
|
|
6601
8099
|
};
|
|
6602
8100
|
WorkspaceController_listMembers: {
|
|
6603
8101
|
parameters: {
|
|
6604
8102
|
query?: {
|
|
6605
|
-
/**
|
|
6606
|
-
|
|
6607
|
-
|
|
8103
|
+
/**
|
|
8104
|
+
* @description Page size. Defaults to 20, clamped to 100.
|
|
8105
|
+
* @example 20
|
|
8106
|
+
*/
|
|
8107
|
+
limit?: number;
|
|
8108
|
+
/**
|
|
8109
|
+
* @description Opaque `next_cursor` from the previous page.
|
|
8110
|
+
* @example eyJjcmVhdGVkX2F0IjoiMjAyNi0xMS0wMVQwMDowMDowMFoifQ
|
|
8111
|
+
*/
|
|
6608
8112
|
cursor?: string;
|
|
6609
|
-
/**
|
|
8113
|
+
/**
|
|
8114
|
+
* @description Case-insensitive substring matched against the member’s display name, username OR primary email. `%` and `_` are matched literally.
|
|
8115
|
+
* @example ada
|
|
8116
|
+
*/
|
|
6610
8117
|
q?: string;
|
|
6611
|
-
/**
|
|
8118
|
+
/**
|
|
8119
|
+
* @description Exact role name the membership is bound to — `owner`, `admin`, `member`, or a custom role’s name. Composes with `q` and with the cursor.
|
|
8120
|
+
* @example admin
|
|
8121
|
+
*/
|
|
6612
8122
|
role?: string;
|
|
6613
8123
|
};
|
|
6614
8124
|
header?: never;
|
|
6615
8125
|
path: {
|
|
8126
|
+
/**
|
|
8127
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
8128
|
+
* @example acme
|
|
8129
|
+
*/
|
|
6616
8130
|
workspace_slug: string;
|
|
6617
8131
|
};
|
|
6618
8132
|
cookie?: never;
|
|
@@ -6668,6 +8182,18 @@ interface operations {
|
|
|
6668
8182
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6669
8183
|
};
|
|
6670
8184
|
};
|
|
8185
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
8186
|
+
429: {
|
|
8187
|
+
headers: {
|
|
8188
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
8189
|
+
"Retry-After"?: number;
|
|
8190
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
8191
|
+
[name: string]: unknown;
|
|
8192
|
+
};
|
|
8193
|
+
content: {
|
|
8194
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
8195
|
+
};
|
|
8196
|
+
};
|
|
6671
8197
|
};
|
|
6672
8198
|
};
|
|
6673
8199
|
WorkspaceController_removeMember: {
|
|
@@ -6675,7 +8201,15 @@ interface operations {
|
|
|
6675
8201
|
query?: never;
|
|
6676
8202
|
header?: never;
|
|
6677
8203
|
path: {
|
|
8204
|
+
/**
|
|
8205
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
8206
|
+
* @example acme
|
|
8207
|
+
*/
|
|
6678
8208
|
workspace_slug: string;
|
|
8209
|
+
/**
|
|
8210
|
+
* @description Id of the account.
|
|
8211
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
8212
|
+
*/
|
|
6679
8213
|
account_id: string;
|
|
6680
8214
|
};
|
|
6681
8215
|
cookie?: never;
|
|
@@ -6730,6 +8264,18 @@ interface operations {
|
|
|
6730
8264
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6731
8265
|
};
|
|
6732
8266
|
};
|
|
8267
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
8268
|
+
429: {
|
|
8269
|
+
headers: {
|
|
8270
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
8271
|
+
"Retry-After"?: number;
|
|
8272
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
8273
|
+
[name: string]: unknown;
|
|
8274
|
+
};
|
|
8275
|
+
content: {
|
|
8276
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
8277
|
+
};
|
|
8278
|
+
};
|
|
6733
8279
|
};
|
|
6734
8280
|
};
|
|
6735
8281
|
WorkspaceController_updateMemberRole: {
|
|
@@ -6737,7 +8283,15 @@ interface operations {
|
|
|
6737
8283
|
query?: never;
|
|
6738
8284
|
header?: never;
|
|
6739
8285
|
path: {
|
|
8286
|
+
/**
|
|
8287
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
8288
|
+
* @example acme
|
|
8289
|
+
*/
|
|
6740
8290
|
workspace_slug: string;
|
|
8291
|
+
/**
|
|
8292
|
+
* @description Id of the account.
|
|
8293
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
8294
|
+
*/
|
|
6741
8295
|
account_id: string;
|
|
6742
8296
|
};
|
|
6743
8297
|
cookie?: never;
|
|
@@ -6807,18 +8361,40 @@ interface operations {
|
|
|
6807
8361
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6808
8362
|
};
|
|
6809
8363
|
};
|
|
8364
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
8365
|
+
429: {
|
|
8366
|
+
headers: {
|
|
8367
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
8368
|
+
"Retry-After"?: number;
|
|
8369
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
8370
|
+
[name: string]: unknown;
|
|
8371
|
+
};
|
|
8372
|
+
content: {
|
|
8373
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
8374
|
+
};
|
|
8375
|
+
};
|
|
6810
8376
|
};
|
|
6811
8377
|
};
|
|
6812
8378
|
WorkspacePolicyController_list: {
|
|
6813
8379
|
parameters: {
|
|
6814
8380
|
query?: {
|
|
6815
|
-
/**
|
|
6816
|
-
|
|
6817
|
-
|
|
8381
|
+
/**
|
|
8382
|
+
* @description Page size. Defaults to 20, clamped to 100.
|
|
8383
|
+
* @example 20
|
|
8384
|
+
*/
|
|
8385
|
+
limit?: number;
|
|
8386
|
+
/**
|
|
8387
|
+
* @description Opaque `next_cursor` from the previous page.
|
|
8388
|
+
* @example eyJjcmVhdGVkX2F0IjoiMjAyNi0xMS0wMVQwMDowMDowMFoifQ
|
|
8389
|
+
*/
|
|
6818
8390
|
cursor?: string;
|
|
6819
8391
|
};
|
|
6820
8392
|
header?: never;
|
|
6821
8393
|
path: {
|
|
8394
|
+
/**
|
|
8395
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
8396
|
+
* @example acme
|
|
8397
|
+
*/
|
|
6822
8398
|
workspace_slug: string;
|
|
6823
8399
|
};
|
|
6824
8400
|
cookie?: never;
|
|
@@ -6855,13 +8431,32 @@ interface operations {
|
|
|
6855
8431
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6856
8432
|
};
|
|
6857
8433
|
};
|
|
8434
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
8435
|
+
429: {
|
|
8436
|
+
headers: {
|
|
8437
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
8438
|
+
"Retry-After"?: number;
|
|
8439
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
8440
|
+
[name: string]: unknown;
|
|
8441
|
+
};
|
|
8442
|
+
content: {
|
|
8443
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
8444
|
+
};
|
|
8445
|
+
};
|
|
6858
8446
|
};
|
|
6859
8447
|
};
|
|
6860
8448
|
WorkspacePolicyController_create: {
|
|
6861
8449
|
parameters: {
|
|
6862
8450
|
query?: never;
|
|
6863
|
-
header?:
|
|
8451
|
+
header?: {
|
|
8452
|
+
/** @description Opaque client-generated string (1-256 chars, `[A-Za-z0-9_-:]`) that deduplicates retries for 24 h. A retry with the same key and body returns the first response with `Idempotent-Replay: true` instead of creating a second resource. The SDKs send one on every create. */
|
|
8453
|
+
"Idempotency-Key"?: string;
|
|
8454
|
+
};
|
|
6864
8455
|
path: {
|
|
8456
|
+
/**
|
|
8457
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
8458
|
+
* @example acme
|
|
8459
|
+
*/
|
|
6865
8460
|
workspace_slug: string;
|
|
6866
8461
|
};
|
|
6867
8462
|
cookie?: never;
|
|
@@ -6875,6 +8470,8 @@ interface operations {
|
|
|
6875
8470
|
/** @description Policy created. */
|
|
6876
8471
|
201: {
|
|
6877
8472
|
headers: {
|
|
8473
|
+
/** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
|
|
8474
|
+
"Idempotent-Replay"?: "true";
|
|
6878
8475
|
"X-Request-Id": components["headers"]["RequestId"];
|
|
6879
8476
|
[name: string]: unknown;
|
|
6880
8477
|
};
|
|
@@ -6912,9 +8509,23 @@ interface operations {
|
|
|
6912
8509
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6913
8510
|
};
|
|
6914
8511
|
};
|
|
6915
|
-
/** @description Name already in use, or the workspace already has 100 policies. */
|
|
8512
|
+
/** @description Name already in use, or the workspace already has 100 policies. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
|
|
6916
8513
|
409: {
|
|
6917
8514
|
headers: {
|
|
8515
|
+
/** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
|
|
8516
|
+
"Retry-After"?: number;
|
|
8517
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
8518
|
+
[name: string]: unknown;
|
|
8519
|
+
};
|
|
8520
|
+
content: {
|
|
8521
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
8522
|
+
};
|
|
8523
|
+
};
|
|
8524
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
8525
|
+
429: {
|
|
8526
|
+
headers: {
|
|
8527
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
8528
|
+
"Retry-After"?: number;
|
|
6918
8529
|
"X-Request-Id": components["headers"]["RequestId"];
|
|
6919
8530
|
[name: string]: unknown;
|
|
6920
8531
|
};
|
|
@@ -6929,6 +8540,10 @@ interface operations {
|
|
|
6929
8540
|
query?: never;
|
|
6930
8541
|
header?: never;
|
|
6931
8542
|
path: {
|
|
8543
|
+
/**
|
|
8544
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
8545
|
+
* @example acme
|
|
8546
|
+
*/
|
|
6932
8547
|
workspace_slug: string;
|
|
6933
8548
|
};
|
|
6934
8549
|
cookie?: never;
|
|
@@ -6974,6 +8589,18 @@ interface operations {
|
|
|
6974
8589
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
6975
8590
|
};
|
|
6976
8591
|
};
|
|
8592
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
8593
|
+
429: {
|
|
8594
|
+
headers: {
|
|
8595
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
8596
|
+
"Retry-After"?: number;
|
|
8597
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
8598
|
+
[name: string]: unknown;
|
|
8599
|
+
};
|
|
8600
|
+
content: {
|
|
8601
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
8602
|
+
};
|
|
8603
|
+
};
|
|
6977
8604
|
};
|
|
6978
8605
|
};
|
|
6979
8606
|
WorkspacePolicyController_get: {
|
|
@@ -6981,7 +8608,15 @@ interface operations {
|
|
|
6981
8608
|
query?: never;
|
|
6982
8609
|
header?: never;
|
|
6983
8610
|
path: {
|
|
8611
|
+
/**
|
|
8612
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
8613
|
+
* @example acme
|
|
8614
|
+
*/
|
|
6984
8615
|
workspace_slug: string;
|
|
8616
|
+
/**
|
|
8617
|
+
* @description Id of the policy.
|
|
8618
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
8619
|
+
*/
|
|
6985
8620
|
policy_id: string;
|
|
6986
8621
|
};
|
|
6987
8622
|
cookie?: never;
|
|
@@ -7018,6 +8653,18 @@ interface operations {
|
|
|
7018
8653
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
7019
8654
|
};
|
|
7020
8655
|
};
|
|
8656
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
8657
|
+
429: {
|
|
8658
|
+
headers: {
|
|
8659
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
8660
|
+
"Retry-After"?: number;
|
|
8661
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
8662
|
+
[name: string]: unknown;
|
|
8663
|
+
};
|
|
8664
|
+
content: {
|
|
8665
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
8666
|
+
};
|
|
8667
|
+
};
|
|
7021
8668
|
};
|
|
7022
8669
|
};
|
|
7023
8670
|
WorkspacePolicyController_delete: {
|
|
@@ -7025,7 +8672,15 @@ interface operations {
|
|
|
7025
8672
|
query?: never;
|
|
7026
8673
|
header?: never;
|
|
7027
8674
|
path: {
|
|
8675
|
+
/**
|
|
8676
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
8677
|
+
* @example acme
|
|
8678
|
+
*/
|
|
7028
8679
|
workspace_slug: string;
|
|
8680
|
+
/**
|
|
8681
|
+
* @description Id of the policy.
|
|
8682
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
8683
|
+
*/
|
|
7029
8684
|
policy_id: string;
|
|
7030
8685
|
};
|
|
7031
8686
|
cookie?: never;
|
|
@@ -7072,6 +8727,18 @@ interface operations {
|
|
|
7072
8727
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
7073
8728
|
};
|
|
7074
8729
|
};
|
|
8730
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
8731
|
+
429: {
|
|
8732
|
+
headers: {
|
|
8733
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
8734
|
+
"Retry-After"?: number;
|
|
8735
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
8736
|
+
[name: string]: unknown;
|
|
8737
|
+
};
|
|
8738
|
+
content: {
|
|
8739
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
8740
|
+
};
|
|
8741
|
+
};
|
|
7075
8742
|
};
|
|
7076
8743
|
};
|
|
7077
8744
|
WorkspacePolicyController_update: {
|
|
@@ -7079,7 +8746,15 @@ interface operations {
|
|
|
7079
8746
|
query?: never;
|
|
7080
8747
|
header?: never;
|
|
7081
8748
|
path: {
|
|
8749
|
+
/**
|
|
8750
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
8751
|
+
* @example acme
|
|
8752
|
+
*/
|
|
7082
8753
|
workspace_slug: string;
|
|
8754
|
+
/**
|
|
8755
|
+
* @description Id of the policy.
|
|
8756
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
8757
|
+
*/
|
|
7083
8758
|
policy_id: string;
|
|
7084
8759
|
};
|
|
7085
8760
|
cookie?: never;
|
|
@@ -7150,18 +8825,40 @@ interface operations {
|
|
|
7150
8825
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
7151
8826
|
};
|
|
7152
8827
|
};
|
|
8828
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
8829
|
+
429: {
|
|
8830
|
+
headers: {
|
|
8831
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
8832
|
+
"Retry-After"?: number;
|
|
8833
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
8834
|
+
[name: string]: unknown;
|
|
8835
|
+
};
|
|
8836
|
+
content: {
|
|
8837
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
8838
|
+
};
|
|
8839
|
+
};
|
|
7153
8840
|
};
|
|
7154
8841
|
};
|
|
7155
8842
|
WorkspaceRoleController_list: {
|
|
7156
8843
|
parameters: {
|
|
7157
8844
|
query?: {
|
|
7158
|
-
/**
|
|
7159
|
-
|
|
7160
|
-
|
|
8845
|
+
/**
|
|
8846
|
+
* @description Page size. Defaults to 20, clamped to 100.
|
|
8847
|
+
* @example 20
|
|
8848
|
+
*/
|
|
8849
|
+
limit?: number;
|
|
8850
|
+
/**
|
|
8851
|
+
* @description Opaque `next_cursor` from the previous page.
|
|
8852
|
+
* @example eyJjcmVhdGVkX2F0IjoiMjAyNi0xMS0wMVQwMDowMDowMFoifQ
|
|
8853
|
+
*/
|
|
7161
8854
|
cursor?: string;
|
|
7162
8855
|
};
|
|
7163
8856
|
header?: never;
|
|
7164
8857
|
path: {
|
|
8858
|
+
/**
|
|
8859
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
8860
|
+
* @example acme
|
|
8861
|
+
*/
|
|
7165
8862
|
workspace_slug: string;
|
|
7166
8863
|
};
|
|
7167
8864
|
cookie?: never;
|
|
@@ -7198,13 +8895,32 @@ interface operations {
|
|
|
7198
8895
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
7199
8896
|
};
|
|
7200
8897
|
};
|
|
8898
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
8899
|
+
429: {
|
|
8900
|
+
headers: {
|
|
8901
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
8902
|
+
"Retry-After"?: number;
|
|
8903
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
8904
|
+
[name: string]: unknown;
|
|
8905
|
+
};
|
|
8906
|
+
content: {
|
|
8907
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
8908
|
+
};
|
|
8909
|
+
};
|
|
7201
8910
|
};
|
|
7202
8911
|
};
|
|
7203
8912
|
WorkspaceRoleController_create: {
|
|
7204
8913
|
parameters: {
|
|
7205
8914
|
query?: never;
|
|
7206
|
-
header?:
|
|
8915
|
+
header?: {
|
|
8916
|
+
/** @description Opaque client-generated string (1-256 chars, `[A-Za-z0-9_-:]`) that deduplicates retries for 24 h. A retry with the same key and body returns the first response with `Idempotent-Replay: true` instead of creating a second resource. The SDKs send one on every create. */
|
|
8917
|
+
"Idempotency-Key"?: string;
|
|
8918
|
+
};
|
|
7207
8919
|
path: {
|
|
8920
|
+
/**
|
|
8921
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
8922
|
+
* @example acme
|
|
8923
|
+
*/
|
|
7208
8924
|
workspace_slug: string;
|
|
7209
8925
|
};
|
|
7210
8926
|
cookie?: never;
|
|
@@ -7217,6 +8933,8 @@ interface operations {
|
|
|
7217
8933
|
responses: {
|
|
7218
8934
|
201: {
|
|
7219
8935
|
headers: {
|
|
8936
|
+
/** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
|
|
8937
|
+
"Idempotent-Replay"?: "true";
|
|
7220
8938
|
"X-Request-Id": components["headers"]["RequestId"];
|
|
7221
8939
|
[name: string]: unknown;
|
|
7222
8940
|
};
|
|
@@ -7264,9 +8982,23 @@ interface operations {
|
|
|
7264
8982
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
7265
8983
|
};
|
|
7266
8984
|
};
|
|
7267
|
-
/** @description Role name already in use or reserved for a system role (`ROLE_NAME_TAKEN`). */
|
|
8985
|
+
/** @description Role name already in use or reserved for a system role (`ROLE_NAME_TAKEN`). Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
|
|
7268
8986
|
409: {
|
|
7269
8987
|
headers: {
|
|
8988
|
+
/** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
|
|
8989
|
+
"Retry-After"?: number;
|
|
8990
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
8991
|
+
[name: string]: unknown;
|
|
8992
|
+
};
|
|
8993
|
+
content: {
|
|
8994
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
8995
|
+
};
|
|
8996
|
+
};
|
|
8997
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
8998
|
+
429: {
|
|
8999
|
+
headers: {
|
|
9000
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
9001
|
+
"Retry-After"?: number;
|
|
7270
9002
|
"X-Request-Id": components["headers"]["RequestId"];
|
|
7271
9003
|
[name: string]: unknown;
|
|
7272
9004
|
};
|
|
@@ -7281,7 +9013,15 @@ interface operations {
|
|
|
7281
9013
|
query?: never;
|
|
7282
9014
|
header?: never;
|
|
7283
9015
|
path: {
|
|
9016
|
+
/**
|
|
9017
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
9018
|
+
* @example acme
|
|
9019
|
+
*/
|
|
7284
9020
|
workspace_slug: string;
|
|
9021
|
+
/**
|
|
9022
|
+
* @description Id of the role.
|
|
9023
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
9024
|
+
*/
|
|
7285
9025
|
role_id: string;
|
|
7286
9026
|
};
|
|
7287
9027
|
cookie?: never;
|
|
@@ -7337,6 +9077,18 @@ interface operations {
|
|
|
7337
9077
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
7338
9078
|
};
|
|
7339
9079
|
};
|
|
9080
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
9081
|
+
429: {
|
|
9082
|
+
headers: {
|
|
9083
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
9084
|
+
"Retry-After"?: number;
|
|
9085
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
9086
|
+
[name: string]: unknown;
|
|
9087
|
+
};
|
|
9088
|
+
content: {
|
|
9089
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
9090
|
+
};
|
|
9091
|
+
};
|
|
7340
9092
|
};
|
|
7341
9093
|
};
|
|
7342
9094
|
WorkspaceRoleController_delete: {
|
|
@@ -7344,7 +9096,15 @@ interface operations {
|
|
|
7344
9096
|
query?: never;
|
|
7345
9097
|
header?: never;
|
|
7346
9098
|
path: {
|
|
9099
|
+
/**
|
|
9100
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
9101
|
+
* @example acme
|
|
9102
|
+
*/
|
|
7347
9103
|
workspace_slug: string;
|
|
9104
|
+
/**
|
|
9105
|
+
* @description Id of the role.
|
|
9106
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
9107
|
+
*/
|
|
7348
9108
|
role_id: string;
|
|
7349
9109
|
};
|
|
7350
9110
|
cookie?: never;
|
|
@@ -7409,6 +9169,18 @@ interface operations {
|
|
|
7409
9169
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
7410
9170
|
};
|
|
7411
9171
|
};
|
|
9172
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
9173
|
+
429: {
|
|
9174
|
+
headers: {
|
|
9175
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
9176
|
+
"Retry-After"?: number;
|
|
9177
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
9178
|
+
[name: string]: unknown;
|
|
9179
|
+
};
|
|
9180
|
+
content: {
|
|
9181
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
9182
|
+
};
|
|
9183
|
+
};
|
|
7412
9184
|
};
|
|
7413
9185
|
};
|
|
7414
9186
|
WorkspaceRoleController_update: {
|
|
@@ -7416,7 +9188,15 @@ interface operations {
|
|
|
7416
9188
|
query?: never;
|
|
7417
9189
|
header?: never;
|
|
7418
9190
|
path: {
|
|
9191
|
+
/**
|
|
9192
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
9193
|
+
* @example acme
|
|
9194
|
+
*/
|
|
7419
9195
|
workspace_slug: string;
|
|
9196
|
+
/**
|
|
9197
|
+
* @description Id of the role.
|
|
9198
|
+
* @example 3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
|
|
9199
|
+
*/
|
|
7420
9200
|
role_id: string;
|
|
7421
9201
|
};
|
|
7422
9202
|
cookie?: never;
|
|
@@ -7486,6 +9266,18 @@ interface operations {
|
|
|
7486
9266
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
7487
9267
|
};
|
|
7488
9268
|
};
|
|
9269
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
9270
|
+
429: {
|
|
9271
|
+
headers: {
|
|
9272
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
9273
|
+
"Retry-After"?: number;
|
|
9274
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
9275
|
+
[name: string]: unknown;
|
|
9276
|
+
};
|
|
9277
|
+
content: {
|
|
9278
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
9279
|
+
};
|
|
9280
|
+
};
|
|
7489
9281
|
};
|
|
7490
9282
|
};
|
|
7491
9283
|
WorkspaceServiceController_list: {
|
|
@@ -7493,6 +9285,10 @@ interface operations {
|
|
|
7493
9285
|
query?: never;
|
|
7494
9286
|
header?: never;
|
|
7495
9287
|
path: {
|
|
9288
|
+
/**
|
|
9289
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
9290
|
+
* @example acme
|
|
9291
|
+
*/
|
|
7496
9292
|
workspace_slug: string;
|
|
7497
9293
|
};
|
|
7498
9294
|
cookie?: never;
|
|
@@ -7538,6 +9334,18 @@ interface operations {
|
|
|
7538
9334
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
7539
9335
|
};
|
|
7540
9336
|
};
|
|
9337
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
9338
|
+
429: {
|
|
9339
|
+
headers: {
|
|
9340
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
9341
|
+
"Retry-After"?: number;
|
|
9342
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
9343
|
+
[name: string]: unknown;
|
|
9344
|
+
};
|
|
9345
|
+
content: {
|
|
9346
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
9347
|
+
};
|
|
9348
|
+
};
|
|
7541
9349
|
};
|
|
7542
9350
|
};
|
|
7543
9351
|
WorkspaceServiceController_enable: {
|
|
@@ -7545,7 +9353,15 @@ interface operations {
|
|
|
7545
9353
|
query?: never;
|
|
7546
9354
|
header?: never;
|
|
7547
9355
|
path: {
|
|
9356
|
+
/**
|
|
9357
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
9358
|
+
* @example acme
|
|
9359
|
+
*/
|
|
7548
9360
|
workspace_slug: string;
|
|
9361
|
+
/**
|
|
9362
|
+
* @description The product: `auth`, `mail`, `waitlist`, `social` or `trawl`.
|
|
9363
|
+
* @example mail
|
|
9364
|
+
*/
|
|
7549
9365
|
service: string;
|
|
7550
9366
|
};
|
|
7551
9367
|
cookie?: never;
|
|
@@ -7605,6 +9421,18 @@ interface operations {
|
|
|
7605
9421
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
7606
9422
|
};
|
|
7607
9423
|
};
|
|
9424
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
9425
|
+
429: {
|
|
9426
|
+
headers: {
|
|
9427
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
9428
|
+
"Retry-After"?: number;
|
|
9429
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
9430
|
+
[name: string]: unknown;
|
|
9431
|
+
};
|
|
9432
|
+
content: {
|
|
9433
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
9434
|
+
};
|
|
9435
|
+
};
|
|
7608
9436
|
};
|
|
7609
9437
|
};
|
|
7610
9438
|
WorkspaceServiceController_disable: {
|
|
@@ -7612,7 +9440,15 @@ interface operations {
|
|
|
7612
9440
|
query?: never;
|
|
7613
9441
|
header?: never;
|
|
7614
9442
|
path: {
|
|
9443
|
+
/**
|
|
9444
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
9445
|
+
* @example acme
|
|
9446
|
+
*/
|
|
7615
9447
|
workspace_slug: string;
|
|
9448
|
+
/**
|
|
9449
|
+
* @description The product: `auth`, `mail`, `waitlist`, `social` or `trawl`.
|
|
9450
|
+
* @example mail
|
|
9451
|
+
*/
|
|
7616
9452
|
service: string;
|
|
7617
9453
|
};
|
|
7618
9454
|
cookie?: never;
|
|
@@ -7677,6 +9513,18 @@ interface operations {
|
|
|
7677
9513
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
7678
9514
|
};
|
|
7679
9515
|
};
|
|
9516
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
9517
|
+
429: {
|
|
9518
|
+
headers: {
|
|
9519
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
9520
|
+
"Retry-After"?: number;
|
|
9521
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
9522
|
+
[name: string]: unknown;
|
|
9523
|
+
};
|
|
9524
|
+
content: {
|
|
9525
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
9526
|
+
};
|
|
9527
|
+
};
|
|
7680
9528
|
};
|
|
7681
9529
|
};
|
|
7682
9530
|
WorkspaceServiceController_updateSettings: {
|
|
@@ -7684,7 +9532,15 @@ interface operations {
|
|
|
7684
9532
|
query?: never;
|
|
7685
9533
|
header?: never;
|
|
7686
9534
|
path: {
|
|
9535
|
+
/**
|
|
9536
|
+
* @description Slug of the workspace. Platform routes name the workspace by slug, positionally in the SDK (`platform.workspaces.retrieve("acme")`); the product APIs bind `workspace_id` instead.
|
|
9537
|
+
* @example acme
|
|
9538
|
+
*/
|
|
7687
9539
|
workspace_slug: string;
|
|
9540
|
+
/**
|
|
9541
|
+
* @description The product: `auth`, `mail`, `waitlist`, `social` or `trawl`.
|
|
9542
|
+
* @example mail
|
|
9543
|
+
*/
|
|
7688
9544
|
service: string;
|
|
7689
9545
|
};
|
|
7690
9546
|
cookie?: never;
|
|
@@ -7747,6 +9603,18 @@ interface operations {
|
|
|
7747
9603
|
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
7748
9604
|
};
|
|
7749
9605
|
};
|
|
9606
|
+
/** @description Rate limited: too many requests from this client IP in the last 60 seconds (`RATE_LIMITED`); wait `Retry-After` seconds. */
|
|
9607
|
+
429: {
|
|
9608
|
+
headers: {
|
|
9609
|
+
/** @description Seconds to wait before retrying (the window, 60). */
|
|
9610
|
+
"Retry-After"?: number;
|
|
9611
|
+
"X-Request-Id": components["headers"]["RequestId"];
|
|
9612
|
+
[name: string]: unknown;
|
|
9613
|
+
};
|
|
9614
|
+
content: {
|
|
9615
|
+
"application/json": components["schemas"]["ErrorResponseDto"];
|
|
9616
|
+
};
|
|
9617
|
+
};
|
|
7750
9618
|
};
|
|
7751
9619
|
};
|
|
7752
9620
|
}
|