@faable/auth-sdk 2.7.81 → 2.7.82
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/FaableAuthApi.d.ts +7 -0
- package/dist/api/api-types.d.ts +6 -0
- package/dist/api/generated-client.d.ts +265 -0
- package/dist/api/generated-client.js +146 -0
- package/dist/api/types.d.ts +1518 -75
- package/dist/version.js +2 -2
- package/package.json +1 -1
- package/spec/openapi.json +2916 -493
package/dist/api/types.d.ts
CHANGED
|
@@ -1196,6 +1196,118 @@ export interface paths {
|
|
|
1196
1196
|
patch?: never;
|
|
1197
1197
|
trace?: never;
|
|
1198
1198
|
};
|
|
1199
|
+
"/team/{team_id}/organization": {
|
|
1200
|
+
parameters: {
|
|
1201
|
+
query?: never;
|
|
1202
|
+
header?: never;
|
|
1203
|
+
path?: never;
|
|
1204
|
+
cookie?: never;
|
|
1205
|
+
};
|
|
1206
|
+
get?: never;
|
|
1207
|
+
/**
|
|
1208
|
+
* Put a Team in an Organization, or take it out
|
|
1209
|
+
* @description Sets the Organization the Team belongs to (`null` = none). A team is in at most one organization; setting another one moves it. Belonging to an organization grants nobody access to the team. Emits `team.updated`.
|
|
1210
|
+
*/
|
|
1211
|
+
put: operations["team/setOrganization"];
|
|
1212
|
+
post?: never;
|
|
1213
|
+
delete?: never;
|
|
1214
|
+
options?: never;
|
|
1215
|
+
head?: never;
|
|
1216
|
+
patch?: never;
|
|
1217
|
+
trace?: never;
|
|
1218
|
+
};
|
|
1219
|
+
"/organization": {
|
|
1220
|
+
parameters: {
|
|
1221
|
+
query?: never;
|
|
1222
|
+
header?: never;
|
|
1223
|
+
path?: never;
|
|
1224
|
+
cookie?: never;
|
|
1225
|
+
};
|
|
1226
|
+
/**
|
|
1227
|
+
* List Organizations
|
|
1228
|
+
* @description List Organizations
|
|
1229
|
+
*/
|
|
1230
|
+
get: operations["organization/list"];
|
|
1231
|
+
put?: never;
|
|
1232
|
+
/**
|
|
1233
|
+
* Create Organization
|
|
1234
|
+
* @description Create Organization
|
|
1235
|
+
*/
|
|
1236
|
+
post: operations["organization/create"];
|
|
1237
|
+
delete?: never;
|
|
1238
|
+
options?: never;
|
|
1239
|
+
head?: never;
|
|
1240
|
+
patch?: never;
|
|
1241
|
+
trace?: never;
|
|
1242
|
+
};
|
|
1243
|
+
"/organization/{organization_id}": {
|
|
1244
|
+
parameters: {
|
|
1245
|
+
query?: never;
|
|
1246
|
+
header?: never;
|
|
1247
|
+
path?: never;
|
|
1248
|
+
cookie?: never;
|
|
1249
|
+
};
|
|
1250
|
+
/**
|
|
1251
|
+
* Get Organization
|
|
1252
|
+
* @description Get Organization
|
|
1253
|
+
*/
|
|
1254
|
+
get: operations["organization/get"];
|
|
1255
|
+
put?: never;
|
|
1256
|
+
/**
|
|
1257
|
+
* Update Organization
|
|
1258
|
+
* @description Update Organization
|
|
1259
|
+
*/
|
|
1260
|
+
post: operations["organization/update"];
|
|
1261
|
+
/**
|
|
1262
|
+
* Delete Organization
|
|
1263
|
+
* @description Delete Organization
|
|
1264
|
+
*/
|
|
1265
|
+
delete: operations["organization/delete"];
|
|
1266
|
+
options?: never;
|
|
1267
|
+
head?: never;
|
|
1268
|
+
patch?: never;
|
|
1269
|
+
trace?: never;
|
|
1270
|
+
};
|
|
1271
|
+
"/organization/{organization_id}/admin": {
|
|
1272
|
+
parameters: {
|
|
1273
|
+
query?: never;
|
|
1274
|
+
header?: never;
|
|
1275
|
+
path?: never;
|
|
1276
|
+
cookie?: never;
|
|
1277
|
+
};
|
|
1278
|
+
get?: never;
|
|
1279
|
+
put?: never;
|
|
1280
|
+
/**
|
|
1281
|
+
* Add an admin to an Organization
|
|
1282
|
+
* @description Makes a user of this tenant an admin of the Organization. Idempotent. Being an admin does not grant access to any team of the organization. Emits `organization.updated`.
|
|
1283
|
+
*/
|
|
1284
|
+
post: operations["organization/addAdmin"];
|
|
1285
|
+
delete?: never;
|
|
1286
|
+
options?: never;
|
|
1287
|
+
head?: never;
|
|
1288
|
+
patch?: never;
|
|
1289
|
+
trace?: never;
|
|
1290
|
+
};
|
|
1291
|
+
"/organization/{organization_id}/admin/{user_id}": {
|
|
1292
|
+
parameters: {
|
|
1293
|
+
query?: never;
|
|
1294
|
+
header?: never;
|
|
1295
|
+
path?: never;
|
|
1296
|
+
cookie?: never;
|
|
1297
|
+
};
|
|
1298
|
+
get?: never;
|
|
1299
|
+
put?: never;
|
|
1300
|
+
post?: never;
|
|
1301
|
+
/**
|
|
1302
|
+
* Remove an admin from an Organization
|
|
1303
|
+
* @description Removes the user from the admins of the Organization (the user is not deleted). An organization keeps at least one admin: removing the last one is `last_organization_admin`. Emits `organization.updated`.
|
|
1304
|
+
*/
|
|
1305
|
+
delete: operations["organization/removeAdmin"];
|
|
1306
|
+
options?: never;
|
|
1307
|
+
head?: never;
|
|
1308
|
+
patch?: never;
|
|
1309
|
+
trace?: never;
|
|
1310
|
+
};
|
|
1199
1311
|
"/teammember": {
|
|
1200
1312
|
parameters: {
|
|
1201
1313
|
query?: never;
|
|
@@ -4437,7 +4549,7 @@ export interface paths {
|
|
|
4437
4549
|
put?: never;
|
|
4438
4550
|
/**
|
|
4439
4551
|
* OpenID Connect Dynamic Client Registration
|
|
4440
|
-
* @description Register a new OAuth/OIDC client dynamically (OIDC Dynamic Client Registration 1.0 / RFC 7591). The new client is bound to the Account resolved from the request context.
|
|
4552
|
+
* @description Register a new OAuth/OIDC client dynamically (OIDC Dynamic Client Registration 1.0 / RFC 7591). The new client is bound to the Account resolved from the request context. Only when the tenant has `dynamic_client_registration_enabled`; otherwise `registration_disabled` (403).
|
|
4441
4553
|
*/
|
|
4442
4554
|
post: operations["oauth/register"];
|
|
4443
4555
|
delete?: never;
|
|
@@ -4725,6 +4837,8 @@ export interface components {
|
|
|
4725
4837
|
webauthn_rp_id?: string | null;
|
|
4726
4838
|
/** @description When true, `/logout` asks the End-User to confirm before ending the session unless the request carries a verified `id_token_hint`. Off by default — a plain link to `/logout` is otherwise enough to sign anyone out (logout CSRF). */
|
|
4727
4839
|
logout_confirm_required?: boolean;
|
|
4840
|
+
/** @description When true, anyone can register a client with `POST /oidc/register` (OIDC Dynamic Client Registration / RFC 7591) and the discovery document advertises `registration_endpoint`. Off by default: an open registration lets anyone create a client with their own `redirect_uri`. */
|
|
4841
|
+
dynamic_client_registration_enabled?: boolean;
|
|
4728
4842
|
/** @description The one host this tenant's OIDC issuer and discovery document are always minted with, regardless of which host actually served the request — must be the account's own platform host or one of its verified custom domains. `/authorize` and `/logout` 302 here from any other host of the tenant. Unset (the default): every URL uses whatever host served the request, as before this field existed. Changing it can invalidate every WebAuthn passkey already enrolled unless `webauthn_rp_id` already covers the new host. */
|
|
4729
4843
|
canonical_host?: string | null;
|
|
4730
4844
|
/** @description AuthAccount creation date */
|
|
@@ -5603,6 +5717,8 @@ export interface components {
|
|
|
5603
5717
|
description: string | null;
|
|
5604
5718
|
/** @description Optional URL of an image used as the team avatar/logo. */
|
|
5605
5719
|
logo_url: string | null;
|
|
5720
|
+
/** @description Id of the Organization the team belongs to, or `null`. Changed only with `PUT /team/{team_id}/organization`. */
|
|
5721
|
+
organization?: string | null;
|
|
5606
5722
|
/** @description Object is related with this account */
|
|
5607
5723
|
account: string;
|
|
5608
5724
|
/**
|
|
@@ -5657,6 +5773,92 @@ export interface components {
|
|
|
5657
5773
|
TeamUpdateMetadata: {
|
|
5658
5774
|
[key: string]: unknown;
|
|
5659
5775
|
};
|
|
5776
|
+
/** @description Organization */
|
|
5777
|
+
Organization: {
|
|
5778
|
+
/** @description Organization ID */
|
|
5779
|
+
id: string;
|
|
5780
|
+
/**
|
|
5781
|
+
* @description Human-readable name of the organization.
|
|
5782
|
+
* @example Acme Inc.
|
|
5783
|
+
*/
|
|
5784
|
+
name: string;
|
|
5785
|
+
/**
|
|
5786
|
+
* @description URL-safe identifier derived from `name`. Unique within the tenant.
|
|
5787
|
+
* @example acme-inc
|
|
5788
|
+
*/
|
|
5789
|
+
slug: string;
|
|
5790
|
+
/** @description Optional free-form description. */
|
|
5791
|
+
description: string | null;
|
|
5792
|
+
/** @description Optional URL of the organization logo. */
|
|
5793
|
+
logo_url: string | null;
|
|
5794
|
+
/** @description Ids of the users who manage the organization: its teams and its identity settings. Being an admin does not grant access to any team; team access is team membership. */
|
|
5795
|
+
admins: string[];
|
|
5796
|
+
/** @description Object is related with this account */
|
|
5797
|
+
account: string;
|
|
5798
|
+
/**
|
|
5799
|
+
* @description OrganizationMetadata
|
|
5800
|
+
* @default {}
|
|
5801
|
+
*/
|
|
5802
|
+
metadata: {
|
|
5803
|
+
[key: string]: unknown;
|
|
5804
|
+
};
|
|
5805
|
+
/** @description Organization creation date */
|
|
5806
|
+
createdAt: string;
|
|
5807
|
+
/** @description Organization updated date */
|
|
5808
|
+
updatedAt?: string;
|
|
5809
|
+
};
|
|
5810
|
+
/**
|
|
5811
|
+
* @description OrganizationMetadata
|
|
5812
|
+
* @default {}
|
|
5813
|
+
*/
|
|
5814
|
+
OrganizationMetadata: {
|
|
5815
|
+
[key: string]: unknown;
|
|
5816
|
+
};
|
|
5817
|
+
/** @description OrganizationCreate */
|
|
5818
|
+
OrganizationCreate: {
|
|
5819
|
+
/**
|
|
5820
|
+
* @description Human-readable name of the organization.
|
|
5821
|
+
* @example Acme Inc.
|
|
5822
|
+
*/
|
|
5823
|
+
name: string;
|
|
5824
|
+
/** @description Optional free-form description. */
|
|
5825
|
+
description?: string;
|
|
5826
|
+
/**
|
|
5827
|
+
* Format: uri
|
|
5828
|
+
* @description Optional URL of the organization logo.
|
|
5829
|
+
*/
|
|
5830
|
+
logo_url?: string;
|
|
5831
|
+
/** @description Initial admins (user ids of this tenant). Can be empty and filled later with `POST /organization/{organization_id}/admin`. */
|
|
5832
|
+
admins?: string[];
|
|
5833
|
+
/** @description Add Metadata */
|
|
5834
|
+
metadata?: {
|
|
5835
|
+
[key: string]: unknown;
|
|
5836
|
+
};
|
|
5837
|
+
};
|
|
5838
|
+
/** @description Add Metadata */
|
|
5839
|
+
OrganizationMetadataCreate: {
|
|
5840
|
+
[key: string]: unknown;
|
|
5841
|
+
};
|
|
5842
|
+
/** @description Partial update for an Organization. `slug` is derived from `name` on creation and is not editable; admins change through `/organization/{organization_id}/admin`. */
|
|
5843
|
+
OrganizationUpdate: {
|
|
5844
|
+
/** @description New human-readable name. */
|
|
5845
|
+
name?: string;
|
|
5846
|
+
/** @description New free-form description. */
|
|
5847
|
+
description?: string;
|
|
5848
|
+
/**
|
|
5849
|
+
* Format: uri
|
|
5850
|
+
* @description New URL of the organization logo.
|
|
5851
|
+
*/
|
|
5852
|
+
logo_url?: string;
|
|
5853
|
+
/** @description Arbitrary key/value pairs. Replaces the previous metadata entirely. */
|
|
5854
|
+
metadata?: {
|
|
5855
|
+
[key: string]: unknown;
|
|
5856
|
+
};
|
|
5857
|
+
};
|
|
5858
|
+
/** @description Arbitrary key/value pairs. Replaces the previous metadata entirely. */
|
|
5859
|
+
OrganizationUpdateMetadata: {
|
|
5860
|
+
[key: string]: unknown;
|
|
5861
|
+
};
|
|
5660
5862
|
/** @description TeamMember */
|
|
5661
5863
|
TeamMember: {
|
|
5662
5864
|
/** @description TeamMember ID */
|
|
@@ -6101,8 +6303,11 @@ export interface components {
|
|
|
6101
6303
|
* - `team.invite.created`: An invitation to join a team was created.
|
|
6102
6304
|
* - `team.invite.revoked`: A pending team invitation was revoked.
|
|
6103
6305
|
* - `team.invite.accepted`: A team invitation was accepted.
|
|
6306
|
+
* - `organization.created`: An organization was created.
|
|
6307
|
+
* - `organization.updated`: An organization was updated (name, settings or admins).
|
|
6308
|
+
* - `organization.deleted`: An organization was deleted. Its teams are no longer in any organization; no `team.updated` is sent for them.
|
|
6104
6309
|
*
|
|
6105
|
-
* `team.*` payloads are notices, not state: they carry ids (`team_id`, `user_id`, `roles`, `invite_id`...) and the receiver reads whatever else it needs. Use the delivery id (`x-faable-delivery`) to deduplicate: retries keep it.
|
|
6310
|
+
* `team.*` and `organization.*` payloads are notices, not state: they carry ids (`team_id`, `organization_id`, `user_id`, `roles`, `invite_id`...) and the receiver reads whatever else it needs. Use the delivery id (`x-faable-delivery`) to deduplicate: retries keep it.
|
|
6106
6311
|
*/
|
|
6107
6312
|
events: string[];
|
|
6108
6313
|
/** @enum {string} */
|
|
@@ -6202,8 +6407,11 @@ export interface components {
|
|
|
6202
6407
|
* - `team.invite.created`: An invitation to join a team was created.
|
|
6203
6408
|
* - `team.invite.revoked`: A pending team invitation was revoked.
|
|
6204
6409
|
* - `team.invite.accepted`: A team invitation was accepted.
|
|
6410
|
+
* - `organization.created`: An organization was created.
|
|
6411
|
+
* - `organization.updated`: An organization was updated (name, settings or admins).
|
|
6412
|
+
* - `organization.deleted`: An organization was deleted. Its teams are no longer in any organization; no `team.updated` is sent for them.
|
|
6205
6413
|
*
|
|
6206
|
-
* `team.*` payloads are notices, not state: they carry ids (`team_id`, `user_id`, `roles`, `invite_id`...) and the receiver reads whatever else it needs. Use the delivery id (`x-faable-delivery`) to deduplicate: retries keep it.
|
|
6414
|
+
* `team.*` and `organization.*` payloads are notices, not state: they carry ids (`team_id`, `organization_id`, `user_id`, `roles`, `invite_id`...) and the receiver reads whatever else it needs. Use the delivery id (`x-faable-delivery`) to deduplicate: retries keep it.
|
|
6207
6415
|
*/
|
|
6208
6416
|
events: string[];
|
|
6209
6417
|
/** @enum {string} */
|
|
@@ -6297,8 +6505,11 @@ export interface components {
|
|
|
6297
6505
|
* - `team.invite.created`: An invitation to join a team was created.
|
|
6298
6506
|
* - `team.invite.revoked`: A pending team invitation was revoked.
|
|
6299
6507
|
* - `team.invite.accepted`: A team invitation was accepted.
|
|
6508
|
+
* - `organization.created`: An organization was created.
|
|
6509
|
+
* - `organization.updated`: An organization was updated (name, settings or admins).
|
|
6510
|
+
* - `organization.deleted`: An organization was deleted. Its teams are no longer in any organization; no `team.updated` is sent for them.
|
|
6300
6511
|
*
|
|
6301
|
-
* `team.*` payloads are notices, not state: they carry ids (`team_id`, `user_id`, `roles`, `invite_id`...) and the receiver reads whatever else it needs. Use the delivery id (`x-faable-delivery`) to deduplicate: retries keep it.
|
|
6512
|
+
* `team.*` and `organization.*` payloads are notices, not state: they carry ids (`team_id`, `organization_id`, `user_id`, `roles`, `invite_id`...) and the receiver reads whatever else it needs. Use the delivery id (`x-faable-delivery`) to deduplicate: retries keep it.
|
|
6302
6513
|
*/
|
|
6303
6514
|
events: string[];
|
|
6304
6515
|
/** @enum {string} */
|
|
@@ -6360,8 +6571,11 @@ export interface components {
|
|
|
6360
6571
|
* - `team.invite.created`: An invitation to join a team was created.
|
|
6361
6572
|
* - `team.invite.revoked`: A pending team invitation was revoked.
|
|
6362
6573
|
* - `team.invite.accepted`: A team invitation was accepted.
|
|
6574
|
+
* - `organization.created`: An organization was created.
|
|
6575
|
+
* - `organization.updated`: An organization was updated (name, settings or admins).
|
|
6576
|
+
* - `organization.deleted`: An organization was deleted. Its teams are no longer in any organization; no `team.updated` is sent for them.
|
|
6363
6577
|
*
|
|
6364
|
-
* `team.*` payloads are notices, not state: they carry ids (`team_id`, `user_id`, `roles`, `invite_id`...) and the receiver reads whatever else it needs. Use the delivery id (`x-faable-delivery`) to deduplicate: retries keep it.
|
|
6578
|
+
* `team.*` and `organization.*` payloads are notices, not state: they carry ids (`team_id`, `organization_id`, `user_id`, `roles`, `invite_id`...) and the receiver reads whatever else it needs. Use the delivery id (`x-faable-delivery`) to deduplicate: retries keep it.
|
|
6365
6579
|
*/
|
|
6366
6580
|
events: string[];
|
|
6367
6581
|
/** @enum {string} */
|
|
@@ -6427,8 +6641,11 @@ export interface components {
|
|
|
6427
6641
|
* - `team.invite.created`: An invitation to join a team was created.
|
|
6428
6642
|
* - `team.invite.revoked`: A pending team invitation was revoked.
|
|
6429
6643
|
* - `team.invite.accepted`: A team invitation was accepted.
|
|
6644
|
+
* - `organization.created`: An organization was created.
|
|
6645
|
+
* - `organization.updated`: An organization was updated (name, settings or admins).
|
|
6646
|
+
* - `organization.deleted`: An organization was deleted. Its teams are no longer in any organization; no `team.updated` is sent for them.
|
|
6430
6647
|
*
|
|
6431
|
-
* `team.*` payloads are notices, not state: they carry ids (`team_id`, `user_id`, `roles`, `invite_id`...) and the receiver reads whatever else it needs. Use the delivery id (`x-faable-delivery`) to deduplicate: retries keep it.
|
|
6648
|
+
* `team.*` and `organization.*` payloads are notices, not state: they carry ids (`team_id`, `organization_id`, `user_id`, `roles`, `invite_id`...) and the receiver reads whatever else it needs. Use the delivery id (`x-faable-delivery`) to deduplicate: retries keep it.
|
|
6432
6649
|
*/
|
|
6433
6650
|
events?: string[];
|
|
6434
6651
|
/** @enum {string} */
|
|
@@ -6827,6 +7044,7 @@ export interface components {
|
|
|
6827
7044
|
default_country_iso?: string | null;
|
|
6828
7045
|
webauthn_rp_id?: string | null;
|
|
6829
7046
|
logout_confirm_required?: boolean | null;
|
|
7047
|
+
dynamic_client_registration_enabled?: boolean | null;
|
|
6830
7048
|
canonical_host?: string | null;
|
|
6831
7049
|
login_flow?: string | null;
|
|
6832
7050
|
};
|
|
@@ -7037,6 +7255,11 @@ export interface components {
|
|
|
7037
7255
|
* - `invite_used` (400): The invite was already accepted.
|
|
7038
7256
|
* - `already_member` (400): The user is already a member of the team.
|
|
7039
7257
|
* - `not_a_member` (404): The user is not a member of the team.
|
|
7258
|
+
* - `registration_disabled` (403): Dynamic client registration is turned off for this tenant. Create the client from the dashboard or the Management API, or turn on `dynamic_client_registration_enabled`.
|
|
7259
|
+
* - `organization_not_found` (404): No organization with that id in this account.
|
|
7260
|
+
* - `invalid_user` (400): The user does not exist in this account.
|
|
7261
|
+
* - `not_an_organization_admin` (404): The user is not an admin of the organization.
|
|
7262
|
+
* - `last_organization_admin` (409): An organization keeps at least one admin. Add another admin before removing this one.
|
|
7040
7263
|
* - `team_id_unavailable` (409): The team id cannot be used in this tenant. Pick another id or let the API generate one.
|
|
7041
7264
|
* - `use_team_member_route` (400): This generic route cannot create memberships. Use `POST /team/{team_id}/member` for team members or `POST /role/{role_id}/users` for role grants.
|
|
7042
7265
|
* - `role_not_found` (404): No role with that id in this account.
|
|
@@ -7050,7 +7273,7 @@ export interface components {
|
|
|
7050
7273
|
* - `delivery_in_progress` (409): The delivery is being attempted right now; retry the redeliver in a minute.
|
|
7051
7274
|
* @enum {string}
|
|
7052
7275
|
*/
|
|
7053
|
-
ErrorCode: "bad_request" | "validation_error" | "unauthorized" | "payment_required" | "forbidden" | "not_found" | "method_not_allowed" | "conflict" | "payload_too_large" | "unsupported_media_type" | "unprocessable_entity" | "too_many_requests" | "internal_error" | "already_exists" | "invalid_id" | "account_not_found" | "invalid_query" | "search_not_supported" | "invalid_expand" | "access_denied" | "insufficient_scope" | "team_required" | "account_limit_reached" | "invalid_project_id" | "account_transfer_refused" | "email_sender_domain_not_allowed" | "plan_required" | "invalid_canonical_host" | "canonical_host_breaks_passkeys" | "not_logged_in" | "session_already_revoked" | "invalid_token" | "not_owner" | "user_suspended" | "invalid_credentials" | "login_denied" | "signup_denied" | "client_credentials_denied" | "m2m_quota_exceeded" | "signup_disabled" | "email_taken" | "username_taken" | "invalid_username" | "invalid_email" | "invalid_name" | "same_email" | "user_has_no_email" | "password_too_weak" | "invalid_password_hash" | "weak_password_hash" | "invalid_code" | "invalid_phone" | "phone_changed" | "phone_already_verified" | "sms_unavailable" | "sms_failed" | "invalid_state" | "state_mismatch" | "invalid_ticket" | "ticket_used" | "ticket_expired" | "ticket_not_found" | "credential_not_found" | "invalid_link" | "expired_link" | "invalid_otp" | "invalid_client" | "client_not_found" | "client_mismatch" | "invalid_client_metadata" | "invalid_connection" | "no_database_connection" | "connection_required" | "connection_misconfigured" | "passwordless_unavailable" | "ambiguous_connection" | "invalid_redirect_uri" | "origin_not_allowed" | "audience_not_found" | "system_resource" | "invalid_request" | "invalid_device_code" | "provider_error" | "identity_already_linked" | "identity_link_denied" | "identity_conflict" | "identity_orphaned" | "no_provider_token" | "no_refresh_token" | "action_unavailable" | "login_flow_misconfigured" | "mfa_required" | "step_up_required" | "interaction_required" | "passkey_login_disabled" | "mfa_pending" | "mfa_invalid_code" | "mfa_invalid_recovery_code" | "too_many_attempts" | "too_many_login_attempts" | "totp_not_allowed" | "no_usable_factor" | "factor_not_found" | "factor_already_confirmed" | "invalid_factor" | "session_missing" | "passkey_verification_failed" | "no_passkey_enrolled" | "malformed_credential" | "unknown_passkey" | "invalid_passkey" | "invalid_invite_url" | "invite_email_mismatch" | "invite_email_unverified" | "invite_not_found" | "invite_used" | "already_member" | "not_a_member" | "team_id_unavailable" | "use_team_member_route" | "role_not_found" | "invalid_role" | "flow_not_found" | "revision_not_found" | "invalid_webhook_event" | "invalid_webhook_url" | "not_a_webhook" | "delivery_not_found" | "delivery_in_progress";
|
|
7276
|
+
ErrorCode: "bad_request" | "validation_error" | "unauthorized" | "payment_required" | "forbidden" | "not_found" | "method_not_allowed" | "conflict" | "payload_too_large" | "unsupported_media_type" | "unprocessable_entity" | "too_many_requests" | "internal_error" | "already_exists" | "invalid_id" | "account_not_found" | "invalid_query" | "search_not_supported" | "invalid_expand" | "access_denied" | "insufficient_scope" | "team_required" | "account_limit_reached" | "invalid_project_id" | "account_transfer_refused" | "email_sender_domain_not_allowed" | "plan_required" | "invalid_canonical_host" | "canonical_host_breaks_passkeys" | "not_logged_in" | "session_already_revoked" | "invalid_token" | "not_owner" | "user_suspended" | "invalid_credentials" | "login_denied" | "signup_denied" | "client_credentials_denied" | "m2m_quota_exceeded" | "signup_disabled" | "email_taken" | "username_taken" | "invalid_username" | "invalid_email" | "invalid_name" | "same_email" | "user_has_no_email" | "password_too_weak" | "invalid_password_hash" | "weak_password_hash" | "invalid_code" | "invalid_phone" | "phone_changed" | "phone_already_verified" | "sms_unavailable" | "sms_failed" | "invalid_state" | "state_mismatch" | "invalid_ticket" | "ticket_used" | "ticket_expired" | "ticket_not_found" | "credential_not_found" | "invalid_link" | "expired_link" | "invalid_otp" | "invalid_client" | "client_not_found" | "client_mismatch" | "invalid_client_metadata" | "invalid_connection" | "no_database_connection" | "connection_required" | "connection_misconfigured" | "passwordless_unavailable" | "ambiguous_connection" | "invalid_redirect_uri" | "origin_not_allowed" | "audience_not_found" | "system_resource" | "invalid_request" | "invalid_device_code" | "provider_error" | "identity_already_linked" | "identity_link_denied" | "identity_conflict" | "identity_orphaned" | "no_provider_token" | "no_refresh_token" | "action_unavailable" | "login_flow_misconfigured" | "mfa_required" | "step_up_required" | "interaction_required" | "passkey_login_disabled" | "mfa_pending" | "mfa_invalid_code" | "mfa_invalid_recovery_code" | "too_many_attempts" | "too_many_login_attempts" | "totp_not_allowed" | "no_usable_factor" | "factor_not_found" | "factor_already_confirmed" | "invalid_factor" | "session_missing" | "passkey_verification_failed" | "no_passkey_enrolled" | "malformed_credential" | "unknown_passkey" | "invalid_passkey" | "invalid_invite_url" | "invite_email_mismatch" | "invite_email_unverified" | "invite_not_found" | "invite_used" | "already_member" | "not_a_member" | "registration_disabled" | "organization_not_found" | "invalid_user" | "not_an_organization_admin" | "last_organization_admin" | "team_id_unavailable" | "use_team_member_route" | "role_not_found" | "invalid_role" | "flow_not_found" | "revision_not_found" | "invalid_webhook_event" | "invalid_webhook_url" | "not_a_webhook" | "delivery_not_found" | "delivery_in_progress";
|
|
7054
7277
|
/** @description Every error response has this shape. Branch on `error_code`, never on `message`: the message is written for a person and may change. */
|
|
7055
7278
|
ErrorResponse: {
|
|
7056
7279
|
/** @description The HTTP status, repeated. */
|
|
@@ -7210,6 +7433,8 @@ export interface operations {
|
|
|
7210
7433
|
webauthn_rp_id?: string | null;
|
|
7211
7434
|
/** @description When true, `/logout` asks the End-User to confirm before ending the session unless the request carries a verified `id_token_hint`. Off by default — a plain link to `/logout` is otherwise enough to sign anyone out (logout CSRF). */
|
|
7212
7435
|
logout_confirm_required?: boolean;
|
|
7436
|
+
/** @description When true, anyone can register a client with `POST /oidc/register` (OIDC Dynamic Client Registration / RFC 7591) and the discovery document advertises `registration_endpoint`. Off by default: an open registration lets anyone create a client with their own `redirect_uri`. */
|
|
7437
|
+
dynamic_client_registration_enabled?: boolean;
|
|
7213
7438
|
/** @description The one host this tenant's OIDC issuer and discovery document are always minted with, regardless of which host actually served the request — must be the account's own platform host or one of its verified custom domains. `/authorize` and `/logout` 302 here from any other host of the tenant. Unset (the default): every URL uses whatever host served the request, as before this field existed. Changing it can invalidate every WebAuthn passkey already enrolled unless `webauthn_rp_id` already covers the new host. */
|
|
7214
7439
|
canonical_host?: string | null;
|
|
7215
7440
|
/** @description AuthAccount creation date */
|
|
@@ -7565,6 +7790,8 @@ export interface operations {
|
|
|
7565
7790
|
webauthn_rp_id?: string | null;
|
|
7566
7791
|
/** @description When true, `/logout` asks the End-User to confirm before ending the session unless the request carries a verified `id_token_hint`. Off by default — a plain link to `/logout` is otherwise enough to sign anyone out (logout CSRF). */
|
|
7567
7792
|
logout_confirm_required?: boolean;
|
|
7793
|
+
/** @description When true, anyone can register a client with `POST /oidc/register` (OIDC Dynamic Client Registration / RFC 7591) and the discovery document advertises `registration_endpoint`. Off by default: an open registration lets anyone create a client with their own `redirect_uri`. */
|
|
7794
|
+
dynamic_client_registration_enabled?: boolean;
|
|
7568
7795
|
/** @description The one host this tenant's OIDC issuer and discovery document are always minted with, regardless of which host actually served the request — must be the account's own platform host or one of its verified custom domains. `/authorize` and `/logout` 302 here from any other host of the tenant. Unset (the default): every URL uses whatever host served the request, as before this field existed. Changing it can invalidate every WebAuthn passkey already enrolled unless `webauthn_rp_id` already covers the new host. */
|
|
7569
7796
|
canonical_host?: string | null;
|
|
7570
7797
|
/** @description AuthAccount creation date */
|
|
@@ -7808,6 +8035,8 @@ export interface operations {
|
|
|
7808
8035
|
webauthn_rp_id?: string | null;
|
|
7809
8036
|
/** @description When true, `/logout` asks the End-User to confirm before ending the session unless the request carries a verified `id_token_hint`. Off by default — a plain link to `/logout` is otherwise enough to sign anyone out (logout CSRF). */
|
|
7810
8037
|
logout_confirm_required?: boolean;
|
|
8038
|
+
/** @description When true, anyone can register a client with `POST /oidc/register` (OIDC Dynamic Client Registration / RFC 7591) and the discovery document advertises `registration_endpoint`. Off by default: an open registration lets anyone create a client with their own `redirect_uri`. */
|
|
8039
|
+
dynamic_client_registration_enabled?: boolean;
|
|
7811
8040
|
/** @description The one host this tenant's OIDC issuer and discovery document are always minted with, regardless of which host actually served the request — must be the account's own platform host or one of its verified custom domains. `/authorize` and `/logout` 302 here from any other host of the tenant. Unset (the default): every URL uses whatever host served the request, as before this field existed. Changing it can invalidate every WebAuthn passkey already enrolled unless `webauthn_rp_id` already covers the new host. */
|
|
7812
8041
|
canonical_host?: string | null;
|
|
7813
8042
|
/** @description AuthAccount creation date */
|
|
@@ -8000,6 +8229,7 @@ export interface operations {
|
|
|
8000
8229
|
default_country_iso?: string | null;
|
|
8001
8230
|
webauthn_rp_id?: string | null;
|
|
8002
8231
|
logout_confirm_required?: boolean | null;
|
|
8232
|
+
dynamic_client_registration_enabled?: boolean | null;
|
|
8003
8233
|
canonical_host?: string | null;
|
|
8004
8234
|
login_flow?: string | null;
|
|
8005
8235
|
};
|
|
@@ -8126,6 +8356,8 @@ export interface operations {
|
|
|
8126
8356
|
webauthn_rp_id?: string | null;
|
|
8127
8357
|
/** @description When true, `/logout` asks the End-User to confirm before ending the session unless the request carries a verified `id_token_hint`. Off by default — a plain link to `/logout` is otherwise enough to sign anyone out (logout CSRF). */
|
|
8128
8358
|
logout_confirm_required?: boolean;
|
|
8359
|
+
/** @description When true, anyone can register a client with `POST /oidc/register` (OIDC Dynamic Client Registration / RFC 7591) and the discovery document advertises `registration_endpoint`. Off by default: an open registration lets anyone create a client with their own `redirect_uri`. */
|
|
8360
|
+
dynamic_client_registration_enabled?: boolean;
|
|
8129
8361
|
/** @description The one host this tenant's OIDC issuer and discovery document are always minted with, regardless of which host actually served the request — must be the account's own platform host or one of its verified custom domains. `/authorize` and `/logout` 302 here from any other host of the tenant. Unset (the default): every URL uses whatever host served the request, as before this field existed. Changing it can invalidate every WebAuthn passkey already enrolled unless `webauthn_rp_id` already covers the new host. */
|
|
8130
8362
|
canonical_host?: string | null;
|
|
8131
8363
|
/** @description AuthAccount creation date */
|
|
@@ -9388,6 +9620,8 @@ export interface operations {
|
|
|
9388
9620
|
webauthn_rp_id?: string | null;
|
|
9389
9621
|
/** @description When true, `/logout` asks the End-User to confirm before ending the session unless the request carries a verified `id_token_hint`. Off by default — a plain link to `/logout` is otherwise enough to sign anyone out (logout CSRF). */
|
|
9390
9622
|
logout_confirm_required?: boolean;
|
|
9623
|
+
/** @description When true, anyone can register a client with `POST /oidc/register` (OIDC Dynamic Client Registration / RFC 7591) and the discovery document advertises `registration_endpoint`. Off by default: an open registration lets anyone create a client with their own `redirect_uri`. */
|
|
9624
|
+
dynamic_client_registration_enabled?: boolean;
|
|
9391
9625
|
/** @description The one host this tenant's OIDC issuer and discovery document are always minted with, regardless of which host actually served the request — must be the account's own platform host or one of its verified custom domains. `/authorize` and `/logout` 302 here from any other host of the tenant. Unset (the default): every URL uses whatever host served the request, as before this field existed. Changing it can invalidate every WebAuthn passkey already enrolled unless `webauthn_rp_id` already covers the new host. */
|
|
9392
9626
|
canonical_host?: string | null;
|
|
9393
9627
|
/** @description AuthAccount creation date */
|
|
@@ -17708,6 +17942,8 @@ export interface operations {
|
|
|
17708
17942
|
description: string | null;
|
|
17709
17943
|
/** @description Optional URL of an image used as the team avatar/logo. */
|
|
17710
17944
|
logo_url: string | null;
|
|
17945
|
+
/** @description Id of the Organization the team belongs to, or `null`. Changed only with `PUT /team/{team_id}/organization`. */
|
|
17946
|
+
organization?: string | null;
|
|
17711
17947
|
/** @description Object is related with this account */
|
|
17712
17948
|
account: string;
|
|
17713
17949
|
/**
|
|
@@ -17842,6 +18078,8 @@ export interface operations {
|
|
|
17842
18078
|
description: string | null;
|
|
17843
18079
|
/** @description Optional URL of an image used as the team avatar/logo. */
|
|
17844
18080
|
logo_url: string | null;
|
|
18081
|
+
/** @description Id of the Organization the team belongs to, or `null`. Changed only with `PUT /team/{team_id}/organization`. */
|
|
18082
|
+
organization?: string | null;
|
|
17845
18083
|
/** @description Object is related with this account */
|
|
17846
18084
|
account: string;
|
|
17847
18085
|
/**
|
|
@@ -18005,6 +18243,8 @@ export interface operations {
|
|
|
18005
18243
|
description: string | null;
|
|
18006
18244
|
/** @description Optional URL of an image used as the team avatar/logo. */
|
|
18007
18245
|
logo_url: string | null;
|
|
18246
|
+
/** @description Id of the Organization the team belongs to, or `null`. Changed only with `PUT /team/{team_id}/organization`. */
|
|
18247
|
+
organization?: string | null;
|
|
18008
18248
|
/** @description Object is related with this account */
|
|
18009
18249
|
account: string;
|
|
18010
18250
|
/**
|
|
@@ -18044,6 +18284,8 @@ export interface operations {
|
|
|
18044
18284
|
description: string | null;
|
|
18045
18285
|
/** @description Optional URL of an image used as the team avatar/logo. */
|
|
18046
18286
|
logo_url: string | null;
|
|
18287
|
+
/** @description Id of the Organization the team belongs to, or `null`. Changed only with `PUT /team/{team_id}/organization`. */
|
|
18288
|
+
organization?: string | null;
|
|
18047
18289
|
/** @description Object is related with this account */
|
|
18048
18290
|
account: string;
|
|
18049
18291
|
/**
|
|
@@ -18204,6 +18446,8 @@ export interface operations {
|
|
|
18204
18446
|
description: string | null;
|
|
18205
18447
|
/** @description Optional URL of an image used as the team avatar/logo. */
|
|
18206
18448
|
logo_url: string | null;
|
|
18449
|
+
/** @description Id of the Organization the team belongs to, or `null`. Changed only with `PUT /team/{team_id}/organization`. */
|
|
18450
|
+
organization?: string | null;
|
|
18207
18451
|
/** @description Object is related with this account */
|
|
18208
18452
|
account: string;
|
|
18209
18453
|
/**
|
|
@@ -18344,6 +18588,8 @@ export interface operations {
|
|
|
18344
18588
|
description: string | null;
|
|
18345
18589
|
/** @description Optional URL of an image used as the team avatar/logo. */
|
|
18346
18590
|
logo_url: string | null;
|
|
18591
|
+
/** @description Id of the Organization the team belongs to, or `null`. Changed only with `PUT /team/{team_id}/organization`. */
|
|
18592
|
+
organization?: string | null;
|
|
18347
18593
|
/** @description Object is related with this account */
|
|
18348
18594
|
account: string;
|
|
18349
18595
|
/**
|
|
@@ -18448,51 +18694,66 @@ export interface operations {
|
|
|
18448
18694
|
};
|
|
18449
18695
|
};
|
|
18450
18696
|
};
|
|
18451
|
-
"
|
|
18697
|
+
"team/setOrganization": {
|
|
18452
18698
|
parameters: {
|
|
18453
|
-
query?:
|
|
18454
|
-
/** @description Number of items per page (max 200) */
|
|
18455
|
-
pageSize?: number;
|
|
18456
|
-
/** @description Cursor for next page */
|
|
18457
|
-
cursor?: string;
|
|
18458
|
-
/** @description Cursor returned by the previous page */
|
|
18459
|
-
next?: string;
|
|
18460
|
-
/** @description Exact match on `user`. Equivalent to `?query=user:<value>`. */
|
|
18461
|
-
user?: string;
|
|
18462
|
-
/** @description Exact match on `team`. Equivalent to `?query=team:<value>`. */
|
|
18463
|
-
team?: string;
|
|
18464
|
-
/** @description Filter using a FaableQL query */
|
|
18465
|
-
query?: string;
|
|
18466
|
-
/** @description Expand id-only fields in the response. Pass one path per entry (e.g. `?expand=user`). */
|
|
18467
|
-
expand?: ("user" | "team" | "roles")[];
|
|
18468
|
-
};
|
|
18699
|
+
query?: never;
|
|
18469
18700
|
header?: never;
|
|
18470
|
-
path
|
|
18701
|
+
path: {
|
|
18702
|
+
team_id: string;
|
|
18703
|
+
};
|
|
18471
18704
|
cookie?: never;
|
|
18472
18705
|
};
|
|
18473
|
-
requestBody
|
|
18706
|
+
requestBody: {
|
|
18707
|
+
content: {
|
|
18708
|
+
"application/json": {
|
|
18709
|
+
/** @description Id of an Organization of this tenant, or `null` to take the team out of its organization. */
|
|
18710
|
+
organization: string | null;
|
|
18711
|
+
};
|
|
18712
|
+
};
|
|
18713
|
+
};
|
|
18474
18714
|
responses: {
|
|
18475
|
-
/** @description
|
|
18715
|
+
/** @description Team */
|
|
18476
18716
|
200: {
|
|
18477
18717
|
headers: {
|
|
18478
18718
|
[name: string]: unknown;
|
|
18479
18719
|
};
|
|
18480
18720
|
content: {
|
|
18481
18721
|
"application/json": {
|
|
18482
|
-
|
|
18483
|
-
|
|
18722
|
+
/** @description Team ID */
|
|
18723
|
+
id: string;
|
|
18724
|
+
/**
|
|
18725
|
+
* @description Human-readable name of the team. Shown in the dashboard and in team-picker UI.
|
|
18726
|
+
* @example Acme Engineering
|
|
18727
|
+
*/
|
|
18728
|
+
name: string;
|
|
18729
|
+
/**
|
|
18730
|
+
* @description URL-safe identifier auto-derived from `name`. Unique within the tenant; used in routes that address a team by slug.
|
|
18731
|
+
* @example acme-engineering
|
|
18732
|
+
*/
|
|
18733
|
+
slug: string;
|
|
18734
|
+
/** @description Optional free-form description of the team. */
|
|
18735
|
+
description: string | null;
|
|
18736
|
+
/** @description Optional URL of an image used as the team avatar/logo. */
|
|
18737
|
+
logo_url: string | null;
|
|
18738
|
+
/** @description Id of the Organization the team belongs to, or `null`. Changed only with `PUT /team/{team_id}/organization`. */
|
|
18739
|
+
organization?: string | null;
|
|
18740
|
+
/** @description Object is related with this account */
|
|
18741
|
+
account: string;
|
|
18742
|
+
/**
|
|
18743
|
+
* @description TeamMetadata
|
|
18744
|
+
* @default {}
|
|
18745
|
+
*/
|
|
18746
|
+
metadata: {
|
|
18747
|
+
[key: string]: unknown;
|
|
18748
|
+
};
|
|
18749
|
+
/** @description Team creation date */
|
|
18750
|
+
createdAt: string;
|
|
18751
|
+
/** @description Team updated date */
|
|
18752
|
+
updatedAt?: string;
|
|
18484
18753
|
};
|
|
18485
18754
|
};
|
|
18486
18755
|
};
|
|
18487
|
-
/**
|
|
18488
|
-
* @description `invalid_query` — The `?query=` FaableQL expression could not be parsed.
|
|
18489
|
-
*
|
|
18490
|
-
* `invalid_expand` — An `?expand=` path is not allowed on this resource.
|
|
18491
|
-
*
|
|
18492
|
-
* `search_not_supported` — This resource does not support `?search=`.
|
|
18493
|
-
*
|
|
18494
|
-
* `validation_error` — The body, query or path failed schema validation. `details.issues` lists each failing field.
|
|
18495
|
-
*/
|
|
18756
|
+
/** @description `validation_error` — The body, query or path failed schema validation. `details.issues` lists each failing field. */
|
|
18496
18757
|
400: {
|
|
18497
18758
|
headers: {
|
|
18498
18759
|
[name: string]: unknown;
|
|
@@ -18500,7 +18761,7 @@ export interface operations {
|
|
|
18500
18761
|
content: {
|
|
18501
18762
|
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
18502
18763
|
/** @enum {string} */
|
|
18503
|
-
error_code?: "
|
|
18764
|
+
error_code?: "validation_error";
|
|
18504
18765
|
};
|
|
18505
18766
|
};
|
|
18506
18767
|
};
|
|
@@ -18534,7 +18795,13 @@ export interface operations {
|
|
|
18534
18795
|
};
|
|
18535
18796
|
};
|
|
18536
18797
|
};
|
|
18537
|
-
/**
|
|
18798
|
+
/**
|
|
18799
|
+
* @description `not_found` — The resource does not exist in this account.
|
|
18800
|
+
*
|
|
18801
|
+
* `organization_not_found` — No organization with that id in this account.
|
|
18802
|
+
*
|
|
18803
|
+
* `account_not_found` — No Auth Account matches the request (domain, header or token).
|
|
18804
|
+
*/
|
|
18538
18805
|
404: {
|
|
18539
18806
|
headers: {
|
|
18540
18807
|
[name: string]: unknown;
|
|
@@ -18542,7 +18809,7 @@ export interface operations {
|
|
|
18542
18809
|
content: {
|
|
18543
18810
|
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
18544
18811
|
/** @enum {string} */
|
|
18545
|
-
error_code?: "account_not_found";
|
|
18812
|
+
error_code?: "not_found" | "organization_not_found" | "account_not_found";
|
|
18546
18813
|
};
|
|
18547
18814
|
};
|
|
18548
18815
|
};
|
|
@@ -18572,48 +18839,1194 @@ export interface operations {
|
|
|
18572
18839
|
};
|
|
18573
18840
|
};
|
|
18574
18841
|
};
|
|
18575
|
-
"
|
|
18842
|
+
"organization/list": {
|
|
18576
18843
|
parameters: {
|
|
18577
18844
|
query?: {
|
|
18578
|
-
/** @description
|
|
18579
|
-
|
|
18845
|
+
/** @description Number of items per page (max 200) */
|
|
18846
|
+
pageSize?: number;
|
|
18847
|
+
/** @description Cursor for next page */
|
|
18848
|
+
cursor?: string;
|
|
18849
|
+
/** @description Cursor returned by the previous page */
|
|
18850
|
+
next?: string;
|
|
18851
|
+
/** @description Filter using a FaableQL query */
|
|
18852
|
+
query?: string;
|
|
18853
|
+
/** @description Full-text search across: `name`, `slug`. */
|
|
18854
|
+
q?: string;
|
|
18580
18855
|
};
|
|
18581
18856
|
header?: never;
|
|
18582
|
-
path
|
|
18583
|
-
teammember_id: string;
|
|
18584
|
-
};
|
|
18857
|
+
path?: never;
|
|
18585
18858
|
cookie?: never;
|
|
18586
18859
|
};
|
|
18587
18860
|
requestBody?: never;
|
|
18588
18861
|
responses: {
|
|
18589
|
-
/** @description
|
|
18862
|
+
/** @description Default Response */
|
|
18590
18863
|
200: {
|
|
18591
18864
|
headers: {
|
|
18592
18865
|
[name: string]: unknown;
|
|
18593
18866
|
};
|
|
18594
18867
|
content: {
|
|
18595
18868
|
"application/json": {
|
|
18596
|
-
|
|
18597
|
-
|
|
18598
|
-
|
|
18599
|
-
|
|
18600
|
-
|
|
18601
|
-
|
|
18602
|
-
|
|
18603
|
-
|
|
18604
|
-
|
|
18605
|
-
|
|
18606
|
-
|
|
18607
|
-
|
|
18608
|
-
|
|
18609
|
-
|
|
18610
|
-
|
|
18611
|
-
|
|
18612
|
-
|
|
18613
|
-
|
|
18614
|
-
|
|
18615
|
-
|
|
18616
|
-
|
|
18869
|
+
next: string | null;
|
|
18870
|
+
results: components["schemas"]["Organization"][];
|
|
18871
|
+
};
|
|
18872
|
+
};
|
|
18873
|
+
};
|
|
18874
|
+
/**
|
|
18875
|
+
* @description `invalid_query` — The `?query=` FaableQL expression could not be parsed.
|
|
18876
|
+
*
|
|
18877
|
+
* `invalid_expand` — An `?expand=` path is not allowed on this resource.
|
|
18878
|
+
*
|
|
18879
|
+
* `search_not_supported` — This resource does not support `?search=`.
|
|
18880
|
+
*
|
|
18881
|
+
* `validation_error` — The body, query or path failed schema validation. `details.issues` lists each failing field.
|
|
18882
|
+
*/
|
|
18883
|
+
400: {
|
|
18884
|
+
headers: {
|
|
18885
|
+
[name: string]: unknown;
|
|
18886
|
+
};
|
|
18887
|
+
content: {
|
|
18888
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
18889
|
+
/** @enum {string} */
|
|
18890
|
+
error_code?: "invalid_query" | "invalid_expand" | "search_not_supported" | "validation_error";
|
|
18891
|
+
};
|
|
18892
|
+
};
|
|
18893
|
+
};
|
|
18894
|
+
/** @description `unauthorized` — The request carries no valid credentials. */
|
|
18895
|
+
401: {
|
|
18896
|
+
headers: {
|
|
18897
|
+
[name: string]: unknown;
|
|
18898
|
+
};
|
|
18899
|
+
content: {
|
|
18900
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
18901
|
+
/** @enum {string} */
|
|
18902
|
+
error_code?: "unauthorized";
|
|
18903
|
+
};
|
|
18904
|
+
};
|
|
18905
|
+
};
|
|
18906
|
+
/**
|
|
18907
|
+
* @description `forbidden` — The credentials are valid but do not allow this operation.
|
|
18908
|
+
*
|
|
18909
|
+
* `insufficient_scope` — The token lacks a scope this operation requires. `message` names it.
|
|
18910
|
+
*
|
|
18911
|
+
* `user_suspended` — The user is suspended and cannot sign in or be modified.
|
|
18912
|
+
*/
|
|
18913
|
+
403: {
|
|
18914
|
+
headers: {
|
|
18915
|
+
[name: string]: unknown;
|
|
18916
|
+
};
|
|
18917
|
+
content: {
|
|
18918
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
18919
|
+
/** @enum {string} */
|
|
18920
|
+
error_code?: "forbidden" | "insufficient_scope" | "user_suspended";
|
|
18921
|
+
};
|
|
18922
|
+
};
|
|
18923
|
+
};
|
|
18924
|
+
/** @description `account_not_found` — No Auth Account matches the request (domain, header or token). */
|
|
18925
|
+
404: {
|
|
18926
|
+
headers: {
|
|
18927
|
+
[name: string]: unknown;
|
|
18928
|
+
};
|
|
18929
|
+
content: {
|
|
18930
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
18931
|
+
/** @enum {string} */
|
|
18932
|
+
error_code?: "account_not_found";
|
|
18933
|
+
};
|
|
18934
|
+
};
|
|
18935
|
+
};
|
|
18936
|
+
/** @description `too_many_requests` — Rate limit exceeded. Honour the `Retry-After` header. */
|
|
18937
|
+
429: {
|
|
18938
|
+
headers: {
|
|
18939
|
+
[name: string]: unknown;
|
|
18940
|
+
};
|
|
18941
|
+
content: {
|
|
18942
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
18943
|
+
/** @enum {string} */
|
|
18944
|
+
error_code?: "too_many_requests";
|
|
18945
|
+
};
|
|
18946
|
+
};
|
|
18947
|
+
};
|
|
18948
|
+
/** @description `internal_error` — Unexpected server error. Retry later; the request id is logged. */
|
|
18949
|
+
500: {
|
|
18950
|
+
headers: {
|
|
18951
|
+
[name: string]: unknown;
|
|
18952
|
+
};
|
|
18953
|
+
content: {
|
|
18954
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
18955
|
+
/** @enum {string} */
|
|
18956
|
+
error_code?: "internal_error";
|
|
18957
|
+
};
|
|
18958
|
+
};
|
|
18959
|
+
};
|
|
18960
|
+
};
|
|
18961
|
+
};
|
|
18962
|
+
"organization/create": {
|
|
18963
|
+
parameters: {
|
|
18964
|
+
query?: never;
|
|
18965
|
+
header?: never;
|
|
18966
|
+
path?: never;
|
|
18967
|
+
cookie?: never;
|
|
18968
|
+
};
|
|
18969
|
+
/** @description OrganizationCreate */
|
|
18970
|
+
requestBody: {
|
|
18971
|
+
content: {
|
|
18972
|
+
"application/json": {
|
|
18973
|
+
/**
|
|
18974
|
+
* @description Human-readable name of the organization.
|
|
18975
|
+
* @example Acme Inc.
|
|
18976
|
+
*/
|
|
18977
|
+
name: string;
|
|
18978
|
+
/** @description Optional free-form description. */
|
|
18979
|
+
description?: string;
|
|
18980
|
+
/**
|
|
18981
|
+
* Format: uri
|
|
18982
|
+
* @description Optional URL of the organization logo.
|
|
18983
|
+
*/
|
|
18984
|
+
logo_url?: string;
|
|
18985
|
+
/** @description Initial admins (user ids of this tenant). Can be empty and filled later with `POST /organization/{organization_id}/admin`. */
|
|
18986
|
+
admins?: string[];
|
|
18987
|
+
/** @description Add Metadata */
|
|
18988
|
+
metadata?: {
|
|
18989
|
+
[key: string]: unknown;
|
|
18990
|
+
};
|
|
18991
|
+
};
|
|
18992
|
+
};
|
|
18993
|
+
};
|
|
18994
|
+
responses: {
|
|
18995
|
+
/** @description Organization */
|
|
18996
|
+
200: {
|
|
18997
|
+
headers: {
|
|
18998
|
+
[name: string]: unknown;
|
|
18999
|
+
};
|
|
19000
|
+
content: {
|
|
19001
|
+
"application/json": {
|
|
19002
|
+
/** @description Organization ID */
|
|
19003
|
+
id: string;
|
|
19004
|
+
/**
|
|
19005
|
+
* @description Human-readable name of the organization.
|
|
19006
|
+
* @example Acme Inc.
|
|
19007
|
+
*/
|
|
19008
|
+
name: string;
|
|
19009
|
+
/**
|
|
19010
|
+
* @description URL-safe identifier derived from `name`. Unique within the tenant.
|
|
19011
|
+
* @example acme-inc
|
|
19012
|
+
*/
|
|
19013
|
+
slug: string;
|
|
19014
|
+
/** @description Optional free-form description. */
|
|
19015
|
+
description: string | null;
|
|
19016
|
+
/** @description Optional URL of the organization logo. */
|
|
19017
|
+
logo_url: string | null;
|
|
19018
|
+
/** @description Ids of the users who manage the organization: its teams and its identity settings. Being an admin does not grant access to any team; team access is team membership. */
|
|
19019
|
+
admins: string[];
|
|
19020
|
+
/** @description Object is related with this account */
|
|
19021
|
+
account: string;
|
|
19022
|
+
/**
|
|
19023
|
+
* @description OrganizationMetadata
|
|
19024
|
+
* @default {}
|
|
19025
|
+
*/
|
|
19026
|
+
metadata: {
|
|
19027
|
+
[key: string]: unknown;
|
|
19028
|
+
};
|
|
19029
|
+
/** @description Organization creation date */
|
|
19030
|
+
createdAt: string;
|
|
19031
|
+
/** @description Organization updated date */
|
|
19032
|
+
updatedAt?: string;
|
|
19033
|
+
};
|
|
19034
|
+
};
|
|
19035
|
+
};
|
|
19036
|
+
/**
|
|
19037
|
+
* @description `already_exists` — A resource with the same unique field already exists (for a user, usually `email`). `details.fields` names the field.
|
|
19038
|
+
*
|
|
19039
|
+
* `validation_error` — The body, query or path failed schema validation. `details.issues` lists each failing field.
|
|
19040
|
+
*/
|
|
19041
|
+
400: {
|
|
19042
|
+
headers: {
|
|
19043
|
+
[name: string]: unknown;
|
|
19044
|
+
};
|
|
19045
|
+
content: {
|
|
19046
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19047
|
+
/** @enum {string} */
|
|
19048
|
+
error_code?: "already_exists" | "validation_error";
|
|
19049
|
+
};
|
|
19050
|
+
};
|
|
19051
|
+
};
|
|
19052
|
+
/** @description `unauthorized` — The request carries no valid credentials. */
|
|
19053
|
+
401: {
|
|
19054
|
+
headers: {
|
|
19055
|
+
[name: string]: unknown;
|
|
19056
|
+
};
|
|
19057
|
+
content: {
|
|
19058
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19059
|
+
/** @enum {string} */
|
|
19060
|
+
error_code?: "unauthorized";
|
|
19061
|
+
};
|
|
19062
|
+
};
|
|
19063
|
+
};
|
|
19064
|
+
/**
|
|
19065
|
+
* @description `forbidden` — The credentials are valid but do not allow this operation.
|
|
19066
|
+
*
|
|
19067
|
+
* `insufficient_scope` — The token lacks a scope this operation requires. `message` names it.
|
|
19068
|
+
*
|
|
19069
|
+
* `user_suspended` — The user is suspended and cannot sign in or be modified.
|
|
19070
|
+
*/
|
|
19071
|
+
403: {
|
|
19072
|
+
headers: {
|
|
19073
|
+
[name: string]: unknown;
|
|
19074
|
+
};
|
|
19075
|
+
content: {
|
|
19076
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19077
|
+
/** @enum {string} */
|
|
19078
|
+
error_code?: "forbidden" | "insufficient_scope" | "user_suspended";
|
|
19079
|
+
};
|
|
19080
|
+
};
|
|
19081
|
+
};
|
|
19082
|
+
/** @description `account_not_found` — No Auth Account matches the request (domain, header or token). */
|
|
19083
|
+
404: {
|
|
19084
|
+
headers: {
|
|
19085
|
+
[name: string]: unknown;
|
|
19086
|
+
};
|
|
19087
|
+
content: {
|
|
19088
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19089
|
+
/** @enum {string} */
|
|
19090
|
+
error_code?: "account_not_found";
|
|
19091
|
+
};
|
|
19092
|
+
};
|
|
19093
|
+
};
|
|
19094
|
+
/** @description `too_many_requests` — Rate limit exceeded. Honour the `Retry-After` header. */
|
|
19095
|
+
429: {
|
|
19096
|
+
headers: {
|
|
19097
|
+
[name: string]: unknown;
|
|
19098
|
+
};
|
|
19099
|
+
content: {
|
|
19100
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19101
|
+
/** @enum {string} */
|
|
19102
|
+
error_code?: "too_many_requests";
|
|
19103
|
+
};
|
|
19104
|
+
};
|
|
19105
|
+
};
|
|
19106
|
+
/** @description `internal_error` — Unexpected server error. Retry later; the request id is logged. */
|
|
19107
|
+
500: {
|
|
19108
|
+
headers: {
|
|
19109
|
+
[name: string]: unknown;
|
|
19110
|
+
};
|
|
19111
|
+
content: {
|
|
19112
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19113
|
+
/** @enum {string} */
|
|
19114
|
+
error_code?: "internal_error";
|
|
19115
|
+
};
|
|
19116
|
+
};
|
|
19117
|
+
};
|
|
19118
|
+
};
|
|
19119
|
+
};
|
|
19120
|
+
"organization/get": {
|
|
19121
|
+
parameters: {
|
|
19122
|
+
query?: never;
|
|
19123
|
+
header?: never;
|
|
19124
|
+
path: {
|
|
19125
|
+
organization_id: string;
|
|
19126
|
+
};
|
|
19127
|
+
cookie?: never;
|
|
19128
|
+
};
|
|
19129
|
+
requestBody?: never;
|
|
19130
|
+
responses: {
|
|
19131
|
+
/** @description Organization */
|
|
19132
|
+
200: {
|
|
19133
|
+
headers: {
|
|
19134
|
+
[name: string]: unknown;
|
|
19135
|
+
};
|
|
19136
|
+
content: {
|
|
19137
|
+
"application/json": {
|
|
19138
|
+
/** @description Organization ID */
|
|
19139
|
+
id: string;
|
|
19140
|
+
/**
|
|
19141
|
+
* @description Human-readable name of the organization.
|
|
19142
|
+
* @example Acme Inc.
|
|
19143
|
+
*/
|
|
19144
|
+
name: string;
|
|
19145
|
+
/**
|
|
19146
|
+
* @description URL-safe identifier derived from `name`. Unique within the tenant.
|
|
19147
|
+
* @example acme-inc
|
|
19148
|
+
*/
|
|
19149
|
+
slug: string;
|
|
19150
|
+
/** @description Optional free-form description. */
|
|
19151
|
+
description: string | null;
|
|
19152
|
+
/** @description Optional URL of the organization logo. */
|
|
19153
|
+
logo_url: string | null;
|
|
19154
|
+
/** @description Ids of the users who manage the organization: its teams and its identity settings. Being an admin does not grant access to any team; team access is team membership. */
|
|
19155
|
+
admins: string[];
|
|
19156
|
+
/** @description Object is related with this account */
|
|
19157
|
+
account: string;
|
|
19158
|
+
/**
|
|
19159
|
+
* @description OrganizationMetadata
|
|
19160
|
+
* @default {}
|
|
19161
|
+
*/
|
|
19162
|
+
metadata: {
|
|
19163
|
+
[key: string]: unknown;
|
|
19164
|
+
};
|
|
19165
|
+
/** @description Organization creation date */
|
|
19166
|
+
createdAt: string;
|
|
19167
|
+
/** @description Organization updated date */
|
|
19168
|
+
updatedAt?: string;
|
|
19169
|
+
};
|
|
19170
|
+
};
|
|
19171
|
+
};
|
|
19172
|
+
/**
|
|
19173
|
+
* @description `invalid_id` — The id in the path is not a valid id for this resource.
|
|
19174
|
+
*
|
|
19175
|
+
* `invalid_expand` — An `?expand=` path is not allowed on this resource.
|
|
19176
|
+
*
|
|
19177
|
+
* `validation_error` — The body, query or path failed schema validation. `details.issues` lists each failing field.
|
|
19178
|
+
*/
|
|
19179
|
+
400: {
|
|
19180
|
+
headers: {
|
|
19181
|
+
[name: string]: unknown;
|
|
19182
|
+
};
|
|
19183
|
+
content: {
|
|
19184
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19185
|
+
/** @enum {string} */
|
|
19186
|
+
error_code?: "invalid_id" | "invalid_expand" | "validation_error";
|
|
19187
|
+
};
|
|
19188
|
+
};
|
|
19189
|
+
};
|
|
19190
|
+
/** @description `unauthorized` — The request carries no valid credentials. */
|
|
19191
|
+
401: {
|
|
19192
|
+
headers: {
|
|
19193
|
+
[name: string]: unknown;
|
|
19194
|
+
};
|
|
19195
|
+
content: {
|
|
19196
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19197
|
+
/** @enum {string} */
|
|
19198
|
+
error_code?: "unauthorized";
|
|
19199
|
+
};
|
|
19200
|
+
};
|
|
19201
|
+
};
|
|
19202
|
+
/**
|
|
19203
|
+
* @description `forbidden` — The credentials are valid but do not allow this operation.
|
|
19204
|
+
*
|
|
19205
|
+
* `insufficient_scope` — The token lacks a scope this operation requires. `message` names it.
|
|
19206
|
+
*
|
|
19207
|
+
* `user_suspended` — The user is suspended and cannot sign in or be modified.
|
|
19208
|
+
*/
|
|
19209
|
+
403: {
|
|
19210
|
+
headers: {
|
|
19211
|
+
[name: string]: unknown;
|
|
19212
|
+
};
|
|
19213
|
+
content: {
|
|
19214
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19215
|
+
/** @enum {string} */
|
|
19216
|
+
error_code?: "forbidden" | "insufficient_scope" | "user_suspended";
|
|
19217
|
+
};
|
|
19218
|
+
};
|
|
19219
|
+
};
|
|
19220
|
+
/**
|
|
19221
|
+
* @description `not_found` — The resource does not exist in this account.
|
|
19222
|
+
*
|
|
19223
|
+
* `account_not_found` — No Auth Account matches the request (domain, header or token).
|
|
19224
|
+
*/
|
|
19225
|
+
404: {
|
|
19226
|
+
headers: {
|
|
19227
|
+
[name: string]: unknown;
|
|
19228
|
+
};
|
|
19229
|
+
content: {
|
|
19230
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19231
|
+
/** @enum {string} */
|
|
19232
|
+
error_code?: "not_found" | "account_not_found";
|
|
19233
|
+
};
|
|
19234
|
+
};
|
|
19235
|
+
};
|
|
19236
|
+
/** @description `too_many_requests` — Rate limit exceeded. Honour the `Retry-After` header. */
|
|
19237
|
+
429: {
|
|
19238
|
+
headers: {
|
|
19239
|
+
[name: string]: unknown;
|
|
19240
|
+
};
|
|
19241
|
+
content: {
|
|
19242
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19243
|
+
/** @enum {string} */
|
|
19244
|
+
error_code?: "too_many_requests";
|
|
19245
|
+
};
|
|
19246
|
+
};
|
|
19247
|
+
};
|
|
19248
|
+
/** @description `internal_error` — Unexpected server error. Retry later; the request id is logged. */
|
|
19249
|
+
500: {
|
|
19250
|
+
headers: {
|
|
19251
|
+
[name: string]: unknown;
|
|
19252
|
+
};
|
|
19253
|
+
content: {
|
|
19254
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19255
|
+
/** @enum {string} */
|
|
19256
|
+
error_code?: "internal_error";
|
|
19257
|
+
};
|
|
19258
|
+
};
|
|
19259
|
+
};
|
|
19260
|
+
};
|
|
19261
|
+
};
|
|
19262
|
+
"organization/update": {
|
|
19263
|
+
parameters: {
|
|
19264
|
+
query?: never;
|
|
19265
|
+
header?: never;
|
|
19266
|
+
path: {
|
|
19267
|
+
organization_id: string;
|
|
19268
|
+
};
|
|
19269
|
+
cookie?: never;
|
|
19270
|
+
};
|
|
19271
|
+
/** @description Partial update for an Organization. `slug` is derived from `name` on creation and is not editable; admins change through `/organization/{organization_id}/admin`. */
|
|
19272
|
+
requestBody: {
|
|
19273
|
+
content: {
|
|
19274
|
+
"application/json": {
|
|
19275
|
+
/** @description New human-readable name. */
|
|
19276
|
+
name?: string;
|
|
19277
|
+
/** @description New free-form description. */
|
|
19278
|
+
description?: string;
|
|
19279
|
+
/**
|
|
19280
|
+
* Format: uri
|
|
19281
|
+
* @description New URL of the organization logo.
|
|
19282
|
+
*/
|
|
19283
|
+
logo_url?: string;
|
|
19284
|
+
/** @description Arbitrary key/value pairs. Replaces the previous metadata entirely. */
|
|
19285
|
+
metadata?: {
|
|
19286
|
+
[key: string]: unknown;
|
|
19287
|
+
};
|
|
19288
|
+
};
|
|
19289
|
+
};
|
|
19290
|
+
};
|
|
19291
|
+
responses: {
|
|
19292
|
+
/** @description Organization */
|
|
19293
|
+
200: {
|
|
19294
|
+
headers: {
|
|
19295
|
+
[name: string]: unknown;
|
|
19296
|
+
};
|
|
19297
|
+
content: {
|
|
19298
|
+
"application/json": {
|
|
19299
|
+
/** @description Organization ID */
|
|
19300
|
+
id: string;
|
|
19301
|
+
/**
|
|
19302
|
+
* @description Human-readable name of the organization.
|
|
19303
|
+
* @example Acme Inc.
|
|
19304
|
+
*/
|
|
19305
|
+
name: string;
|
|
19306
|
+
/**
|
|
19307
|
+
* @description URL-safe identifier derived from `name`. Unique within the tenant.
|
|
19308
|
+
* @example acme-inc
|
|
19309
|
+
*/
|
|
19310
|
+
slug: string;
|
|
19311
|
+
/** @description Optional free-form description. */
|
|
19312
|
+
description: string | null;
|
|
19313
|
+
/** @description Optional URL of the organization logo. */
|
|
19314
|
+
logo_url: string | null;
|
|
19315
|
+
/** @description Ids of the users who manage the organization: its teams and its identity settings. Being an admin does not grant access to any team; team access is team membership. */
|
|
19316
|
+
admins: string[];
|
|
19317
|
+
/** @description Object is related with this account */
|
|
19318
|
+
account: string;
|
|
19319
|
+
/**
|
|
19320
|
+
* @description OrganizationMetadata
|
|
19321
|
+
* @default {}
|
|
19322
|
+
*/
|
|
19323
|
+
metadata: {
|
|
19324
|
+
[key: string]: unknown;
|
|
19325
|
+
};
|
|
19326
|
+
/** @description Organization creation date */
|
|
19327
|
+
createdAt: string;
|
|
19328
|
+
/** @description Organization updated date */
|
|
19329
|
+
updatedAt?: string;
|
|
19330
|
+
};
|
|
19331
|
+
};
|
|
19332
|
+
};
|
|
19333
|
+
/**
|
|
19334
|
+
* @description `invalid_id` — The id in the path is not a valid id for this resource.
|
|
19335
|
+
*
|
|
19336
|
+
* `already_exists` — A resource with the same unique field already exists (for a user, usually `email`). `details.fields` names the field.
|
|
19337
|
+
*
|
|
19338
|
+
* `validation_error` — The body, query or path failed schema validation. `details.issues` lists each failing field.
|
|
19339
|
+
*/
|
|
19340
|
+
400: {
|
|
19341
|
+
headers: {
|
|
19342
|
+
[name: string]: unknown;
|
|
19343
|
+
};
|
|
19344
|
+
content: {
|
|
19345
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19346
|
+
/** @enum {string} */
|
|
19347
|
+
error_code?: "invalid_id" | "already_exists" | "validation_error";
|
|
19348
|
+
};
|
|
19349
|
+
};
|
|
19350
|
+
};
|
|
19351
|
+
/** @description `unauthorized` — The request carries no valid credentials. */
|
|
19352
|
+
401: {
|
|
19353
|
+
headers: {
|
|
19354
|
+
[name: string]: unknown;
|
|
19355
|
+
};
|
|
19356
|
+
content: {
|
|
19357
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19358
|
+
/** @enum {string} */
|
|
19359
|
+
error_code?: "unauthorized";
|
|
19360
|
+
};
|
|
19361
|
+
};
|
|
19362
|
+
};
|
|
19363
|
+
/**
|
|
19364
|
+
* @description `forbidden` — The credentials are valid but do not allow this operation.
|
|
19365
|
+
*
|
|
19366
|
+
* `insufficient_scope` — The token lacks a scope this operation requires. `message` names it.
|
|
19367
|
+
*
|
|
19368
|
+
* `user_suspended` — The user is suspended and cannot sign in or be modified.
|
|
19369
|
+
*/
|
|
19370
|
+
403: {
|
|
19371
|
+
headers: {
|
|
19372
|
+
[name: string]: unknown;
|
|
19373
|
+
};
|
|
19374
|
+
content: {
|
|
19375
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19376
|
+
/** @enum {string} */
|
|
19377
|
+
error_code?: "forbidden" | "insufficient_scope" | "user_suspended";
|
|
19378
|
+
};
|
|
19379
|
+
};
|
|
19380
|
+
};
|
|
19381
|
+
/**
|
|
19382
|
+
* @description `not_found` — The resource does not exist in this account.
|
|
19383
|
+
*
|
|
19384
|
+
* `account_not_found` — No Auth Account matches the request (domain, header or token).
|
|
19385
|
+
*/
|
|
19386
|
+
404: {
|
|
19387
|
+
headers: {
|
|
19388
|
+
[name: string]: unknown;
|
|
19389
|
+
};
|
|
19390
|
+
content: {
|
|
19391
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19392
|
+
/** @enum {string} */
|
|
19393
|
+
error_code?: "not_found" | "account_not_found";
|
|
19394
|
+
};
|
|
19395
|
+
};
|
|
19396
|
+
};
|
|
19397
|
+
/** @description `too_many_requests` — Rate limit exceeded. Honour the `Retry-After` header. */
|
|
19398
|
+
429: {
|
|
19399
|
+
headers: {
|
|
19400
|
+
[name: string]: unknown;
|
|
19401
|
+
};
|
|
19402
|
+
content: {
|
|
19403
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19404
|
+
/** @enum {string} */
|
|
19405
|
+
error_code?: "too_many_requests";
|
|
19406
|
+
};
|
|
19407
|
+
};
|
|
19408
|
+
};
|
|
19409
|
+
/** @description `internal_error` — Unexpected server error. Retry later; the request id is logged. */
|
|
19410
|
+
500: {
|
|
19411
|
+
headers: {
|
|
19412
|
+
[name: string]: unknown;
|
|
19413
|
+
};
|
|
19414
|
+
content: {
|
|
19415
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19416
|
+
/** @enum {string} */
|
|
19417
|
+
error_code?: "internal_error";
|
|
19418
|
+
};
|
|
19419
|
+
};
|
|
19420
|
+
};
|
|
19421
|
+
};
|
|
19422
|
+
};
|
|
19423
|
+
"organization/delete": {
|
|
19424
|
+
parameters: {
|
|
19425
|
+
query?: never;
|
|
19426
|
+
header?: never;
|
|
19427
|
+
path: {
|
|
19428
|
+
organization_id: string;
|
|
19429
|
+
};
|
|
19430
|
+
cookie?: never;
|
|
19431
|
+
};
|
|
19432
|
+
requestBody?: never;
|
|
19433
|
+
responses: {
|
|
19434
|
+
/** @description Organization */
|
|
19435
|
+
200: {
|
|
19436
|
+
headers: {
|
|
19437
|
+
[name: string]: unknown;
|
|
19438
|
+
};
|
|
19439
|
+
content: {
|
|
19440
|
+
"application/json": {
|
|
19441
|
+
/** @description Organization ID */
|
|
19442
|
+
id: string;
|
|
19443
|
+
/**
|
|
19444
|
+
* @description Human-readable name of the organization.
|
|
19445
|
+
* @example Acme Inc.
|
|
19446
|
+
*/
|
|
19447
|
+
name: string;
|
|
19448
|
+
/**
|
|
19449
|
+
* @description URL-safe identifier derived from `name`. Unique within the tenant.
|
|
19450
|
+
* @example acme-inc
|
|
19451
|
+
*/
|
|
19452
|
+
slug: string;
|
|
19453
|
+
/** @description Optional free-form description. */
|
|
19454
|
+
description: string | null;
|
|
19455
|
+
/** @description Optional URL of the organization logo. */
|
|
19456
|
+
logo_url: string | null;
|
|
19457
|
+
/** @description Ids of the users who manage the organization: its teams and its identity settings. Being an admin does not grant access to any team; team access is team membership. */
|
|
19458
|
+
admins: string[];
|
|
19459
|
+
/** @description Object is related with this account */
|
|
19460
|
+
account: string;
|
|
19461
|
+
/**
|
|
19462
|
+
* @description OrganizationMetadata
|
|
19463
|
+
* @default {}
|
|
19464
|
+
*/
|
|
19465
|
+
metadata: {
|
|
19466
|
+
[key: string]: unknown;
|
|
19467
|
+
};
|
|
19468
|
+
/** @description Organization creation date */
|
|
19469
|
+
createdAt: string;
|
|
19470
|
+
/** @description Organization updated date */
|
|
19471
|
+
updatedAt?: string;
|
|
19472
|
+
};
|
|
19473
|
+
};
|
|
19474
|
+
};
|
|
19475
|
+
/**
|
|
19476
|
+
* @description `invalid_id` — The id in the path is not a valid id for this resource.
|
|
19477
|
+
*
|
|
19478
|
+
* `validation_error` — The body, query or path failed schema validation. `details.issues` lists each failing field.
|
|
19479
|
+
*/
|
|
19480
|
+
400: {
|
|
19481
|
+
headers: {
|
|
19482
|
+
[name: string]: unknown;
|
|
19483
|
+
};
|
|
19484
|
+
content: {
|
|
19485
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19486
|
+
/** @enum {string} */
|
|
19487
|
+
error_code?: "invalid_id" | "validation_error";
|
|
19488
|
+
};
|
|
19489
|
+
};
|
|
19490
|
+
};
|
|
19491
|
+
/** @description `unauthorized` — The request carries no valid credentials. */
|
|
19492
|
+
401: {
|
|
19493
|
+
headers: {
|
|
19494
|
+
[name: string]: unknown;
|
|
19495
|
+
};
|
|
19496
|
+
content: {
|
|
19497
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19498
|
+
/** @enum {string} */
|
|
19499
|
+
error_code?: "unauthorized";
|
|
19500
|
+
};
|
|
19501
|
+
};
|
|
19502
|
+
};
|
|
19503
|
+
/**
|
|
19504
|
+
* @description `forbidden` — The credentials are valid but do not allow this operation.
|
|
19505
|
+
*
|
|
19506
|
+
* `insufficient_scope` — The token lacks a scope this operation requires. `message` names it.
|
|
19507
|
+
*
|
|
19508
|
+
* `user_suspended` — The user is suspended and cannot sign in or be modified.
|
|
19509
|
+
*/
|
|
19510
|
+
403: {
|
|
19511
|
+
headers: {
|
|
19512
|
+
[name: string]: unknown;
|
|
19513
|
+
};
|
|
19514
|
+
content: {
|
|
19515
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19516
|
+
/** @enum {string} */
|
|
19517
|
+
error_code?: "forbidden" | "insufficient_scope" | "user_suspended";
|
|
19518
|
+
};
|
|
19519
|
+
};
|
|
19520
|
+
};
|
|
19521
|
+
/**
|
|
19522
|
+
* @description `not_found` — The resource does not exist in this account.
|
|
19523
|
+
*
|
|
19524
|
+
* `account_not_found` — No Auth Account matches the request (domain, header or token).
|
|
19525
|
+
*/
|
|
19526
|
+
404: {
|
|
19527
|
+
headers: {
|
|
19528
|
+
[name: string]: unknown;
|
|
19529
|
+
};
|
|
19530
|
+
content: {
|
|
19531
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19532
|
+
/** @enum {string} */
|
|
19533
|
+
error_code?: "not_found" | "account_not_found";
|
|
19534
|
+
};
|
|
19535
|
+
};
|
|
19536
|
+
};
|
|
19537
|
+
/** @description `too_many_requests` — Rate limit exceeded. Honour the `Retry-After` header. */
|
|
19538
|
+
429: {
|
|
19539
|
+
headers: {
|
|
19540
|
+
[name: string]: unknown;
|
|
19541
|
+
};
|
|
19542
|
+
content: {
|
|
19543
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19544
|
+
/** @enum {string} */
|
|
19545
|
+
error_code?: "too_many_requests";
|
|
19546
|
+
};
|
|
19547
|
+
};
|
|
19548
|
+
};
|
|
19549
|
+
/** @description `internal_error` — Unexpected server error. Retry later; the request id is logged. */
|
|
19550
|
+
500: {
|
|
19551
|
+
headers: {
|
|
19552
|
+
[name: string]: unknown;
|
|
19553
|
+
};
|
|
19554
|
+
content: {
|
|
19555
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19556
|
+
/** @enum {string} */
|
|
19557
|
+
error_code?: "internal_error";
|
|
19558
|
+
};
|
|
19559
|
+
};
|
|
19560
|
+
};
|
|
19561
|
+
};
|
|
19562
|
+
};
|
|
19563
|
+
"organization/addAdmin": {
|
|
19564
|
+
parameters: {
|
|
19565
|
+
query?: never;
|
|
19566
|
+
header?: never;
|
|
19567
|
+
path: {
|
|
19568
|
+
organization_id: string;
|
|
19569
|
+
};
|
|
19570
|
+
cookie?: never;
|
|
19571
|
+
};
|
|
19572
|
+
requestBody: {
|
|
19573
|
+
content: {
|
|
19574
|
+
"application/json": {
|
|
19575
|
+
/**
|
|
19576
|
+
* @description Id of a user of this tenant.
|
|
19577
|
+
* @example user_6555fd29a1b2c3d4e5f60718
|
|
19578
|
+
*/
|
|
19579
|
+
user_id: string;
|
|
19580
|
+
};
|
|
19581
|
+
};
|
|
19582
|
+
};
|
|
19583
|
+
responses: {
|
|
19584
|
+
/** @description Organization */
|
|
19585
|
+
200: {
|
|
19586
|
+
headers: {
|
|
19587
|
+
[name: string]: unknown;
|
|
19588
|
+
};
|
|
19589
|
+
content: {
|
|
19590
|
+
"application/json": {
|
|
19591
|
+
/** @description Organization ID */
|
|
19592
|
+
id: string;
|
|
19593
|
+
/**
|
|
19594
|
+
* @description Human-readable name of the organization.
|
|
19595
|
+
* @example Acme Inc.
|
|
19596
|
+
*/
|
|
19597
|
+
name: string;
|
|
19598
|
+
/**
|
|
19599
|
+
* @description URL-safe identifier derived from `name`. Unique within the tenant.
|
|
19600
|
+
* @example acme-inc
|
|
19601
|
+
*/
|
|
19602
|
+
slug: string;
|
|
19603
|
+
/** @description Optional free-form description. */
|
|
19604
|
+
description: string | null;
|
|
19605
|
+
/** @description Optional URL of the organization logo. */
|
|
19606
|
+
logo_url: string | null;
|
|
19607
|
+
/** @description Ids of the users who manage the organization: its teams and its identity settings. Being an admin does not grant access to any team; team access is team membership. */
|
|
19608
|
+
admins: string[];
|
|
19609
|
+
/** @description Object is related with this account */
|
|
19610
|
+
account: string;
|
|
19611
|
+
/**
|
|
19612
|
+
* @description OrganizationMetadata
|
|
19613
|
+
* @default {}
|
|
19614
|
+
*/
|
|
19615
|
+
metadata: {
|
|
19616
|
+
[key: string]: unknown;
|
|
19617
|
+
};
|
|
19618
|
+
/** @description Organization creation date */
|
|
19619
|
+
createdAt: string;
|
|
19620
|
+
/** @description Organization updated date */
|
|
19621
|
+
updatedAt?: string;
|
|
19622
|
+
};
|
|
19623
|
+
};
|
|
19624
|
+
};
|
|
19625
|
+
/**
|
|
19626
|
+
* @description `invalid_user` — The user does not exist in this account.
|
|
19627
|
+
*
|
|
19628
|
+
* `validation_error` — The body, query or path failed schema validation. `details.issues` lists each failing field.
|
|
19629
|
+
*/
|
|
19630
|
+
400: {
|
|
19631
|
+
headers: {
|
|
19632
|
+
[name: string]: unknown;
|
|
19633
|
+
};
|
|
19634
|
+
content: {
|
|
19635
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19636
|
+
/** @enum {string} */
|
|
19637
|
+
error_code?: "invalid_user" | "validation_error";
|
|
19638
|
+
};
|
|
19639
|
+
};
|
|
19640
|
+
};
|
|
19641
|
+
/** @description `unauthorized` — The request carries no valid credentials. */
|
|
19642
|
+
401: {
|
|
19643
|
+
headers: {
|
|
19644
|
+
[name: string]: unknown;
|
|
19645
|
+
};
|
|
19646
|
+
content: {
|
|
19647
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19648
|
+
/** @enum {string} */
|
|
19649
|
+
error_code?: "unauthorized";
|
|
19650
|
+
};
|
|
19651
|
+
};
|
|
19652
|
+
};
|
|
19653
|
+
/**
|
|
19654
|
+
* @description `forbidden` — The credentials are valid but do not allow this operation.
|
|
19655
|
+
*
|
|
19656
|
+
* `insufficient_scope` — The token lacks a scope this operation requires. `message` names it.
|
|
19657
|
+
*
|
|
19658
|
+
* `user_suspended` — The user is suspended and cannot sign in or be modified.
|
|
19659
|
+
*/
|
|
19660
|
+
403: {
|
|
19661
|
+
headers: {
|
|
19662
|
+
[name: string]: unknown;
|
|
19663
|
+
};
|
|
19664
|
+
content: {
|
|
19665
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19666
|
+
/** @enum {string} */
|
|
19667
|
+
error_code?: "forbidden" | "insufficient_scope" | "user_suspended";
|
|
19668
|
+
};
|
|
19669
|
+
};
|
|
19670
|
+
};
|
|
19671
|
+
/**
|
|
19672
|
+
* @description `organization_not_found` — No organization with that id in this account.
|
|
19673
|
+
*
|
|
19674
|
+
* `account_not_found` — No Auth Account matches the request (domain, header or token).
|
|
19675
|
+
*/
|
|
19676
|
+
404: {
|
|
19677
|
+
headers: {
|
|
19678
|
+
[name: string]: unknown;
|
|
19679
|
+
};
|
|
19680
|
+
content: {
|
|
19681
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19682
|
+
/** @enum {string} */
|
|
19683
|
+
error_code?: "organization_not_found" | "account_not_found";
|
|
19684
|
+
};
|
|
19685
|
+
};
|
|
19686
|
+
};
|
|
19687
|
+
/** @description `too_many_requests` — Rate limit exceeded. Honour the `Retry-After` header. */
|
|
19688
|
+
429: {
|
|
19689
|
+
headers: {
|
|
19690
|
+
[name: string]: unknown;
|
|
19691
|
+
};
|
|
19692
|
+
content: {
|
|
19693
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19694
|
+
/** @enum {string} */
|
|
19695
|
+
error_code?: "too_many_requests";
|
|
19696
|
+
};
|
|
19697
|
+
};
|
|
19698
|
+
};
|
|
19699
|
+
/** @description `internal_error` — Unexpected server error. Retry later; the request id is logged. */
|
|
19700
|
+
500: {
|
|
19701
|
+
headers: {
|
|
19702
|
+
[name: string]: unknown;
|
|
19703
|
+
};
|
|
19704
|
+
content: {
|
|
19705
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19706
|
+
/** @enum {string} */
|
|
19707
|
+
error_code?: "internal_error";
|
|
19708
|
+
};
|
|
19709
|
+
};
|
|
19710
|
+
};
|
|
19711
|
+
};
|
|
19712
|
+
};
|
|
19713
|
+
"organization/removeAdmin": {
|
|
19714
|
+
parameters: {
|
|
19715
|
+
query?: never;
|
|
19716
|
+
header?: never;
|
|
19717
|
+
path: {
|
|
19718
|
+
organization_id: string;
|
|
19719
|
+
user_id: string;
|
|
19720
|
+
};
|
|
19721
|
+
cookie?: never;
|
|
19722
|
+
};
|
|
19723
|
+
requestBody?: never;
|
|
19724
|
+
responses: {
|
|
19725
|
+
/** @description Organization */
|
|
19726
|
+
200: {
|
|
19727
|
+
headers: {
|
|
19728
|
+
[name: string]: unknown;
|
|
19729
|
+
};
|
|
19730
|
+
content: {
|
|
19731
|
+
"application/json": {
|
|
19732
|
+
/** @description Organization ID */
|
|
19733
|
+
id: string;
|
|
19734
|
+
/**
|
|
19735
|
+
* @description Human-readable name of the organization.
|
|
19736
|
+
* @example Acme Inc.
|
|
19737
|
+
*/
|
|
19738
|
+
name: string;
|
|
19739
|
+
/**
|
|
19740
|
+
* @description URL-safe identifier derived from `name`. Unique within the tenant.
|
|
19741
|
+
* @example acme-inc
|
|
19742
|
+
*/
|
|
19743
|
+
slug: string;
|
|
19744
|
+
/** @description Optional free-form description. */
|
|
19745
|
+
description: string | null;
|
|
19746
|
+
/** @description Optional URL of the organization logo. */
|
|
19747
|
+
logo_url: string | null;
|
|
19748
|
+
/** @description Ids of the users who manage the organization: its teams and its identity settings. Being an admin does not grant access to any team; team access is team membership. */
|
|
19749
|
+
admins: string[];
|
|
19750
|
+
/** @description Object is related with this account */
|
|
19751
|
+
account: string;
|
|
19752
|
+
/**
|
|
19753
|
+
* @description OrganizationMetadata
|
|
19754
|
+
* @default {}
|
|
19755
|
+
*/
|
|
19756
|
+
metadata: {
|
|
19757
|
+
[key: string]: unknown;
|
|
19758
|
+
};
|
|
19759
|
+
/** @description Organization creation date */
|
|
19760
|
+
createdAt: string;
|
|
19761
|
+
/** @description Organization updated date */
|
|
19762
|
+
updatedAt?: string;
|
|
19763
|
+
};
|
|
19764
|
+
};
|
|
19765
|
+
};
|
|
19766
|
+
/** @description `validation_error` — The body, query or path failed schema validation. `details.issues` lists each failing field. */
|
|
19767
|
+
400: {
|
|
19768
|
+
headers: {
|
|
19769
|
+
[name: string]: unknown;
|
|
19770
|
+
};
|
|
19771
|
+
content: {
|
|
19772
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19773
|
+
/** @enum {string} */
|
|
19774
|
+
error_code?: "validation_error";
|
|
19775
|
+
};
|
|
19776
|
+
};
|
|
19777
|
+
};
|
|
19778
|
+
/** @description `unauthorized` — The request carries no valid credentials. */
|
|
19779
|
+
401: {
|
|
19780
|
+
headers: {
|
|
19781
|
+
[name: string]: unknown;
|
|
19782
|
+
};
|
|
19783
|
+
content: {
|
|
19784
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19785
|
+
/** @enum {string} */
|
|
19786
|
+
error_code?: "unauthorized";
|
|
19787
|
+
};
|
|
19788
|
+
};
|
|
19789
|
+
};
|
|
19790
|
+
/**
|
|
19791
|
+
* @description `forbidden` — The credentials are valid but do not allow this operation.
|
|
19792
|
+
*
|
|
19793
|
+
* `insufficient_scope` — The token lacks a scope this operation requires. `message` names it.
|
|
19794
|
+
*
|
|
19795
|
+
* `user_suspended` — The user is suspended and cannot sign in or be modified.
|
|
19796
|
+
*/
|
|
19797
|
+
403: {
|
|
19798
|
+
headers: {
|
|
19799
|
+
[name: string]: unknown;
|
|
19800
|
+
};
|
|
19801
|
+
content: {
|
|
19802
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19803
|
+
/** @enum {string} */
|
|
19804
|
+
error_code?: "forbidden" | "insufficient_scope" | "user_suspended";
|
|
19805
|
+
};
|
|
19806
|
+
};
|
|
19807
|
+
};
|
|
19808
|
+
/**
|
|
19809
|
+
* @description `organization_not_found` — No organization with that id in this account.
|
|
19810
|
+
*
|
|
19811
|
+
* `not_an_organization_admin` — The user is not an admin of the organization.
|
|
19812
|
+
*
|
|
19813
|
+
* `account_not_found` — No Auth Account matches the request (domain, header or token).
|
|
19814
|
+
*/
|
|
19815
|
+
404: {
|
|
19816
|
+
headers: {
|
|
19817
|
+
[name: string]: unknown;
|
|
19818
|
+
};
|
|
19819
|
+
content: {
|
|
19820
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19821
|
+
/** @enum {string} */
|
|
19822
|
+
error_code?: "organization_not_found" | "not_an_organization_admin" | "account_not_found";
|
|
19823
|
+
};
|
|
19824
|
+
};
|
|
19825
|
+
};
|
|
19826
|
+
/** @description `last_organization_admin` — An organization keeps at least one admin. Add another admin before removing this one. */
|
|
19827
|
+
409: {
|
|
19828
|
+
headers: {
|
|
19829
|
+
[name: string]: unknown;
|
|
19830
|
+
};
|
|
19831
|
+
content: {
|
|
19832
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19833
|
+
/** @enum {string} */
|
|
19834
|
+
error_code?: "last_organization_admin";
|
|
19835
|
+
};
|
|
19836
|
+
};
|
|
19837
|
+
};
|
|
19838
|
+
/** @description `too_many_requests` — Rate limit exceeded. Honour the `Retry-After` header. */
|
|
19839
|
+
429: {
|
|
19840
|
+
headers: {
|
|
19841
|
+
[name: string]: unknown;
|
|
19842
|
+
};
|
|
19843
|
+
content: {
|
|
19844
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19845
|
+
/** @enum {string} */
|
|
19846
|
+
error_code?: "too_many_requests";
|
|
19847
|
+
};
|
|
19848
|
+
};
|
|
19849
|
+
};
|
|
19850
|
+
/** @description `internal_error` — Unexpected server error. Retry later; the request id is logged. */
|
|
19851
|
+
500: {
|
|
19852
|
+
headers: {
|
|
19853
|
+
[name: string]: unknown;
|
|
19854
|
+
};
|
|
19855
|
+
content: {
|
|
19856
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19857
|
+
/** @enum {string} */
|
|
19858
|
+
error_code?: "internal_error";
|
|
19859
|
+
};
|
|
19860
|
+
};
|
|
19861
|
+
};
|
|
19862
|
+
};
|
|
19863
|
+
};
|
|
19864
|
+
"teammember/list": {
|
|
19865
|
+
parameters: {
|
|
19866
|
+
query?: {
|
|
19867
|
+
/** @description Number of items per page (max 200) */
|
|
19868
|
+
pageSize?: number;
|
|
19869
|
+
/** @description Cursor for next page */
|
|
19870
|
+
cursor?: string;
|
|
19871
|
+
/** @description Cursor returned by the previous page */
|
|
19872
|
+
next?: string;
|
|
19873
|
+
/** @description Exact match on `user`. Equivalent to `?query=user:<value>`. */
|
|
19874
|
+
user?: string;
|
|
19875
|
+
/** @description Exact match on `team`. Equivalent to `?query=team:<value>`. */
|
|
19876
|
+
team?: string;
|
|
19877
|
+
/** @description Filter using a FaableQL query */
|
|
19878
|
+
query?: string;
|
|
19879
|
+
/** @description Expand id-only fields in the response. Pass one path per entry (e.g. `?expand=user`). */
|
|
19880
|
+
expand?: ("user" | "team" | "roles")[];
|
|
19881
|
+
};
|
|
19882
|
+
header?: never;
|
|
19883
|
+
path?: never;
|
|
19884
|
+
cookie?: never;
|
|
19885
|
+
};
|
|
19886
|
+
requestBody?: never;
|
|
19887
|
+
responses: {
|
|
19888
|
+
/** @description Default Response */
|
|
19889
|
+
200: {
|
|
19890
|
+
headers: {
|
|
19891
|
+
[name: string]: unknown;
|
|
19892
|
+
};
|
|
19893
|
+
content: {
|
|
19894
|
+
"application/json": {
|
|
19895
|
+
next: string | null;
|
|
19896
|
+
results: components["schemas"]["TeamMember"][];
|
|
19897
|
+
};
|
|
19898
|
+
};
|
|
19899
|
+
};
|
|
19900
|
+
/**
|
|
19901
|
+
* @description `invalid_query` — The `?query=` FaableQL expression could not be parsed.
|
|
19902
|
+
*
|
|
19903
|
+
* `invalid_expand` — An `?expand=` path is not allowed on this resource.
|
|
19904
|
+
*
|
|
19905
|
+
* `search_not_supported` — This resource does not support `?search=`.
|
|
19906
|
+
*
|
|
19907
|
+
* `validation_error` — The body, query or path failed schema validation. `details.issues` lists each failing field.
|
|
19908
|
+
*/
|
|
19909
|
+
400: {
|
|
19910
|
+
headers: {
|
|
19911
|
+
[name: string]: unknown;
|
|
19912
|
+
};
|
|
19913
|
+
content: {
|
|
19914
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19915
|
+
/** @enum {string} */
|
|
19916
|
+
error_code?: "invalid_query" | "invalid_expand" | "search_not_supported" | "validation_error";
|
|
19917
|
+
};
|
|
19918
|
+
};
|
|
19919
|
+
};
|
|
19920
|
+
/** @description `unauthorized` — The request carries no valid credentials. */
|
|
19921
|
+
401: {
|
|
19922
|
+
headers: {
|
|
19923
|
+
[name: string]: unknown;
|
|
19924
|
+
};
|
|
19925
|
+
content: {
|
|
19926
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19927
|
+
/** @enum {string} */
|
|
19928
|
+
error_code?: "unauthorized";
|
|
19929
|
+
};
|
|
19930
|
+
};
|
|
19931
|
+
};
|
|
19932
|
+
/**
|
|
19933
|
+
* @description `forbidden` — The credentials are valid but do not allow this operation.
|
|
19934
|
+
*
|
|
19935
|
+
* `insufficient_scope` — The token lacks a scope this operation requires. `message` names it.
|
|
19936
|
+
*
|
|
19937
|
+
* `user_suspended` — The user is suspended and cannot sign in or be modified.
|
|
19938
|
+
*/
|
|
19939
|
+
403: {
|
|
19940
|
+
headers: {
|
|
19941
|
+
[name: string]: unknown;
|
|
19942
|
+
};
|
|
19943
|
+
content: {
|
|
19944
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19945
|
+
/** @enum {string} */
|
|
19946
|
+
error_code?: "forbidden" | "insufficient_scope" | "user_suspended";
|
|
19947
|
+
};
|
|
19948
|
+
};
|
|
19949
|
+
};
|
|
19950
|
+
/** @description `account_not_found` — No Auth Account matches the request (domain, header or token). */
|
|
19951
|
+
404: {
|
|
19952
|
+
headers: {
|
|
19953
|
+
[name: string]: unknown;
|
|
19954
|
+
};
|
|
19955
|
+
content: {
|
|
19956
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19957
|
+
/** @enum {string} */
|
|
19958
|
+
error_code?: "account_not_found";
|
|
19959
|
+
};
|
|
19960
|
+
};
|
|
19961
|
+
};
|
|
19962
|
+
/** @description `too_many_requests` — Rate limit exceeded. Honour the `Retry-After` header. */
|
|
19963
|
+
429: {
|
|
19964
|
+
headers: {
|
|
19965
|
+
[name: string]: unknown;
|
|
19966
|
+
};
|
|
19967
|
+
content: {
|
|
19968
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19969
|
+
/** @enum {string} */
|
|
19970
|
+
error_code?: "too_many_requests";
|
|
19971
|
+
};
|
|
19972
|
+
};
|
|
19973
|
+
};
|
|
19974
|
+
/** @description `internal_error` — Unexpected server error. Retry later; the request id is logged. */
|
|
19975
|
+
500: {
|
|
19976
|
+
headers: {
|
|
19977
|
+
[name: string]: unknown;
|
|
19978
|
+
};
|
|
19979
|
+
content: {
|
|
19980
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
19981
|
+
/** @enum {string} */
|
|
19982
|
+
error_code?: "internal_error";
|
|
19983
|
+
};
|
|
19984
|
+
};
|
|
19985
|
+
};
|
|
19986
|
+
};
|
|
19987
|
+
};
|
|
19988
|
+
"teammember/get": {
|
|
19989
|
+
parameters: {
|
|
19990
|
+
query?: {
|
|
19991
|
+
/** @description Expand id-only fields in the response. Pass one path per entry (e.g. `?expand=user`). */
|
|
19992
|
+
expand?: ("user" | "team" | "roles")[];
|
|
19993
|
+
};
|
|
19994
|
+
header?: never;
|
|
19995
|
+
path: {
|
|
19996
|
+
teammember_id: string;
|
|
19997
|
+
};
|
|
19998
|
+
cookie?: never;
|
|
19999
|
+
};
|
|
20000
|
+
requestBody?: never;
|
|
20001
|
+
responses: {
|
|
20002
|
+
/** @description TeamMember */
|
|
20003
|
+
200: {
|
|
20004
|
+
headers: {
|
|
20005
|
+
[name: string]: unknown;
|
|
20006
|
+
};
|
|
20007
|
+
content: {
|
|
20008
|
+
"application/json": {
|
|
20009
|
+
/** @description TeamMember ID */
|
|
20010
|
+
id: string;
|
|
20011
|
+
/** @description User that belongs to the team. Returned as an id by default; pass `?expand=user` to inline the full User object. */
|
|
20012
|
+
user: components["schemas"]["User"] | string | unknown;
|
|
20013
|
+
/** @description Team the user belongs to. Returned as an id by default; pass `?expand=team` to inline the full Team object. */
|
|
20014
|
+
team: components["schemas"]["Team"] | string | unknown;
|
|
20015
|
+
/** @description Roles granted to the user *within this team*. Distinct from account-wide RoleMember grants — these only apply in the scope of the team. Each entry is an id by default; pass `?expand=roles` to inline. */
|
|
20016
|
+
roles: (components["schemas"]["Role"] | string | unknown)[];
|
|
20017
|
+
/** @description Object is related with this account */
|
|
20018
|
+
account: string;
|
|
20019
|
+
/**
|
|
20020
|
+
* @description TeamMemberMetadata
|
|
20021
|
+
* @default {}
|
|
20022
|
+
*/
|
|
20023
|
+
metadata: {
|
|
20024
|
+
[key: string]: unknown;
|
|
20025
|
+
};
|
|
20026
|
+
/** @description TeamMember creation date */
|
|
20027
|
+
createdAt: string;
|
|
20028
|
+
/** @description TeamMember updated date */
|
|
20029
|
+
updatedAt?: string;
|
|
18617
20030
|
};
|
|
18618
20031
|
};
|
|
18619
20032
|
};
|
|
@@ -24211,8 +25624,11 @@ export interface operations {
|
|
|
24211
25624
|
* - `team.invite.created`: An invitation to join a team was created.
|
|
24212
25625
|
* - `team.invite.revoked`: A pending team invitation was revoked.
|
|
24213
25626
|
* - `team.invite.accepted`: A team invitation was accepted.
|
|
25627
|
+
* - `organization.created`: An organization was created.
|
|
25628
|
+
* - `organization.updated`: An organization was updated (name, settings or admins).
|
|
25629
|
+
* - `organization.deleted`: An organization was deleted. Its teams are no longer in any organization; no `team.updated` is sent for them.
|
|
24214
25630
|
*
|
|
24215
|
-
* `team.*` payloads are notices, not state: they carry ids (`team_id`, `user_id`, `roles`, `invite_id`...) and the receiver reads whatever else it needs. Use the delivery id (`x-faable-delivery`) to deduplicate: retries keep it.
|
|
25631
|
+
* `team.*` and `organization.*` payloads are notices, not state: they carry ids (`team_id`, `organization_id`, `user_id`, `roles`, `invite_id`...) and the receiver reads whatever else it needs. Use the delivery id (`x-faable-delivery`) to deduplicate: retries keep it.
|
|
24216
25632
|
*/
|
|
24217
25633
|
events: string[];
|
|
24218
25634
|
/** @enum {string} */
|
|
@@ -24286,8 +25702,11 @@ export interface operations {
|
|
|
24286
25702
|
* - `team.invite.created`: An invitation to join a team was created.
|
|
24287
25703
|
* - `team.invite.revoked`: A pending team invitation was revoked.
|
|
24288
25704
|
* - `team.invite.accepted`: A team invitation was accepted.
|
|
25705
|
+
* - `organization.created`: An organization was created.
|
|
25706
|
+
* - `organization.updated`: An organization was updated (name, settings or admins).
|
|
25707
|
+
* - `organization.deleted`: An organization was deleted. Its teams are no longer in any organization; no `team.updated` is sent for them.
|
|
24289
25708
|
*
|
|
24290
|
-
* `team.*` payloads are notices, not state: they carry ids (`team_id`, `user_id`, `roles`, `invite_id`...) and the receiver reads whatever else it needs. Use the delivery id (`x-faable-delivery`) to deduplicate: retries keep it.
|
|
25709
|
+
* `team.*` and `organization.*` payloads are notices, not state: they carry ids (`team_id`, `organization_id`, `user_id`, `roles`, `invite_id`...) and the receiver reads whatever else it needs. Use the delivery id (`x-faable-delivery`) to deduplicate: retries keep it.
|
|
24291
25710
|
*/
|
|
24292
25711
|
events: string[];
|
|
24293
25712
|
/** @enum {string} */
|
|
@@ -24477,8 +25896,11 @@ export interface operations {
|
|
|
24477
25896
|
* - `team.invite.created`: An invitation to join a team was created.
|
|
24478
25897
|
* - `team.invite.revoked`: A pending team invitation was revoked.
|
|
24479
25898
|
* - `team.invite.accepted`: A team invitation was accepted.
|
|
25899
|
+
* - `organization.created`: An organization was created.
|
|
25900
|
+
* - `organization.updated`: An organization was updated (name, settings or admins).
|
|
25901
|
+
* - `organization.deleted`: An organization was deleted. Its teams are no longer in any organization; no `team.updated` is sent for them.
|
|
24480
25902
|
*
|
|
24481
|
-
* `team.*` payloads are notices, not state: they carry ids (`team_id`, `user_id`, `roles`, `invite_id`...) and the receiver reads whatever else it needs. Use the delivery id (`x-faable-delivery`) to deduplicate: retries keep it.
|
|
25903
|
+
* `team.*` and `organization.*` payloads are notices, not state: they carry ids (`team_id`, `organization_id`, `user_id`, `roles`, `invite_id`...) and the receiver reads whatever else it needs. Use the delivery id (`x-faable-delivery`) to deduplicate: retries keep it.
|
|
24482
25904
|
*/
|
|
24483
25905
|
events: string[];
|
|
24484
25906
|
/** @enum {string} */
|
|
@@ -24656,8 +26078,11 @@ export interface operations {
|
|
|
24656
26078
|
* - `team.invite.created`: An invitation to join a team was created.
|
|
24657
26079
|
* - `team.invite.revoked`: A pending team invitation was revoked.
|
|
24658
26080
|
* - `team.invite.accepted`: A team invitation was accepted.
|
|
26081
|
+
* - `organization.created`: An organization was created.
|
|
26082
|
+
* - `organization.updated`: An organization was updated (name, settings or admins).
|
|
26083
|
+
* - `organization.deleted`: An organization was deleted. Its teams are no longer in any organization; no `team.updated` is sent for them.
|
|
24659
26084
|
*
|
|
24660
|
-
* `team.*` payloads are notices, not state: they carry ids (`team_id`, `user_id`, `roles`, `invite_id`...) and the receiver reads whatever else it needs. Use the delivery id (`x-faable-delivery`) to deduplicate: retries keep it.
|
|
26085
|
+
* `team.*` and `organization.*` payloads are notices, not state: they carry ids (`team_id`, `organization_id`, `user_id`, `roles`, `invite_id`...) and the receiver reads whatever else it needs. Use the delivery id (`x-faable-delivery`) to deduplicate: retries keep it.
|
|
24661
26086
|
*/
|
|
24662
26087
|
events?: string[];
|
|
24663
26088
|
/** @enum {string} */
|
|
@@ -24731,8 +26156,11 @@ export interface operations {
|
|
|
24731
26156
|
* - `team.invite.created`: An invitation to join a team was created.
|
|
24732
26157
|
* - `team.invite.revoked`: A pending team invitation was revoked.
|
|
24733
26158
|
* - `team.invite.accepted`: A team invitation was accepted.
|
|
26159
|
+
* - `organization.created`: An organization was created.
|
|
26160
|
+
* - `organization.updated`: An organization was updated (name, settings or admins).
|
|
26161
|
+
* - `organization.deleted`: An organization was deleted. Its teams are no longer in any organization; no `team.updated` is sent for them.
|
|
24734
26162
|
*
|
|
24735
|
-
* `team.*` payloads are notices, not state: they carry ids (`team_id`, `user_id`, `roles`, `invite_id`...) and the receiver reads whatever else it needs. Use the delivery id (`x-faable-delivery`) to deduplicate: retries keep it.
|
|
26163
|
+
* `team.*` and `organization.*` payloads are notices, not state: they carry ids (`team_id`, `organization_id`, `user_id`, `roles`, `invite_id`...) and the receiver reads whatever else it needs. Use the delivery id (`x-faable-delivery`) to deduplicate: retries keep it.
|
|
24736
26164
|
*/
|
|
24737
26165
|
events: string[];
|
|
24738
26166
|
/** @enum {string} */
|
|
@@ -24928,8 +26356,11 @@ export interface operations {
|
|
|
24928
26356
|
* - `team.invite.created`: An invitation to join a team was created.
|
|
24929
26357
|
* - `team.invite.revoked`: A pending team invitation was revoked.
|
|
24930
26358
|
* - `team.invite.accepted`: A team invitation was accepted.
|
|
26359
|
+
* - `organization.created`: An organization was created.
|
|
26360
|
+
* - `organization.updated`: An organization was updated (name, settings or admins).
|
|
26361
|
+
* - `organization.deleted`: An organization was deleted. Its teams are no longer in any organization; no `team.updated` is sent for them.
|
|
24931
26362
|
*
|
|
24932
|
-
* `team.*` payloads are notices, not state: they carry ids (`team_id`, `user_id`, `roles`, `invite_id`...) and the receiver reads whatever else it needs. Use the delivery id (`x-faable-delivery`) to deduplicate: retries keep it.
|
|
26363
|
+
* `team.*` and `organization.*` payloads are notices, not state: they carry ids (`team_id`, `organization_id`, `user_id`, `roles`, `invite_id`...) and the receiver reads whatever else it needs. Use the delivery id (`x-faable-delivery`) to deduplicate: retries keep it.
|
|
24933
26364
|
*/
|
|
24934
26365
|
events: string[];
|
|
24935
26366
|
/** @enum {string} */
|
|
@@ -29848,6 +31279,18 @@ export interface operations {
|
|
|
29848
31279
|
};
|
|
29849
31280
|
};
|
|
29850
31281
|
};
|
|
31282
|
+
/** @description `registration_disabled` — Dynamic client registration is turned off for this tenant. Create the client from the dashboard or the Management API, or turn on `dynamic_client_registration_enabled`. */
|
|
31283
|
+
403: {
|
|
31284
|
+
headers: {
|
|
31285
|
+
[name: string]: unknown;
|
|
31286
|
+
};
|
|
31287
|
+
content: {
|
|
31288
|
+
"application/json": components["schemas"]["ErrorResponse"] & {
|
|
31289
|
+
/** @enum {string} */
|
|
31290
|
+
error_code?: "registration_disabled";
|
|
31291
|
+
};
|
|
31292
|
+
};
|
|
31293
|
+
};
|
|
29851
31294
|
/** @description `account_not_found` — No Auth Account matches the request (domain, header or token). */
|
|
29852
31295
|
404: {
|
|
29853
31296
|
headers: {
|