@bodhiapp/ts-client 0.1.32 → 0.1.34
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/openapi-typescript/openapi-schema-oai.d.ts +0 -437
- package/dist/openapi-typescript/openapi-schema-oai.ts +0 -437
- package/dist/openapi-typescript/openapi-schema.d.ts +1151 -193
- package/dist/openapi-typescript/openapi-schema.ts +1151 -193
- package/dist/types/types.gen.d.ts +739 -188
- package/dist/types/types.gen.ts +789 -177
- package/dist/types-oai/types.gen.d.ts +0 -187
- package/dist/types-oai/types.gen.ts +0 -211
- package/package.json +1 -1
|
@@ -24,6 +24,26 @@ export interface paths {
|
|
|
24
24
|
patch?: never;
|
|
25
25
|
trace?: never;
|
|
26
26
|
};
|
|
27
|
+
"/bodhi/v1/access-requests/apps": {
|
|
28
|
+
parameters: {
|
|
29
|
+
query?: never;
|
|
30
|
+
header?: never;
|
|
31
|
+
path?: never;
|
|
32
|
+
cookie?: never;
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* List Issued App Tokens
|
|
36
|
+
* @description List the caller's approved app access grants with their effective resource access. Requires session auth.
|
|
37
|
+
*/
|
|
38
|
+
get: operations["listAppAccess"];
|
|
39
|
+
put?: never;
|
|
40
|
+
post?: never;
|
|
41
|
+
delete?: never;
|
|
42
|
+
options?: never;
|
|
43
|
+
head?: never;
|
|
44
|
+
patch?: never;
|
|
45
|
+
trace?: never;
|
|
46
|
+
};
|
|
27
47
|
"/bodhi/v1/access-requests/pending": {
|
|
28
48
|
parameters: {
|
|
29
49
|
query?: never;
|
|
@@ -128,6 +148,26 @@ export interface paths {
|
|
|
128
148
|
patch?: never;
|
|
129
149
|
trace?: never;
|
|
130
150
|
};
|
|
151
|
+
"/bodhi/v1/access-requests/{id}/revoke": {
|
|
152
|
+
parameters: {
|
|
153
|
+
query?: never;
|
|
154
|
+
header?: never;
|
|
155
|
+
path?: never;
|
|
156
|
+
cookie?: never;
|
|
157
|
+
};
|
|
158
|
+
get?: never;
|
|
159
|
+
put?: never;
|
|
160
|
+
/**
|
|
161
|
+
* Revoke App Token
|
|
162
|
+
* @description Revoke a previously-approved app grant; the app token stops working. Requires session auth.
|
|
163
|
+
*/
|
|
164
|
+
post: operations["revokeAppAccess"];
|
|
165
|
+
delete?: never;
|
|
166
|
+
options?: never;
|
|
167
|
+
head?: never;
|
|
168
|
+
patch?: never;
|
|
169
|
+
trace?: never;
|
|
170
|
+
};
|
|
131
171
|
"/bodhi/v1/apps/access-requests/{id}": {
|
|
132
172
|
parameters: {
|
|
133
173
|
query?: never;
|
|
@@ -563,7 +603,7 @@ export interface paths {
|
|
|
563
603
|
};
|
|
564
604
|
/**
|
|
565
605
|
* List All Model Aliases
|
|
566
|
-
* @description Retrieves paginated list of all configured model aliases including user-defined aliases, model aliases, and API provider aliases with filtering and sorting
|
|
606
|
+
* @description Retrieves paginated list of all configured model aliases including user-defined aliases, model aliases, and API provider aliases with server-side facet filtering (type, api_format, size range, capability) and sorting. Requires any authenticated user (User level permissions or higher).
|
|
567
607
|
*/
|
|
568
608
|
get: operations["listAllModels"];
|
|
569
609
|
put?: never;
|
|
@@ -803,6 +843,46 @@ export interface paths {
|
|
|
803
843
|
patch?: never;
|
|
804
844
|
trace?: never;
|
|
805
845
|
};
|
|
846
|
+
"/bodhi/v1/models/files/pull/{id}/archive": {
|
|
847
|
+
parameters: {
|
|
848
|
+
query?: never;
|
|
849
|
+
header?: never;
|
|
850
|
+
path?: never;
|
|
851
|
+
cookie?: never;
|
|
852
|
+
};
|
|
853
|
+
get?: never;
|
|
854
|
+
put?: never;
|
|
855
|
+
/**
|
|
856
|
+
* Archive Download Request
|
|
857
|
+
* @description Archives a completed, failed, or queued download request so it no longer appears in the downloads list or the list API response. Actively-downloading requests cannot be archived.
|
|
858
|
+
*/
|
|
859
|
+
post: operations["archiveDownload"];
|
|
860
|
+
delete?: never;
|
|
861
|
+
options?: never;
|
|
862
|
+
head?: never;
|
|
863
|
+
patch?: never;
|
|
864
|
+
trace?: never;
|
|
865
|
+
};
|
|
866
|
+
"/bodhi/v1/models/files/pull/{id}/retry": {
|
|
867
|
+
parameters: {
|
|
868
|
+
query?: never;
|
|
869
|
+
header?: never;
|
|
870
|
+
path?: never;
|
|
871
|
+
cookie?: never;
|
|
872
|
+
};
|
|
873
|
+
get?: never;
|
|
874
|
+
put?: never;
|
|
875
|
+
/**
|
|
876
|
+
* Retry Failed Download Request
|
|
877
|
+
* @description Resets a failed download request to pending and re-runs it. The download resumes from the partially-downloaded file when present. Only failed requests can be retried.
|
|
878
|
+
*/
|
|
879
|
+
post: operations["retryDownload"];
|
|
880
|
+
delete?: never;
|
|
881
|
+
options?: never;
|
|
882
|
+
head?: never;
|
|
883
|
+
patch?: never;
|
|
884
|
+
trace?: never;
|
|
885
|
+
};
|
|
806
886
|
"/bodhi/v1/models/refresh": {
|
|
807
887
|
parameters: {
|
|
808
888
|
query?: never;
|
|
@@ -829,6 +909,45 @@ export interface paths {
|
|
|
829
909
|
patch?: never;
|
|
830
910
|
trace?: never;
|
|
831
911
|
};
|
|
912
|
+
"/bodhi/v1/models/router": {
|
|
913
|
+
parameters: {
|
|
914
|
+
query?: never;
|
|
915
|
+
header?: never;
|
|
916
|
+
path?: never;
|
|
917
|
+
cookie?: never;
|
|
918
|
+
};
|
|
919
|
+
get?: never;
|
|
920
|
+
put?: never;
|
|
921
|
+
/** Create a new model-router configuration */
|
|
922
|
+
post: operations["createModelRouter"];
|
|
923
|
+
delete?: never;
|
|
924
|
+
options?: never;
|
|
925
|
+
head?: never;
|
|
926
|
+
patch?: never;
|
|
927
|
+
trace?: never;
|
|
928
|
+
};
|
|
929
|
+
"/bodhi/v1/models/router/{id}": {
|
|
930
|
+
parameters: {
|
|
931
|
+
query?: never;
|
|
932
|
+
header?: never;
|
|
933
|
+
path?: never;
|
|
934
|
+
cookie?: never;
|
|
935
|
+
};
|
|
936
|
+
/**
|
|
937
|
+
* Get Model Router Configuration
|
|
938
|
+
* @description Retrieves the configuration for a specific model-router (composite) alias by ID.
|
|
939
|
+
*/
|
|
940
|
+
get: operations["getModelRouter"];
|
|
941
|
+
/** Update an existing model-router configuration */
|
|
942
|
+
put: operations["updateModelRouter"];
|
|
943
|
+
post?: never;
|
|
944
|
+
/** Delete a model-router configuration */
|
|
945
|
+
delete: operations["deleteModelRouter"];
|
|
946
|
+
options?: never;
|
|
947
|
+
head?: never;
|
|
948
|
+
patch?: never;
|
|
949
|
+
trace?: never;
|
|
950
|
+
};
|
|
832
951
|
"/bodhi/v1/models/{id}": {
|
|
833
952
|
parameters: {
|
|
834
953
|
query?: never;
|
|
@@ -1027,7 +1146,13 @@ export interface paths {
|
|
|
1027
1146
|
*/
|
|
1028
1147
|
put: operations["updateApiToken"];
|
|
1029
1148
|
post?: never;
|
|
1030
|
-
|
|
1149
|
+
/**
|
|
1150
|
+
* Delete API Token
|
|
1151
|
+
* @description Permanently deletes an API token owned by the current user, immediately revoking it.
|
|
1152
|
+
*
|
|
1153
|
+
* **Security Note:** Session-only authentication required to prevent token-based privilege escalation.
|
|
1154
|
+
*/
|
|
1155
|
+
delete: operations["deleteApiToken"];
|
|
1031
1156
|
options?: never;
|
|
1032
1157
|
head?: never;
|
|
1033
1158
|
patch?: never;
|
|
@@ -1198,31 +1323,23 @@ export type webhooks = Record<string, never>;
|
|
|
1198
1323
|
export interface components {
|
|
1199
1324
|
schemas: {
|
|
1200
1325
|
AccessRequestActionResponse: {
|
|
1201
|
-
/** @description Updated status after action */
|
|
1202
1326
|
status: components["schemas"]["AppAccessRequestStatus"];
|
|
1203
|
-
/** @description Flow type of the access request */
|
|
1204
1327
|
flow_type: components["schemas"]["FlowType"];
|
|
1205
|
-
/** @description
|
|
1328
|
+
/** @description Present for redirect flow */
|
|
1206
1329
|
redirect_url?: string | null;
|
|
1207
1330
|
};
|
|
1208
1331
|
AccessRequestReviewResponse: {
|
|
1209
|
-
/** @description Access request ID */
|
|
1210
1332
|
id: string;
|
|
1211
|
-
/** @description App client ID */
|
|
1212
1333
|
app_client_id: string;
|
|
1213
|
-
/** @description
|
|
1334
|
+
/** @description From KC, if available */
|
|
1214
1335
|
app_name?: string | null;
|
|
1215
|
-
/** @description
|
|
1336
|
+
/** @description From KC, if available */
|
|
1216
1337
|
app_description?: string | null;
|
|
1217
|
-
/** @description
|
|
1338
|
+
/** @description One of: "redirect", "popup" */
|
|
1218
1339
|
flow_type: components["schemas"]["FlowType"];
|
|
1219
|
-
/** @description Current status */
|
|
1220
1340
|
status: components["schemas"]["AppAccessRequestStatus"];
|
|
1221
|
-
/** @description Role requested by the app */
|
|
1222
1341
|
requested_role: string;
|
|
1223
|
-
/** @description Resources requested */
|
|
1224
1342
|
requested: components["schemas"]["RequestedResources"];
|
|
1225
|
-
/** @description MCP server information with user instances */
|
|
1226
1343
|
mcps_info?: components["schemas"]["McpServerReviewInfo"][];
|
|
1227
1344
|
};
|
|
1228
1345
|
/** @example {
|
|
@@ -1233,14 +1350,12 @@ export interface components {
|
|
|
1233
1350
|
* "status": "approved"
|
|
1234
1351
|
* } */
|
|
1235
1352
|
AccessRequestStatusResponse: {
|
|
1236
|
-
/** @description Access request ID */
|
|
1237
1353
|
id: string;
|
|
1238
|
-
/** @description
|
|
1354
|
+
/** @description One of: "draft", "approved", "denied", "failed" */
|
|
1239
1355
|
status: components["schemas"]["AppAccessRequestStatus"];
|
|
1240
|
-
/** @description Role requested by the app */
|
|
1241
1356
|
requested_role: components["schemas"]["UserScope"];
|
|
1242
1357
|
approved_role?: null | components["schemas"]["UserScope"];
|
|
1243
|
-
/** @description
|
|
1358
|
+
/** @description Present when user-approved with tools */
|
|
1244
1359
|
access_request_scope?: string | null;
|
|
1245
1360
|
};
|
|
1246
1361
|
/** @description Flat enum representing all types of model aliases
|
|
@@ -1254,10 +1369,54 @@ export interface components {
|
|
|
1254
1369
|
}) | (components["schemas"]["ApiAlias"] & {
|
|
1255
1370
|
/** @enum {string} */
|
|
1256
1371
|
source: "api";
|
|
1372
|
+
}) | (components["schemas"]["ModelRouterAlias"] & {
|
|
1373
|
+
/** @enum {string} */
|
|
1374
|
+
source: "model_router";
|
|
1257
1375
|
});
|
|
1376
|
+
/** @description Facet filter query parameters for the All-Models list (`GET /bodhi/v1/models`).
|
|
1377
|
+
*
|
|
1378
|
+
* All facets are server-side and applied before pagination so `total` and the page
|
|
1379
|
+
* reflect the filtered set. Multi-value facets accept a comma-separated list; an empty
|
|
1380
|
+
* or absent value means "no filter for this facet" (all rows pass). */
|
|
1381
|
+
AliasFilterParams: {
|
|
1382
|
+
/**
|
|
1383
|
+
* @description Alias type facet (comma-separated): `local_file`, `model_alias`, `api_model`, `fallback`.
|
|
1384
|
+
* @example local_file,model_alias
|
|
1385
|
+
*/
|
|
1386
|
+
type?: string | null;
|
|
1387
|
+
/**
|
|
1388
|
+
* @description API-format facet (comma-separated), API rows only: `openai`, `responses`, `anthropic`,
|
|
1389
|
+
* `gemini`, `liberty`. `anthropic` matches both anthropic and anthropic_oauth aliases.
|
|
1390
|
+
* @example openai,anthropic
|
|
1391
|
+
*/
|
|
1392
|
+
api_format?: string | null;
|
|
1393
|
+
/**
|
|
1394
|
+
* Format: int64
|
|
1395
|
+
* @description Minimum local-file size in bytes (inclusive). Applies to local rows with a known size;
|
|
1396
|
+
* rows without a size (API/router) are not filtered out by size.
|
|
1397
|
+
*/
|
|
1398
|
+
size_min?: number | null;
|
|
1399
|
+
/**
|
|
1400
|
+
* Format: int64
|
|
1401
|
+
* @description Maximum local-file size in bytes (inclusive). See `size_min`.
|
|
1402
|
+
*/
|
|
1403
|
+
size_max?: number | null;
|
|
1404
|
+
/**
|
|
1405
|
+
* @description Capability facet (comma-separated), local rows only: `vision`, `tool_use`, `reasoning`.
|
|
1406
|
+
* A row passes only if it has metadata with every requested capability set true.
|
|
1407
|
+
* @example vision,tool_use
|
|
1408
|
+
*/
|
|
1409
|
+
capability?: string | null;
|
|
1410
|
+
/**
|
|
1411
|
+
* @description Free-text search (case-insensitive substring) over a row's identifying fields — alias/name,
|
|
1412
|
+
* repo, filename for local rows; id, name, base_url for API rows; alias for routers.
|
|
1413
|
+
* @example llama
|
|
1414
|
+
*/
|
|
1415
|
+
search?: string | null;
|
|
1416
|
+
};
|
|
1258
1417
|
/** @description Response envelope for model aliases - hides internal implementation details
|
|
1259
1418
|
* Uses untagged serialization - each variant has its own "source" field */
|
|
1260
|
-
AliasResponse: components["schemas"]["UserAliasResponse"] | components["schemas"]["ModelAliasResponse"] | components["schemas"]["ApiAliasResponse"];
|
|
1419
|
+
AliasResponse: components["schemas"]["ModelRouterResponse"] | components["schemas"]["UserAliasResponse"] | components["schemas"]["ModelAliasResponse"] | components["schemas"]["ApiAliasResponse"];
|
|
1261
1420
|
/** @description Mirrors Anthropic's `ModelInfo` schema — full model metadata returned by
|
|
1262
1421
|
* `GET /anthropic/v1/models` and stored alongside model IDs in `ApiAlias.models`.
|
|
1263
1422
|
*
|
|
@@ -1275,10 +1434,9 @@ export interface components {
|
|
|
1275
1434
|
max_input_tokens?: number | null;
|
|
1276
1435
|
/** Format: int64 */
|
|
1277
1436
|
max_tokens?: number | null;
|
|
1278
|
-
/** @description Always `"model"` — included for Anthropic API compatibility. */
|
|
1279
1437
|
type: string;
|
|
1280
1438
|
};
|
|
1281
|
-
/** @description
|
|
1439
|
+
/** @description Anthropic ModelCapabilities schema. */
|
|
1282
1440
|
AnthropicModelCapabilities: {
|
|
1283
1441
|
batch: components["schemas"]["CapabilitySupport"];
|
|
1284
1442
|
citations: components["schemas"]["CapabilitySupport"];
|
|
@@ -1292,6 +1450,7 @@ export interface components {
|
|
|
1292
1450
|
};
|
|
1293
1451
|
ApiAlias: {
|
|
1294
1452
|
id: string;
|
|
1453
|
+
name: string;
|
|
1295
1454
|
api_format: components["schemas"]["ApiFormat"];
|
|
1296
1455
|
base_url: string;
|
|
1297
1456
|
models: components["schemas"]["ApiModelVec"];
|
|
@@ -1308,6 +1467,7 @@ export interface components {
|
|
|
1308
1467
|
ApiAliasResponse: {
|
|
1309
1468
|
source: string;
|
|
1310
1469
|
id: string;
|
|
1470
|
+
name: string;
|
|
1311
1471
|
api_format: components["schemas"]["ApiFormat"];
|
|
1312
1472
|
base_url: string;
|
|
1313
1473
|
has_api_key: boolean;
|
|
@@ -1403,13 +1563,31 @@ export interface components {
|
|
|
1403
1563
|
/** @description DB-storable `Vec<ApiModel>` — stored as JSON binary in SeaORM columns. */
|
|
1404
1564
|
ApiModelVec: components["schemas"]["ApiModel"][];
|
|
1405
1565
|
/** @enum {string} */
|
|
1406
|
-
AppAccessRequestStatus: "draft" | "approved" | "denied" | "failed" | "expired";
|
|
1566
|
+
AppAccessRequestStatus: "draft" | "approved" | "denied" | "failed" | "expired" | "revoked";
|
|
1567
|
+
/** @description One issued app token (approved access request) with its effective grant summary. */
|
|
1568
|
+
AppAccessSummary: {
|
|
1569
|
+
id: string;
|
|
1570
|
+
app_client_id: string;
|
|
1571
|
+
app_name?: string | null;
|
|
1572
|
+
app_description?: string | null;
|
|
1573
|
+
status: components["schemas"]["AppAccessRequestStatus"];
|
|
1574
|
+
approved_role?: null | components["schemas"]["UserScope"];
|
|
1575
|
+
/** @description Effective model access granted to this app. */
|
|
1576
|
+
models: components["schemas"]["ResourceAccess"];
|
|
1577
|
+
/** @description Effective MCP access granted to this app. */
|
|
1578
|
+
mcps: components["schemas"]["ResourceAccess"];
|
|
1579
|
+
/** Format: date-time */
|
|
1580
|
+
created_at: string;
|
|
1581
|
+
/** Format: date-time */
|
|
1582
|
+
updated_at: string;
|
|
1583
|
+
};
|
|
1407
1584
|
/**
|
|
1408
1585
|
* @description Application information and status
|
|
1409
1586
|
* @example {
|
|
1410
1587
|
* "client_id": "my-client-id",
|
|
1411
1588
|
* "commit_sha": "abc1234",
|
|
1412
1589
|
* "deployment": "standalone",
|
|
1590
|
+
* "reference_api_url": "https://api.getbodhi.app",
|
|
1413
1591
|
* "status": "ready",
|
|
1414
1592
|
* "url": "https://example.com",
|
|
1415
1593
|
* "version": "0.1.0"
|
|
@@ -1440,6 +1618,12 @@ export interface components {
|
|
|
1440
1618
|
* @example https://example.com
|
|
1441
1619
|
*/
|
|
1442
1620
|
url: string;
|
|
1621
|
+
/**
|
|
1622
|
+
* @description Base URL of the external reference API the frontend calls directly (configurable via
|
|
1623
|
+
* `BODHI_REFERENCE_API_URL`, env-overridable for tests)
|
|
1624
|
+
* @example https://api.getbodhi.app
|
|
1625
|
+
*/
|
|
1626
|
+
reference_api_url: string;
|
|
1443
1627
|
};
|
|
1444
1628
|
AppRole: components["schemas"]["ResourceRole"] | components["schemas"]["TokenScope"] | components["schemas"]["UserScope"];
|
|
1445
1629
|
/**
|
|
@@ -1449,9 +1633,7 @@ export interface components {
|
|
|
1449
1633
|
AppStatus: "setup" | "ready" | "resource_admin";
|
|
1450
1634
|
/** @enum {string} */
|
|
1451
1635
|
ApprovalStatus: "approved" | "denied";
|
|
1452
|
-
/**
|
|
1453
|
-
* @description Request for approving an app access request
|
|
1454
|
-
* @example {
|
|
1636
|
+
/** @example {
|
|
1455
1637
|
* "approved": {
|
|
1456
1638
|
* "mcps": [
|
|
1457
1639
|
* {
|
|
@@ -1466,8 +1648,7 @@ export interface components {
|
|
|
1466
1648
|
* "version": "1"
|
|
1467
1649
|
* },
|
|
1468
1650
|
* "approved_role": "scope_user_user"
|
|
1469
|
-
* }
|
|
1470
|
-
*/
|
|
1651
|
+
* } */
|
|
1471
1652
|
ApproveAccessRequest: {
|
|
1472
1653
|
/** @description Role to grant for the approved request (scope_user_user or scope_user_power_user) */
|
|
1473
1654
|
approved_role: components["schemas"]["UserScope"];
|
|
@@ -1484,14 +1665,23 @@ export interface components {
|
|
|
1484
1665
|
/** @description Role to assign to the user */
|
|
1485
1666
|
role: components["schemas"]["ResourceRole"];
|
|
1486
1667
|
};
|
|
1487
|
-
/** @description
|
|
1488
|
-
* The `version` tag is mandatory and must match the corresponding `RequestedResources` version. */
|
|
1668
|
+
/** @description The `version` tag is mandatory and must match the corresponding `RequestedResources` version. */
|
|
1489
1669
|
ApprovedResources: components["schemas"]["ApprovedResourcesV1"] & {
|
|
1490
1670
|
/** @enum {string} */
|
|
1491
1671
|
version: "1";
|
|
1492
1672
|
};
|
|
1673
|
+
/** @description What the owner granted at consent. Field names mirror `RequestedResourcesV1`
|
|
1674
|
+
* (`models_list` / `models_access` / `mcps_list` / `mcps_access`) — there the
|
|
1675
|
+
* values are UI-driver booleans, here they are the actual grants. `mcps` holds
|
|
1676
|
+
* the by-url instance approvals; `mcps_access` is the owner-granted set beyond them. */
|
|
1493
1677
|
ApprovedResourcesV1: {
|
|
1678
|
+
models_list?: boolean;
|
|
1679
|
+
models_access?: components["schemas"]["ModelGrant"];
|
|
1680
|
+
mcps_list?: boolean;
|
|
1494
1681
|
mcps?: components["schemas"]["McpApproval"][];
|
|
1682
|
+
/** @description Owner-granted MCP instances beyond the by-url requests. Defaults to none
|
|
1683
|
+
* (empty `Specific`) — unlike a token's all-access default. */
|
|
1684
|
+
mcps_access?: components["schemas"]["McpGrant"];
|
|
1495
1685
|
};
|
|
1496
1686
|
/** @example {
|
|
1497
1687
|
* "code": "auth_code_123",
|
|
@@ -1499,12 +1689,12 @@ export interface components {
|
|
|
1499
1689
|
* } */
|
|
1500
1690
|
AuthCallbackRequest: {
|
|
1501
1691
|
/**
|
|
1502
|
-
* @description
|
|
1692
|
+
* @description Required for the success flow
|
|
1503
1693
|
* @example auth_code_123
|
|
1504
1694
|
*/
|
|
1505
1695
|
code?: string | null;
|
|
1506
1696
|
/**
|
|
1507
|
-
* @description
|
|
1697
|
+
* @description CSRF protection — must match the initiated request
|
|
1508
1698
|
* @example random_state_456
|
|
1509
1699
|
*/
|
|
1510
1700
|
state?: string | null;
|
|
@@ -1513,10 +1703,7 @@ export interface components {
|
|
|
1513
1703
|
* @example access_denied
|
|
1514
1704
|
*/
|
|
1515
1705
|
error?: string | null;
|
|
1516
|
-
/**
|
|
1517
|
-
* @description Human-readable OAuth error description if authentication failed
|
|
1518
|
-
* @example The user denied the request
|
|
1519
|
-
*/
|
|
1706
|
+
/** @example The user denied the request */
|
|
1520
1707
|
error_description?: string | null;
|
|
1521
1708
|
} & {
|
|
1522
1709
|
[key: string]: string;
|
|
@@ -1593,7 +1780,6 @@ export interface components {
|
|
|
1593
1780
|
/** @description Error details following Bodhi API error format */
|
|
1594
1781
|
error: components["schemas"]["BodhiError"];
|
|
1595
1782
|
};
|
|
1596
|
-
/** @description Whether a single capability is supported by the model. */
|
|
1597
1783
|
CapabilitySupport: {
|
|
1598
1784
|
supported: boolean;
|
|
1599
1785
|
};
|
|
@@ -1608,7 +1794,6 @@ export interface components {
|
|
|
1608
1794
|
/** Format: int64 */
|
|
1609
1795
|
max_output_tokens?: number | null;
|
|
1610
1796
|
};
|
|
1611
|
-
/** @description Context management capability details. */
|
|
1612
1797
|
ContextManagementCapability: {
|
|
1613
1798
|
clear_thinking_20251015?: null | components["schemas"]["CapabilitySupport"];
|
|
1614
1799
|
clear_tool_uses_20250919?: null | components["schemas"]["CapabilitySupport"];
|
|
@@ -1617,9 +1802,7 @@ export interface components {
|
|
|
1617
1802
|
CopyAliasRequest: {
|
|
1618
1803
|
alias: string;
|
|
1619
1804
|
};
|
|
1620
|
-
/**
|
|
1621
|
-
* @description Request for creating an app access request
|
|
1622
|
-
* @example {
|
|
1805
|
+
/** @example {
|
|
1623
1806
|
* "app_client_id": "my-app-client",
|
|
1624
1807
|
* "flow_type": "redirect",
|
|
1625
1808
|
* "redirect_url": "https://myapp.com/callback",
|
|
@@ -1632,8 +1815,7 @@ export interface components {
|
|
|
1632
1815
|
* "version": "1"
|
|
1633
1816
|
* },
|
|
1634
1817
|
* "requested_role": "scope_user_user"
|
|
1635
|
-
* }
|
|
1636
|
-
*/
|
|
1818
|
+
* } */
|
|
1637
1819
|
CreateAccessRequest: {
|
|
1638
1820
|
/** @description App client ID from Keycloak */
|
|
1639
1821
|
app_client_id: string;
|
|
@@ -1652,11 +1834,9 @@ export interface components {
|
|
|
1652
1834
|
* "status": "draft"
|
|
1653
1835
|
* } */
|
|
1654
1836
|
CreateAccessRequestResponse: {
|
|
1655
|
-
/** @description Access request ID */
|
|
1656
1837
|
id: string;
|
|
1657
|
-
/** @description
|
|
1838
|
+
/** @description Always "draft" */
|
|
1658
1839
|
status: components["schemas"]["AppAccessRequestStatus"];
|
|
1659
|
-
/** @description Review URL for user to approve/deny */
|
|
1660
1840
|
review_url: string;
|
|
1661
1841
|
};
|
|
1662
1842
|
/** @description Wrapper for creating auth configs with server_id in body instead of path */
|
|
@@ -1706,6 +1886,9 @@ export interface components {
|
|
|
1706
1886
|
name?: string | null;
|
|
1707
1887
|
/** @description Token scope defining access level */
|
|
1708
1888
|
scope: components["schemas"]["TokenScope"];
|
|
1889
|
+
/** @description Per-resource grants for this token. Defaults to deny (least-privilege) when
|
|
1890
|
+
* omitted — specify grants to widen access. */
|
|
1891
|
+
grants?: components["schemas"]["TokenGrants"];
|
|
1709
1892
|
};
|
|
1710
1893
|
/** @description Dashboard user information from a validated dashboard session token */
|
|
1711
1894
|
DashboardUser: {
|
|
@@ -1717,6 +1900,8 @@ export interface components {
|
|
|
1717
1900
|
/** @description Inner request shape for the five non-llm-liberty `api_format` values.
|
|
1718
1901
|
* Shared across `openai`, `openai_responses`, `anthropic`, `anthropic_oauth`, `gemini`. */
|
|
1719
1902
|
DefaultApiModelRequest: {
|
|
1903
|
+
/** @description User-provided descriptive name for this API model */
|
|
1904
|
+
name: string;
|
|
1720
1905
|
/** @description API base URL */
|
|
1721
1906
|
base_url: string;
|
|
1722
1907
|
/** @description API key update action (Keep/Set with Some or None) */
|
|
@@ -1774,6 +1959,8 @@ export interface components {
|
|
|
1774
1959
|
/** Format: date-time */
|
|
1775
1960
|
started_at?: string | null;
|
|
1776
1961
|
/** Format: date-time */
|
|
1962
|
+
archived_at?: string | null;
|
|
1963
|
+
/** Format: date-time */
|
|
1777
1964
|
created_at: string;
|
|
1778
1965
|
/** Format: date-time */
|
|
1779
1966
|
updated_at: string;
|
|
@@ -1799,6 +1986,18 @@ export interface components {
|
|
|
1799
1986
|
low: components["schemas"]["CapabilitySupport"];
|
|
1800
1987
|
max: components["schemas"]["CapabilitySupport"];
|
|
1801
1988
|
};
|
|
1989
|
+
/** @description Per-strategy resilience config for the fallback strategy. Phase 1 persists defaults
|
|
1990
|
+
* and does not yet act on them (failover/health land in later phases). */
|
|
1991
|
+
FallbackConfig: {
|
|
1992
|
+
/** Format: int32 */
|
|
1993
|
+
cooldown_secs?: number;
|
|
1994
|
+
/**
|
|
1995
|
+
* Format: int32
|
|
1996
|
+
* @description 0 = try the whole chain.
|
|
1997
|
+
*/
|
|
1998
|
+
max_attempts?: number;
|
|
1999
|
+
honor_retry_after?: boolean;
|
|
2000
|
+
};
|
|
1802
2001
|
/**
|
|
1803
2002
|
* @description Request to fetch available models from provider. Discriminated on `api_format`.
|
|
1804
2003
|
* @example {
|
|
@@ -1867,6 +2066,10 @@ export interface components {
|
|
|
1867
2066
|
thinking?: boolean | null;
|
|
1868
2067
|
};
|
|
1869
2068
|
JsonVec: string[];
|
|
2069
|
+
/** @description Response for GET /access-requests/apps — the caller's issued app tokens. */
|
|
2070
|
+
ListAppAccessResponse: {
|
|
2071
|
+
data: components["schemas"]["AppAccessSummary"][];
|
|
2072
|
+
};
|
|
1870
2073
|
ListMcpServersResponse: {
|
|
1871
2074
|
mcp_servers: components["schemas"]["McpServerResponse"][];
|
|
1872
2075
|
};
|
|
@@ -1895,6 +2098,8 @@ export interface components {
|
|
|
1895
2098
|
/** @description Request shape for `api_format == "llm_liberty_oauth"`. Carries the full envelope
|
|
1896
2099
|
* (or `Keep` to leave existing credentials untouched on update). */
|
|
1897
2100
|
LlmLibertyApiModelRequest: {
|
|
2101
|
+
/** @description User-provided descriptive name for this API model */
|
|
2102
|
+
name: string;
|
|
1898
2103
|
/** @description Envelope update action — Keep (update only) or Set (create/replace credentials). */
|
|
1899
2104
|
envelope?: components["schemas"]["LlmLibertyEnvelopeUpdate"];
|
|
1900
2105
|
/** @description List of available models */
|
|
@@ -1904,6 +2109,7 @@ export interface components {
|
|
|
1904
2109
|
/** @description Whether to forward all requests with this prefix */
|
|
1905
2110
|
forward_all_with_prefix?: boolean;
|
|
1906
2111
|
};
|
|
2112
|
+
/** @description Envelope sub-types mirror the llm-liberty JSON contract v1.0.0. */
|
|
1907
2113
|
LlmLibertyAuthSpec: {
|
|
1908
2114
|
in: string;
|
|
1909
2115
|
key: string;
|
|
@@ -1978,7 +2184,6 @@ export interface components {
|
|
|
1978
2184
|
/** @description Test prompt (max 30 characters for cost control) */
|
|
1979
2185
|
prompt: string;
|
|
1980
2186
|
};
|
|
1981
|
-
/** @description Local model file response */
|
|
1982
2187
|
LocalModelResponse: {
|
|
1983
2188
|
repo: string;
|
|
1984
2189
|
filename: string;
|
|
@@ -1992,32 +2197,24 @@ export interface components {
|
|
|
1992
2197
|
};
|
|
1993
2198
|
/** @description User-owned MCP server instance. */
|
|
1994
2199
|
Mcp: {
|
|
1995
|
-
/** @description Unique instance identifier (UUID) */
|
|
1996
2200
|
id: string;
|
|
1997
2201
|
/** @description Server info resolved via JOIN */
|
|
1998
2202
|
mcp_server: components["schemas"]["McpServerInfo"];
|
|
1999
|
-
/** @description User-defined slug for this instance */
|
|
2000
2203
|
slug: string;
|
|
2001
|
-
/** @description Human-readable name */
|
|
2002
2204
|
name: string;
|
|
2003
|
-
/** @description Optional description for this instance */
|
|
2004
2205
|
description?: string | null;
|
|
2005
|
-
/** @description Whether this instance is enabled */
|
|
2006
2206
|
enabled: boolean;
|
|
2007
|
-
/** @description MCP proxy path for this instance */
|
|
2008
2207
|
path: string;
|
|
2009
2208
|
auth_type: components["schemas"]["McpAuthType"];
|
|
2010
2209
|
/** @description Reference to the auth config (mcp_auth_configs.id) */
|
|
2011
2210
|
auth_config_id?: string | null;
|
|
2012
2211
|
/**
|
|
2013
2212
|
* Format: date-time
|
|
2014
|
-
* @description When this instance was created
|
|
2015
2213
|
* @example 2024-11-10T04:52:06.786Z
|
|
2016
2214
|
*/
|
|
2017
2215
|
created_at: string;
|
|
2018
2216
|
/**
|
|
2019
2217
|
* Format: date-time
|
|
2020
|
-
* @description When this instance was last updated
|
|
2021
2218
|
* @example 2024-11-10T04:52:06.786Z
|
|
2022
2219
|
*/
|
|
2023
2220
|
updated_at: string;
|
|
@@ -2079,6 +2276,7 @@ export interface components {
|
|
|
2079
2276
|
McpAuthConfigsListResponse: {
|
|
2080
2277
|
auth_configs: components["schemas"]["McpAuthConfigResponse"][];
|
|
2081
2278
|
};
|
|
2279
|
+
/** @description Masked auth param response. */
|
|
2082
2280
|
McpAuthParam: {
|
|
2083
2281
|
id: string;
|
|
2084
2282
|
param_type: components["schemas"]["McpAuthParamType"];
|
|
@@ -2094,6 +2292,21 @@ export interface components {
|
|
|
2094
2292
|
McpAuthParamType: "header" | "query";
|
|
2095
2293
|
/** @enum {string} */
|
|
2096
2294
|
McpAuthType: "public" | "header" | "oauth";
|
|
2295
|
+
/** @description MCP connect grant. `All` is a wildcard (incl. future MCPs); `Specific` lists
|
|
2296
|
+
* the user's own instance ids (empty ⇒ no MCP access).
|
|
2297
|
+
*
|
|
2298
|
+
* Defaults to **least-privilege** (empty `Specific` ⇒ deny), symmetric with
|
|
2299
|
+
* `ModelGrant`: an unspecified or legacy grant grants nothing, so a stored
|
|
2300
|
+
* payload that omits `mcps` cannot silently grant every MCP. All-access must be
|
|
2301
|
+
* requested explicitly via `McpGrant::All`. */
|
|
2302
|
+
McpGrant: {
|
|
2303
|
+
/** @enum {string} */
|
|
2304
|
+
type: "all";
|
|
2305
|
+
} | {
|
|
2306
|
+
ids: string[];
|
|
2307
|
+
/** @enum {string} */
|
|
2308
|
+
type: "specific";
|
|
2309
|
+
};
|
|
2097
2310
|
McpInstance: {
|
|
2098
2311
|
id: string;
|
|
2099
2312
|
/** @description MCP proxy path for this instance (e.g. `/bodhi/v1/apps/mcps/{id}/mcp`) */
|
|
@@ -2101,51 +2314,37 @@ export interface components {
|
|
|
2101
2314
|
};
|
|
2102
2315
|
/** @description Input for creating or updating an MCP instance. */
|
|
2103
2316
|
McpRequest: {
|
|
2104
|
-
/** @description Human-readable name (required) */
|
|
2105
2317
|
name: string;
|
|
2106
|
-
/** @description
|
|
2318
|
+
/** @description 1-24 chars, alphanumeric + hyphens. */
|
|
2107
2319
|
slug: string;
|
|
2108
|
-
/** @description
|
|
2320
|
+
/** @description Required for create, ignored for update. */
|
|
2109
2321
|
mcp_server_id?: string | null;
|
|
2110
|
-
/** @description Optional description */
|
|
2111
2322
|
description?: string | null;
|
|
2112
|
-
/** @description Whether this instance is enabled */
|
|
2113
2323
|
enabled: boolean;
|
|
2114
|
-
/** @description Authentication type */
|
|
2115
2324
|
auth_type?: components["schemas"]["McpAuthType"];
|
|
2116
|
-
/** @description Reference to auth config */
|
|
2117
2325
|
auth_config_id?: string | null;
|
|
2118
|
-
/** @description Instance-level
|
|
2326
|
+
/** @description Instance-level values for the auth config's key definitions. */
|
|
2119
2327
|
credentials?: components["schemas"]["McpAuthParamInput"][] | null;
|
|
2120
|
-
/** @description OAuth token ID to link to this MCP instance (set after OAuth flow) */
|
|
2328
|
+
/** @description OAuth token ID to link to this MCP instance (set after OAuth flow). */
|
|
2121
2329
|
oauth_token_id?: string | null;
|
|
2122
2330
|
};
|
|
2123
|
-
/** @description Admin-managed MCP server registry entry.
|
|
2124
|
-
* Admins/managers register MCP server URLs that users can then create instances of. */
|
|
2331
|
+
/** @description Admin-managed MCP server registry entry that users create instances of. */
|
|
2125
2332
|
McpServer: {
|
|
2126
|
-
/** @description Unique identifier (UUID) */
|
|
2127
2333
|
id: string;
|
|
2128
2334
|
/** @description MCP server endpoint URL (trimmed, case-insensitive unique) */
|
|
2129
2335
|
url: string;
|
|
2130
|
-
/** @description Human-readable display name */
|
|
2131
2336
|
name: string;
|
|
2132
|
-
/** @description Optional description */
|
|
2133
2337
|
description?: string | null;
|
|
2134
|
-
/** @description Whether this MCP server is enabled */
|
|
2135
2338
|
enabled: boolean;
|
|
2136
|
-
/** @description User who created this entry */
|
|
2137
2339
|
created_by: string;
|
|
2138
|
-
/** @description User who last updated this entry */
|
|
2139
2340
|
updated_by: string;
|
|
2140
2341
|
/**
|
|
2141
2342
|
* Format: date-time
|
|
2142
|
-
* @description When this entry was created
|
|
2143
2343
|
* @example 2024-11-10T04:52:06.786Z
|
|
2144
2344
|
*/
|
|
2145
2345
|
created_at: string;
|
|
2146
2346
|
/**
|
|
2147
2347
|
* Format: date-time
|
|
2148
|
-
* @description When this entry was last updated
|
|
2149
2348
|
* @example 2024-11-10T04:52:06.786Z
|
|
2150
2349
|
*/
|
|
2151
2350
|
updated_at: string;
|
|
@@ -2159,13 +2358,10 @@ export interface components {
|
|
|
2159
2358
|
};
|
|
2160
2359
|
/** @description Input for creating or updating an MCP server. */
|
|
2161
2360
|
McpServerRequest: {
|
|
2162
|
-
/** @description MCP server endpoint URL (trimmed, case-insensitive unique) */
|
|
2361
|
+
/** @description MCP server endpoint URL (trimmed, case-insensitive unique). */
|
|
2163
2362
|
url: string;
|
|
2164
|
-
/** @description Human-readable display name */
|
|
2165
2363
|
name: string;
|
|
2166
|
-
/** @description Optional description */
|
|
2167
2364
|
description?: string | null;
|
|
2168
|
-
/** @description Whether this MCP server is enabled */
|
|
2169
2365
|
enabled: boolean;
|
|
2170
2366
|
auth_config?: null | components["schemas"]["CreateMcpAuthConfigRequest"];
|
|
2171
2367
|
};
|
|
@@ -2178,7 +2374,6 @@ export interface components {
|
|
|
2178
2374
|
auth_config?: null | components["schemas"]["McpAuthConfigResponse"];
|
|
2179
2375
|
};
|
|
2180
2376
|
McpServerReviewInfo: {
|
|
2181
|
-
/** @description Requested MCP server URL */
|
|
2182
2377
|
url: string;
|
|
2183
2378
|
/** @description User's MCP instances connected to this server URL */
|
|
2184
2379
|
instances: components["schemas"]["Mcp"][];
|
|
@@ -2211,6 +2406,11 @@ export interface components {
|
|
|
2211
2406
|
repo: string;
|
|
2212
2407
|
filename: string;
|
|
2213
2408
|
snapshot: string;
|
|
2409
|
+
/**
|
|
2410
|
+
* Format: int64
|
|
2411
|
+
* @description Local GGUF file size in bytes (present when the file is resolvable on disk)
|
|
2412
|
+
*/
|
|
2413
|
+
size?: number | null;
|
|
2214
2414
|
metadata?: null | components["schemas"]["ModelMetadata"];
|
|
2215
2415
|
};
|
|
2216
2416
|
ModelArchitecture: {
|
|
@@ -2226,6 +2426,20 @@ export interface components {
|
|
|
2226
2426
|
thinking?: boolean | null;
|
|
2227
2427
|
tools: components["schemas"]["ToolCapabilities"];
|
|
2228
2428
|
};
|
|
2429
|
+
/** @description Model inference grant. `All` is a wildcard that includes models added in the
|
|
2430
|
+
* future; `Specific` lists alias ids (empty ⇒ no model access).
|
|
2431
|
+
*
|
|
2432
|
+
* Defaults to **least-privilege** (empty `Specific` ⇒ deny): an unspecified or
|
|
2433
|
+
* legacy grant grants nothing. All-access must be requested explicitly via
|
|
2434
|
+
* `ModelGrant::All`. Symmetric with `ApprovedResourcesV1`'s empty-MCP default. */
|
|
2435
|
+
ModelGrant: {
|
|
2436
|
+
/** @enum {string} */
|
|
2437
|
+
type: "all";
|
|
2438
|
+
} | {
|
|
2439
|
+
ids: string[];
|
|
2440
|
+
/** @enum {string} */
|
|
2441
|
+
type: "specific";
|
|
2442
|
+
};
|
|
2229
2443
|
/** @description Model metadata for API responses */
|
|
2230
2444
|
ModelMetadata: {
|
|
2231
2445
|
capabilities: components["schemas"]["ModelCapabilities"];
|
|
@@ -2233,6 +2447,39 @@ export interface components {
|
|
|
2233
2447
|
architecture: components["schemas"]["ModelArchitecture"];
|
|
2234
2448
|
chat_template?: string | null;
|
|
2235
2449
|
};
|
|
2450
|
+
/** @description A composite alias that fronts an ordered list of targets and routes a chat
|
|
2451
|
+
* request through them via a pluggable strategy. v1 ships only the fallback strategy. */
|
|
2452
|
+
ModelRouterAlias: {
|
|
2453
|
+
id: string;
|
|
2454
|
+
/** @description User-facing model name, unique across all alias kinds. */
|
|
2455
|
+
alias: string;
|
|
2456
|
+
/** @description Ordered list of targets; order is the fallback priority. */
|
|
2457
|
+
targets: components["schemas"]["RouterTarget"][];
|
|
2458
|
+
strategy: components["schemas"]["RoutingStrategyConfig"];
|
|
2459
|
+
/** Format: date-time */
|
|
2460
|
+
created_at: string;
|
|
2461
|
+
/** Format: date-time */
|
|
2462
|
+
updated_at: string;
|
|
2463
|
+
};
|
|
2464
|
+
/** @description Input request for creating or updating a model-router. Used as `ValidatedJson` in handlers
|
|
2465
|
+
* for both create and update (PUT). A zero-target or all-disabled router is allowed to save. */
|
|
2466
|
+
ModelRouterRequest: {
|
|
2467
|
+
alias: string;
|
|
2468
|
+
targets?: components["schemas"]["RouterTargetRequest"][];
|
|
2469
|
+
strategy?: components["schemas"]["RoutingStrategyConfig"];
|
|
2470
|
+
};
|
|
2471
|
+
/** @description API response for model-router aliases. */
|
|
2472
|
+
ModelRouterResponse: {
|
|
2473
|
+
source: string;
|
|
2474
|
+
id: string;
|
|
2475
|
+
alias: string;
|
|
2476
|
+
targets: components["schemas"]["RouterTarget"][];
|
|
2477
|
+
strategy: components["schemas"]["RoutingStrategyConfig"];
|
|
2478
|
+
/** Format: date-time */
|
|
2479
|
+
created_at: string;
|
|
2480
|
+
/** Format: date-time */
|
|
2481
|
+
updated_at: string;
|
|
2482
|
+
};
|
|
2236
2483
|
/**
|
|
2237
2484
|
* @description Request for creating a new download request
|
|
2238
2485
|
* @example {
|
|
@@ -2267,6 +2514,7 @@ export interface components {
|
|
|
2267
2514
|
/** Format: float */
|
|
2268
2515
|
top_p?: number | null;
|
|
2269
2516
|
user?: string | null;
|
|
2517
|
+
system_prompt?: string | null;
|
|
2270
2518
|
};
|
|
2271
2519
|
OAuthDiscoverAsRequest: {
|
|
2272
2520
|
url: string;
|
|
@@ -2325,7 +2573,6 @@ export interface components {
|
|
|
2325
2573
|
page: number;
|
|
2326
2574
|
page_size: number;
|
|
2327
2575
|
};
|
|
2328
|
-
/** @description Paginated list of local model files */
|
|
2329
2576
|
PaginatedLocalModelResponse: {
|
|
2330
2577
|
data: components["schemas"]["LocalModelResponse"][];
|
|
2331
2578
|
total: number;
|
|
@@ -2409,7 +2656,6 @@ export interface components {
|
|
|
2409
2656
|
*/
|
|
2410
2657
|
message: string;
|
|
2411
2658
|
};
|
|
2412
|
-
/** @description Response for queue status operations */
|
|
2413
2659
|
QueueStatusResponse: {
|
|
2414
2660
|
/** @description Queue status ("idle" or "processing") */
|
|
2415
2661
|
status: string;
|
|
@@ -2467,17 +2713,82 @@ export interface components {
|
|
|
2467
2713
|
RequestedMcpServer: {
|
|
2468
2714
|
url: string;
|
|
2469
2715
|
};
|
|
2470
|
-
/** @description
|
|
2471
|
-
* The `version` tag is mandatory — clients must specify which version they are using. */
|
|
2716
|
+
/** @description The `version` tag is mandatory — clients must specify which version they are using. */
|
|
2472
2717
|
RequestedResources: components["schemas"]["RequestedResourcesV1"] & {
|
|
2473
2718
|
/** @enum {string} */
|
|
2474
2719
|
version: "1";
|
|
2475
2720
|
};
|
|
2721
|
+
/** @description What the external app asks for. The four booleans are **UI drivers**: they tell
|
|
2722
|
+
* the consent screen which controls to render (the owner decides the actual grant).
|
|
2723
|
+
* Fields are domain-first (`models_*` / `mcps_*`), matching `ApprovedResourcesV1`.
|
|
2724
|
+
* `mcp_servers` is the existing by-url MCP request and is unchanged.
|
|
2725
|
+
*
|
|
2726
|
+
* `models_access` defaults to **true**: unless the app explicitly opts out
|
|
2727
|
+
* (`models_access: false`), the consent screen shows the model-access selector so
|
|
2728
|
+
* the owner can always scope models. (The other UI-driver flags default to false.) */
|
|
2476
2729
|
RequestedResourcesV1: {
|
|
2730
|
+
/** @description Render the "list all models" toggle. */
|
|
2731
|
+
models_list?: boolean;
|
|
2732
|
+
/** @description Render the model All/Specific access selector. Defaults to `true` (shown). */
|
|
2733
|
+
models_access?: boolean;
|
|
2734
|
+
/** @description Render the "list all MCPs" toggle. */
|
|
2735
|
+
mcps_list?: boolean;
|
|
2736
|
+
/** @description Render the owner-extra MCP All/Specific access selector. */
|
|
2737
|
+
mcps_access?: boolean;
|
|
2477
2738
|
mcp_servers?: components["schemas"]["RequestedMcpServer"][];
|
|
2478
2739
|
};
|
|
2740
|
+
/** @description Effective access to a class of resources (models or MCPs) for an API token,
|
|
2741
|
+
* reflected from its grants. Discriminated on `type`: `all` ⇒ every current and
|
|
2742
|
+
* future resource; `specific` ⇒ the listed `ids` (empty ⇒ no access).
|
|
2743
|
+
* `list` is the `list_*` toggle (whether the token may enumerate the full catalog). */
|
|
2744
|
+
ResourceAccess: {
|
|
2745
|
+
list: boolean;
|
|
2746
|
+
/** @enum {string} */
|
|
2747
|
+
type: "all";
|
|
2748
|
+
} | {
|
|
2749
|
+
list: boolean;
|
|
2750
|
+
ids: string[];
|
|
2751
|
+
/** @enum {string} */
|
|
2752
|
+
type: "specific";
|
|
2753
|
+
};
|
|
2754
|
+
/** @description Effective resource access for a token-bearing principal (API token or external
|
|
2755
|
+
* app), reflected from its grants. Reported uniformly via the `access` envelope
|
|
2756
|
+
* field for both principals. */
|
|
2757
|
+
ResourceAccessInfo: {
|
|
2758
|
+
/** @description Effective model access for this principal. */
|
|
2759
|
+
models: components["schemas"]["ResourceAccess"];
|
|
2760
|
+
/** @description Effective MCP access for this principal. */
|
|
2761
|
+
mcps: components["schemas"]["ResourceAccess"];
|
|
2762
|
+
};
|
|
2479
2763
|
/** @enum {string} */
|
|
2480
2764
|
ResourceRole: "resource_anonymous" | "resource_guest" | "resource_user" | "resource_power_user" | "resource_manager" | "resource_admin";
|
|
2765
|
+
/** @description One target in a model-router: a reference to an existing alias plus a pinned model. */
|
|
2766
|
+
RouterTarget: {
|
|
2767
|
+
/** @description Name of an existing user/model/api alias (NOT a model-router). */
|
|
2768
|
+
alias: string;
|
|
2769
|
+
/** @description Concrete model placed into `request["model"]` when forwarding to this target. */
|
|
2770
|
+
model: string;
|
|
2771
|
+
/** @description Whether this target is part of the active sequence. Disabled targets are never
|
|
2772
|
+
* attempted but keep their config and position. Defaults to enabled. */
|
|
2773
|
+
enabled?: boolean;
|
|
2774
|
+
/**
|
|
2775
|
+
* Format: int32
|
|
2776
|
+
* @description SEAM (reserved): ignored by Fallback; used by a future weighted strategy.
|
|
2777
|
+
*/
|
|
2778
|
+
weight?: number | null;
|
|
2779
|
+
};
|
|
2780
|
+
RouterTargetRequest: {
|
|
2781
|
+
alias: string;
|
|
2782
|
+
model: string;
|
|
2783
|
+
enabled?: boolean;
|
|
2784
|
+
/** Format: int32 */
|
|
2785
|
+
weight?: number | null;
|
|
2786
|
+
};
|
|
2787
|
+
/** @description Routing strategy config — DATA (persisted, wire-exposed). Adding a strategy = adding a variant. */
|
|
2788
|
+
RoutingStrategyConfig: components["schemas"]["FallbackConfig"] & {
|
|
2789
|
+
/** @enum {string} */
|
|
2790
|
+
strategy: "fallback";
|
|
2791
|
+
};
|
|
2481
2792
|
SettingInfo: {
|
|
2482
2793
|
key: string;
|
|
2483
2794
|
current_value: unknown;
|
|
@@ -2602,12 +2913,10 @@ export interface components {
|
|
|
2602
2913
|
response?: string | null;
|
|
2603
2914
|
error?: string | null;
|
|
2604
2915
|
};
|
|
2605
|
-
/** @description Thinking capability and supported type configurations. */
|
|
2606
2916
|
ThinkingCapability: {
|
|
2607
2917
|
supported: boolean;
|
|
2608
2918
|
types: components["schemas"]["ThinkingTypes"];
|
|
2609
2919
|
};
|
|
2610
|
-
/** @description Supported thinking type configurations. */
|
|
2611
2920
|
ThinkingTypes: {
|
|
2612
2921
|
adaptive: components["schemas"]["CapabilitySupport"];
|
|
2613
2922
|
enabled: components["schemas"]["CapabilitySupport"];
|
|
@@ -2629,12 +2938,35 @@ export interface components {
|
|
|
2629
2938
|
token_prefix: string;
|
|
2630
2939
|
scopes: string;
|
|
2631
2940
|
status: components["schemas"]["TokenStatus"];
|
|
2941
|
+
/** @description Per-resource grants this token carries. */
|
|
2942
|
+
grants: components["schemas"]["TokenGrants"];
|
|
2943
|
+
/** Format: date-time */
|
|
2944
|
+
last_used_at?: string | null;
|
|
2632
2945
|
/** Format: date-time */
|
|
2633
2946
|
created_at: string;
|
|
2634
2947
|
/** Format: date-time */
|
|
2635
2948
|
updated_at: string;
|
|
2636
2949
|
};
|
|
2637
|
-
/** @description
|
|
2950
|
+
/** @description Versioned envelope; the `version` tag is mandatory (mirrors `ApprovedResources`). */
|
|
2951
|
+
TokenGrants: components["schemas"]["TokenGrantsV1"] & {
|
|
2952
|
+
/** @enum {string} */
|
|
2953
|
+
version: "1";
|
|
2954
|
+
};
|
|
2955
|
+
/** @description Per-resource grants carried by an API token. Listing (`models_list` /
|
|
2956
|
+
* `mcps_list`) is separate from inference/connect: with listing off the
|
|
2957
|
+
* discovery endpoints return an empty set, but inference on an individually
|
|
2958
|
+
* granted resource still succeeds.
|
|
2959
|
+
*
|
|
2960
|
+
* Intentionally standalone — NOT shared with the App-access-request envelope
|
|
2961
|
+
* (`ApprovedResources`); the two may diverge. */
|
|
2962
|
+
TokenGrantsV1: {
|
|
2963
|
+
models_list?: boolean;
|
|
2964
|
+
models?: components["schemas"]["ModelGrant"];
|
|
2965
|
+
mcps_list?: boolean;
|
|
2966
|
+
mcps?: components["schemas"]["McpGrant"];
|
|
2967
|
+
};
|
|
2968
|
+
/** @description API Token information response. Effective model/MCP access is reported uniformly
|
|
2969
|
+
* via the envelope's `access` field (same shape as external apps), not inline here. */
|
|
2638
2970
|
TokenInfo: {
|
|
2639
2971
|
role: components["schemas"]["TokenScope"];
|
|
2640
2972
|
};
|
|
@@ -2646,14 +2978,11 @@ export interface components {
|
|
|
2646
2978
|
function_calling?: boolean | null;
|
|
2647
2979
|
structured_output?: boolean | null;
|
|
2648
2980
|
};
|
|
2649
|
-
/**
|
|
2650
|
-
* @description Request to update a setting value
|
|
2651
|
-
* @example {
|
|
2981
|
+
/** @example {
|
|
2652
2982
|
* "value": "debug"
|
|
2653
|
-
* }
|
|
2654
|
-
*/
|
|
2983
|
+
* } */
|
|
2655
2984
|
UpdateSettingRequest: {
|
|
2656
|
-
/** @description
|
|
2985
|
+
/** @description type depends on setting metadata */
|
|
2657
2986
|
value: unknown;
|
|
2658
2987
|
};
|
|
2659
2988
|
/** @example {
|
|
@@ -2766,6 +3095,11 @@ export interface components {
|
|
|
2766
3095
|
created_at: string;
|
|
2767
3096
|
/** Format: date-time */
|
|
2768
3097
|
updated_at: string;
|
|
3098
|
+
/**
|
|
3099
|
+
* Format: int64
|
|
3100
|
+
* @description Local GGUF file size in bytes (present when the file is resolvable on disk)
|
|
3101
|
+
*/
|
|
3102
|
+
size?: number | null;
|
|
2769
3103
|
metadata?: null | components["schemas"]["ModelMetadata"];
|
|
2770
3104
|
};
|
|
2771
3105
|
UserInfo: {
|
|
@@ -2778,10 +3112,14 @@ export interface components {
|
|
|
2778
3112
|
/** @example Doe */
|
|
2779
3113
|
last_name?: string | null;
|
|
2780
3114
|
role?: null | components["schemas"]["AppRole"];
|
|
3115
|
+
/** @description OIDC id_token for the active session, when present. Used by the frontend to
|
|
3116
|
+
* authenticate direct calls to the external reference API. Omitted for token/exchange auth. */
|
|
3117
|
+
id_token?: string | null;
|
|
2781
3118
|
};
|
|
2782
3119
|
/** @description Envelope wrapping UserResponse with additional session info */
|
|
2783
3120
|
UserInfoEnvelope: components["schemas"]["UserResponse"] & {
|
|
2784
3121
|
dashboard?: null | components["schemas"]["DashboardUser"];
|
|
3122
|
+
access?: null | components["schemas"]["ResourceAccessInfo"];
|
|
2785
3123
|
};
|
|
2786
3124
|
UserListResponse: {
|
|
2787
3125
|
/** @example resource-abc123def456 */
|
|
@@ -2907,31 +3245,22 @@ export interface operations {
|
|
|
2907
3245
|
};
|
|
2908
3246
|
};
|
|
2909
3247
|
};
|
|
2910
|
-
|
|
3248
|
+
listAppAccess: {
|
|
2911
3249
|
parameters: {
|
|
2912
|
-
query?:
|
|
2913
|
-
/** @description Page number (1-based indexing) */
|
|
2914
|
-
page?: number;
|
|
2915
|
-
/** @description Number of items to return per page (maximum 100) */
|
|
2916
|
-
page_size?: number;
|
|
2917
|
-
/** @description Field to sort by. Common values: repo, filename, size, updated_at, snapshot, created_at */
|
|
2918
|
-
sort?: string;
|
|
2919
|
-
/** @description Sort order: 'asc' for ascending, 'desc' for descending */
|
|
2920
|
-
sort_order?: string;
|
|
2921
|
-
};
|
|
3250
|
+
query?: never;
|
|
2922
3251
|
header?: never;
|
|
2923
3252
|
path?: never;
|
|
2924
3253
|
cookie?: never;
|
|
2925
3254
|
};
|
|
2926
3255
|
requestBody?: never;
|
|
2927
3256
|
responses: {
|
|
2928
|
-
/** @description
|
|
3257
|
+
/** @description Issued app tokens */
|
|
2929
3258
|
200: {
|
|
2930
3259
|
headers: {
|
|
2931
3260
|
[name: string]: unknown;
|
|
2932
3261
|
};
|
|
2933
3262
|
content: {
|
|
2934
|
-
"application/json": components["schemas"]["
|
|
3263
|
+
"application/json": components["schemas"]["ListAppAccessResponse"];
|
|
2935
3264
|
};
|
|
2936
3265
|
};
|
|
2937
3266
|
/** @description Invalid request parameters */
|
|
@@ -2972,22 +3301,87 @@ export interface operations {
|
|
|
2972
3301
|
};
|
|
2973
3302
|
};
|
|
2974
3303
|
};
|
|
2975
|
-
|
|
3304
|
+
listPendingAccessRequests: {
|
|
2976
3305
|
parameters: {
|
|
2977
|
-
query?:
|
|
2978
|
-
|
|
2979
|
-
|
|
2980
|
-
/** @description
|
|
2981
|
-
|
|
3306
|
+
query?: {
|
|
3307
|
+
/** @description Page number (1-based indexing) */
|
|
3308
|
+
page?: number;
|
|
3309
|
+
/** @description Number of items to return per page (maximum 100) */
|
|
3310
|
+
page_size?: number;
|
|
3311
|
+
/** @description Field to sort by. Common values: repo, filename, size, updated_at, snapshot, created_at */
|
|
3312
|
+
sort?: string;
|
|
3313
|
+
/** @description Sort order: 'asc' for ascending, 'desc' for descending */
|
|
3314
|
+
sort_order?: string;
|
|
2982
3315
|
};
|
|
3316
|
+
header?: never;
|
|
3317
|
+
path?: never;
|
|
2983
3318
|
cookie?: never;
|
|
2984
3319
|
};
|
|
2985
|
-
|
|
2986
|
-
|
|
2987
|
-
|
|
2988
|
-
|
|
2989
|
-
|
|
2990
|
-
|
|
3320
|
+
requestBody?: never;
|
|
3321
|
+
responses: {
|
|
3322
|
+
/** @description Pending requests retrieved */
|
|
3323
|
+
200: {
|
|
3324
|
+
headers: {
|
|
3325
|
+
[name: string]: unknown;
|
|
3326
|
+
};
|
|
3327
|
+
content: {
|
|
3328
|
+
"application/json": components["schemas"]["PaginatedUserAccessResponse"];
|
|
3329
|
+
};
|
|
3330
|
+
};
|
|
3331
|
+
/** @description Invalid request parameters */
|
|
3332
|
+
400: {
|
|
3333
|
+
headers: {
|
|
3334
|
+
[name: string]: unknown;
|
|
3335
|
+
};
|
|
3336
|
+
content: {
|
|
3337
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
3338
|
+
};
|
|
3339
|
+
};
|
|
3340
|
+
/** @description Not authenticated */
|
|
3341
|
+
401: {
|
|
3342
|
+
headers: {
|
|
3343
|
+
[name: string]: unknown;
|
|
3344
|
+
};
|
|
3345
|
+
content: {
|
|
3346
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
3347
|
+
};
|
|
3348
|
+
};
|
|
3349
|
+
/** @description Insufficient permissions */
|
|
3350
|
+
403: {
|
|
3351
|
+
headers: {
|
|
3352
|
+
[name: string]: unknown;
|
|
3353
|
+
};
|
|
3354
|
+
content: {
|
|
3355
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
3356
|
+
};
|
|
3357
|
+
};
|
|
3358
|
+
/** @description Internal server error */
|
|
3359
|
+
500: {
|
|
3360
|
+
headers: {
|
|
3361
|
+
[name: string]: unknown;
|
|
3362
|
+
};
|
|
3363
|
+
content: {
|
|
3364
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
3365
|
+
};
|
|
3366
|
+
};
|
|
3367
|
+
};
|
|
3368
|
+
};
|
|
3369
|
+
approveAppsAccessRequest: {
|
|
3370
|
+
parameters: {
|
|
3371
|
+
query?: never;
|
|
3372
|
+
header?: never;
|
|
3373
|
+
path: {
|
|
3374
|
+
/** @description Access request ID */
|
|
3375
|
+
id: string;
|
|
3376
|
+
};
|
|
3377
|
+
cookie?: never;
|
|
3378
|
+
};
|
|
3379
|
+
/** @description Approval details with tool selections */
|
|
3380
|
+
requestBody: {
|
|
3381
|
+
content: {
|
|
3382
|
+
"application/json": components["schemas"]["ApproveAccessRequest"];
|
|
3383
|
+
};
|
|
3384
|
+
};
|
|
2991
3385
|
responses: {
|
|
2992
3386
|
/** @description Request approved */
|
|
2993
3387
|
200: {
|
|
@@ -3345,6 +3739,83 @@ export interface operations {
|
|
|
3345
3739
|
};
|
|
3346
3740
|
};
|
|
3347
3741
|
};
|
|
3742
|
+
revokeAppAccess: {
|
|
3743
|
+
parameters: {
|
|
3744
|
+
query?: never;
|
|
3745
|
+
header?: never;
|
|
3746
|
+
path: {
|
|
3747
|
+
/** @description Access request ID */
|
|
3748
|
+
id: string;
|
|
3749
|
+
};
|
|
3750
|
+
cookie?: never;
|
|
3751
|
+
};
|
|
3752
|
+
requestBody?: never;
|
|
3753
|
+
responses: {
|
|
3754
|
+
/** @description Grant revoked */
|
|
3755
|
+
200: {
|
|
3756
|
+
headers: {
|
|
3757
|
+
[name: string]: unknown;
|
|
3758
|
+
};
|
|
3759
|
+
content: {
|
|
3760
|
+
"application/json": components["schemas"]["AppAccessSummary"];
|
|
3761
|
+
};
|
|
3762
|
+
};
|
|
3763
|
+
/** @description Invalid request parameters */
|
|
3764
|
+
400: {
|
|
3765
|
+
headers: {
|
|
3766
|
+
[name: string]: unknown;
|
|
3767
|
+
};
|
|
3768
|
+
content: {
|
|
3769
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
3770
|
+
};
|
|
3771
|
+
};
|
|
3772
|
+
/** @description Not authenticated */
|
|
3773
|
+
401: {
|
|
3774
|
+
headers: {
|
|
3775
|
+
[name: string]: unknown;
|
|
3776
|
+
};
|
|
3777
|
+
content: {
|
|
3778
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
3779
|
+
};
|
|
3780
|
+
};
|
|
3781
|
+
/** @description Insufficient permissions */
|
|
3782
|
+
403: {
|
|
3783
|
+
headers: {
|
|
3784
|
+
[name: string]: unknown;
|
|
3785
|
+
};
|
|
3786
|
+
content: {
|
|
3787
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
3788
|
+
};
|
|
3789
|
+
};
|
|
3790
|
+
/** @description Not found */
|
|
3791
|
+
404: {
|
|
3792
|
+
headers: {
|
|
3793
|
+
[name: string]: unknown;
|
|
3794
|
+
};
|
|
3795
|
+
content: {
|
|
3796
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
3797
|
+
};
|
|
3798
|
+
};
|
|
3799
|
+
/** @description Not in a revocable state */
|
|
3800
|
+
409: {
|
|
3801
|
+
headers: {
|
|
3802
|
+
[name: string]: unknown;
|
|
3803
|
+
};
|
|
3804
|
+
content: {
|
|
3805
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
3806
|
+
};
|
|
3807
|
+
};
|
|
3808
|
+
/** @description Internal server error */
|
|
3809
|
+
500: {
|
|
3810
|
+
headers: {
|
|
3811
|
+
[name: string]: unknown;
|
|
3812
|
+
};
|
|
3813
|
+
content: {
|
|
3814
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
3815
|
+
};
|
|
3816
|
+
};
|
|
3817
|
+
};
|
|
3818
|
+
};
|
|
3348
3819
|
getAccessRequestStatus: {
|
|
3349
3820
|
parameters: {
|
|
3350
3821
|
query: {
|
|
@@ -5354,6 +5825,22 @@ export interface operations {
|
|
|
5354
5825
|
sort?: string;
|
|
5355
5826
|
/** @description Sort order: 'asc' for ascending, 'desc' for descending */
|
|
5356
5827
|
sort_order?: string;
|
|
5828
|
+
/** @description Alias type facet (comma-separated): `local_file`, `model_alias`, `api_model`, `fallback`. */
|
|
5829
|
+
type?: string;
|
|
5830
|
+
/** @description API-format facet (comma-separated), API rows only: `openai`, `responses`, `anthropic`,
|
|
5831
|
+
* `gemini`, `liberty`. `anthropic` matches both anthropic and anthropic_oauth aliases. */
|
|
5832
|
+
api_format?: string;
|
|
5833
|
+
/** @description Minimum local-file size in bytes (inclusive). Applies to local rows with a known size;
|
|
5834
|
+
* rows without a size (API/router) are not filtered out by size. */
|
|
5835
|
+
size_min?: number;
|
|
5836
|
+
/** @description Maximum local-file size in bytes (inclusive). See `size_min`. */
|
|
5837
|
+
size_max?: number;
|
|
5838
|
+
/** @description Capability facet (comma-separated), local rows only: `vision`, `tool_use`, `reasoning`.
|
|
5839
|
+
* A row passes only if it has metadata with every requested capability set true. */
|
|
5840
|
+
capability?: string;
|
|
5841
|
+
/** @description Free-text search (case-insensitive substring) over a row's identifying fields — alias/name,
|
|
5842
|
+
* repo, filename for local rows; id, name, base_url for API rows; alias for routers. */
|
|
5843
|
+
search?: string;
|
|
5357
5844
|
};
|
|
5358
5845
|
header?: never;
|
|
5359
5846
|
path?: never;
|
|
@@ -6608,39 +7095,25 @@ export interface operations {
|
|
|
6608
7095
|
};
|
|
6609
7096
|
};
|
|
6610
7097
|
};
|
|
6611
|
-
|
|
7098
|
+
archiveDownload: {
|
|
6612
7099
|
parameters: {
|
|
6613
7100
|
query?: never;
|
|
6614
7101
|
header?: never;
|
|
6615
|
-
path
|
|
6616
|
-
|
|
6617
|
-
|
|
6618
|
-
/** @description Refresh request - either bulk (source='all') or single model (source='model' with identifiers) */
|
|
6619
|
-
requestBody: {
|
|
6620
|
-
content: {
|
|
6621
|
-
"application/json": components["schemas"]["RefreshRequest"];
|
|
7102
|
+
path: {
|
|
7103
|
+
/** @description Unique identifier of the download request */
|
|
7104
|
+
id: string;
|
|
6622
7105
|
};
|
|
7106
|
+
cookie?: never;
|
|
6623
7107
|
};
|
|
7108
|
+
requestBody?: never;
|
|
6624
7109
|
responses: {
|
|
6625
|
-
/** @description
|
|
7110
|
+
/** @description Download request archived */
|
|
6626
7111
|
200: {
|
|
6627
7112
|
headers: {
|
|
6628
7113
|
[name: string]: unknown;
|
|
6629
7114
|
};
|
|
6630
7115
|
content: {
|
|
6631
|
-
"application/json": components["schemas"]["
|
|
6632
|
-
};
|
|
6633
|
-
};
|
|
6634
|
-
/** @description Metadata refresh queued in background (bulk mode) */
|
|
6635
|
-
202: {
|
|
6636
|
-
headers: {
|
|
6637
|
-
[name: string]: unknown;
|
|
6638
|
-
};
|
|
6639
|
-
content: {
|
|
6640
|
-
/** @example {
|
|
6641
|
-
* "num_queued": "all"
|
|
6642
|
-
* } */
|
|
6643
|
-
"application/json": components["schemas"]["RefreshResponse"];
|
|
7116
|
+
"application/json": components["schemas"]["DownloadRequest"];
|
|
6644
7117
|
};
|
|
6645
7118
|
};
|
|
6646
7119
|
/** @description Invalid request parameters */
|
|
@@ -6670,12 +7143,14 @@ export interface operations {
|
|
|
6670
7143
|
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
6671
7144
|
};
|
|
6672
7145
|
};
|
|
6673
|
-
/** @description
|
|
7146
|
+
/** @description Download request not found */
|
|
6674
7147
|
404: {
|
|
6675
7148
|
headers: {
|
|
6676
7149
|
[name: string]: unknown;
|
|
6677
7150
|
};
|
|
6678
|
-
content
|
|
7151
|
+
content: {
|
|
7152
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7153
|
+
};
|
|
6679
7154
|
};
|
|
6680
7155
|
/** @description Internal server error */
|
|
6681
7156
|
500: {
|
|
@@ -6688,25 +7163,25 @@ export interface operations {
|
|
|
6688
7163
|
};
|
|
6689
7164
|
};
|
|
6690
7165
|
};
|
|
6691
|
-
|
|
7166
|
+
retryDownload: {
|
|
6692
7167
|
parameters: {
|
|
6693
7168
|
query?: never;
|
|
6694
7169
|
header?: never;
|
|
6695
7170
|
path: {
|
|
6696
|
-
/** @description
|
|
7171
|
+
/** @description Unique identifier of the download request */
|
|
6697
7172
|
id: string;
|
|
6698
7173
|
};
|
|
6699
7174
|
cookie?: never;
|
|
6700
7175
|
};
|
|
6701
7176
|
requestBody?: never;
|
|
6702
7177
|
responses: {
|
|
6703
|
-
/** @description
|
|
7178
|
+
/** @description Download request reset and re-started */
|
|
6704
7179
|
200: {
|
|
6705
7180
|
headers: {
|
|
6706
7181
|
[name: string]: unknown;
|
|
6707
7182
|
};
|
|
6708
7183
|
content: {
|
|
6709
|
-
"application/json": components["schemas"]["
|
|
7184
|
+
"application/json": components["schemas"]["DownloadRequest"];
|
|
6710
7185
|
};
|
|
6711
7186
|
};
|
|
6712
7187
|
/** @description Invalid request parameters */
|
|
@@ -6736,19 +7211,12 @@ export interface operations {
|
|
|
6736
7211
|
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
6737
7212
|
};
|
|
6738
7213
|
};
|
|
6739
|
-
/** @description
|
|
7214
|
+
/** @description Download request not found */
|
|
6740
7215
|
404: {
|
|
6741
7216
|
headers: {
|
|
6742
7217
|
[name: string]: unknown;
|
|
6743
7218
|
};
|
|
6744
7219
|
content: {
|
|
6745
|
-
/** @example {
|
|
6746
|
-
* "error": {
|
|
6747
|
-
* "code": "alias_not_found",
|
|
6748
|
-
* "message": "Alias 'unknown:model' not found",
|
|
6749
|
-
* "type": "not_found_error"
|
|
6750
|
-
* }
|
|
6751
|
-
* } */
|
|
6752
7220
|
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
6753
7221
|
};
|
|
6754
7222
|
};
|
|
@@ -6763,25 +7231,39 @@ export interface operations {
|
|
|
6763
7231
|
};
|
|
6764
7232
|
};
|
|
6765
7233
|
};
|
|
6766
|
-
|
|
7234
|
+
refreshModelMetadata: {
|
|
6767
7235
|
parameters: {
|
|
6768
7236
|
query?: never;
|
|
6769
7237
|
header?: never;
|
|
6770
7238
|
path?: never;
|
|
6771
7239
|
cookie?: never;
|
|
6772
7240
|
};
|
|
6773
|
-
|
|
7241
|
+
/** @description Refresh request - either bulk (source='all') or single model (source='model' with identifiers) */
|
|
7242
|
+
requestBody: {
|
|
7243
|
+
content: {
|
|
7244
|
+
"application/json": components["schemas"]["RefreshRequest"];
|
|
7245
|
+
};
|
|
7246
|
+
};
|
|
6774
7247
|
responses: {
|
|
6775
|
-
/** @description
|
|
7248
|
+
/** @description Metadata refreshed successfully (sync mode) */
|
|
6776
7249
|
200: {
|
|
7250
|
+
headers: {
|
|
7251
|
+
[name: string]: unknown;
|
|
7252
|
+
};
|
|
7253
|
+
content: {
|
|
7254
|
+
"application/json": components["schemas"]["ModelAliasResponse"];
|
|
7255
|
+
};
|
|
7256
|
+
};
|
|
7257
|
+
/** @description Metadata refresh queued in background (bulk mode) */
|
|
7258
|
+
202: {
|
|
6777
7259
|
headers: {
|
|
6778
7260
|
[name: string]: unknown;
|
|
6779
7261
|
};
|
|
6780
7262
|
content: {
|
|
6781
7263
|
/** @example {
|
|
6782
|
-
* "
|
|
7264
|
+
* "num_queued": "all"
|
|
6783
7265
|
* } */
|
|
6784
|
-
"application/json": components["schemas"]["
|
|
7266
|
+
"application/json": components["schemas"]["RefreshResponse"];
|
|
6785
7267
|
};
|
|
6786
7268
|
};
|
|
6787
7269
|
/** @description Invalid request parameters */
|
|
@@ -6811,6 +7293,13 @@ export interface operations {
|
|
|
6811
7293
|
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
6812
7294
|
};
|
|
6813
7295
|
};
|
|
7296
|
+
/** @description Model alias not found for specified repo/filename/snapshot */
|
|
7297
|
+
404: {
|
|
7298
|
+
headers: {
|
|
7299
|
+
[name: string]: unknown;
|
|
7300
|
+
};
|
|
7301
|
+
content?: never;
|
|
7302
|
+
};
|
|
6814
7303
|
/** @description Internal server error */
|
|
6815
7304
|
500: {
|
|
6816
7305
|
headers: {
|
|
@@ -6822,51 +7311,26 @@ export interface operations {
|
|
|
6822
7311
|
};
|
|
6823
7312
|
};
|
|
6824
7313
|
};
|
|
6825
|
-
|
|
7314
|
+
createModelRouter: {
|
|
6826
7315
|
parameters: {
|
|
6827
7316
|
query?: never;
|
|
6828
7317
|
header?: never;
|
|
6829
7318
|
path?: never;
|
|
6830
7319
|
cookie?: never;
|
|
6831
7320
|
};
|
|
6832
|
-
requestBody
|
|
7321
|
+
requestBody: {
|
|
7322
|
+
content: {
|
|
7323
|
+
"application/json": components["schemas"]["ModelRouterRequest"];
|
|
7324
|
+
};
|
|
7325
|
+
};
|
|
6833
7326
|
responses: {
|
|
6834
|
-
/** @description
|
|
6835
|
-
|
|
7327
|
+
/** @description Model-router created */
|
|
7328
|
+
201: {
|
|
6836
7329
|
headers: {
|
|
6837
7330
|
[name: string]: unknown;
|
|
6838
7331
|
};
|
|
6839
7332
|
content: {
|
|
6840
|
-
|
|
6841
|
-
* {
|
|
6842
|
-
* "current_value": "info",
|
|
6843
|
-
* "default_value": "warn",
|
|
6844
|
-
* "key": "BODHI_LOG_LEVEL",
|
|
6845
|
-
* "metadata": {
|
|
6846
|
-
* "options": [
|
|
6847
|
-
* "error",
|
|
6848
|
-
* "warn",
|
|
6849
|
-
* "info",
|
|
6850
|
-
* "debug",
|
|
6851
|
-
* "trace"
|
|
6852
|
-
* ],
|
|
6853
|
-
* "type": "option"
|
|
6854
|
-
* },
|
|
6855
|
-
* "source": "environment"
|
|
6856
|
-
* },
|
|
6857
|
-
* {
|
|
6858
|
-
* "current_value": 1135,
|
|
6859
|
-
* "default_value": 1135,
|
|
6860
|
-
* "key": "BODHI_PORT",
|
|
6861
|
-
* "metadata": {
|
|
6862
|
-
* "max": 65535,
|
|
6863
|
-
* "min": 1025,
|
|
6864
|
-
* "type": "number"
|
|
6865
|
-
* },
|
|
6866
|
-
* "source": "default"
|
|
6867
|
-
* }
|
|
6868
|
-
* ] */
|
|
6869
|
-
"application/json": components["schemas"]["SettingInfo"][];
|
|
7333
|
+
"application/json": components["schemas"]["ModelRouterResponse"];
|
|
6870
7334
|
};
|
|
6871
7335
|
};
|
|
6872
7336
|
/** @description Invalid request parameters */
|
|
@@ -6907,7 +7371,432 @@ export interface operations {
|
|
|
6907
7371
|
};
|
|
6908
7372
|
};
|
|
6909
7373
|
};
|
|
6910
|
-
|
|
7374
|
+
getModelRouter: {
|
|
7375
|
+
parameters: {
|
|
7376
|
+
query?: never;
|
|
7377
|
+
header?: never;
|
|
7378
|
+
path: {
|
|
7379
|
+
/** @description Unique identifier for the model-router alias */
|
|
7380
|
+
id: string;
|
|
7381
|
+
};
|
|
7382
|
+
cookie?: never;
|
|
7383
|
+
};
|
|
7384
|
+
requestBody?: never;
|
|
7385
|
+
responses: {
|
|
7386
|
+
/** @description Model-router configuration retrieved */
|
|
7387
|
+
200: {
|
|
7388
|
+
headers: {
|
|
7389
|
+
[name: string]: unknown;
|
|
7390
|
+
};
|
|
7391
|
+
content: {
|
|
7392
|
+
"application/json": components["schemas"]["ModelRouterResponse"];
|
|
7393
|
+
};
|
|
7394
|
+
};
|
|
7395
|
+
/** @description Invalid request parameters */
|
|
7396
|
+
400: {
|
|
7397
|
+
headers: {
|
|
7398
|
+
[name: string]: unknown;
|
|
7399
|
+
};
|
|
7400
|
+
content: {
|
|
7401
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7402
|
+
};
|
|
7403
|
+
};
|
|
7404
|
+
/** @description Not authenticated */
|
|
7405
|
+
401: {
|
|
7406
|
+
headers: {
|
|
7407
|
+
[name: string]: unknown;
|
|
7408
|
+
};
|
|
7409
|
+
content: {
|
|
7410
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7411
|
+
};
|
|
7412
|
+
};
|
|
7413
|
+
/** @description Insufficient permissions */
|
|
7414
|
+
403: {
|
|
7415
|
+
headers: {
|
|
7416
|
+
[name: string]: unknown;
|
|
7417
|
+
};
|
|
7418
|
+
content: {
|
|
7419
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7420
|
+
};
|
|
7421
|
+
};
|
|
7422
|
+
/** @description Model-router with specified ID not found */
|
|
7423
|
+
404: {
|
|
7424
|
+
headers: {
|
|
7425
|
+
[name: string]: unknown;
|
|
7426
|
+
};
|
|
7427
|
+
content: {
|
|
7428
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7429
|
+
};
|
|
7430
|
+
};
|
|
7431
|
+
/** @description Internal server error */
|
|
7432
|
+
500: {
|
|
7433
|
+
headers: {
|
|
7434
|
+
[name: string]: unknown;
|
|
7435
|
+
};
|
|
7436
|
+
content: {
|
|
7437
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7438
|
+
};
|
|
7439
|
+
};
|
|
7440
|
+
};
|
|
7441
|
+
};
|
|
7442
|
+
updateModelRouter: {
|
|
7443
|
+
parameters: {
|
|
7444
|
+
query?: never;
|
|
7445
|
+
header?: never;
|
|
7446
|
+
path: {
|
|
7447
|
+
/** @description Model-router ID */
|
|
7448
|
+
id: string;
|
|
7449
|
+
};
|
|
7450
|
+
cookie?: never;
|
|
7451
|
+
};
|
|
7452
|
+
requestBody: {
|
|
7453
|
+
content: {
|
|
7454
|
+
"application/json": components["schemas"]["ModelRouterRequest"];
|
|
7455
|
+
};
|
|
7456
|
+
};
|
|
7457
|
+
responses: {
|
|
7458
|
+
/** @description Model-router updated */
|
|
7459
|
+
200: {
|
|
7460
|
+
headers: {
|
|
7461
|
+
[name: string]: unknown;
|
|
7462
|
+
};
|
|
7463
|
+
content: {
|
|
7464
|
+
"application/json": components["schemas"]["ModelRouterResponse"];
|
|
7465
|
+
};
|
|
7466
|
+
};
|
|
7467
|
+
/** @description Invalid request parameters */
|
|
7468
|
+
400: {
|
|
7469
|
+
headers: {
|
|
7470
|
+
[name: string]: unknown;
|
|
7471
|
+
};
|
|
7472
|
+
content: {
|
|
7473
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7474
|
+
};
|
|
7475
|
+
};
|
|
7476
|
+
/** @description Not authenticated */
|
|
7477
|
+
401: {
|
|
7478
|
+
headers: {
|
|
7479
|
+
[name: string]: unknown;
|
|
7480
|
+
};
|
|
7481
|
+
content: {
|
|
7482
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7483
|
+
};
|
|
7484
|
+
};
|
|
7485
|
+
/** @description Insufficient permissions */
|
|
7486
|
+
403: {
|
|
7487
|
+
headers: {
|
|
7488
|
+
[name: string]: unknown;
|
|
7489
|
+
};
|
|
7490
|
+
content: {
|
|
7491
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7492
|
+
};
|
|
7493
|
+
};
|
|
7494
|
+
/** @description Model-router not found */
|
|
7495
|
+
404: {
|
|
7496
|
+
headers: {
|
|
7497
|
+
[name: string]: unknown;
|
|
7498
|
+
};
|
|
7499
|
+
content: {
|
|
7500
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7501
|
+
};
|
|
7502
|
+
};
|
|
7503
|
+
/** @description Internal server error */
|
|
7504
|
+
500: {
|
|
7505
|
+
headers: {
|
|
7506
|
+
[name: string]: unknown;
|
|
7507
|
+
};
|
|
7508
|
+
content: {
|
|
7509
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7510
|
+
};
|
|
7511
|
+
};
|
|
7512
|
+
};
|
|
7513
|
+
};
|
|
7514
|
+
deleteModelRouter: {
|
|
7515
|
+
parameters: {
|
|
7516
|
+
query?: never;
|
|
7517
|
+
header?: never;
|
|
7518
|
+
path: {
|
|
7519
|
+
/** @description Model-router ID */
|
|
7520
|
+
id: string;
|
|
7521
|
+
};
|
|
7522
|
+
cookie?: never;
|
|
7523
|
+
};
|
|
7524
|
+
requestBody?: never;
|
|
7525
|
+
responses: {
|
|
7526
|
+
/** @description Model-router deleted */
|
|
7527
|
+
204: {
|
|
7528
|
+
headers: {
|
|
7529
|
+
[name: string]: unknown;
|
|
7530
|
+
};
|
|
7531
|
+
content?: never;
|
|
7532
|
+
};
|
|
7533
|
+
/** @description Invalid request parameters */
|
|
7534
|
+
400: {
|
|
7535
|
+
headers: {
|
|
7536
|
+
[name: string]: unknown;
|
|
7537
|
+
};
|
|
7538
|
+
content: {
|
|
7539
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7540
|
+
};
|
|
7541
|
+
};
|
|
7542
|
+
/** @description Not authenticated */
|
|
7543
|
+
401: {
|
|
7544
|
+
headers: {
|
|
7545
|
+
[name: string]: unknown;
|
|
7546
|
+
};
|
|
7547
|
+
content: {
|
|
7548
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7549
|
+
};
|
|
7550
|
+
};
|
|
7551
|
+
/** @description Insufficient permissions */
|
|
7552
|
+
403: {
|
|
7553
|
+
headers: {
|
|
7554
|
+
[name: string]: unknown;
|
|
7555
|
+
};
|
|
7556
|
+
content: {
|
|
7557
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7558
|
+
};
|
|
7559
|
+
};
|
|
7560
|
+
/** @description Model-router not found */
|
|
7561
|
+
404: {
|
|
7562
|
+
headers: {
|
|
7563
|
+
[name: string]: unknown;
|
|
7564
|
+
};
|
|
7565
|
+
content: {
|
|
7566
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7567
|
+
};
|
|
7568
|
+
};
|
|
7569
|
+
/** @description Internal server error */
|
|
7570
|
+
500: {
|
|
7571
|
+
headers: {
|
|
7572
|
+
[name: string]: unknown;
|
|
7573
|
+
};
|
|
7574
|
+
content: {
|
|
7575
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7576
|
+
};
|
|
7577
|
+
};
|
|
7578
|
+
};
|
|
7579
|
+
};
|
|
7580
|
+
getAlias: {
|
|
7581
|
+
parameters: {
|
|
7582
|
+
query?: never;
|
|
7583
|
+
header?: never;
|
|
7584
|
+
path: {
|
|
7585
|
+
/** @description UUID of the alias */
|
|
7586
|
+
id: string;
|
|
7587
|
+
};
|
|
7588
|
+
cookie?: never;
|
|
7589
|
+
};
|
|
7590
|
+
requestBody?: never;
|
|
7591
|
+
responses: {
|
|
7592
|
+
/** @description Model alias details */
|
|
7593
|
+
200: {
|
|
7594
|
+
headers: {
|
|
7595
|
+
[name: string]: unknown;
|
|
7596
|
+
};
|
|
7597
|
+
content: {
|
|
7598
|
+
"application/json": components["schemas"]["UserAliasResponse"];
|
|
7599
|
+
};
|
|
7600
|
+
};
|
|
7601
|
+
/** @description Invalid request parameters */
|
|
7602
|
+
400: {
|
|
7603
|
+
headers: {
|
|
7604
|
+
[name: string]: unknown;
|
|
7605
|
+
};
|
|
7606
|
+
content: {
|
|
7607
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7608
|
+
};
|
|
7609
|
+
};
|
|
7610
|
+
/** @description Not authenticated */
|
|
7611
|
+
401: {
|
|
7612
|
+
headers: {
|
|
7613
|
+
[name: string]: unknown;
|
|
7614
|
+
};
|
|
7615
|
+
content: {
|
|
7616
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7617
|
+
};
|
|
7618
|
+
};
|
|
7619
|
+
/** @description Insufficient permissions */
|
|
7620
|
+
403: {
|
|
7621
|
+
headers: {
|
|
7622
|
+
[name: string]: unknown;
|
|
7623
|
+
};
|
|
7624
|
+
content: {
|
|
7625
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7626
|
+
};
|
|
7627
|
+
};
|
|
7628
|
+
/** @description Alias not found */
|
|
7629
|
+
404: {
|
|
7630
|
+
headers: {
|
|
7631
|
+
[name: string]: unknown;
|
|
7632
|
+
};
|
|
7633
|
+
content: {
|
|
7634
|
+
/** @example {
|
|
7635
|
+
* "error": {
|
|
7636
|
+
* "code": "alias_not_found",
|
|
7637
|
+
* "message": "Alias 'unknown:model' not found",
|
|
7638
|
+
* "type": "not_found_error"
|
|
7639
|
+
* }
|
|
7640
|
+
* } */
|
|
7641
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7642
|
+
};
|
|
7643
|
+
};
|
|
7644
|
+
/** @description Internal server error */
|
|
7645
|
+
500: {
|
|
7646
|
+
headers: {
|
|
7647
|
+
[name: string]: unknown;
|
|
7648
|
+
};
|
|
7649
|
+
content: {
|
|
7650
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7651
|
+
};
|
|
7652
|
+
};
|
|
7653
|
+
};
|
|
7654
|
+
};
|
|
7655
|
+
getQueueStatus: {
|
|
7656
|
+
parameters: {
|
|
7657
|
+
query?: never;
|
|
7658
|
+
header?: never;
|
|
7659
|
+
path?: never;
|
|
7660
|
+
cookie?: never;
|
|
7661
|
+
};
|
|
7662
|
+
requestBody?: never;
|
|
7663
|
+
responses: {
|
|
7664
|
+
/** @description Queue status retrieved successfully */
|
|
7665
|
+
200: {
|
|
7666
|
+
headers: {
|
|
7667
|
+
[name: string]: unknown;
|
|
7668
|
+
};
|
|
7669
|
+
content: {
|
|
7670
|
+
/** @example {
|
|
7671
|
+
* "status": "idle"
|
|
7672
|
+
* } */
|
|
7673
|
+
"application/json": components["schemas"]["QueueStatusResponse"];
|
|
7674
|
+
};
|
|
7675
|
+
};
|
|
7676
|
+
/** @description Invalid request parameters */
|
|
7677
|
+
400: {
|
|
7678
|
+
headers: {
|
|
7679
|
+
[name: string]: unknown;
|
|
7680
|
+
};
|
|
7681
|
+
content: {
|
|
7682
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7683
|
+
};
|
|
7684
|
+
};
|
|
7685
|
+
/** @description Not authenticated */
|
|
7686
|
+
401: {
|
|
7687
|
+
headers: {
|
|
7688
|
+
[name: string]: unknown;
|
|
7689
|
+
};
|
|
7690
|
+
content: {
|
|
7691
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7692
|
+
};
|
|
7693
|
+
};
|
|
7694
|
+
/** @description Insufficient permissions */
|
|
7695
|
+
403: {
|
|
7696
|
+
headers: {
|
|
7697
|
+
[name: string]: unknown;
|
|
7698
|
+
};
|
|
7699
|
+
content: {
|
|
7700
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7701
|
+
};
|
|
7702
|
+
};
|
|
7703
|
+
/** @description Internal server error */
|
|
7704
|
+
500: {
|
|
7705
|
+
headers: {
|
|
7706
|
+
[name: string]: unknown;
|
|
7707
|
+
};
|
|
7708
|
+
content: {
|
|
7709
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7710
|
+
};
|
|
7711
|
+
};
|
|
7712
|
+
};
|
|
7713
|
+
};
|
|
7714
|
+
listSettings: {
|
|
7715
|
+
parameters: {
|
|
7716
|
+
query?: never;
|
|
7717
|
+
header?: never;
|
|
7718
|
+
path?: never;
|
|
7719
|
+
cookie?: never;
|
|
7720
|
+
};
|
|
7721
|
+
requestBody?: never;
|
|
7722
|
+
responses: {
|
|
7723
|
+
/** @description Application settings retrieved successfully */
|
|
7724
|
+
200: {
|
|
7725
|
+
headers: {
|
|
7726
|
+
[name: string]: unknown;
|
|
7727
|
+
};
|
|
7728
|
+
content: {
|
|
7729
|
+
/** @example [
|
|
7730
|
+
* {
|
|
7731
|
+
* "current_value": "info",
|
|
7732
|
+
* "default_value": "warn",
|
|
7733
|
+
* "key": "BODHI_LOG_LEVEL",
|
|
7734
|
+
* "metadata": {
|
|
7735
|
+
* "options": [
|
|
7736
|
+
* "error",
|
|
7737
|
+
* "warn",
|
|
7738
|
+
* "info",
|
|
7739
|
+
* "debug",
|
|
7740
|
+
* "trace"
|
|
7741
|
+
* ],
|
|
7742
|
+
* "type": "option"
|
|
7743
|
+
* },
|
|
7744
|
+
* "source": "environment"
|
|
7745
|
+
* },
|
|
7746
|
+
* {
|
|
7747
|
+
* "current_value": 1135,
|
|
7748
|
+
* "default_value": 1135,
|
|
7749
|
+
* "key": "BODHI_PORT",
|
|
7750
|
+
* "metadata": {
|
|
7751
|
+
* "max": 65535,
|
|
7752
|
+
* "min": 1025,
|
|
7753
|
+
* "type": "number"
|
|
7754
|
+
* },
|
|
7755
|
+
* "source": "default"
|
|
7756
|
+
* }
|
|
7757
|
+
* ] */
|
|
7758
|
+
"application/json": components["schemas"]["SettingInfo"][];
|
|
7759
|
+
};
|
|
7760
|
+
};
|
|
7761
|
+
/** @description Invalid request parameters */
|
|
7762
|
+
400: {
|
|
7763
|
+
headers: {
|
|
7764
|
+
[name: string]: unknown;
|
|
7765
|
+
};
|
|
7766
|
+
content: {
|
|
7767
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7768
|
+
};
|
|
7769
|
+
};
|
|
7770
|
+
/** @description Not authenticated */
|
|
7771
|
+
401: {
|
|
7772
|
+
headers: {
|
|
7773
|
+
[name: string]: unknown;
|
|
7774
|
+
};
|
|
7775
|
+
content: {
|
|
7776
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7777
|
+
};
|
|
7778
|
+
};
|
|
7779
|
+
/** @description Insufficient permissions */
|
|
7780
|
+
403: {
|
|
7781
|
+
headers: {
|
|
7782
|
+
[name: string]: unknown;
|
|
7783
|
+
};
|
|
7784
|
+
content: {
|
|
7785
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7786
|
+
};
|
|
7787
|
+
};
|
|
7788
|
+
/** @description Internal server error */
|
|
7789
|
+
500: {
|
|
7790
|
+
headers: {
|
|
7791
|
+
[name: string]: unknown;
|
|
7792
|
+
};
|
|
7793
|
+
content: {
|
|
7794
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
7795
|
+
};
|
|
7796
|
+
};
|
|
7797
|
+
};
|
|
7798
|
+
};
|
|
7799
|
+
updateSetting: {
|
|
6911
7800
|
parameters: {
|
|
6912
7801
|
query?: never;
|
|
6913
7802
|
header?: never;
|
|
@@ -6927,7 +7816,7 @@ export interface operations {
|
|
|
6927
7816
|
* "value": "debug"
|
|
6928
7817
|
* } */
|
|
6929
7818
|
"application/json": {
|
|
6930
|
-
/** @description
|
|
7819
|
+
/** @description type depends on setting metadata */
|
|
6931
7820
|
value: unknown;
|
|
6932
7821
|
};
|
|
6933
7822
|
};
|
|
@@ -7586,6 +8475,75 @@ export interface operations {
|
|
|
7586
8475
|
};
|
|
7587
8476
|
};
|
|
7588
8477
|
};
|
|
8478
|
+
deleteApiToken: {
|
|
8479
|
+
parameters: {
|
|
8480
|
+
query?: never;
|
|
8481
|
+
header?: never;
|
|
8482
|
+
path: {
|
|
8483
|
+
/**
|
|
8484
|
+
* @description Unique identifier of the API token to delete
|
|
8485
|
+
* @example 550e8400-e29b-41d4-a716-446655440000
|
|
8486
|
+
*/
|
|
8487
|
+
id: string;
|
|
8488
|
+
};
|
|
8489
|
+
cookie?: never;
|
|
8490
|
+
};
|
|
8491
|
+
requestBody?: never;
|
|
8492
|
+
responses: {
|
|
8493
|
+
/** @description Token deleted successfully */
|
|
8494
|
+
204: {
|
|
8495
|
+
headers: {
|
|
8496
|
+
[name: string]: unknown;
|
|
8497
|
+
};
|
|
8498
|
+
content?: never;
|
|
8499
|
+
};
|
|
8500
|
+
/** @description Invalid request parameters */
|
|
8501
|
+
400: {
|
|
8502
|
+
headers: {
|
|
8503
|
+
[name: string]: unknown;
|
|
8504
|
+
};
|
|
8505
|
+
content: {
|
|
8506
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
8507
|
+
};
|
|
8508
|
+
};
|
|
8509
|
+
/** @description Not authenticated */
|
|
8510
|
+
401: {
|
|
8511
|
+
headers: {
|
|
8512
|
+
[name: string]: unknown;
|
|
8513
|
+
};
|
|
8514
|
+
content: {
|
|
8515
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
8516
|
+
};
|
|
8517
|
+
};
|
|
8518
|
+
/** @description Insufficient permissions */
|
|
8519
|
+
403: {
|
|
8520
|
+
headers: {
|
|
8521
|
+
[name: string]: unknown;
|
|
8522
|
+
};
|
|
8523
|
+
content: {
|
|
8524
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
8525
|
+
};
|
|
8526
|
+
};
|
|
8527
|
+
/** @description Token not found */
|
|
8528
|
+
404: {
|
|
8529
|
+
headers: {
|
|
8530
|
+
[name: string]: unknown;
|
|
8531
|
+
};
|
|
8532
|
+
content: {
|
|
8533
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
8534
|
+
};
|
|
8535
|
+
};
|
|
8536
|
+
/** @description Internal server error */
|
|
8537
|
+
500: {
|
|
8538
|
+
headers: {
|
|
8539
|
+
[name: string]: unknown;
|
|
8540
|
+
};
|
|
8541
|
+
content: {
|
|
8542
|
+
"application/json": components["schemas"]["BodhiErrorResponse"];
|
|
8543
|
+
};
|
|
8544
|
+
};
|
|
8545
|
+
};
|
|
8546
|
+
};
|
|
7589
8547
|
getCurrentUser: {
|
|
7590
8548
|
parameters: {
|
|
7591
8549
|
query?: never;
|