@bodhiapp/ts-client 0.1.19 → 0.1.21

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.
@@ -188,7 +188,7 @@ export interface paths {
188
188
  patch?: never;
189
189
  trace?: never;
190
190
  };
191
- "/bodhi/v1/api-models": {
191
+ "/bodhi/v1/apps/access-requests/{id}": {
192
192
  parameters: {
193
193
  query?: never;
194
194
  header?: never;
@@ -196,31 +196,27 @@ export interface paths {
196
196
  cookie?: never;
197
197
  };
198
198
  /**
199
- * List API Model Configurations
200
- * @description Retrieves paginated list of all configured API model aliases including external API formats like OpenAI, etc. API keys are masked in list view for security.
199
+ * Get Access Request Status
200
+ * @description Poll access request status. Requires app_client_id query parameter for security.
201
201
  */
202
- get: operations["listApiModels"];
202
+ get: operations["getAccessRequestStatus"];
203
203
  put?: never;
204
- /** Create a new API model configuration */
205
- post: operations["createApiModel"];
204
+ post?: never;
206
205
  delete?: never;
207
206
  options?: never;
208
207
  head?: never;
209
208
  patch?: never;
210
209
  trace?: never;
211
210
  };
212
- "/bodhi/v1/api-models/api-formats": {
211
+ "/bodhi/v1/apps/mcps": {
213
212
  parameters: {
214
213
  query?: never;
215
214
  header?: never;
216
215
  path?: never;
217
216
  cookie?: never;
218
217
  };
219
- /**
220
- * Get Available API Formats
221
- * @description Retrieves list of supported API formats/protocols (e.g., OpenAI).
222
- */
223
- get: operations["getApiFormats"];
218
+ /** List MCP instances accessible to the authenticated external app */
219
+ get: operations["appsListMcps"];
224
220
  put?: never;
225
221
  post?: never;
226
222
  delete?: never;
@@ -229,24 +225,24 @@ export interface paths {
229
225
  patch?: never;
230
226
  trace?: never;
231
227
  };
232
- "/bodhi/v1/api-models/fetch-models": {
228
+ "/bodhi/v1/apps/mcps/{id}": {
233
229
  parameters: {
234
230
  query?: never;
235
231
  header?: never;
236
232
  path?: never;
237
233
  cookie?: never;
238
234
  };
239
- get?: never;
235
+ /** Get a specific MCP instance by ID via external app */
236
+ get: operations["appsGetMcp"];
240
237
  put?: never;
241
- /** Fetch available models from the API. */
242
- post: operations["fetchApiModels"];
238
+ post?: never;
243
239
  delete?: never;
244
240
  options?: never;
245
241
  head?: never;
246
242
  patch?: never;
247
243
  trace?: never;
248
244
  };
249
- "/bodhi/v1/api-models/test": {
245
+ "/bodhi/v1/apps/mcps/{id}/tools/refresh": {
250
246
  parameters: {
251
247
  query?: never;
252
248
  header?: never;
@@ -255,37 +251,32 @@ export interface paths {
255
251
  };
256
252
  get?: never;
257
253
  put?: never;
258
- /** Test API connectivity with a prompt. */
259
- post: operations["testApiModel"];
254
+ /** Refresh tools for an MCP instance via external app */
255
+ post: operations["appsRefreshMcpTools"];
260
256
  delete?: never;
261
257
  options?: never;
262
258
  head?: never;
263
259
  patch?: never;
264
260
  trace?: never;
265
261
  };
266
- "/bodhi/v1/api-models/{id}": {
262
+ "/bodhi/v1/apps/mcps/{id}/tools/{tool_name}/execute": {
267
263
  parameters: {
268
264
  query?: never;
269
265
  header?: never;
270
266
  path?: never;
271
267
  cookie?: never;
272
268
  };
273
- /**
274
- * Get API Model Configuration
275
- * @description Retrieves detailed configuration for a specific API model alias by ID. API keys are masked for security unless explicitly requested.
276
- */
277
- get: operations["getApiModel"];
278
- /** Update an existing API model configuration */
279
- put: operations["updateApiModel"];
280
- post?: never;
281
- /** Delete an API model configuration */
282
- delete: operations["deleteApiModel"];
269
+ get?: never;
270
+ put?: never;
271
+ /** Execute a tool on an MCP server via external app */
272
+ post: operations["appsExecuteMcpTool"];
273
+ delete?: never;
283
274
  options?: never;
284
275
  head?: never;
285
276
  patch?: never;
286
277
  trace?: never;
287
278
  };
288
- "/bodhi/v1/api-models/{id}/sync-models": {
279
+ "/bodhi/v1/apps/request-access": {
289
280
  parameters: {
290
281
  query?: never;
291
282
  header?: never;
@@ -295,28 +286,25 @@ export interface paths {
295
286
  get?: never;
296
287
  put?: never;
297
288
  /**
298
- * Sync Models to Cache
299
- * @description Synchronously fetches models from the external API and populates the cache. This ensures the cache is populated before returning. Primarily used for testing to avoid timing issues.
289
+ * Create Access Request
290
+ * @description Create an access request for an app to access user resources. Always creates a draft for user review. Unauthenticated endpoint.
300
291
  */
301
- post: operations["syncModels"];
292
+ post: operations["createAccessRequest"];
302
293
  delete?: never;
303
294
  options?: never;
304
295
  head?: never;
305
296
  patch?: never;
306
297
  trace?: never;
307
298
  };
308
- "/bodhi/v1/apps/access-requests/{id}": {
299
+ "/bodhi/v1/apps/toolsets": {
309
300
  parameters: {
310
301
  query?: never;
311
302
  header?: never;
312
303
  path?: never;
313
304
  cookie?: never;
314
305
  };
315
- /**
316
- * Get Access Request Status
317
- * @description Poll access request status. Requires app_client_id query parameter for security.
318
- */
319
- get: operations["getAccessRequestStatus"];
306
+ /** List toolsets accessible to the authenticated external app */
307
+ get: operations["appsListToolsets"];
320
308
  put?: never;
321
309
  post?: never;
322
310
  delete?: never;
@@ -325,7 +313,7 @@ export interface paths {
325
313
  patch?: never;
326
314
  trace?: never;
327
315
  };
328
- "/bodhi/v1/apps/request-access": {
316
+ "/bodhi/v1/apps/toolsets/{id}/tools/{tool_name}/execute": {
329
317
  parameters: {
330
318
  query?: never;
331
319
  header?: never;
@@ -334,11 +322,8 @@ export interface paths {
334
322
  };
335
323
  get?: never;
336
324
  put?: never;
337
- /**
338
- * Create Access Request
339
- * @description Create an access request for an app to access user resources. Always creates a draft for user review. Unauthenticated endpoint.
340
- */
341
- post: operations["createAccessRequest"];
325
+ /** Execute a tool on a toolset via external app */
326
+ post: operations["appsExecuteToolsetTool"];
342
327
  delete?: never;
343
328
  options?: never;
344
329
  head?: never;
@@ -728,7 +713,7 @@ export interface paths {
728
713
  patch?: never;
729
714
  trace?: never;
730
715
  };
731
- "/bodhi/v1/modelfiles": {
716
+ "/bodhi/v1/models": {
732
717
  parameters: {
733
718
  query?: never;
734
719
  header?: never;
@@ -736,10 +721,116 @@ export interface paths {
736
721
  cookie?: never;
737
722
  };
738
723
  /**
739
- * List Local Model Files
740
- * @description Retrieves paginated list of GGUF model files available in the local HuggingFace cache directory with metadata including repository, filename, snapshot ID, and file size. Requires any authenticated user (User level permissions or higher).
724
+ * List All Model Aliases
725
+ * @description Retrieves paginated list of all configured model aliases including user-defined aliases, model aliases, and API provider aliases with filtering and sorting options. Requires any authenticated user (User level permissions or higher).
741
726
  */
742
- get: operations["listModelFiles"];
727
+ get: operations["listAllModels"];
728
+ put?: never;
729
+ post?: never;
730
+ delete?: never;
731
+ options?: never;
732
+ head?: never;
733
+ patch?: never;
734
+ trace?: never;
735
+ };
736
+ "/bodhi/v1/models/alias": {
737
+ parameters: {
738
+ query?: never;
739
+ header?: never;
740
+ path?: never;
741
+ cookie?: never;
742
+ };
743
+ get?: never;
744
+ put?: never;
745
+ /** Create Alias */
746
+ post: operations["models_alias_create"];
747
+ delete?: never;
748
+ options?: never;
749
+ head?: never;
750
+ patch?: never;
751
+ trace?: never;
752
+ };
753
+ "/bodhi/v1/models/alias/{id}": {
754
+ parameters: {
755
+ query?: never;
756
+ header?: never;
757
+ path?: never;
758
+ cookie?: never;
759
+ };
760
+ get?: never;
761
+ /** Update Alias */
762
+ put: operations["models_alias_update"];
763
+ post?: never;
764
+ /** Delete a model alias by UUID */
765
+ delete: operations["models_alias_destroy"];
766
+ options?: never;
767
+ head?: never;
768
+ patch?: never;
769
+ trace?: never;
770
+ };
771
+ "/bodhi/v1/models/alias/{id}/copy": {
772
+ parameters: {
773
+ query?: never;
774
+ header?: never;
775
+ path?: never;
776
+ cookie?: never;
777
+ };
778
+ get?: never;
779
+ put?: never;
780
+ /** Copy a model alias */
781
+ post: operations["models_alias_copy"];
782
+ delete?: never;
783
+ options?: never;
784
+ head?: never;
785
+ patch?: never;
786
+ trace?: never;
787
+ };
788
+ "/bodhi/v1/models/api": {
789
+ parameters: {
790
+ query?: never;
791
+ header?: never;
792
+ path?: never;
793
+ cookie?: never;
794
+ };
795
+ get?: never;
796
+ put?: never;
797
+ /** Create a new API model configuration */
798
+ post: operations["createApiModel"];
799
+ delete?: never;
800
+ options?: never;
801
+ head?: never;
802
+ patch?: never;
803
+ trace?: never;
804
+ };
805
+ "/bodhi/v1/models/api/fetch-models": {
806
+ parameters: {
807
+ query?: never;
808
+ header?: never;
809
+ path?: never;
810
+ cookie?: never;
811
+ };
812
+ get?: never;
813
+ put?: never;
814
+ /** Fetch available models from the API. */
815
+ post: operations["fetchApiModels"];
816
+ delete?: never;
817
+ options?: never;
818
+ head?: never;
819
+ patch?: never;
820
+ trace?: never;
821
+ };
822
+ "/bodhi/v1/models/api/formats": {
823
+ parameters: {
824
+ query?: never;
825
+ header?: never;
826
+ path?: never;
827
+ cookie?: never;
828
+ };
829
+ /**
830
+ * Get Available API Formats
831
+ * @description Retrieves list of supported API formats/protocols (e.g., OpenAI).
832
+ */
833
+ get: operations["getApiFormats"];
743
834
  put?: never;
744
835
  post?: never;
745
836
  delete?: never;
@@ -748,7 +839,24 @@ export interface paths {
748
839
  patch?: never;
749
840
  trace?: never;
750
841
  };
751
- "/bodhi/v1/modelfiles/pull": {
842
+ "/bodhi/v1/models/api/test": {
843
+ parameters: {
844
+ query?: never;
845
+ header?: never;
846
+ path?: never;
847
+ cookie?: never;
848
+ };
849
+ get?: never;
850
+ put?: never;
851
+ /** Test API connectivity with a prompt. */
852
+ post: operations["testApiModel"];
853
+ delete?: never;
854
+ options?: never;
855
+ head?: never;
856
+ patch?: never;
857
+ trace?: never;
858
+ };
859
+ "/bodhi/v1/models/api/{id}": {
752
860
  parameters: {
753
861
  query?: never;
754
862
  header?: never;
@@ -756,23 +864,41 @@ export interface paths {
756
864
  cookie?: never;
757
865
  };
758
866
  /**
759
- * List Model Download Requests
760
- * @description Retrieves paginated list of all model download requests with their current status, progress, and metadata. Includes both active downloads and completed/failed requests.
867
+ * Get API Model Configuration
868
+ * @description Retrieves detailed configuration for a specific API model alias by ID. API keys are masked for security unless explicitly requested.
761
869
  */
762
- get: operations["listDownloads"];
870
+ get: operations["getApiModel"];
871
+ /** Update an existing API model configuration */
872
+ put: operations["updateApiModel"];
873
+ post?: never;
874
+ /** Delete an API model configuration */
875
+ delete: operations["deleteApiModel"];
876
+ options?: never;
877
+ head?: never;
878
+ patch?: never;
879
+ trace?: never;
880
+ };
881
+ "/bodhi/v1/models/api/{id}/sync-models": {
882
+ parameters: {
883
+ query?: never;
884
+ header?: never;
885
+ path?: never;
886
+ cookie?: never;
887
+ };
888
+ get?: never;
763
889
  put?: never;
764
890
  /**
765
- * Start Model File Download
766
- * @description Initiates a new model file download from HuggingFace repository. Creates a download request that can be tracked for progress. Returns existing request if download is already in progress.
891
+ * Sync Models to Cache
892
+ * @description Synchronously fetches models from the external API and populates the cache. This ensures the cache is populated before returning. Primarily used for testing to avoid timing issues.
767
893
  */
768
- post: operations["pullModelFile"];
894
+ post: operations["syncModels"];
769
895
  delete?: never;
770
896
  options?: never;
771
897
  head?: never;
772
898
  patch?: never;
773
899
  trace?: never;
774
900
  };
775
- "/bodhi/v1/modelfiles/pull/{id}": {
901
+ "/bodhi/v1/models/files": {
776
902
  parameters: {
777
903
  query?: never;
778
904
  header?: never;
@@ -780,10 +906,10 @@ export interface paths {
780
906
  cookie?: never;
781
907
  };
782
908
  /**
783
- * Get Download Request Status
784
- * @description Retrieves the current status and progress information for a specific model download request. Includes download progress, error details, and completion status.
909
+ * List Local Model Files
910
+ * @description Retrieves paginated list of GGUF model files available in the local HuggingFace cache directory with metadata including repository, filename, snapshot ID, and file size. Requires any authenticated user (User level permissions or higher).
785
911
  */
786
- get: operations["getDownloadStatus"];
912
+ get: operations["listModelFiles"];
787
913
  put?: never;
788
914
  post?: never;
789
915
  delete?: never;
@@ -792,7 +918,7 @@ export interface paths {
792
918
  patch?: never;
793
919
  trace?: never;
794
920
  };
795
- "/bodhi/v1/models": {
921
+ "/bodhi/v1/models/files/pull": {
796
922
  parameters: {
797
923
  query?: never;
798
924
  header?: never;
@@ -800,13 +926,36 @@ export interface paths {
800
926
  cookie?: never;
801
927
  };
802
928
  /**
803
- * List All Model Aliases
804
- * @description Retrieves paginated list of all configured model aliases including user-defined aliases, model aliases, and API provider aliases with filtering and sorting options. Requires any authenticated user (User level permissions or higher).
929
+ * List Model Download Requests
930
+ * @description Retrieves paginated list of all model download requests with their current status, progress, and metadata. Includes both active downloads and completed/failed requests.
805
931
  */
806
- get: operations["listAllModels"];
932
+ get: operations["listDownloads"];
807
933
  put?: never;
808
- /** Create Alias */
809
- post: operations["createAlias"];
934
+ /**
935
+ * Start Model File Download
936
+ * @description Initiates a new model file download from HuggingFace repository. Creates a download request that can be tracked for progress. Returns existing request if download is already in progress.
937
+ */
938
+ post: operations["pullModelFile"];
939
+ delete?: never;
940
+ options?: never;
941
+ head?: never;
942
+ patch?: never;
943
+ trace?: never;
944
+ };
945
+ "/bodhi/v1/models/files/pull/{id}": {
946
+ parameters: {
947
+ query?: never;
948
+ header?: never;
949
+ path?: never;
950
+ cookie?: never;
951
+ };
952
+ /**
953
+ * Get Download Request Status
954
+ * @description Retrieves the current status and progress information for a specific model download request. Includes download progress, error details, and completion status.
955
+ */
956
+ get: operations["getDownloadStatus"];
957
+ put?: never;
958
+ post?: never;
810
959
  delete?: never;
811
960
  options?: never;
812
961
  head?: never;
@@ -851,27 +1000,8 @@ export interface paths {
851
1000
  * @description Retrieves detailed information for a specific model alias by UUID. Requires any authenticated user (User level permissions or higher).
852
1001
  */
853
1002
  get: operations["getAlias"];
854
- /** Update Alias */
855
- put: operations["updateAlias"];
856
- post?: never;
857
- /** Delete a model alias by UUID */
858
- delete: operations["deleteAlias"];
859
- options?: never;
860
- head?: never;
861
- patch?: never;
862
- trace?: never;
863
- };
864
- "/bodhi/v1/models/{id}/copy": {
865
- parameters: {
866
- query?: never;
867
- header?: never;
868
- path?: never;
869
- cookie?: never;
870
- };
871
- get?: never;
872
1003
  put?: never;
873
- /** Copy a model alias */
874
- post: operations["copyAlias"];
1004
+ post?: never;
875
1005
  delete?: never;
876
1006
  options?: never;
877
1007
  head?: never;
@@ -1438,9 +1568,8 @@ export interface components {
1438
1568
  /** @description Current status: "draft", "approved", "denied", "failed" */
1439
1569
  status: components["schemas"]["AppAccessRequestStatus"];
1440
1570
  /** @description Role requested by the app */
1441
- requested_role: string;
1442
- /** @description Role approved (present when approved) */
1443
- approved_role?: string | null;
1571
+ requested_role: components["schemas"]["UserScope"];
1572
+ approved_role?: null | components["schemas"]["UserScope"];
1444
1573
  /** @description Access request scope (present when user-approved with tools) */
1445
1574
  access_request_scope?: string | null;
1446
1575
  };
@@ -1480,6 +1609,7 @@ export interface components {
1480
1609
  id: string;
1481
1610
  api_format: components["schemas"]["ApiFormat"];
1482
1611
  base_url: string;
1612
+ has_api_key: boolean;
1483
1613
  /** @description Models available through this alias (merged from cache for forward_all) */
1484
1614
  models: string[];
1485
1615
  prefix?: string | null;
@@ -1517,36 +1647,6 @@ export interface components {
1517
1647
  /** @enum {string} */
1518
1648
  action: "set";
1519
1649
  };
1520
- /**
1521
- * @description Output type for API model configuration.
1522
- * @example {
1523
- * "api_format": "openai",
1524
- * "base_url": "https://api.openai.com/v1",
1525
- * "created_at": "2024-01-01T00:00:00Z",
1526
- * "forward_all_with_prefix": false,
1527
- * "has_api_key": true,
1528
- * "id": "openai-gpt4",
1529
- * "models": [
1530
- * "gpt-4",
1531
- * "gpt-3.5-turbo"
1532
- * ],
1533
- * "prefix": "openai",
1534
- * "updated_at": "2024-01-01T00:00:00Z"
1535
- * }
1536
- */
1537
- ApiModelOutput: {
1538
- id: string;
1539
- api_format: components["schemas"]["ApiFormat"];
1540
- base_url: string;
1541
- has_api_key: boolean;
1542
- models: string[];
1543
- prefix?: string | null;
1544
- forward_all_with_prefix: boolean;
1545
- /** Format: date-time */
1546
- created_at: string;
1547
- /** Format: date-time */
1548
- updated_at: string;
1549
- };
1550
1650
  /**
1551
1651
  * @description Input request for creating or updating an API model configuration.
1552
1652
  * @example {
@@ -3197,13 +3297,6 @@ export interface components {
3197
3297
  page: number;
3198
3298
  page_size: number;
3199
3299
  };
3200
- /** @description Paginated response for API model listings */
3201
- PaginatedApiModelOutput: {
3202
- data: components["schemas"]["ApiModelOutput"][];
3203
- total: number;
3204
- page: number;
3205
- page_size: number;
3206
- };
3207
3300
  /** @description Paginated list of download requests */
3208
3301
  PaginatedDownloadResponse: {
3209
3302
  data: components["schemas"]["DownloadRequest"][];
@@ -4740,44 +4833,28 @@ export interface operations {
4740
4833
  };
4741
4834
  };
4742
4835
  };
4743
- listApiModels: {
4836
+ getAccessRequestStatus: {
4744
4837
  parameters: {
4745
- query?: {
4746
- /** @description Page number (1-based indexing) */
4747
- page?: number;
4748
- /** @description Number of items to return per page (maximum 100) */
4749
- page_size?: number;
4750
- /** @description Field to sort by. Common values: repo, filename, size, updated_at, snapshot, created_at */
4751
- sort?: string;
4752
- /** @description Sort order: 'asc' for ascending, 'desc' for descending */
4753
- sort_order?: string;
4838
+ query: {
4839
+ /** @description App client ID for verification */
4840
+ app_client_id: string;
4754
4841
  };
4755
4842
  header?: never;
4756
- path?: never;
4843
+ path: {
4844
+ /** @description Access request ID */
4845
+ id: string;
4846
+ };
4757
4847
  cookie?: never;
4758
4848
  };
4759
4849
  requestBody?: never;
4760
4850
  responses: {
4761
- /** @description API model configurations retrieved successfully */
4851
+ /** @description Status retrieved */
4762
4852
  200: {
4763
4853
  headers: {
4764
4854
  [name: string]: unknown;
4765
4855
  };
4766
4856
  content: {
4767
- /** @example {
4768
- * "data": [
4769
- * {
4770
- * "api_format": "openai",
4771
- * "base_url": "https://api.openai.com/v1",
4772
- * "has_api_key": true,
4773
- * "id": "openai-gpt4"
4774
- * }
4775
- * ],
4776
- * "page": 1,
4777
- * "page_size": 10,
4778
- * "total": 1
4779
- * } */
4780
- "application/json": components["schemas"]["PaginatedApiModelOutput"];
4857
+ "application/json": components["schemas"]["AccessRequestStatusResponse"];
4781
4858
  };
4782
4859
  };
4783
4860
  /** @description Invalid request parameters */
@@ -4807,6 +4884,15 @@ export interface operations {
4807
4884
  "application/json": components["schemas"]["OpenAIApiError"];
4808
4885
  };
4809
4886
  };
4887
+ /** @description Not found or app_client_id mismatch */
4888
+ 404: {
4889
+ headers: {
4890
+ [name: string]: unknown;
4891
+ };
4892
+ content: {
4893
+ "application/json": components["schemas"]["OpenAIApiError"];
4894
+ };
4895
+ };
4810
4896
  /** @description Internal server error */
4811
4897
  500: {
4812
4898
  headers: {
@@ -4818,26 +4904,22 @@ export interface operations {
4818
4904
  };
4819
4905
  };
4820
4906
  };
4821
- createApiModel: {
4907
+ appsListMcps: {
4822
4908
  parameters: {
4823
4909
  query?: never;
4824
4910
  header?: never;
4825
4911
  path?: never;
4826
4912
  cookie?: never;
4827
4913
  };
4828
- requestBody: {
4829
- content: {
4830
- "application/json": components["schemas"]["ApiModelRequest"];
4831
- };
4832
- };
4914
+ requestBody?: never;
4833
4915
  responses: {
4834
- /** @description API model created */
4835
- 201: {
4916
+ /** @description List of MCP instances accessible to the external app */
4917
+ 200: {
4836
4918
  headers: {
4837
4919
  [name: string]: unknown;
4838
4920
  };
4839
4921
  content: {
4840
- "application/json": components["schemas"]["ApiModelOutput"];
4922
+ "application/json": components["schemas"]["ListMcpsResponse"];
4841
4923
  };
4842
4924
  };
4843
4925
  /** @description Invalid request parameters */
@@ -4867,15 +4949,6 @@ export interface operations {
4867
4949
  "application/json": components["schemas"]["OpenAIApiError"];
4868
4950
  };
4869
4951
  };
4870
- /** @description Alias already exists */
4871
- 409: {
4872
- headers: {
4873
- [name: string]: unknown;
4874
- };
4875
- content: {
4876
- "application/json": components["schemas"]["OpenAIApiError"];
4877
- };
4878
- };
4879
4952
  /** @description Internal server error */
4880
4953
  500: {
4881
4954
  headers: {
@@ -4887,27 +4960,25 @@ export interface operations {
4887
4960
  };
4888
4961
  };
4889
4962
  };
4890
- getApiFormats: {
4963
+ appsGetMcp: {
4891
4964
  parameters: {
4892
4965
  query?: never;
4893
4966
  header?: never;
4894
- path?: never;
4967
+ path: {
4968
+ /** @description MCP instance UUID */
4969
+ id: string;
4970
+ };
4895
4971
  cookie?: never;
4896
4972
  };
4897
4973
  requestBody?: never;
4898
4974
  responses: {
4899
- /** @description API formats retrieved successfully */
4975
+ /** @description MCP instance */
4900
4976
  200: {
4901
4977
  headers: {
4902
4978
  [name: string]: unknown;
4903
4979
  };
4904
4980
  content: {
4905
- /** @example {
4906
- * "data": [
4907
- * "openai"
4908
- * ]
4909
- * } */
4910
- "application/json": components["schemas"]["ApiFormatsResponse"];
4981
+ "application/json": components["schemas"]["Mcp"];
4911
4982
  };
4912
4983
  };
4913
4984
  /** @description Invalid request parameters */
@@ -4937,6 +5008,13 @@ export interface operations {
4937
5008
  "application/json": components["schemas"]["OpenAIApiError"];
4938
5009
  };
4939
5010
  };
5011
+ /** @description MCP not found */
5012
+ 404: {
5013
+ headers: {
5014
+ [name: string]: unknown;
5015
+ };
5016
+ content?: never;
5017
+ };
4940
5018
  /** @description Internal server error */
4941
5019
  500: {
4942
5020
  headers: {
@@ -4948,26 +5026,25 @@ export interface operations {
4948
5026
  };
4949
5027
  };
4950
5028
  };
4951
- fetchApiModels: {
5029
+ appsRefreshMcpTools: {
4952
5030
  parameters: {
4953
5031
  query?: never;
4954
5032
  header?: never;
4955
- path?: never;
4956
- cookie?: never;
4957
- };
4958
- requestBody: {
4959
- content: {
4960
- "application/json": components["schemas"]["FetchModelsRequest"];
5033
+ path: {
5034
+ /** @description MCP instance UUID */
5035
+ id: string;
4961
5036
  };
5037
+ cookie?: never;
4962
5038
  };
5039
+ requestBody?: never;
4963
5040
  responses: {
4964
- /** @description Available models */
5041
+ /** @description Refreshed list of tools */
4965
5042
  200: {
4966
5043
  headers: {
4967
5044
  [name: string]: unknown;
4968
5045
  };
4969
5046
  content: {
4970
- "application/json": components["schemas"]["FetchModelsResponse"];
5047
+ "application/json": components["schemas"]["McpToolsResponse"];
4971
5048
  };
4972
5049
  };
4973
5050
  /** @description Invalid request parameters */
@@ -4997,6 +5074,13 @@ export interface operations {
4997
5074
  "application/json": components["schemas"]["OpenAIApiError"];
4998
5075
  };
4999
5076
  };
5077
+ /** @description MCP not found */
5078
+ 404: {
5079
+ headers: {
5080
+ [name: string]: unknown;
5081
+ };
5082
+ content?: never;
5083
+ };
5000
5084
  /** @description Internal server error */
5001
5085
  500: {
5002
5086
  headers: {
@@ -5008,26 +5092,31 @@ export interface operations {
5008
5092
  };
5009
5093
  };
5010
5094
  };
5011
- testApiModel: {
5095
+ appsExecuteMcpTool: {
5012
5096
  parameters: {
5013
5097
  query?: never;
5014
5098
  header?: never;
5015
- path?: never;
5099
+ path: {
5100
+ /** @description MCP instance UUID */
5101
+ id: string;
5102
+ /** @description Tool name to execute */
5103
+ tool_name: string;
5104
+ };
5016
5105
  cookie?: never;
5017
5106
  };
5018
5107
  requestBody: {
5019
5108
  content: {
5020
- "application/json": components["schemas"]["TestPromptRequest"];
5109
+ "application/json": components["schemas"]["McpExecuteRequest"];
5021
5110
  };
5022
5111
  };
5023
5112
  responses: {
5024
- /** @description Test result */
5113
+ /** @description Tool execution result */
5025
5114
  200: {
5026
5115
  headers: {
5027
5116
  [name: string]: unknown;
5028
5117
  };
5029
5118
  content: {
5030
- "application/json": components["schemas"]["TestPromptResponse"];
5119
+ "application/json": components["schemas"]["McpExecuteResponse"];
5031
5120
  };
5032
5121
  };
5033
5122
  /** @description Invalid request parameters */
@@ -5057,6 +5146,13 @@ export interface operations {
5057
5146
  "application/json": components["schemas"]["OpenAIApiError"];
5058
5147
  };
5059
5148
  };
5149
+ /** @description MCP or tool not found */
5150
+ 404: {
5151
+ headers: {
5152
+ [name: string]: unknown;
5153
+ };
5154
+ content?: never;
5155
+ };
5060
5156
  /** @description Internal server error */
5061
5157
  500: {
5062
5158
  headers: {
@@ -5068,37 +5164,27 @@ export interface operations {
5068
5164
  };
5069
5165
  };
5070
5166
  };
5071
- getApiModel: {
5167
+ createAccessRequest: {
5072
5168
  parameters: {
5073
5169
  query?: never;
5074
5170
  header?: never;
5075
- path: {
5076
- /**
5077
- * @description Unique identifier for the API model alias
5078
- * @example openai-gpt4
5079
- */
5080
- id: string;
5081
- };
5171
+ path?: never;
5082
5172
  cookie?: never;
5083
5173
  };
5084
- requestBody?: never;
5174
+ /** @description Access request details */
5175
+ requestBody: {
5176
+ content: {
5177
+ "application/json": components["schemas"]["CreateAccessRequest"];
5178
+ };
5179
+ };
5085
5180
  responses: {
5086
- /** @description API model configuration retrieved successfully */
5087
- 200: {
5181
+ /** @description Access request created */
5182
+ 201: {
5088
5183
  headers: {
5089
5184
  [name: string]: unknown;
5090
5185
  };
5091
5186
  content: {
5092
- /** @example {
5093
- * "api_format": "openai",
5094
- * "base_url": "https://api.openai.com/v1",
5095
- * "has_api_key": true,
5096
- * "id": "openai-gpt4",
5097
- * "models": [
5098
- * "gpt-4"
5099
- * ]
5100
- * } */
5101
- "application/json": components["schemas"]["ApiModelOutput"];
5187
+ "application/json": components["schemas"]["CreateAccessRequestResponse"];
5102
5188
  };
5103
5189
  };
5104
5190
  /** @description Invalid request parameters */
@@ -5128,19 +5214,12 @@ export interface operations {
5128
5214
  "application/json": components["schemas"]["OpenAIApiError"];
5129
5215
  };
5130
5216
  };
5131
- /** @description API model with specified ID not found */
5217
+ /** @description App client not found */
5132
5218
  404: {
5133
5219
  headers: {
5134
5220
  [name: string]: unknown;
5135
5221
  };
5136
5222
  content: {
5137
- /** @example {
5138
- * "error": {
5139
- * "code": "entity_not_found",
5140
- * "message": "API model 'invalid-model' not found",
5141
- * "type": "not_found_error"
5142
- * }
5143
- * } */
5144
5223
  "application/json": components["schemas"]["OpenAIApiError"];
5145
5224
  };
5146
5225
  };
@@ -5155,29 +5234,22 @@ export interface operations {
5155
5234
  };
5156
5235
  };
5157
5236
  };
5158
- updateApiModel: {
5237
+ appsListToolsets: {
5159
5238
  parameters: {
5160
5239
  query?: never;
5161
5240
  header?: never;
5162
- path: {
5163
- /** @description API model ID */
5164
- id: string;
5165
- };
5241
+ path?: never;
5166
5242
  cookie?: never;
5167
5243
  };
5168
- requestBody: {
5169
- content: {
5170
- "application/json": components["schemas"]["ApiModelRequest"];
5171
- };
5172
- };
5244
+ requestBody?: never;
5173
5245
  responses: {
5174
- /** @description API model updated */
5246
+ /** @description List of toolsets accessible to the external app */
5175
5247
  200: {
5176
5248
  headers: {
5177
5249
  [name: string]: unknown;
5178
5250
  };
5179
5251
  content: {
5180
- "application/json": components["schemas"]["ApiModelOutput"];
5252
+ "application/json": components["schemas"]["ListToolsetsResponse"];
5181
5253
  };
5182
5254
  };
5183
5255
  /** @description Invalid request parameters */
@@ -5207,15 +5279,6 @@ export interface operations {
5207
5279
  "application/json": components["schemas"]["OpenAIApiError"];
5208
5280
  };
5209
5281
  };
5210
- /** @description API model not found */
5211
- 404: {
5212
- headers: {
5213
- [name: string]: unknown;
5214
- };
5215
- content: {
5216
- "application/json": components["schemas"]["OpenAIApiError"];
5217
- };
5218
- };
5219
5282
  /** @description Internal server error */
5220
5283
  500: {
5221
5284
  headers: {
@@ -5227,24 +5290,32 @@ export interface operations {
5227
5290
  };
5228
5291
  };
5229
5292
  };
5230
- deleteApiModel: {
5293
+ appsExecuteToolsetTool: {
5231
5294
  parameters: {
5232
5295
  query?: never;
5233
5296
  header?: never;
5234
5297
  path: {
5235
- /** @description API model ID */
5298
+ /** @description Toolset instance UUID */
5236
5299
  id: string;
5300
+ /** @description Tool name to execute */
5301
+ tool_name: string;
5237
5302
  };
5238
5303
  cookie?: never;
5239
5304
  };
5240
- requestBody?: never;
5305
+ requestBody: {
5306
+ content: {
5307
+ "application/json": components["schemas"]["ExecuteToolsetRequest"];
5308
+ };
5309
+ };
5241
5310
  responses: {
5242
- /** @description API model deleted */
5243
- 204: {
5311
+ /** @description Tool execution result */
5312
+ 200: {
5244
5313
  headers: {
5245
5314
  [name: string]: unknown;
5246
5315
  };
5247
- content?: never;
5316
+ content: {
5317
+ "application/json": components["schemas"]["ToolsetExecutionResponse"];
5318
+ };
5248
5319
  };
5249
5320
  /** @description Invalid request parameters */
5250
5321
  400: {
@@ -5273,14 +5344,12 @@ export interface operations {
5273
5344
  "application/json": components["schemas"]["OpenAIApiError"];
5274
5345
  };
5275
5346
  };
5276
- /** @description API model not found */
5347
+ /** @description Toolset or method not found */
5277
5348
  404: {
5278
5349
  headers: {
5279
5350
  [name: string]: unknown;
5280
5351
  };
5281
- content: {
5282
- "application/json": components["schemas"]["OpenAIApiError"];
5283
- };
5352
+ content?: never;
5284
5353
  };
5285
5354
  /** @description Internal server error */
5286
5355
  500: {
@@ -5293,236 +5362,11 @@ export interface operations {
5293
5362
  };
5294
5363
  };
5295
5364
  };
5296
- syncModels: {
5365
+ completeOAuthFlow: {
5297
5366
  parameters: {
5298
5367
  query?: never;
5299
5368
  header?: never;
5300
- path: {
5301
- /**
5302
- * @description Unique identifier for the API model alias
5303
- * @example openai-gpt4
5304
- */
5305
- id: string;
5306
- };
5307
- cookie?: never;
5308
- };
5309
- requestBody?: never;
5310
- responses: {
5311
- /** @description Models synced to cache successfully */
5312
- 200: {
5313
- headers: {
5314
- [name: string]: unknown;
5315
- };
5316
- content: {
5317
- /** @example {
5318
- * "api_format": "openai",
5319
- * "base_url": "https://api.openai.com/v1",
5320
- * "created_at": "2024-01-01T00:00:00Z",
5321
- * "forward_all_with_prefix": false,
5322
- * "has_api_key": true,
5323
- * "id": "openai-gpt4",
5324
- * "models": [
5325
- * "gpt-4",
5326
- * "gpt-3.5-turbo",
5327
- * "gpt-4-turbo"
5328
- * ],
5329
- * "prefix": null,
5330
- * "updated_at": "2024-01-01T00:00:00Z"
5331
- * } */
5332
- "application/json": components["schemas"]["ApiModelOutput"];
5333
- };
5334
- };
5335
- /** @description Invalid request parameters */
5336
- 400: {
5337
- headers: {
5338
- [name: string]: unknown;
5339
- };
5340
- content: {
5341
- "application/json": components["schemas"]["OpenAIApiError"];
5342
- };
5343
- };
5344
- /** @description Not authenticated */
5345
- 401: {
5346
- headers: {
5347
- [name: string]: unknown;
5348
- };
5349
- content: {
5350
- "application/json": components["schemas"]["OpenAIApiError"];
5351
- };
5352
- };
5353
- /** @description Insufficient permissions */
5354
- 403: {
5355
- headers: {
5356
- [name: string]: unknown;
5357
- };
5358
- content: {
5359
- "application/json": components["schemas"]["OpenAIApiError"];
5360
- };
5361
- };
5362
- /** @description API model not found */
5363
- 404: {
5364
- headers: {
5365
- [name: string]: unknown;
5366
- };
5367
- content?: never;
5368
- };
5369
- /** @description Internal server error */
5370
- 500: {
5371
- headers: {
5372
- [name: string]: unknown;
5373
- };
5374
- content: {
5375
- "application/json": components["schemas"]["OpenAIApiError"];
5376
- };
5377
- };
5378
- };
5379
- };
5380
- getAccessRequestStatus: {
5381
- parameters: {
5382
- query: {
5383
- /** @description App client ID for verification */
5384
- app_client_id: string;
5385
- };
5386
- header?: never;
5387
- path: {
5388
- /** @description Access request ID */
5389
- id: string;
5390
- };
5391
- cookie?: never;
5392
- };
5393
- requestBody?: never;
5394
- responses: {
5395
- /** @description Status retrieved */
5396
- 200: {
5397
- headers: {
5398
- [name: string]: unknown;
5399
- };
5400
- content: {
5401
- "application/json": components["schemas"]["AccessRequestStatusResponse"];
5402
- };
5403
- };
5404
- /** @description Invalid request parameters */
5405
- 400: {
5406
- headers: {
5407
- [name: string]: unknown;
5408
- };
5409
- content: {
5410
- "application/json": components["schemas"]["OpenAIApiError"];
5411
- };
5412
- };
5413
- /** @description Not authenticated */
5414
- 401: {
5415
- headers: {
5416
- [name: string]: unknown;
5417
- };
5418
- content: {
5419
- "application/json": components["schemas"]["OpenAIApiError"];
5420
- };
5421
- };
5422
- /** @description Insufficient permissions */
5423
- 403: {
5424
- headers: {
5425
- [name: string]: unknown;
5426
- };
5427
- content: {
5428
- "application/json": components["schemas"]["OpenAIApiError"];
5429
- };
5430
- };
5431
- /** @description Not found or app_client_id mismatch */
5432
- 404: {
5433
- headers: {
5434
- [name: string]: unknown;
5435
- };
5436
- content: {
5437
- "application/json": components["schemas"]["OpenAIApiError"];
5438
- };
5439
- };
5440
- /** @description Internal server error */
5441
- 500: {
5442
- headers: {
5443
- [name: string]: unknown;
5444
- };
5445
- content: {
5446
- "application/json": components["schemas"]["OpenAIApiError"];
5447
- };
5448
- };
5449
- };
5450
- };
5451
- createAccessRequest: {
5452
- parameters: {
5453
- query?: never;
5454
- header?: never;
5455
- path?: never;
5456
- cookie?: never;
5457
- };
5458
- /** @description Access request details */
5459
- requestBody: {
5460
- content: {
5461
- "application/json": components["schemas"]["CreateAccessRequest"];
5462
- };
5463
- };
5464
- responses: {
5465
- /** @description Access request created */
5466
- 201: {
5467
- headers: {
5468
- [name: string]: unknown;
5469
- };
5470
- content: {
5471
- "application/json": components["schemas"]["CreateAccessRequestResponse"];
5472
- };
5473
- };
5474
- /** @description Invalid request parameters */
5475
- 400: {
5476
- headers: {
5477
- [name: string]: unknown;
5478
- };
5479
- content: {
5480
- "application/json": components["schemas"]["OpenAIApiError"];
5481
- };
5482
- };
5483
- /** @description Not authenticated */
5484
- 401: {
5485
- headers: {
5486
- [name: string]: unknown;
5487
- };
5488
- content: {
5489
- "application/json": components["schemas"]["OpenAIApiError"];
5490
- };
5491
- };
5492
- /** @description Insufficient permissions */
5493
- 403: {
5494
- headers: {
5495
- [name: string]: unknown;
5496
- };
5497
- content: {
5498
- "application/json": components["schemas"]["OpenAIApiError"];
5499
- };
5500
- };
5501
- /** @description App client not found */
5502
- 404: {
5503
- headers: {
5504
- [name: string]: unknown;
5505
- };
5506
- content: {
5507
- "application/json": components["schemas"]["OpenAIApiError"];
5508
- };
5509
- };
5510
- /** @description Internal server error */
5511
- 500: {
5512
- headers: {
5513
- [name: string]: unknown;
5514
- };
5515
- content: {
5516
- "application/json": components["schemas"]["OpenAIApiError"];
5517
- };
5518
- };
5519
- };
5520
- };
5521
- completeOAuthFlow: {
5522
- parameters: {
5523
- query?: never;
5524
- header?: never;
5525
- path?: never;
5369
+ path?: never;
5526
5370
  cookie?: never;
5527
5371
  };
5528
5372
  /** @description OAuth callback parameters from authorization server */
@@ -7401,7 +7245,7 @@ export interface operations {
7401
7245
  };
7402
7246
  };
7403
7247
  };
7404
- listModelFiles: {
7248
+ listAllModels: {
7405
7249
  parameters: {
7406
7250
  query?: {
7407
7251
  /** @description Page number (1-based indexing) */
@@ -7419,7 +7263,7 @@ export interface operations {
7419
7263
  };
7420
7264
  requestBody?: never;
7421
7265
  responses: {
7422
- /** @description Local model files retrieved successfully from cache */
7266
+ /** @description Paginated list of model aliases retrieved successfully */
7423
7267
  200: {
7424
7268
  headers: {
7425
7269
  [name: string]: unknown;
@@ -7428,17 +7272,45 @@ export interface operations {
7428
7272
  /** @example {
7429
7273
  * "data": [
7430
7274
  * {
7431
- * "filename": "mistral-7b-instruct-v0.1.Q4_K_M.gguf",
7432
- * "repo": "TheBloke/Mistral-7B-Instruct-v0.1-GGUF",
7433
- * "size": 4815162,
7434
- * "snapshot_id": "ab12cd34"
7275
+ * "alias": "llama2:chat",
7276
+ * "context_params": [
7277
+ * "--ctx_size",
7278
+ * "4096"
7279
+ * ],
7280
+ * "filename": "llama-2-7b-chat.Q4_K_M.gguf",
7281
+ * "repo": "TheBloke/Llama-2-7B-Chat-GGUF",
7282
+ * "request_params": {
7283
+ * "temperature": 0.7,
7284
+ * "top_p": 0.95
7285
+ * },
7286
+ * "snapshot": "abc123",
7287
+ * "source": "user"
7288
+ * },
7289
+ * {
7290
+ * "alias": "TheBloke/Llama-2-7B-Chat-GGUF:Q4_K_M",
7291
+ * "filename": "llama-2-7b-chat.Q4_K_M.gguf",
7292
+ * "repo": "TheBloke/Llama-2-7B-Chat-GGUF",
7293
+ * "snapshot": "abc123",
7294
+ * "source": "model"
7295
+ * },
7296
+ * {
7297
+ * "api_format": "openai",
7298
+ * "base_url": "https://api.openai.com/v1",
7299
+ * "created_at": "2024-01-01T00:00:00Z",
7300
+ * "id": "openai-gpt4",
7301
+ * "models": [
7302
+ * "gpt-4",
7303
+ * "gpt-3.5-turbo"
7304
+ * ],
7305
+ * "source": "api",
7306
+ * "updated_at": "2024-01-01T00:00:00Z"
7435
7307
  * }
7436
7308
  * ],
7437
7309
  * "page": 1,
7438
7310
  * "page_size": 10,
7439
- * "total": 1
7311
+ * "total": 3
7440
7312
  * } */
7441
- "application/json": components["schemas"]["PaginatedLocalModelResponse"];
7313
+ "application/json": components["schemas"]["PaginatedAliasResponse"];
7442
7314
  };
7443
7315
  };
7444
7316
  /** @description Invalid request parameters */
@@ -7479,47 +7351,544 @@ export interface operations {
7479
7351
  };
7480
7352
  };
7481
7353
  };
7482
- listDownloads: {
7354
+ models_alias_create: {
7483
7355
  parameters: {
7484
- query?: {
7485
- /** @description Page number (1-based indexing) */
7486
- page?: number;
7487
- /** @description Number of items to return per page (maximum 100) */
7488
- page_size?: number;
7489
- /** @description Field to sort by. Common values: repo, filename, size, updated_at, snapshot, created_at */
7490
- sort?: string;
7491
- /** @description Sort order: 'asc' for ascending, 'desc' for descending */
7492
- sort_order?: string;
7356
+ query?: never;
7357
+ header?: never;
7358
+ path?: never;
7359
+ cookie?: never;
7360
+ };
7361
+ requestBody: {
7362
+ content: {
7363
+ "application/json": components["schemas"]["UserAliasRequest"];
7364
+ };
7365
+ };
7366
+ responses: {
7367
+ /** @description Alias created succesfully */
7368
+ 201: {
7369
+ headers: {
7370
+ [name: string]: unknown;
7371
+ };
7372
+ content: {
7373
+ "application/json": components["schemas"]["UserAliasResponse"];
7374
+ };
7375
+ };
7376
+ /** @description Invalid request parameters */
7377
+ 400: {
7378
+ headers: {
7379
+ [name: string]: unknown;
7380
+ };
7381
+ content: {
7382
+ "application/json": components["schemas"]["OpenAIApiError"];
7383
+ };
7384
+ };
7385
+ /** @description Not authenticated */
7386
+ 401: {
7387
+ headers: {
7388
+ [name: string]: unknown;
7389
+ };
7390
+ content: {
7391
+ "application/json": components["schemas"]["OpenAIApiError"];
7392
+ };
7393
+ };
7394
+ /** @description Insufficient permissions */
7395
+ 403: {
7396
+ headers: {
7397
+ [name: string]: unknown;
7398
+ };
7399
+ content: {
7400
+ "application/json": components["schemas"]["OpenAIApiError"];
7401
+ };
7402
+ };
7403
+ /** @description Internal server error */
7404
+ 500: {
7405
+ headers: {
7406
+ [name: string]: unknown;
7407
+ };
7408
+ content: {
7409
+ "application/json": components["schemas"]["OpenAIApiError"];
7410
+ };
7493
7411
  };
7412
+ };
7413
+ };
7414
+ models_alias_update: {
7415
+ parameters: {
7416
+ query?: never;
7417
+ header?: never;
7418
+ path: {
7419
+ /** @description UUID of the alias to update */
7420
+ id: string;
7421
+ };
7422
+ cookie?: never;
7423
+ };
7424
+ requestBody: {
7425
+ content: {
7426
+ "application/json": components["schemas"]["UserAliasRequest"];
7427
+ };
7428
+ };
7429
+ responses: {
7430
+ /** @description Alias updated succesfully */
7431
+ 200: {
7432
+ headers: {
7433
+ [name: string]: unknown;
7434
+ };
7435
+ content: {
7436
+ "application/json": components["schemas"]["UserAliasResponse"];
7437
+ };
7438
+ };
7439
+ /** @description Invalid request parameters */
7440
+ 400: {
7441
+ headers: {
7442
+ [name: string]: unknown;
7443
+ };
7444
+ content: {
7445
+ "application/json": components["schemas"]["OpenAIApiError"];
7446
+ };
7447
+ };
7448
+ /** @description Not authenticated */
7449
+ 401: {
7450
+ headers: {
7451
+ [name: string]: unknown;
7452
+ };
7453
+ content: {
7454
+ "application/json": components["schemas"]["OpenAIApiError"];
7455
+ };
7456
+ };
7457
+ /** @description Insufficient permissions */
7458
+ 403: {
7459
+ headers: {
7460
+ [name: string]: unknown;
7461
+ };
7462
+ content: {
7463
+ "application/json": components["schemas"]["OpenAIApiError"];
7464
+ };
7465
+ };
7466
+ /** @description Internal server error */
7467
+ 500: {
7468
+ headers: {
7469
+ [name: string]: unknown;
7470
+ };
7471
+ content: {
7472
+ "application/json": components["schemas"]["OpenAIApiError"];
7473
+ };
7474
+ };
7475
+ };
7476
+ };
7477
+ models_alias_destroy: {
7478
+ parameters: {
7479
+ query?: never;
7480
+ header?: never;
7481
+ path: {
7482
+ /** @description UUID of the alias to delete */
7483
+ id: string;
7484
+ };
7485
+ cookie?: never;
7486
+ };
7487
+ requestBody?: never;
7488
+ responses: {
7489
+ /** @description Alias deleted successfully */
7490
+ 200: {
7491
+ headers: {
7492
+ [name: string]: unknown;
7493
+ };
7494
+ content?: never;
7495
+ };
7496
+ /** @description Invalid request parameters */
7497
+ 400: {
7498
+ headers: {
7499
+ [name: string]: unknown;
7500
+ };
7501
+ content: {
7502
+ "application/json": components["schemas"]["OpenAIApiError"];
7503
+ };
7504
+ };
7505
+ /** @description Not authenticated */
7506
+ 401: {
7507
+ headers: {
7508
+ [name: string]: unknown;
7509
+ };
7510
+ content: {
7511
+ "application/json": components["schemas"]["OpenAIApiError"];
7512
+ };
7513
+ };
7514
+ /** @description Insufficient permissions */
7515
+ 403: {
7516
+ headers: {
7517
+ [name: string]: unknown;
7518
+ };
7519
+ content: {
7520
+ "application/json": components["schemas"]["OpenAIApiError"];
7521
+ };
7522
+ };
7523
+ /** @description Alias not found */
7524
+ 404: {
7525
+ headers: {
7526
+ [name: string]: unknown;
7527
+ };
7528
+ content?: never;
7529
+ };
7530
+ /** @description Internal server error */
7531
+ 500: {
7532
+ headers: {
7533
+ [name: string]: unknown;
7534
+ };
7535
+ content: {
7536
+ "application/json": components["schemas"]["OpenAIApiError"];
7537
+ };
7538
+ };
7539
+ };
7540
+ };
7541
+ models_alias_copy: {
7542
+ parameters: {
7543
+ query?: never;
7544
+ header?: never;
7545
+ path: {
7546
+ /** @description UUID of the alias to copy */
7547
+ id: string;
7548
+ };
7549
+ cookie?: never;
7550
+ };
7551
+ requestBody: {
7552
+ content: {
7553
+ "application/json": components["schemas"]["CopyAliasRequest"];
7554
+ };
7555
+ };
7556
+ responses: {
7557
+ /** @description Alias copied successfully */
7558
+ 201: {
7559
+ headers: {
7560
+ [name: string]: unknown;
7561
+ };
7562
+ content: {
7563
+ "application/json": components["schemas"]["UserAliasResponse"];
7564
+ };
7565
+ };
7566
+ /** @description Invalid request parameters */
7567
+ 400: {
7568
+ headers: {
7569
+ [name: string]: unknown;
7570
+ };
7571
+ content: {
7572
+ "application/json": components["schemas"]["OpenAIApiError"];
7573
+ };
7574
+ };
7575
+ /** @description Not authenticated */
7576
+ 401: {
7577
+ headers: {
7578
+ [name: string]: unknown;
7579
+ };
7580
+ content: {
7581
+ "application/json": components["schemas"]["OpenAIApiError"];
7582
+ };
7583
+ };
7584
+ /** @description Insufficient permissions */
7585
+ 403: {
7586
+ headers: {
7587
+ [name: string]: unknown;
7588
+ };
7589
+ content: {
7590
+ "application/json": components["schemas"]["OpenAIApiError"];
7591
+ };
7592
+ };
7593
+ /** @description Source alias not found */
7594
+ 404: {
7595
+ headers: {
7596
+ [name: string]: unknown;
7597
+ };
7598
+ content?: never;
7599
+ };
7600
+ /** @description Internal server error */
7601
+ 500: {
7602
+ headers: {
7603
+ [name: string]: unknown;
7604
+ };
7605
+ content: {
7606
+ "application/json": components["schemas"]["OpenAIApiError"];
7607
+ };
7608
+ };
7609
+ };
7610
+ };
7611
+ createApiModel: {
7612
+ parameters: {
7613
+ query?: never;
7614
+ header?: never;
7615
+ path?: never;
7616
+ cookie?: never;
7617
+ };
7618
+ requestBody: {
7619
+ content: {
7620
+ "application/json": components["schemas"]["ApiModelRequest"];
7621
+ };
7622
+ };
7623
+ responses: {
7624
+ /** @description API model created */
7625
+ 201: {
7626
+ headers: {
7627
+ [name: string]: unknown;
7628
+ };
7629
+ content: {
7630
+ "application/json": components["schemas"]["ApiAliasResponse"];
7631
+ };
7632
+ };
7633
+ /** @description Invalid request parameters */
7634
+ 400: {
7635
+ headers: {
7636
+ [name: string]: unknown;
7637
+ };
7638
+ content: {
7639
+ "application/json": components["schemas"]["OpenAIApiError"];
7640
+ };
7641
+ };
7642
+ /** @description Not authenticated */
7643
+ 401: {
7644
+ headers: {
7645
+ [name: string]: unknown;
7646
+ };
7647
+ content: {
7648
+ "application/json": components["schemas"]["OpenAIApiError"];
7649
+ };
7650
+ };
7651
+ /** @description Insufficient permissions */
7652
+ 403: {
7653
+ headers: {
7654
+ [name: string]: unknown;
7655
+ };
7656
+ content: {
7657
+ "application/json": components["schemas"]["OpenAIApiError"];
7658
+ };
7659
+ };
7660
+ /** @description Alias already exists */
7661
+ 409: {
7662
+ headers: {
7663
+ [name: string]: unknown;
7664
+ };
7665
+ content: {
7666
+ "application/json": components["schemas"]["OpenAIApiError"];
7667
+ };
7668
+ };
7669
+ /** @description Internal server error */
7670
+ 500: {
7671
+ headers: {
7672
+ [name: string]: unknown;
7673
+ };
7674
+ content: {
7675
+ "application/json": components["schemas"]["OpenAIApiError"];
7676
+ };
7677
+ };
7678
+ };
7679
+ };
7680
+ fetchApiModels: {
7681
+ parameters: {
7682
+ query?: never;
7683
+ header?: never;
7684
+ path?: never;
7685
+ cookie?: never;
7686
+ };
7687
+ requestBody: {
7688
+ content: {
7689
+ "application/json": components["schemas"]["FetchModelsRequest"];
7690
+ };
7691
+ };
7692
+ responses: {
7693
+ /** @description Available models */
7694
+ 200: {
7695
+ headers: {
7696
+ [name: string]: unknown;
7697
+ };
7698
+ content: {
7699
+ "application/json": components["schemas"]["FetchModelsResponse"];
7700
+ };
7701
+ };
7702
+ /** @description Invalid request parameters */
7703
+ 400: {
7704
+ headers: {
7705
+ [name: string]: unknown;
7706
+ };
7707
+ content: {
7708
+ "application/json": components["schemas"]["OpenAIApiError"];
7709
+ };
7710
+ };
7711
+ /** @description Not authenticated */
7712
+ 401: {
7713
+ headers: {
7714
+ [name: string]: unknown;
7715
+ };
7716
+ content: {
7717
+ "application/json": components["schemas"]["OpenAIApiError"];
7718
+ };
7719
+ };
7720
+ /** @description Insufficient permissions */
7721
+ 403: {
7722
+ headers: {
7723
+ [name: string]: unknown;
7724
+ };
7725
+ content: {
7726
+ "application/json": components["schemas"]["OpenAIApiError"];
7727
+ };
7728
+ };
7729
+ /** @description Internal server error */
7730
+ 500: {
7731
+ headers: {
7732
+ [name: string]: unknown;
7733
+ };
7734
+ content: {
7735
+ "application/json": components["schemas"]["OpenAIApiError"];
7736
+ };
7737
+ };
7738
+ };
7739
+ };
7740
+ getApiFormats: {
7741
+ parameters: {
7742
+ query?: never;
7743
+ header?: never;
7744
+ path?: never;
7745
+ cookie?: never;
7746
+ };
7747
+ requestBody?: never;
7748
+ responses: {
7749
+ /** @description API formats retrieved successfully */
7750
+ 200: {
7751
+ headers: {
7752
+ [name: string]: unknown;
7753
+ };
7754
+ content: {
7755
+ /** @example {
7756
+ * "data": [
7757
+ * "openai"
7758
+ * ]
7759
+ * } */
7760
+ "application/json": components["schemas"]["ApiFormatsResponse"];
7761
+ };
7762
+ };
7763
+ /** @description Invalid request parameters */
7764
+ 400: {
7765
+ headers: {
7766
+ [name: string]: unknown;
7767
+ };
7768
+ content: {
7769
+ "application/json": components["schemas"]["OpenAIApiError"];
7770
+ };
7771
+ };
7772
+ /** @description Not authenticated */
7773
+ 401: {
7774
+ headers: {
7775
+ [name: string]: unknown;
7776
+ };
7777
+ content: {
7778
+ "application/json": components["schemas"]["OpenAIApiError"];
7779
+ };
7780
+ };
7781
+ /** @description Insufficient permissions */
7782
+ 403: {
7783
+ headers: {
7784
+ [name: string]: unknown;
7785
+ };
7786
+ content: {
7787
+ "application/json": components["schemas"]["OpenAIApiError"];
7788
+ };
7789
+ };
7790
+ /** @description Internal server error */
7791
+ 500: {
7792
+ headers: {
7793
+ [name: string]: unknown;
7794
+ };
7795
+ content: {
7796
+ "application/json": components["schemas"]["OpenAIApiError"];
7797
+ };
7798
+ };
7799
+ };
7800
+ };
7801
+ testApiModel: {
7802
+ parameters: {
7803
+ query?: never;
7494
7804
  header?: never;
7495
7805
  path?: never;
7496
7806
  cookie?: never;
7497
7807
  };
7808
+ requestBody: {
7809
+ content: {
7810
+ "application/json": components["schemas"]["TestPromptRequest"];
7811
+ };
7812
+ };
7813
+ responses: {
7814
+ /** @description Test result */
7815
+ 200: {
7816
+ headers: {
7817
+ [name: string]: unknown;
7818
+ };
7819
+ content: {
7820
+ "application/json": components["schemas"]["TestPromptResponse"];
7821
+ };
7822
+ };
7823
+ /** @description Invalid request parameters */
7824
+ 400: {
7825
+ headers: {
7826
+ [name: string]: unknown;
7827
+ };
7828
+ content: {
7829
+ "application/json": components["schemas"]["OpenAIApiError"];
7830
+ };
7831
+ };
7832
+ /** @description Not authenticated */
7833
+ 401: {
7834
+ headers: {
7835
+ [name: string]: unknown;
7836
+ };
7837
+ content: {
7838
+ "application/json": components["schemas"]["OpenAIApiError"];
7839
+ };
7840
+ };
7841
+ /** @description Insufficient permissions */
7842
+ 403: {
7843
+ headers: {
7844
+ [name: string]: unknown;
7845
+ };
7846
+ content: {
7847
+ "application/json": components["schemas"]["OpenAIApiError"];
7848
+ };
7849
+ };
7850
+ /** @description Internal server error */
7851
+ 500: {
7852
+ headers: {
7853
+ [name: string]: unknown;
7854
+ };
7855
+ content: {
7856
+ "application/json": components["schemas"]["OpenAIApiError"];
7857
+ };
7858
+ };
7859
+ };
7860
+ };
7861
+ getApiModel: {
7862
+ parameters: {
7863
+ query?: never;
7864
+ header?: never;
7865
+ path: {
7866
+ /**
7867
+ * @description Unique identifier for the API model alias
7868
+ * @example openai-gpt4
7869
+ */
7870
+ id: string;
7871
+ };
7872
+ cookie?: never;
7873
+ };
7498
7874
  requestBody?: never;
7499
7875
  responses: {
7500
- /** @description Model download requests retrieved successfully */
7876
+ /** @description API model configuration retrieved successfully */
7501
7877
  200: {
7502
7878
  headers: {
7503
7879
  [name: string]: unknown;
7504
7880
  };
7505
7881
  content: {
7506
7882
  /** @example {
7507
- * "data": [
7508
- * {
7509
- * "created_at": "2024-01-15T10:30:00Z",
7510
- * "filename": "mistral-7b-instruct-v0.1.Q4_K_M.gguf",
7511
- * "id": "download_123",
7512
- * "progress": 45.5,
7513
- * "repo": "TheBloke/Mistral-7B-Instruct-v0.1-GGUF",
7514
- * "status": "downloading",
7515
- * "updated_at": "2024-01-15T10:35:00Z"
7516
- * }
7517
- * ],
7518
- * "page": 1,
7519
- * "page_size": 10,
7520
- * "total": 1
7883
+ * "api_format": "openai",
7884
+ * "base_url": "https://api.openai.com/v1",
7885
+ * "has_api_key": true,
7886
+ * "id": "openai-gpt4",
7887
+ * "models": [
7888
+ * "gpt-4"
7889
+ * ]
7521
7890
  * } */
7522
- "application/json": components["schemas"]["PaginatedDownloadResponse"];
7891
+ "application/json": components["schemas"]["ApiAliasResponse"];
7523
7892
  };
7524
7893
  };
7525
7894
  /** @description Invalid request parameters */
@@ -7549,6 +7918,22 @@ export interface operations {
7549
7918
  "application/json": components["schemas"]["OpenAIApiError"];
7550
7919
  };
7551
7920
  };
7921
+ /** @description API model with specified ID not found */
7922
+ 404: {
7923
+ headers: {
7924
+ [name: string]: unknown;
7925
+ };
7926
+ content: {
7927
+ /** @example {
7928
+ * "error": {
7929
+ * "code": "entity_not_found",
7930
+ * "message": "API model 'invalid-model' not found",
7931
+ * "type": "not_found_error"
7932
+ * }
7933
+ * } */
7934
+ "application/json": components["schemas"]["OpenAIApiError"];
7935
+ };
7936
+ };
7552
7937
  /** @description Internal server error */
7553
7938
  500: {
7554
7939
  headers: {
@@ -7560,59 +7945,96 @@ export interface operations {
7560
7945
  };
7561
7946
  };
7562
7947
  };
7563
- pullModelFile: {
7948
+ updateApiModel: {
7564
7949
  parameters: {
7565
7950
  query?: never;
7566
7951
  header?: never;
7567
- path?: never;
7952
+ path: {
7953
+ /** @description API model ID */
7954
+ id: string;
7955
+ };
7568
7956
  cookie?: never;
7569
7957
  };
7570
- /** @description Model file download specification with repository and filename */
7571
7958
  requestBody: {
7572
7959
  content: {
7573
- /** @example {
7574
- * "filename": "mistral-7b-instruct-v0.1.Q8_0.gguf",
7575
- * "repo": "TheBloke/Mistral-7B-Instruct-v0.1-GGUF"
7576
- * } */
7577
- "application/json": components["schemas"]["NewDownloadRequest"];
7960
+ "application/json": components["schemas"]["ApiModelRequest"];
7578
7961
  };
7579
7962
  };
7580
7963
  responses: {
7581
- /** @description Existing download request found */
7964
+ /** @description API model updated */
7582
7965
  200: {
7583
7966
  headers: {
7584
7967
  [name: string]: unknown;
7585
7968
  };
7586
7969
  content: {
7587
- /** @example {
7588
- * "created_at": "2024-11-10T04:52:06.786Z",
7589
- * "error": null,
7590
- * "filename": "mistral-7b-instruct-v0.1.Q8_0.gguf",
7591
- * "id": "550e8400-e29b-41d4-a716-446655440000",
7592
- * "repo": "TheBloke/Mistral-7B-Instruct-v0.1-GGUF",
7593
- * "status": "pending",
7594
- * "updated_at": "2024-11-10T04:52:06.786Z"
7595
- * } */
7596
- "application/json": components["schemas"]["DownloadRequest"];
7970
+ "application/json": components["schemas"]["ApiAliasResponse"];
7597
7971
  };
7598
7972
  };
7599
- /** @description Download request created */
7600
- 201: {
7973
+ /** @description Invalid request parameters */
7974
+ 400: {
7601
7975
  headers: {
7602
7976
  [name: string]: unknown;
7603
7977
  };
7604
7978
  content: {
7605
- /** @example {
7606
- * "created_at": "2024-11-10T04:52:06.786Z",
7607
- * "error": null,
7608
- * "filename": "mistral-7b-instruct-v0.1.Q8_0.gguf",
7609
- * "id": "550e8400-e29b-41d4-a716-446655440000",
7610
- * "repo": "TheBloke/Mistral-7B-Instruct-v0.1-GGUF",
7611
- * "status": "pending",
7612
- * "updated_at": "2024-11-10T04:52:06.786Z"
7613
- * } */
7614
- "application/json": components["schemas"]["DownloadRequest"];
7979
+ "application/json": components["schemas"]["OpenAIApiError"];
7980
+ };
7981
+ };
7982
+ /** @description Not authenticated */
7983
+ 401: {
7984
+ headers: {
7985
+ [name: string]: unknown;
7986
+ };
7987
+ content: {
7988
+ "application/json": components["schemas"]["OpenAIApiError"];
7989
+ };
7990
+ };
7991
+ /** @description Insufficient permissions */
7992
+ 403: {
7993
+ headers: {
7994
+ [name: string]: unknown;
7995
+ };
7996
+ content: {
7997
+ "application/json": components["schemas"]["OpenAIApiError"];
7998
+ };
7999
+ };
8000
+ /** @description API model not found */
8001
+ 404: {
8002
+ headers: {
8003
+ [name: string]: unknown;
8004
+ };
8005
+ content: {
8006
+ "application/json": components["schemas"]["OpenAIApiError"];
8007
+ };
8008
+ };
8009
+ /** @description Internal server error */
8010
+ 500: {
8011
+ headers: {
8012
+ [name: string]: unknown;
8013
+ };
8014
+ content: {
8015
+ "application/json": components["schemas"]["OpenAIApiError"];
8016
+ };
8017
+ };
8018
+ };
8019
+ };
8020
+ deleteApiModel: {
8021
+ parameters: {
8022
+ query?: never;
8023
+ header?: never;
8024
+ path: {
8025
+ /** @description API model ID */
8026
+ id: string;
8027
+ };
8028
+ cookie?: never;
8029
+ };
8030
+ requestBody?: never;
8031
+ responses: {
8032
+ /** @description API model deleted */
8033
+ 204: {
8034
+ headers: {
8035
+ [name: string]: unknown;
7615
8036
  };
8037
+ content?: never;
7616
8038
  };
7617
8039
  /** @description Invalid request parameters */
7618
8040
  400: {
@@ -7641,6 +8063,15 @@ export interface operations {
7641
8063
  "application/json": components["schemas"]["OpenAIApiError"];
7642
8064
  };
7643
8065
  };
8066
+ /** @description API model not found */
8067
+ 404: {
8068
+ headers: {
8069
+ [name: string]: unknown;
8070
+ };
8071
+ content: {
8072
+ "application/json": components["schemas"]["OpenAIApiError"];
8073
+ };
8074
+ };
7644
8075
  /** @description Internal server error */
7645
8076
  500: {
7646
8077
  headers: {
@@ -7652,14 +8083,14 @@ export interface operations {
7652
8083
  };
7653
8084
  };
7654
8085
  };
7655
- getDownloadStatus: {
8086
+ syncModels: {
7656
8087
  parameters: {
7657
8088
  query?: never;
7658
8089
  header?: never;
7659
8090
  path: {
7660
8091
  /**
7661
- * @description Unique identifier of the download request (UUID format)
7662
- * @example 550e8400-e29b-41d4-a716-446655440000
8092
+ * @description Unique identifier for the API model alias
8093
+ * @example openai-gpt4
7663
8094
  */
7664
8095
  id: string;
7665
8096
  };
@@ -7667,22 +8098,28 @@ export interface operations {
7667
8098
  };
7668
8099
  requestBody?: never;
7669
8100
  responses: {
7670
- /** @description Download request found */
8101
+ /** @description Models synced to cache successfully */
7671
8102
  200: {
7672
8103
  headers: {
7673
8104
  [name: string]: unknown;
7674
8105
  };
7675
8106
  content: {
7676
8107
  /** @example {
7677
- * "created_at": "2024-11-10T04:52:06.786Z",
7678
- * "error": null,
7679
- * "filename": "mistral-7b-instruct-v0.1.Q8_0.gguf",
7680
- * "id": "550e8400-e29b-41d4-a716-446655440000",
7681
- * "repo": "TheBloke/Mistral-7B-Instruct-v0.1-GGUF",
7682
- * "status": "completed",
7683
- * "updated_at": "2024-01-20T12:00:10Z"
8108
+ * "api_format": "openai",
8109
+ * "base_url": "https://api.openai.com/v1",
8110
+ * "created_at": "2024-01-01T00:00:00Z",
8111
+ * "forward_all_with_prefix": false,
8112
+ * "has_api_key": true,
8113
+ * "id": "openai-gpt4",
8114
+ * "models": [
8115
+ * "gpt-4",
8116
+ * "gpt-3.5-turbo",
8117
+ * "gpt-4-turbo"
8118
+ * ],
8119
+ * "prefix": null,
8120
+ * "updated_at": "2024-01-01T00:00:00Z"
7684
8121
  * } */
7685
- "application/json": components["schemas"]["DownloadRequest"];
8122
+ "application/json": components["schemas"]["ApiAliasResponse"];
7686
8123
  };
7687
8124
  };
7688
8125
  /** @description Invalid request parameters */
@@ -7712,21 +8149,12 @@ export interface operations {
7712
8149
  "application/json": components["schemas"]["OpenAIApiError"];
7713
8150
  };
7714
8151
  };
7715
- /** @description Download request not found */
7716
- 404: {
7717
- headers: {
7718
- [name: string]: unknown;
7719
- };
7720
- content: {
7721
- /** @example {
7722
- * "error": {
7723
- * "code": "db_error-item_not_found",
7724
- * "message": "item '550e8400-e29b-41d4-a716-446655440000' of type 'download_requests' not found in db",
7725
- * "type": "not_found_error"
7726
- * }
7727
- * } */
7728
- "application/json": components["schemas"]["OpenAIApiError"];
8152
+ /** @description API model not found */
8153
+ 404: {
8154
+ headers: {
8155
+ [name: string]: unknown;
7729
8156
  };
8157
+ content?: never;
7730
8158
  };
7731
8159
  /** @description Internal server error */
7732
8160
  500: {
@@ -7739,7 +8167,7 @@ export interface operations {
7739
8167
  };
7740
8168
  };
7741
8169
  };
7742
- listAllModels: {
8170
+ listModelFiles: {
7743
8171
  parameters: {
7744
8172
  query?: {
7745
8173
  /** @description Page number (1-based indexing) */
@@ -7757,7 +8185,7 @@ export interface operations {
7757
8185
  };
7758
8186
  requestBody?: never;
7759
8187
  responses: {
7760
- /** @description Paginated list of model aliases retrieved successfully */
8188
+ /** @description Local model files retrieved successfully from cache */
7761
8189
  200: {
7762
8190
  headers: {
7763
8191
  [name: string]: unknown;
@@ -7766,45 +8194,17 @@ export interface operations {
7766
8194
  /** @example {
7767
8195
  * "data": [
7768
8196
  * {
7769
- * "alias": "llama2:chat",
7770
- * "context_params": [
7771
- * "--ctx_size",
7772
- * "4096"
7773
- * ],
7774
- * "filename": "llama-2-7b-chat.Q4_K_M.gguf",
7775
- * "repo": "TheBloke/Llama-2-7B-Chat-GGUF",
7776
- * "request_params": {
7777
- * "temperature": 0.7,
7778
- * "top_p": 0.95
7779
- * },
7780
- * "snapshot": "abc123",
7781
- * "source": "user"
7782
- * },
7783
- * {
7784
- * "alias": "TheBloke/Llama-2-7B-Chat-GGUF:Q4_K_M",
7785
- * "filename": "llama-2-7b-chat.Q4_K_M.gguf",
7786
- * "repo": "TheBloke/Llama-2-7B-Chat-GGUF",
7787
- * "snapshot": "abc123",
7788
- * "source": "model"
7789
- * },
7790
- * {
7791
- * "api_format": "openai",
7792
- * "base_url": "https://api.openai.com/v1",
7793
- * "created_at": "2024-01-01T00:00:00Z",
7794
- * "id": "openai-gpt4",
7795
- * "models": [
7796
- * "gpt-4",
7797
- * "gpt-3.5-turbo"
7798
- * ],
7799
- * "source": "api",
7800
- * "updated_at": "2024-01-01T00:00:00Z"
8197
+ * "filename": "mistral-7b-instruct-v0.1.Q4_K_M.gguf",
8198
+ * "repo": "TheBloke/Mistral-7B-Instruct-v0.1-GGUF",
8199
+ * "size": 4815162,
8200
+ * "snapshot_id": "ab12cd34"
7801
8201
  * }
7802
8202
  * ],
7803
8203
  * "page": 1,
7804
8204
  * "page_size": 10,
7805
- * "total": 3
8205
+ * "total": 1
7806
8206
  * } */
7807
- "application/json": components["schemas"]["PaginatedAliasResponse"];
8207
+ "application/json": components["schemas"]["PaginatedLocalModelResponse"];
7808
8208
  };
7809
8209
  };
7810
8210
  /** @description Invalid request parameters */
@@ -7845,26 +8245,47 @@ export interface operations {
7845
8245
  };
7846
8246
  };
7847
8247
  };
7848
- createAlias: {
8248
+ listDownloads: {
7849
8249
  parameters: {
7850
- query?: never;
8250
+ query?: {
8251
+ /** @description Page number (1-based indexing) */
8252
+ page?: number;
8253
+ /** @description Number of items to return per page (maximum 100) */
8254
+ page_size?: number;
8255
+ /** @description Field to sort by. Common values: repo, filename, size, updated_at, snapshot, created_at */
8256
+ sort?: string;
8257
+ /** @description Sort order: 'asc' for ascending, 'desc' for descending */
8258
+ sort_order?: string;
8259
+ };
7851
8260
  header?: never;
7852
8261
  path?: never;
7853
8262
  cookie?: never;
7854
8263
  };
7855
- requestBody: {
7856
- content: {
7857
- "application/json": components["schemas"]["UserAliasRequest"];
7858
- };
7859
- };
8264
+ requestBody?: never;
7860
8265
  responses: {
7861
- /** @description Alias created succesfully */
7862
- 201: {
8266
+ /** @description Model download requests retrieved successfully */
8267
+ 200: {
7863
8268
  headers: {
7864
8269
  [name: string]: unknown;
7865
8270
  };
7866
8271
  content: {
7867
- "application/json": components["schemas"]["UserAliasResponse"];
8272
+ /** @example {
8273
+ * "data": [
8274
+ * {
8275
+ * "created_at": "2024-01-15T10:30:00Z",
8276
+ * "filename": "mistral-7b-instruct-v0.1.Q4_K_M.gguf",
8277
+ * "id": "download_123",
8278
+ * "progress": 45.5,
8279
+ * "repo": "TheBloke/Mistral-7B-Instruct-v0.1-GGUF",
8280
+ * "status": "downloading",
8281
+ * "updated_at": "2024-01-15T10:35:00Z"
8282
+ * }
8283
+ * ],
8284
+ * "page": 1,
8285
+ * "page_size": 10,
8286
+ * "total": 1
8287
+ * } */
8288
+ "application/json": components["schemas"]["PaginatedDownloadResponse"];
7868
8289
  };
7869
8290
  };
7870
8291
  /** @description Invalid request parameters */
@@ -7905,39 +8326,58 @@ export interface operations {
7905
8326
  };
7906
8327
  };
7907
8328
  };
7908
- refreshModelMetadata: {
8329
+ pullModelFile: {
7909
8330
  parameters: {
7910
8331
  query?: never;
7911
8332
  header?: never;
7912
8333
  path?: never;
7913
8334
  cookie?: never;
7914
8335
  };
7915
- /** @description Refresh request - either bulk (source='all') or single model (source='model' with identifiers) */
8336
+ /** @description Model file download specification with repository and filename */
7916
8337
  requestBody: {
7917
8338
  content: {
7918
- "application/json": components["schemas"]["RefreshRequest"];
8339
+ /** @example {
8340
+ * "filename": "mistral-7b-instruct-v0.1.Q8_0.gguf",
8341
+ * "repo": "TheBloke/Mistral-7B-Instruct-v0.1-GGUF"
8342
+ * } */
8343
+ "application/json": components["schemas"]["NewDownloadRequest"];
7919
8344
  };
7920
8345
  };
7921
8346
  responses: {
7922
- /** @description Metadata refreshed successfully (sync mode) */
8347
+ /** @description Existing download request found */
7923
8348
  200: {
7924
8349
  headers: {
7925
8350
  [name: string]: unknown;
7926
8351
  };
7927
8352
  content: {
7928
- "application/json": components["schemas"]["ModelAliasResponse"];
8353
+ /** @example {
8354
+ * "created_at": "2024-11-10T04:52:06.786Z",
8355
+ * "error": null,
8356
+ * "filename": "mistral-7b-instruct-v0.1.Q8_0.gguf",
8357
+ * "id": "550e8400-e29b-41d4-a716-446655440000",
8358
+ * "repo": "TheBloke/Mistral-7B-Instruct-v0.1-GGUF",
8359
+ * "status": "pending",
8360
+ * "updated_at": "2024-11-10T04:52:06.786Z"
8361
+ * } */
8362
+ "application/json": components["schemas"]["DownloadRequest"];
7929
8363
  };
7930
8364
  };
7931
- /** @description Metadata refresh queued in background (bulk mode) */
7932
- 202: {
8365
+ /** @description Download request created */
8366
+ 201: {
7933
8367
  headers: {
7934
8368
  [name: string]: unknown;
7935
8369
  };
7936
8370
  content: {
7937
8371
  /** @example {
7938
- * "num_queued": "all"
8372
+ * "created_at": "2024-11-10T04:52:06.786Z",
8373
+ * "error": null,
8374
+ * "filename": "mistral-7b-instruct-v0.1.Q8_0.gguf",
8375
+ * "id": "550e8400-e29b-41d4-a716-446655440000",
8376
+ * "repo": "TheBloke/Mistral-7B-Instruct-v0.1-GGUF",
8377
+ * "status": "pending",
8378
+ * "updated_at": "2024-11-10T04:52:06.786Z"
7939
8379
  * } */
7940
- "application/json": components["schemas"]["RefreshResponse"];
8380
+ "application/json": components["schemas"]["DownloadRequest"];
7941
8381
  };
7942
8382
  };
7943
8383
  /** @description Invalid request parameters */
@@ -7967,13 +8407,6 @@ export interface operations {
7967
8407
  "application/json": components["schemas"]["OpenAIApiError"];
7968
8408
  };
7969
8409
  };
7970
- /** @description Model alias not found for specified repo/filename/snapshot */
7971
- 404: {
7972
- headers: {
7973
- [name: string]: unknown;
7974
- };
7975
- content?: never;
7976
- };
7977
8410
  /** @description Internal server error */
7978
8411
  500: {
7979
8412
  headers: {
@@ -7985,25 +8418,37 @@ export interface operations {
7985
8418
  };
7986
8419
  };
7987
8420
  };
7988
- getAlias: {
8421
+ getDownloadStatus: {
7989
8422
  parameters: {
7990
8423
  query?: never;
7991
8424
  header?: never;
7992
8425
  path: {
7993
- /** @description UUID of the alias */
8426
+ /**
8427
+ * @description Unique identifier of the download request (UUID format)
8428
+ * @example 550e8400-e29b-41d4-a716-446655440000
8429
+ */
7994
8430
  id: string;
7995
8431
  };
7996
8432
  cookie?: never;
7997
8433
  };
7998
8434
  requestBody?: never;
7999
8435
  responses: {
8000
- /** @description Model alias details */
8436
+ /** @description Download request found */
8001
8437
  200: {
8002
8438
  headers: {
8003
8439
  [name: string]: unknown;
8004
8440
  };
8005
8441
  content: {
8006
- "application/json": components["schemas"]["UserAliasResponse"];
8442
+ /** @example {
8443
+ * "created_at": "2024-11-10T04:52:06.786Z",
8444
+ * "error": null,
8445
+ * "filename": "mistral-7b-instruct-v0.1.Q8_0.gguf",
8446
+ * "id": "550e8400-e29b-41d4-a716-446655440000",
8447
+ * "repo": "TheBloke/Mistral-7B-Instruct-v0.1-GGUF",
8448
+ * "status": "completed",
8449
+ * "updated_at": "2024-01-20T12:00:10Z"
8450
+ * } */
8451
+ "application/json": components["schemas"]["DownloadRequest"];
8007
8452
  };
8008
8453
  };
8009
8454
  /** @description Invalid request parameters */
@@ -8033,7 +8478,7 @@ export interface operations {
8033
8478
  "application/json": components["schemas"]["OpenAIApiError"];
8034
8479
  };
8035
8480
  };
8036
- /** @description Alias not found */
8481
+ /** @description Download request not found */
8037
8482
  404: {
8038
8483
  headers: {
8039
8484
  [name: string]: unknown;
@@ -8041,8 +8486,8 @@ export interface operations {
8041
8486
  content: {
8042
8487
  /** @example {
8043
8488
  * "error": {
8044
- * "code": "alias_not_found",
8045
- * "message": "Alias 'unknown:model' not found",
8489
+ * "code": "db_error-item_not_found",
8490
+ * "message": "item '550e8400-e29b-41d4-a716-446655440000' of type 'download_requests' not found in db",
8046
8491
  * "type": "not_found_error"
8047
8492
  * }
8048
8493
  * } */
@@ -8060,87 +8505,40 @@ export interface operations {
8060
8505
  };
8061
8506
  };
8062
8507
  };
8063
- updateAlias: {
8508
+ refreshModelMetadata: {
8064
8509
  parameters: {
8065
8510
  query?: never;
8066
8511
  header?: never;
8067
- path: {
8068
- /** @description UUID of the alias to update */
8069
- id: string;
8070
- };
8512
+ path?: never;
8071
8513
  cookie?: never;
8072
8514
  };
8515
+ /** @description Refresh request - either bulk (source='all') or single model (source='model' with identifiers) */
8073
8516
  requestBody: {
8074
8517
  content: {
8075
- "application/json": components["schemas"]["UserAliasRequest"];
8518
+ "application/json": components["schemas"]["RefreshRequest"];
8076
8519
  };
8077
8520
  };
8078
8521
  responses: {
8079
- /** @description Alias updated succesfully */
8522
+ /** @description Metadata refreshed successfully (sync mode) */
8080
8523
  200: {
8081
8524
  headers: {
8082
8525
  [name: string]: unknown;
8083
8526
  };
8084
8527
  content: {
8085
- "application/json": components["schemas"]["UserAliasResponse"];
8086
- };
8087
- };
8088
- /** @description Invalid request parameters */
8089
- 400: {
8090
- headers: {
8091
- [name: string]: unknown;
8092
- };
8093
- content: {
8094
- "application/json": components["schemas"]["OpenAIApiError"];
8095
- };
8096
- };
8097
- /** @description Not authenticated */
8098
- 401: {
8099
- headers: {
8100
- [name: string]: unknown;
8101
- };
8102
- content: {
8103
- "application/json": components["schemas"]["OpenAIApiError"];
8104
- };
8105
- };
8106
- /** @description Insufficient permissions */
8107
- 403: {
8108
- headers: {
8109
- [name: string]: unknown;
8110
- };
8111
- content: {
8112
- "application/json": components["schemas"]["OpenAIApiError"];
8528
+ "application/json": components["schemas"]["ModelAliasResponse"];
8113
8529
  };
8114
8530
  };
8115
- /** @description Internal server error */
8116
- 500: {
8531
+ /** @description Metadata refresh queued in background (bulk mode) */
8532
+ 202: {
8117
8533
  headers: {
8118
8534
  [name: string]: unknown;
8119
8535
  };
8120
8536
  content: {
8121
- "application/json": components["schemas"]["OpenAIApiError"];
8122
- };
8123
- };
8124
- };
8125
- };
8126
- deleteAlias: {
8127
- parameters: {
8128
- query?: never;
8129
- header?: never;
8130
- path: {
8131
- /** @description UUID of the alias to delete */
8132
- id: string;
8133
- };
8134
- cookie?: never;
8135
- };
8136
- requestBody?: never;
8137
- responses: {
8138
- /** @description Alias deleted successfully */
8139
- 200: {
8140
- headers: {
8141
- [name: string]: unknown;
8537
+ /** @example {
8538
+ * "num_queued": "all"
8539
+ * } */
8540
+ "application/json": components["schemas"]["RefreshResponse"];
8142
8541
  };
8143
- content?: never;
8144
8542
  };
8145
8543
  /** @description Invalid request parameters */
8146
8544
  400: {
@@ -8169,7 +8567,7 @@ export interface operations {
8169
8567
  "application/json": components["schemas"]["OpenAIApiError"];
8170
8568
  };
8171
8569
  };
8172
- /** @description Alias not found */
8570
+ /** @description Model alias not found for specified repo/filename/snapshot */
8173
8571
  404: {
8174
8572
  headers: {
8175
8573
  [name: string]: unknown;
@@ -8187,24 +8585,20 @@ export interface operations {
8187
8585
  };
8188
8586
  };
8189
8587
  };
8190
- copyAlias: {
8588
+ getAlias: {
8191
8589
  parameters: {
8192
8590
  query?: never;
8193
8591
  header?: never;
8194
8592
  path: {
8195
- /** @description UUID of the alias to copy */
8593
+ /** @description UUID of the alias */
8196
8594
  id: string;
8197
8595
  };
8198
8596
  cookie?: never;
8199
8597
  };
8200
- requestBody: {
8201
- content: {
8202
- "application/json": components["schemas"]["CopyAliasRequest"];
8203
- };
8204
- };
8598
+ requestBody?: never;
8205
8599
  responses: {
8206
- /** @description Alias copied successfully */
8207
- 201: {
8600
+ /** @description Model alias details */
8601
+ 200: {
8208
8602
  headers: {
8209
8603
  [name: string]: unknown;
8210
8604
  };
@@ -8239,12 +8633,21 @@ export interface operations {
8239
8633
  "application/json": components["schemas"]["OpenAIApiError"];
8240
8634
  };
8241
8635
  };
8242
- /** @description Source alias not found */
8636
+ /** @description Alias not found */
8243
8637
  404: {
8244
8638
  headers: {
8245
8639
  [name: string]: unknown;
8246
8640
  };
8247
- content?: never;
8641
+ content: {
8642
+ /** @example {
8643
+ * "error": {
8644
+ * "code": "alias_not_found",
8645
+ * "message": "Alias 'unknown:model' not found",
8646
+ * "type": "not_found_error"
8647
+ * }
8648
+ * } */
8649
+ "application/json": components["schemas"]["OpenAIApiError"];
8650
+ };
8248
8651
  };
8249
8652
  /** @description Internal server error */
8250
8653
  500: {