@bodhiapp/ts-client 0.1.27 → 0.1.28
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/anthropic.d.ts +1 -0
- package/dist/anthropic.js +20 -0
- package/dist/anthropic.mjs +2 -0
- package/dist/gemini.d.ts +1 -0
- package/dist/gemini.js +20 -0
- package/dist/gemini.mjs +2 -0
- package/dist/index.d.ts +2 -0
- package/dist/openapi-typescript/openapi-schema-anthropic.d.ts +3391 -0
- package/dist/openapi-typescript/openapi-schema-anthropic.ts +3392 -0
- package/dist/openapi-typescript/openapi-schema-gemini.d.ts +3708 -0
- package/dist/openapi-typescript/openapi-schema-gemini.ts +3709 -0
- package/dist/openapi-typescript/openapi-schema.d.ts +139 -11
- package/dist/openapi-typescript/openapi-schema.ts +139 -11
- package/dist/types/types.gen.d.ts +166 -7
- package/dist/types/types.gen.ts +177 -7
- package/dist/types-anthropic/index.d.ts +1 -0
- package/dist/types-anthropic/index.ts +2 -0
- package/dist/types-anthropic/types.gen.d.ts +2241 -0
- package/dist/types-anthropic/types.gen.ts +2416 -0
- package/dist/types-gemini/index.d.ts +1 -0
- package/dist/types-gemini/index.ts +2 -0
- package/dist/types-gemini/types.gen.d.ts +4622 -0
- package/dist/types-gemini/types.gen.ts +4849 -0
- package/package.json +23 -7
|
@@ -668,7 +668,7 @@ export interface paths {
|
|
|
668
668
|
};
|
|
669
669
|
/**
|
|
670
670
|
* Get Available API Formats
|
|
671
|
-
* @description Retrieves list of supported API formats/protocols: 'openai' (Chat Completions)
|
|
671
|
+
* @description Retrieves list of supported API formats/protocols: 'openai' (Chat Completions), 'openai_responses' (Responses API), 'anthropic' (Messages API), 'anthropic_oauth' (Anthropic via OAuth Bearer token), and 'gemini' (Google Gemini).
|
|
672
672
|
*/
|
|
673
673
|
get: operations["getApiFormats"];
|
|
674
674
|
put?: never;
|
|
@@ -1257,16 +1257,47 @@ export interface components {
|
|
|
1257
1257
|
/** @description Response envelope for model aliases - hides internal implementation details
|
|
1258
1258
|
* Uses untagged serialization - each variant has its own "source" field */
|
|
1259
1259
|
AliasResponse: components["schemas"]["UserAliasResponse"] | components["schemas"]["ModelAliasResponse"] | components["schemas"]["ApiAliasResponse"];
|
|
1260
|
+
/** @description Mirrors Anthropic's `ModelInfo` schema — full model metadata returned by
|
|
1261
|
+
* `GET /anthropic/v1/models` and stored alongside model IDs in `ApiAlias.models`.
|
|
1262
|
+
*
|
|
1263
|
+
* **IMPORTANT**: Do NOT add `#[serde(skip_serializing_if = "Option::is_none")]` on the
|
|
1264
|
+
* `Option` fields below. The Anthropic API spec marks `capabilities`, `max_input_tokens`,
|
|
1265
|
+
* and `max_tokens` as **required** (nullable via `anyOf [T, null]`). They must serialize
|
|
1266
|
+
* as `null` when absent, not be omitted from the JSON output. */
|
|
1267
|
+
AnthropicModel: {
|
|
1268
|
+
id: string;
|
|
1269
|
+
display_name: string;
|
|
1270
|
+
/** @description RFC 3339 datetime string representing the model's release date. */
|
|
1271
|
+
created_at: string;
|
|
1272
|
+
capabilities?: null | components["schemas"]["AnthropicModelCapabilities"];
|
|
1273
|
+
/** Format: int64 */
|
|
1274
|
+
max_input_tokens?: number | null;
|
|
1275
|
+
/** Format: int64 */
|
|
1276
|
+
max_tokens?: number | null;
|
|
1277
|
+
/** @description Always `"model"` — included for Anthropic API compatibility. */
|
|
1278
|
+
type: string;
|
|
1279
|
+
};
|
|
1280
|
+
/** @description Model capability information (Anthropic ModelCapabilities schema). */
|
|
1281
|
+
AnthropicModelCapabilities: {
|
|
1282
|
+
batch: components["schemas"]["CapabilitySupport"];
|
|
1283
|
+
citations: components["schemas"]["CapabilitySupport"];
|
|
1284
|
+
code_execution: components["schemas"]["CapabilitySupport"];
|
|
1285
|
+
context_management: components["schemas"]["ContextManagementCapability"];
|
|
1286
|
+
effort: components["schemas"]["EffortCapability"];
|
|
1287
|
+
image_input: components["schemas"]["CapabilitySupport"];
|
|
1288
|
+
pdf_input: components["schemas"]["CapabilitySupport"];
|
|
1289
|
+
structured_outputs: components["schemas"]["CapabilitySupport"];
|
|
1290
|
+
thinking: components["schemas"]["ThinkingCapability"];
|
|
1291
|
+
};
|
|
1260
1292
|
ApiAlias: {
|
|
1261
1293
|
id: string;
|
|
1262
1294
|
api_format: components["schemas"]["ApiFormat"];
|
|
1263
1295
|
base_url: string;
|
|
1264
|
-
models: components["schemas"]["
|
|
1296
|
+
models: components["schemas"]["ApiModelVec"];
|
|
1265
1297
|
prefix?: string | null;
|
|
1266
1298
|
forward_all_with_prefix: boolean;
|
|
1267
|
-
|
|
1268
|
-
|
|
1269
|
-
cache_fetched_at: string;
|
|
1299
|
+
extra_headers?: unknown;
|
|
1300
|
+
extra_body?: unknown;
|
|
1270
1301
|
/** Format: date-time */
|
|
1271
1302
|
created_at: string;
|
|
1272
1303
|
/** Format: date-time */
|
|
@@ -1279,10 +1310,12 @@ export interface components {
|
|
|
1279
1310
|
api_format: components["schemas"]["ApiFormat"];
|
|
1280
1311
|
base_url: string;
|
|
1281
1312
|
has_api_key: boolean;
|
|
1282
|
-
/** @description Models available through this alias
|
|
1283
|
-
models:
|
|
1313
|
+
/** @description Models available through this alias with full provider metadata */
|
|
1314
|
+
models: components["schemas"]["ApiModel"][];
|
|
1284
1315
|
prefix?: string | null;
|
|
1285
1316
|
forward_all_with_prefix: boolean;
|
|
1317
|
+
extra_headers?: unknown;
|
|
1318
|
+
extra_body?: unknown;
|
|
1286
1319
|
/** Format: date-time */
|
|
1287
1320
|
created_at: string;
|
|
1288
1321
|
/** Format: date-time */
|
|
@@ -1292,7 +1325,7 @@ export interface components {
|
|
|
1292
1325
|
* @description API format/protocol specification
|
|
1293
1326
|
* @enum {string}
|
|
1294
1327
|
*/
|
|
1295
|
-
ApiFormat: "openai" | "openai_responses" | "
|
|
1328
|
+
ApiFormat: "openai" | "openai_responses" | "anthropic" | "anthropic_oauth" | "gemini";
|
|
1296
1329
|
/**
|
|
1297
1330
|
* @description Response containing available API formats
|
|
1298
1331
|
* @example {
|
|
@@ -1316,6 +1349,18 @@ export interface components {
|
|
|
1316
1349
|
/** @enum {string} */
|
|
1317
1350
|
action: "set";
|
|
1318
1351
|
};
|
|
1352
|
+
/** @description Discriminated union of provider-specific model metadata.
|
|
1353
|
+
* Stored as JSON in `api_model_aliases.models`. */
|
|
1354
|
+
ApiModel: (components["schemas"]["Model"] & {
|
|
1355
|
+
/** @enum {string} */
|
|
1356
|
+
provider: "openai";
|
|
1357
|
+
}) | (components["schemas"]["AnthropicModel"] & {
|
|
1358
|
+
/** @enum {string} */
|
|
1359
|
+
provider: "anthropic";
|
|
1360
|
+
}) | (components["schemas"]["GeminiModel"] & {
|
|
1361
|
+
/** @enum {string} */
|
|
1362
|
+
provider: "gemini";
|
|
1363
|
+
});
|
|
1319
1364
|
/**
|
|
1320
1365
|
* @description Input request for creating or updating an API model configuration.
|
|
1321
1366
|
* @example {
|
|
@@ -1345,7 +1390,14 @@ export interface components {
|
|
|
1345
1390
|
prefix?: string | null;
|
|
1346
1391
|
/** @description Whether to forward all requests with this prefix (true) or only selected models (false) */
|
|
1347
1392
|
forward_all_with_prefix?: boolean;
|
|
1348
|
-
|
|
1393
|
+
/** @description Optional extra HTTP headers to send upstream. Cannot include `Authorization`
|
|
1394
|
+
* or `x-api-key` — those are owned by provider clients. */
|
|
1395
|
+
extra_headers?: unknown;
|
|
1396
|
+
/** @description Optional extra fields to merge into the request body sent upstream */
|
|
1397
|
+
extra_body?: unknown;
|
|
1398
|
+
};
|
|
1399
|
+
/** @description DB-storable `Vec<ApiModel>` — stored as JSON binary in SeaORM columns. */
|
|
1400
|
+
ApiModelVec: components["schemas"]["ApiModel"][];
|
|
1349
1401
|
/** @enum {string} */
|
|
1350
1402
|
AppAccessRequestStatus: "draft" | "approved" | "denied" | "failed" | "expired";
|
|
1351
1403
|
/**
|
|
@@ -1526,6 +1578,10 @@ export interface components {
|
|
|
1526
1578
|
[key: string]: string;
|
|
1527
1579
|
} | null;
|
|
1528
1580
|
};
|
|
1581
|
+
/** @description Whether a single capability is supported by the model. */
|
|
1582
|
+
CapabilitySupport: {
|
|
1583
|
+
supported: boolean;
|
|
1584
|
+
};
|
|
1529
1585
|
/** @description Change user role request */
|
|
1530
1586
|
ChangeRoleRequest: {
|
|
1531
1587
|
/** @description Role to assign to the user */
|
|
@@ -1537,6 +1593,12 @@ export interface components {
|
|
|
1537
1593
|
/** Format: int64 */
|
|
1538
1594
|
max_output_tokens?: number | null;
|
|
1539
1595
|
};
|
|
1596
|
+
/** @description Context management capability details. */
|
|
1597
|
+
ContextManagementCapability: {
|
|
1598
|
+
clear_thinking_20251015?: null | components["schemas"]["CapabilitySupport"];
|
|
1599
|
+
clear_tool_uses_20250919?: null | components["schemas"]["CapabilitySupport"];
|
|
1600
|
+
compact_20260112?: null | components["schemas"]["CapabilitySupport"];
|
|
1601
|
+
};
|
|
1540
1602
|
CopyAliasRequest: {
|
|
1541
1603
|
alias: string;
|
|
1542
1604
|
};
|
|
@@ -1671,9 +1733,16 @@ export interface components {
|
|
|
1671
1733
|
token_endpoint_auth_method?: string | null;
|
|
1672
1734
|
registration_access_token?: string | null;
|
|
1673
1735
|
};
|
|
1736
|
+
/** @description Effort (reasoning_effort) capability details. */
|
|
1737
|
+
EffortCapability: {
|
|
1738
|
+
high: components["schemas"]["CapabilitySupport"];
|
|
1739
|
+
low: components["schemas"]["CapabilitySupport"];
|
|
1740
|
+
max: components["schemas"]["CapabilitySupport"];
|
|
1741
|
+
};
|
|
1674
1742
|
/**
|
|
1675
1743
|
* @description Request to fetch available models from provider
|
|
1676
1744
|
* @example {
|
|
1745
|
+
* "api_format": "openai",
|
|
1677
1746
|
* "base_url": "http://localhost:8080/v1",
|
|
1678
1747
|
* "creds": {
|
|
1679
1748
|
* "type": "api_key",
|
|
@@ -1686,9 +1755,16 @@ export interface components {
|
|
|
1686
1755
|
creds?: components["schemas"]["TestCreds"];
|
|
1687
1756
|
/** @description API base URL (required - always needed to know where to fetch models from) */
|
|
1688
1757
|
base_url: string;
|
|
1758
|
+
/** @description API format to use for fetching models (defaults to OpenAI Chat Completions) */
|
|
1759
|
+
api_format?: components["schemas"]["ApiFormat"];
|
|
1760
|
+
/** @description Optional extra HTTP headers. `Authorization` / `x-api-key` are forbidden. */
|
|
1761
|
+
extra_headers?: unknown;
|
|
1762
|
+
/** @description Optional extra fields to merge into the request body */
|
|
1763
|
+
extra_body?: unknown;
|
|
1689
1764
|
};
|
|
1690
1765
|
/**
|
|
1691
|
-
* @description
|
|
1766
|
+
* @description Returns model IDs only (not full metadata) to minimize information exposure —
|
|
1767
|
+
* the endpoint accepts an API key parameter. Full metadata is stored on create/update.
|
|
1692
1768
|
* @example {
|
|
1693
1769
|
* "models": [
|
|
1694
1770
|
* "gpt-4",
|
|
@@ -1702,6 +1778,27 @@ export interface components {
|
|
|
1702
1778
|
};
|
|
1703
1779
|
/** @enum {string} */
|
|
1704
1780
|
FlowType: "redirect" | "popup";
|
|
1781
|
+
/** @description Gemini `Model` schema (see `openapi-gemini.json`). */
|
|
1782
|
+
GeminiModel: {
|
|
1783
|
+
name: string;
|
|
1784
|
+
version?: string;
|
|
1785
|
+
displayName?: string | null;
|
|
1786
|
+
description?: string | null;
|
|
1787
|
+
/** Format: int64 */
|
|
1788
|
+
inputTokenLimit?: number | null;
|
|
1789
|
+
/** Format: int64 */
|
|
1790
|
+
outputTokenLimit?: number | null;
|
|
1791
|
+
supportedGenerationMethods?: string[];
|
|
1792
|
+
/** Format: float */
|
|
1793
|
+
temperature?: number | null;
|
|
1794
|
+
/** Format: float */
|
|
1795
|
+
maxTemperature?: number | null;
|
|
1796
|
+
/** Format: float */
|
|
1797
|
+
topP?: number | null;
|
|
1798
|
+
/** Format: int32 */
|
|
1799
|
+
topK?: number | null;
|
|
1800
|
+
thinking?: boolean | null;
|
|
1801
|
+
};
|
|
1705
1802
|
JsonVec: string[];
|
|
1706
1803
|
ListMcpServersResponse: {
|
|
1707
1804
|
mcp_servers: components["schemas"]["McpServerResponse"][];
|
|
@@ -1928,6 +2025,20 @@ export interface components {
|
|
|
1928
2025
|
/** @description User's MCP instances connected to this server URL */
|
|
1929
2026
|
instances: components["schemas"]["Mcp"][];
|
|
1930
2027
|
};
|
|
2028
|
+
/** @description Describes an OpenAI model offering that can be used with the API. */
|
|
2029
|
+
Model: {
|
|
2030
|
+
/** @description The model identifier, which can be referenced in the API endpoints. */
|
|
2031
|
+
id: string;
|
|
2032
|
+
/** @description The object type, which is always "model". */
|
|
2033
|
+
object: string;
|
|
2034
|
+
/**
|
|
2035
|
+
* Format: int32
|
|
2036
|
+
* @description The Unix timestamp (in seconds) when the model was created.
|
|
2037
|
+
*/
|
|
2038
|
+
created: number;
|
|
2039
|
+
/** @description The organization that owns the model. */
|
|
2040
|
+
owned_by: string;
|
|
2041
|
+
};
|
|
1931
2042
|
ModelAlias: {
|
|
1932
2043
|
alias: string;
|
|
1933
2044
|
/** Format: string */
|
|
@@ -2311,6 +2422,10 @@ export interface components {
|
|
|
2311
2422
|
prompt: string;
|
|
2312
2423
|
/** @description API format to use for the test request (defaults to OpenAI Chat Completions) */
|
|
2313
2424
|
api_format?: components["schemas"]["ApiFormat"];
|
|
2425
|
+
/** @description Optional extra HTTP headers. `Authorization` / `x-api-key` are forbidden. */
|
|
2426
|
+
extra_headers?: unknown;
|
|
2427
|
+
/** @description Optional extra fields to merge into the request body */
|
|
2428
|
+
extra_body?: unknown;
|
|
2314
2429
|
};
|
|
2315
2430
|
/**
|
|
2316
2431
|
* @description Response from testing API connectivity
|
|
@@ -2325,6 +2440,16 @@ export interface components {
|
|
|
2325
2440
|
response?: string | null;
|
|
2326
2441
|
error?: string | null;
|
|
2327
2442
|
};
|
|
2443
|
+
/** @description Thinking capability and supported type configurations. */
|
|
2444
|
+
ThinkingCapability: {
|
|
2445
|
+
supported: boolean;
|
|
2446
|
+
types: components["schemas"]["ThinkingTypes"];
|
|
2447
|
+
};
|
|
2448
|
+
/** @description Supported thinking type configurations. */
|
|
2449
|
+
ThinkingTypes: {
|
|
2450
|
+
adaptive: components["schemas"]["CapabilitySupport"];
|
|
2451
|
+
enabled: components["schemas"]["CapabilitySupport"];
|
|
2452
|
+
};
|
|
2328
2453
|
/** @example {
|
|
2329
2454
|
* "token": "bodhiapp_1234567890abcdef"
|
|
2330
2455
|
* } */
|
|
@@ -5566,7 +5691,10 @@ export interface operations {
|
|
|
5566
5691
|
/** @example {
|
|
5567
5692
|
* "data": [
|
|
5568
5693
|
* "openai",
|
|
5569
|
-
* "openai_responses"
|
|
5694
|
+
* "openai_responses",
|
|
5695
|
+
* "anthropic",
|
|
5696
|
+
* "anthropic_oauth",
|
|
5697
|
+
* "gemini"
|
|
5570
5698
|
* ]
|
|
5571
5699
|
* } */
|
|
5572
5700
|
"application/json": components["schemas"]["ApiFormatsResponse"];
|
|
@@ -669,7 +669,7 @@ export interface paths {
|
|
|
669
669
|
};
|
|
670
670
|
/**
|
|
671
671
|
* Get Available API Formats
|
|
672
|
-
* @description Retrieves list of supported API formats/protocols: 'openai' (Chat Completions)
|
|
672
|
+
* @description Retrieves list of supported API formats/protocols: 'openai' (Chat Completions), 'openai_responses' (Responses API), 'anthropic' (Messages API), 'anthropic_oauth' (Anthropic via OAuth Bearer token), and 'gemini' (Google Gemini).
|
|
673
673
|
*/
|
|
674
674
|
get: operations["getApiFormats"];
|
|
675
675
|
put?: never;
|
|
@@ -1258,16 +1258,47 @@ export interface components {
|
|
|
1258
1258
|
/** @description Response envelope for model aliases - hides internal implementation details
|
|
1259
1259
|
* Uses untagged serialization - each variant has its own "source" field */
|
|
1260
1260
|
AliasResponse: components["schemas"]["UserAliasResponse"] | components["schemas"]["ModelAliasResponse"] | components["schemas"]["ApiAliasResponse"];
|
|
1261
|
+
/** @description Mirrors Anthropic's `ModelInfo` schema — full model metadata returned by
|
|
1262
|
+
* `GET /anthropic/v1/models` and stored alongside model IDs in `ApiAlias.models`.
|
|
1263
|
+
*
|
|
1264
|
+
* **IMPORTANT**: Do NOT add `#[serde(skip_serializing_if = "Option::is_none")]` on the
|
|
1265
|
+
* `Option` fields below. The Anthropic API spec marks `capabilities`, `max_input_tokens`,
|
|
1266
|
+
* and `max_tokens` as **required** (nullable via `anyOf [T, null]`). They must serialize
|
|
1267
|
+
* as `null` when absent, not be omitted from the JSON output. */
|
|
1268
|
+
AnthropicModel: {
|
|
1269
|
+
id: string;
|
|
1270
|
+
display_name: string;
|
|
1271
|
+
/** @description RFC 3339 datetime string representing the model's release date. */
|
|
1272
|
+
created_at: string;
|
|
1273
|
+
capabilities?: null | components["schemas"]["AnthropicModelCapabilities"];
|
|
1274
|
+
/** Format: int64 */
|
|
1275
|
+
max_input_tokens?: number | null;
|
|
1276
|
+
/** Format: int64 */
|
|
1277
|
+
max_tokens?: number | null;
|
|
1278
|
+
/** @description Always `"model"` — included for Anthropic API compatibility. */
|
|
1279
|
+
type: string;
|
|
1280
|
+
};
|
|
1281
|
+
/** @description Model capability information (Anthropic ModelCapabilities schema). */
|
|
1282
|
+
AnthropicModelCapabilities: {
|
|
1283
|
+
batch: components["schemas"]["CapabilitySupport"];
|
|
1284
|
+
citations: components["schemas"]["CapabilitySupport"];
|
|
1285
|
+
code_execution: components["schemas"]["CapabilitySupport"];
|
|
1286
|
+
context_management: components["schemas"]["ContextManagementCapability"];
|
|
1287
|
+
effort: components["schemas"]["EffortCapability"];
|
|
1288
|
+
image_input: components["schemas"]["CapabilitySupport"];
|
|
1289
|
+
pdf_input: components["schemas"]["CapabilitySupport"];
|
|
1290
|
+
structured_outputs: components["schemas"]["CapabilitySupport"];
|
|
1291
|
+
thinking: components["schemas"]["ThinkingCapability"];
|
|
1292
|
+
};
|
|
1261
1293
|
ApiAlias: {
|
|
1262
1294
|
id: string;
|
|
1263
1295
|
api_format: components["schemas"]["ApiFormat"];
|
|
1264
1296
|
base_url: string;
|
|
1265
|
-
models: components["schemas"]["
|
|
1297
|
+
models: components["schemas"]["ApiModelVec"];
|
|
1266
1298
|
prefix?: string | null;
|
|
1267
1299
|
forward_all_with_prefix: boolean;
|
|
1268
|
-
|
|
1269
|
-
|
|
1270
|
-
cache_fetched_at: string;
|
|
1300
|
+
extra_headers?: unknown;
|
|
1301
|
+
extra_body?: unknown;
|
|
1271
1302
|
/** Format: date-time */
|
|
1272
1303
|
created_at: string;
|
|
1273
1304
|
/** Format: date-time */
|
|
@@ -1280,10 +1311,12 @@ export interface components {
|
|
|
1280
1311
|
api_format: components["schemas"]["ApiFormat"];
|
|
1281
1312
|
base_url: string;
|
|
1282
1313
|
has_api_key: boolean;
|
|
1283
|
-
/** @description Models available through this alias
|
|
1284
|
-
models:
|
|
1314
|
+
/** @description Models available through this alias with full provider metadata */
|
|
1315
|
+
models: components["schemas"]["ApiModel"][];
|
|
1285
1316
|
prefix?: string | null;
|
|
1286
1317
|
forward_all_with_prefix: boolean;
|
|
1318
|
+
extra_headers?: unknown;
|
|
1319
|
+
extra_body?: unknown;
|
|
1287
1320
|
/** Format: date-time */
|
|
1288
1321
|
created_at: string;
|
|
1289
1322
|
/** Format: date-time */
|
|
@@ -1293,7 +1326,7 @@ export interface components {
|
|
|
1293
1326
|
* @description API format/protocol specification
|
|
1294
1327
|
* @enum {string}
|
|
1295
1328
|
*/
|
|
1296
|
-
ApiFormat: "openai" | "openai_responses" | "
|
|
1329
|
+
ApiFormat: "openai" | "openai_responses" | "anthropic" | "anthropic_oauth" | "gemini";
|
|
1297
1330
|
/**
|
|
1298
1331
|
* @description Response containing available API formats
|
|
1299
1332
|
* @example {
|
|
@@ -1317,6 +1350,18 @@ export interface components {
|
|
|
1317
1350
|
/** @enum {string} */
|
|
1318
1351
|
action: "set";
|
|
1319
1352
|
};
|
|
1353
|
+
/** @description Discriminated union of provider-specific model metadata.
|
|
1354
|
+
* Stored as JSON in `api_model_aliases.models`. */
|
|
1355
|
+
ApiModel: (components["schemas"]["Model"] & {
|
|
1356
|
+
/** @enum {string} */
|
|
1357
|
+
provider: "openai";
|
|
1358
|
+
}) | (components["schemas"]["AnthropicModel"] & {
|
|
1359
|
+
/** @enum {string} */
|
|
1360
|
+
provider: "anthropic";
|
|
1361
|
+
}) | (components["schemas"]["GeminiModel"] & {
|
|
1362
|
+
/** @enum {string} */
|
|
1363
|
+
provider: "gemini";
|
|
1364
|
+
});
|
|
1320
1365
|
/**
|
|
1321
1366
|
* @description Input request for creating or updating an API model configuration.
|
|
1322
1367
|
* @example {
|
|
@@ -1346,7 +1391,14 @@ export interface components {
|
|
|
1346
1391
|
prefix?: string | null;
|
|
1347
1392
|
/** @description Whether to forward all requests with this prefix (true) or only selected models (false) */
|
|
1348
1393
|
forward_all_with_prefix?: boolean;
|
|
1349
|
-
|
|
1394
|
+
/** @description Optional extra HTTP headers to send upstream. Cannot include `Authorization`
|
|
1395
|
+
* or `x-api-key` — those are owned by provider clients. */
|
|
1396
|
+
extra_headers?: unknown;
|
|
1397
|
+
/** @description Optional extra fields to merge into the request body sent upstream */
|
|
1398
|
+
extra_body?: unknown;
|
|
1399
|
+
};
|
|
1400
|
+
/** @description DB-storable `Vec<ApiModel>` — stored as JSON binary in SeaORM columns. */
|
|
1401
|
+
ApiModelVec: components["schemas"]["ApiModel"][];
|
|
1350
1402
|
/** @enum {string} */
|
|
1351
1403
|
AppAccessRequestStatus: "draft" | "approved" | "denied" | "failed" | "expired";
|
|
1352
1404
|
/**
|
|
@@ -1527,6 +1579,10 @@ export interface components {
|
|
|
1527
1579
|
[key: string]: string;
|
|
1528
1580
|
} | null;
|
|
1529
1581
|
};
|
|
1582
|
+
/** @description Whether a single capability is supported by the model. */
|
|
1583
|
+
CapabilitySupport: {
|
|
1584
|
+
supported: boolean;
|
|
1585
|
+
};
|
|
1530
1586
|
/** @description Change user role request */
|
|
1531
1587
|
ChangeRoleRequest: {
|
|
1532
1588
|
/** @description Role to assign to the user */
|
|
@@ -1538,6 +1594,12 @@ export interface components {
|
|
|
1538
1594
|
/** Format: int64 */
|
|
1539
1595
|
max_output_tokens?: number | null;
|
|
1540
1596
|
};
|
|
1597
|
+
/** @description Context management capability details. */
|
|
1598
|
+
ContextManagementCapability: {
|
|
1599
|
+
clear_thinking_20251015?: null | components["schemas"]["CapabilitySupport"];
|
|
1600
|
+
clear_tool_uses_20250919?: null | components["schemas"]["CapabilitySupport"];
|
|
1601
|
+
compact_20260112?: null | components["schemas"]["CapabilitySupport"];
|
|
1602
|
+
};
|
|
1541
1603
|
CopyAliasRequest: {
|
|
1542
1604
|
alias: string;
|
|
1543
1605
|
};
|
|
@@ -1672,9 +1734,16 @@ export interface components {
|
|
|
1672
1734
|
token_endpoint_auth_method?: string | null;
|
|
1673
1735
|
registration_access_token?: string | null;
|
|
1674
1736
|
};
|
|
1737
|
+
/** @description Effort (reasoning_effort) capability details. */
|
|
1738
|
+
EffortCapability: {
|
|
1739
|
+
high: components["schemas"]["CapabilitySupport"];
|
|
1740
|
+
low: components["schemas"]["CapabilitySupport"];
|
|
1741
|
+
max: components["schemas"]["CapabilitySupport"];
|
|
1742
|
+
};
|
|
1675
1743
|
/**
|
|
1676
1744
|
* @description Request to fetch available models from provider
|
|
1677
1745
|
* @example {
|
|
1746
|
+
* "api_format": "openai",
|
|
1678
1747
|
* "base_url": "http://localhost:8080/v1",
|
|
1679
1748
|
* "creds": {
|
|
1680
1749
|
* "type": "api_key",
|
|
@@ -1687,9 +1756,16 @@ export interface components {
|
|
|
1687
1756
|
creds?: components["schemas"]["TestCreds"];
|
|
1688
1757
|
/** @description API base URL (required - always needed to know where to fetch models from) */
|
|
1689
1758
|
base_url: string;
|
|
1759
|
+
/** @description API format to use for fetching models (defaults to OpenAI Chat Completions) */
|
|
1760
|
+
api_format?: components["schemas"]["ApiFormat"];
|
|
1761
|
+
/** @description Optional extra HTTP headers. `Authorization` / `x-api-key` are forbidden. */
|
|
1762
|
+
extra_headers?: unknown;
|
|
1763
|
+
/** @description Optional extra fields to merge into the request body */
|
|
1764
|
+
extra_body?: unknown;
|
|
1690
1765
|
};
|
|
1691
1766
|
/**
|
|
1692
|
-
* @description
|
|
1767
|
+
* @description Returns model IDs only (not full metadata) to minimize information exposure —
|
|
1768
|
+
* the endpoint accepts an API key parameter. Full metadata is stored on create/update.
|
|
1693
1769
|
* @example {
|
|
1694
1770
|
* "models": [
|
|
1695
1771
|
* "gpt-4",
|
|
@@ -1703,6 +1779,27 @@ export interface components {
|
|
|
1703
1779
|
};
|
|
1704
1780
|
/** @enum {string} */
|
|
1705
1781
|
FlowType: "redirect" | "popup";
|
|
1782
|
+
/** @description Gemini `Model` schema (see `openapi-gemini.json`). */
|
|
1783
|
+
GeminiModel: {
|
|
1784
|
+
name: string;
|
|
1785
|
+
version?: string;
|
|
1786
|
+
displayName?: string | null;
|
|
1787
|
+
description?: string | null;
|
|
1788
|
+
/** Format: int64 */
|
|
1789
|
+
inputTokenLimit?: number | null;
|
|
1790
|
+
/** Format: int64 */
|
|
1791
|
+
outputTokenLimit?: number | null;
|
|
1792
|
+
supportedGenerationMethods?: string[];
|
|
1793
|
+
/** Format: float */
|
|
1794
|
+
temperature?: number | null;
|
|
1795
|
+
/** Format: float */
|
|
1796
|
+
maxTemperature?: number | null;
|
|
1797
|
+
/** Format: float */
|
|
1798
|
+
topP?: number | null;
|
|
1799
|
+
/** Format: int32 */
|
|
1800
|
+
topK?: number | null;
|
|
1801
|
+
thinking?: boolean | null;
|
|
1802
|
+
};
|
|
1706
1803
|
JsonVec: string[];
|
|
1707
1804
|
ListMcpServersResponse: {
|
|
1708
1805
|
mcp_servers: components["schemas"]["McpServerResponse"][];
|
|
@@ -1929,6 +2026,20 @@ export interface components {
|
|
|
1929
2026
|
/** @description User's MCP instances connected to this server URL */
|
|
1930
2027
|
instances: components["schemas"]["Mcp"][];
|
|
1931
2028
|
};
|
|
2029
|
+
/** @description Describes an OpenAI model offering that can be used with the API. */
|
|
2030
|
+
Model: {
|
|
2031
|
+
/** @description The model identifier, which can be referenced in the API endpoints. */
|
|
2032
|
+
id: string;
|
|
2033
|
+
/** @description The object type, which is always "model". */
|
|
2034
|
+
object: string;
|
|
2035
|
+
/**
|
|
2036
|
+
* Format: int32
|
|
2037
|
+
* @description The Unix timestamp (in seconds) when the model was created.
|
|
2038
|
+
*/
|
|
2039
|
+
created: number;
|
|
2040
|
+
/** @description The organization that owns the model. */
|
|
2041
|
+
owned_by: string;
|
|
2042
|
+
};
|
|
1932
2043
|
ModelAlias: {
|
|
1933
2044
|
alias: string;
|
|
1934
2045
|
/** Format: string */
|
|
@@ -2312,6 +2423,10 @@ export interface components {
|
|
|
2312
2423
|
prompt: string;
|
|
2313
2424
|
/** @description API format to use for the test request (defaults to OpenAI Chat Completions) */
|
|
2314
2425
|
api_format?: components["schemas"]["ApiFormat"];
|
|
2426
|
+
/** @description Optional extra HTTP headers. `Authorization` / `x-api-key` are forbidden. */
|
|
2427
|
+
extra_headers?: unknown;
|
|
2428
|
+
/** @description Optional extra fields to merge into the request body */
|
|
2429
|
+
extra_body?: unknown;
|
|
2315
2430
|
};
|
|
2316
2431
|
/**
|
|
2317
2432
|
* @description Response from testing API connectivity
|
|
@@ -2326,6 +2441,16 @@ export interface components {
|
|
|
2326
2441
|
response?: string | null;
|
|
2327
2442
|
error?: string | null;
|
|
2328
2443
|
};
|
|
2444
|
+
/** @description Thinking capability and supported type configurations. */
|
|
2445
|
+
ThinkingCapability: {
|
|
2446
|
+
supported: boolean;
|
|
2447
|
+
types: components["schemas"]["ThinkingTypes"];
|
|
2448
|
+
};
|
|
2449
|
+
/** @description Supported thinking type configurations. */
|
|
2450
|
+
ThinkingTypes: {
|
|
2451
|
+
adaptive: components["schemas"]["CapabilitySupport"];
|
|
2452
|
+
enabled: components["schemas"]["CapabilitySupport"];
|
|
2453
|
+
};
|
|
2329
2454
|
/** @example {
|
|
2330
2455
|
* "token": "bodhiapp_1234567890abcdef"
|
|
2331
2456
|
* } */
|
|
@@ -5567,7 +5692,10 @@ export interface operations {
|
|
|
5567
5692
|
/** @example {
|
|
5568
5693
|
* "data": [
|
|
5569
5694
|
* "openai",
|
|
5570
|
-
* "openai_responses"
|
|
5695
|
+
* "openai_responses",
|
|
5696
|
+
* "anthropic",
|
|
5697
|
+
* "anthropic_oauth",
|
|
5698
|
+
* "gemini"
|
|
5571
5699
|
* ]
|
|
5572
5700
|
* } */
|
|
5573
5701
|
"application/json": components["schemas"]["ApiFormatsResponse"];
|