@vibexp/api-client 0.9.0 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/schema.d.ts CHANGED
@@ -2955,6 +2955,203 @@ export interface paths {
2955
2955
  patch?: never;
2956
2956
  trace?: never;
2957
2957
  };
2958
+ "/api/v1/{team_id}/model-providers": {
2959
+ parameters: {
2960
+ query?: never;
2961
+ header?: never;
2962
+ path: {
2963
+ /** @description Team that owns the model provider(s). */
2964
+ team_id: string;
2965
+ };
2966
+ cookie?: never;
2967
+ };
2968
+ /**
2969
+ * List model providers
2970
+ * @description Retrieves all model providers belonging to the authenticated user.
2971
+ * Returns a bare JSON array (no pagination envelope). Encrypted API keys
2972
+ * are never included; each item carries a `has_api_key` boolean instead.
2973
+ */
2974
+ get: operations["listModelProviders"];
2975
+ put?: never;
2976
+ /**
2977
+ * Create model provider
2978
+ * @description Creates a new model provider configuration for the authenticated user.
2979
+ * The `api_key` supplied in the request is encrypted at rest and is never
2980
+ * returned by the API — responses expose only a `has_api_key` boolean.
2981
+ * Returns 200 (not 201) on success.
2982
+ */
2983
+ post: operations["createModelProvider"];
2984
+ delete?: never;
2985
+ options?: never;
2986
+ head?: never;
2987
+ patch?: never;
2988
+ trace?: never;
2989
+ };
2990
+ "/api/v1/{team_id}/model-providers/{id}": {
2991
+ parameters: {
2992
+ query?: never;
2993
+ header?: never;
2994
+ path: {
2995
+ /** @description Team that owns the model provider(s). */
2996
+ team_id: string;
2997
+ };
2998
+ cookie?: never;
2999
+ };
3000
+ /**
3001
+ * Get model provider
3002
+ * @description Retrieves a single model provider owned by the authenticated user.
3003
+ * The encrypted API key is never returned; `has_api_key` indicates whether
3004
+ * one is stored.
3005
+ */
3006
+ get: operations["getModelProvider"];
3007
+ /**
3008
+ * Update model provider
3009
+ * @description Updates an existing model provider. All fields are optional; only
3010
+ * provided fields are changed. A supplied `api_key` replaces the stored
3011
+ * (encrypted) key and is never echoed back in the response. A blank/omitted
3012
+ * `api_key` preserves the stored key.
3013
+ */
3014
+ put: operations["updateModelProvider"];
3015
+ post?: never;
3016
+ /**
3017
+ * Delete model provider
3018
+ * @description Deletes a model provider owned by the authenticated user. Deleting the
3019
+ * team's last remaining provider is blocked with a 400
3020
+ * `MODEL_PROVIDER_LAST_DELETE_BLOCKED` error.
3021
+ */
3022
+ delete: operations["deleteModelProvider"];
3023
+ options?: never;
3024
+ head?: never;
3025
+ patch?: never;
3026
+ trace?: never;
3027
+ };
3028
+ "/api/v1/{team_id}/model-providers/validate": {
3029
+ parameters: {
3030
+ query?: never;
3031
+ header?: never;
3032
+ path: {
3033
+ /** @description Team that owns the model provider(s). */
3034
+ team_id: string;
3035
+ };
3036
+ cookie?: never;
3037
+ };
3038
+ get?: never;
3039
+ put?: never;
3040
+ /**
3041
+ * Validate model provider configuration
3042
+ * @description Validates a model provider configuration (connectivity/credentials)
3043
+ * without persisting anything. The probe attempts `GET {base_url}/models`
3044
+ * and falls back to `POST {base_url}/chat/completions`. Validation outcome —
3045
+ * including an invalid configuration — is reported in the 200 response body
3046
+ * (`is_valid`, `message`, `details`); 500 is returned only for internal
3047
+ * service errors.
3048
+ */
3049
+ post: operations["validateModelProvider"];
3050
+ delete?: never;
3051
+ options?: never;
3052
+ head?: never;
3053
+ patch?: never;
3054
+ trace?: never;
3055
+ };
3056
+ "/api/v1/{team_id}/settings/model-providers": {
3057
+ parameters: {
3058
+ query?: never;
3059
+ header?: never;
3060
+ path: {
3061
+ /** @description Team that owns the model provider(s). */
3062
+ team_id: string;
3063
+ };
3064
+ cookie?: never;
3065
+ };
3066
+ /**
3067
+ * List model providers (Settings)
3068
+ * @description Retrieves all model providers belonging to the authenticated user (settings route).
3069
+ * Returns a bare JSON array (no pagination envelope). Encrypted API keys
3070
+ * are never included; each item carries a `has_api_key` boolean instead.
3071
+ */
3072
+ get: operations["listModelProvidersSettings"];
3073
+ put?: never;
3074
+ /**
3075
+ * Create model provider (Settings)
3076
+ * @description Creates a new model provider configuration for the authenticated user (settings route).
3077
+ * The `api_key` supplied in the request is encrypted at rest and is never
3078
+ * returned by the API — responses expose only a `has_api_key` boolean.
3079
+ * Returns 200 (not 201) on success.
3080
+ */
3081
+ post: operations["createModelProviderSettings"];
3082
+ delete?: never;
3083
+ options?: never;
3084
+ head?: never;
3085
+ patch?: never;
3086
+ trace?: never;
3087
+ };
3088
+ "/api/v1/{team_id}/settings/model-providers/{id}": {
3089
+ parameters: {
3090
+ query?: never;
3091
+ header?: never;
3092
+ path: {
3093
+ /** @description Team that owns the model provider(s). */
3094
+ team_id: string;
3095
+ };
3096
+ cookie?: never;
3097
+ };
3098
+ /**
3099
+ * Get model provider (Settings)
3100
+ * @description Retrieves a single model provider owned by the authenticated user (settings route).
3101
+ * The encrypted API key is never returned; `has_api_key` indicates whether
3102
+ * one is stored.
3103
+ */
3104
+ get: operations["getModelProviderSettings"];
3105
+ /**
3106
+ * Update model provider (Settings)
3107
+ * @description Updates an existing model provider (settings route). All fields are
3108
+ * optional; only provided fields are changed. A supplied `api_key`
3109
+ * replaces the stored (encrypted) key and is never echoed back in the
3110
+ * response. A blank/omitted `api_key` preserves the stored key.
3111
+ */
3112
+ put: operations["updateModelProviderSettings"];
3113
+ post?: never;
3114
+ /**
3115
+ * Delete model provider (Settings)
3116
+ * @description Deletes a model provider owned by the authenticated user (settings route).
3117
+ * Deleting the team's last remaining provider is blocked with a 400
3118
+ * `MODEL_PROVIDER_LAST_DELETE_BLOCKED` error.
3119
+ */
3120
+ delete: operations["deleteModelProviderSettings"];
3121
+ options?: never;
3122
+ head?: never;
3123
+ patch?: never;
3124
+ trace?: never;
3125
+ };
3126
+ "/api/v1/{team_id}/settings/model-providers/validate": {
3127
+ parameters: {
3128
+ query?: never;
3129
+ header?: never;
3130
+ path: {
3131
+ /** @description Team that owns the model provider(s). */
3132
+ team_id: string;
3133
+ };
3134
+ cookie?: never;
3135
+ };
3136
+ get?: never;
3137
+ put?: never;
3138
+ /**
3139
+ * Validate model provider configuration (Settings)
3140
+ * @description Validates a model provider configuration (connectivity/credentials)
3141
+ * without persisting anything (settings route). The probe attempts
3142
+ * `GET {base_url}/models` and falls back to
3143
+ * `POST {base_url}/chat/completions`. Validation outcome — including an
3144
+ * invalid configuration — is reported in the 200 response body
3145
+ * (`is_valid`, `message`, `details`); 500 is returned only for internal
3146
+ * service errors.
3147
+ */
3148
+ post: operations["validateModelProviderSettings"];
3149
+ delete?: never;
3150
+ options?: never;
3151
+ head?: never;
3152
+ patch?: never;
3153
+ trace?: never;
3154
+ };
2958
3155
  "/api/v1/{team_id}/projects": {
2959
3156
  parameters: {
2960
3157
  query?: never;
@@ -4367,6 +4564,124 @@ export interface components {
4367
4564
  /** @description One entry per embeddable entity type, in a stable order. */
4368
4565
  coverage: components["schemas"]["EmbeddingCoverageItem"][];
4369
4566
  };
4567
+ ModelProvider: {
4568
+ /** @example provider_123 */
4569
+ id: string;
4570
+ /** @example user_123 */
4571
+ user_id: string;
4572
+ /**
4573
+ * Format: uuid
4574
+ * @description Team that owns this provider.
4575
+ * @example b1234567-89ab-cdef-0123-456789abcdef
4576
+ */
4577
+ team_id?: string | null;
4578
+ /** @example OpenAI GPT-4o */
4579
+ name: string;
4580
+ /** @example openai_compatible */
4581
+ provider_type: string;
4582
+ /**
4583
+ * @description Chat/completion model this provider requests.
4584
+ * @example gpt-4o-mini
4585
+ */
4586
+ model: string;
4587
+ /** @example false */
4588
+ is_default: boolean;
4589
+ /**
4590
+ * Format: uri
4591
+ * @example https://api.openai.com/v1
4592
+ */
4593
+ base_url?: string | null;
4594
+ /** @example {"temperature": 0.7, "max_tokens": 1024} */
4595
+ configuration: string;
4596
+ /** Format: date-time */
4597
+ created_at: string;
4598
+ /** Format: date-time */
4599
+ updated_at: string;
4600
+ /**
4601
+ * Format: int64
4602
+ * @description Optimistic-concurrency version counter, incremented on each update. Note: create responses currently return 0 (the persisted row starts at 1) — read it from get/list/update responses instead.
4603
+ * @example 1
4604
+ */
4605
+ version: number;
4606
+ };
4607
+ ModelProviderResponse: components["schemas"]["ModelProvider"] & {
4608
+ /** @example true */
4609
+ has_api_key: boolean;
4610
+ };
4611
+ CreateModelProviderRequest: {
4612
+ /** @example OpenAI GPT-4o */
4613
+ name: string;
4614
+ /** @example openai_compatible */
4615
+ provider_type: string;
4616
+ /**
4617
+ * @description Chat/completion model to use.
4618
+ * @example gpt-4o-mini
4619
+ */
4620
+ model: string;
4621
+ /** @example false */
4622
+ is_default?: boolean;
4623
+ /**
4624
+ * Format: uri
4625
+ * @example https://api.openai.com/v1
4626
+ */
4627
+ base_url?: string;
4628
+ api_key?: string | null;
4629
+ configuration?: {
4630
+ [key: string]: unknown;
4631
+ };
4632
+ };
4633
+ UpdateModelProviderRequest: {
4634
+ name?: string;
4635
+ provider_type?: string;
4636
+ model?: string;
4637
+ is_default?: boolean;
4638
+ /** Format: uri */
4639
+ base_url?: string;
4640
+ api_key?: string;
4641
+ configuration?: {
4642
+ [key: string]: unknown;
4643
+ };
4644
+ };
4645
+ ModelProviderListResponse: {
4646
+ model_providers: components["schemas"]["ModelProviderResponse"][];
4647
+ total_count: number;
4648
+ page: number;
4649
+ per_page: number;
4650
+ total_pages: number;
4651
+ };
4652
+ ModelProviderResponseList: components["schemas"]["ModelProviderResponse"][];
4653
+ ValidateModelProviderRequest: {
4654
+ /** @example openai_compatible */
4655
+ provider_type: string;
4656
+ /**
4657
+ * @description Chat/completion model to probe for reachability and auth.
4658
+ * @example gpt-4o-mini
4659
+ */
4660
+ model: string;
4661
+ /**
4662
+ * Format: uri
4663
+ * @example https://api.openai.com/v1
4664
+ */
4665
+ base_url: string;
4666
+ api_key?: string | null;
4667
+ configuration?: {
4668
+ [key: string]: unknown;
4669
+ };
4670
+ };
4671
+ ValidateModelProviderResponse: {
4672
+ /** @example true */
4673
+ is_valid: boolean;
4674
+ /** @example Provider configuration is valid */
4675
+ message: string;
4676
+ details?: {
4677
+ /** @example 150 */
4678
+ response_time_ms?: number;
4679
+ /** @example 200 */
4680
+ status_code?: number;
4681
+ /** @example Connection timeout */
4682
+ error_details?: string;
4683
+ };
4684
+ };
4370
4685
  ResourceUsageItem: {
4371
4686
  /**
4372
4687
  * @description Type of resource (e.g., prompt, memory, artifact)
@@ -17772,6 +18087,674 @@ export interface operations {
17772
18087
  };
17773
18088
  };
17774
18089
  };
18090
+ listModelProviders: {
18091
+ parameters: {
18092
+ query?: never;
18093
+ header?: never;
18094
+ path: {
18095
+ /** @description Team that owns the model provider(s). */
18096
+ team_id: string;
18097
+ };
18098
+ cookie?: never;
18099
+ };
18100
+ requestBody?: never;
18101
+ responses: {
18102
+ /** @description Model providers retrieved successfully */
18103
+ 200: {
18104
+ headers: {
18105
+ [name: string]: unknown;
18106
+ };
18107
+ content: {
18108
+ "application/json": components["schemas"]["ModelProviderResponseList"];
18109
+ };
18110
+ };
18111
+ /** @description Unauthorized */
18112
+ 401: {
18113
+ headers: {
18114
+ [name: string]: unknown;
18115
+ };
18116
+ content: {
18117
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18118
+ };
18119
+ };
18120
+ /** @description Failed to retrieve model providers (`DATABASE_ERROR`) */
18121
+ 500: {
18122
+ headers: {
18123
+ [name: string]: unknown;
18124
+ };
18125
+ content: {
18126
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18127
+ };
18128
+ };
18129
+ };
18130
+ };
18131
+ createModelProvider: {
18132
+ parameters: {
18133
+ query?: never;
18134
+ header?: never;
18135
+ path: {
18136
+ /** @description Team that owns the model provider(s). */
18137
+ team_id: string;
18138
+ };
18139
+ cookie?: never;
18140
+ };
18141
+ requestBody: {
18142
+ content: {
18143
+ "application/json": components["schemas"]["CreateModelProviderRequest"];
18144
+ };
18145
+ };
18146
+ responses: {
18147
+ /** @description Model provider created successfully */
18148
+ 200: {
18149
+ headers: {
18150
+ [name: string]: unknown;
18151
+ };
18152
+ content: {
18153
+ "application/json": components["schemas"]["ModelProviderResponse"];
18154
+ };
18155
+ };
18156
+ /** @description Malformed JSON body (`BAD_REQUEST`) or missing required fields (`MODEL_PROVIDER_VALIDATION_FAILED` with `validation_errors`) */
18157
+ 400: {
18158
+ headers: {
18159
+ [name: string]: unknown;
18160
+ };
18161
+ content: {
18162
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18163
+ };
18164
+ };
18165
+ /** @description Unauthorized */
18166
+ 401: {
18167
+ headers: {
18168
+ [name: string]: unknown;
18169
+ };
18170
+ content: {
18171
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18172
+ };
18173
+ };
18174
+ /** @description A provider with the same name already exists (`MODEL_PROVIDER_ALREADY_EXISTS`) */
18175
+ 409: {
18176
+ headers: {
18177
+ [name: string]: unknown;
18178
+ };
18179
+ content: {
18180
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18181
+ };
18182
+ };
18183
+ /** @description Provider creation failed (`MODEL_PROVIDER_CREATE_FAILED`) */
18184
+ 500: {
18185
+ headers: {
18186
+ [name: string]: unknown;
18187
+ };
18188
+ content: {
18189
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18190
+ };
18191
+ };
18192
+ };
18193
+ };
18194
+ getModelProvider: {
18195
+ parameters: {
18196
+ query?: never;
18197
+ header?: never;
18198
+ path: {
18199
+ /** @description Team that owns the model provider(s). */
18200
+ team_id: string;
18201
+ /** @description Model provider ID */
18202
+ id: string;
18203
+ };
18204
+ cookie?: never;
18205
+ };
18206
+ requestBody?: never;
18207
+ responses: {
18208
+ /** @description Model provider retrieved successfully */
18209
+ 200: {
18210
+ headers: {
18211
+ [name: string]: unknown;
18212
+ };
18213
+ content: {
18214
+ "application/json": components["schemas"]["ModelProviderResponse"];
18215
+ };
18216
+ };
18217
+ /** @description Unauthorized */
18218
+ 401: {
18219
+ headers: {
18220
+ [name: string]: unknown;
18221
+ };
18222
+ content: {
18223
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18224
+ };
18225
+ };
18226
+ /** @description Model provider not found (`MODEL_PROVIDER_NOT_FOUND`) */
18227
+ 404: {
18228
+ headers: {
18229
+ [name: string]: unknown;
18230
+ };
18231
+ content: {
18232
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18233
+ };
18234
+ };
18235
+ /** @description Failed to retrieve model provider (`DATABASE_ERROR`) */
18236
+ 500: {
18237
+ headers: {
18238
+ [name: string]: unknown;
18239
+ };
18240
+ content: {
18241
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18242
+ };
18243
+ };
18244
+ };
18245
+ };
18246
+ updateModelProvider: {
18247
+ parameters: {
18248
+ query?: never;
18249
+ header?: never;
18250
+ path: {
18251
+ /** @description Team that owns the model provider(s). */
18252
+ team_id: string;
18253
+ /** @description Model provider ID */
18254
+ id: string;
18255
+ };
18256
+ cookie?: never;
18257
+ };
18258
+ requestBody: {
18259
+ content: {
18260
+ "application/json": components["schemas"]["UpdateModelProviderRequest"];
18261
+ };
18262
+ };
18263
+ responses: {
18264
+ /** @description Model provider updated successfully */
18265
+ 200: {
18266
+ headers: {
18267
+ [name: string]: unknown;
18268
+ };
18269
+ content: {
18270
+ "application/json": components["schemas"]["ModelProviderResponse"];
18271
+ };
18272
+ };
18273
+ /** @description Malformed JSON body (`BAD_REQUEST`) */
18274
+ 400: {
18275
+ headers: {
18276
+ [name: string]: unknown;
18277
+ };
18278
+ content: {
18279
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18280
+ };
18281
+ };
18282
+ /** @description Unauthorized */
18283
+ 401: {
18284
+ headers: {
18285
+ [name: string]: unknown;
18286
+ };
18287
+ content: {
18288
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18289
+ };
18290
+ };
18291
+ /** @description Model provider not found (`MODEL_PROVIDER_NOT_FOUND`) */
18292
+ 404: {
18293
+ headers: {
18294
+ [name: string]: unknown;
18295
+ };
18296
+ content: {
18297
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18298
+ };
18299
+ };
18300
+ /** @description Provider update failed (`MODEL_PROVIDER_UPDATE_FAILED`) */
18301
+ 500: {
18302
+ headers: {
18303
+ [name: string]: unknown;
18304
+ };
18305
+ content: {
18306
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18307
+ };
18308
+ };
18309
+ };
18310
+ };
18311
+ deleteModelProvider: {
18312
+ parameters: {
18313
+ query?: never;
18314
+ header?: never;
18315
+ path: {
18316
+ /** @description Team that owns the model provider(s). */
18317
+ team_id: string;
18318
+ /** @description Model provider ID */
18319
+ id: string;
18320
+ };
18321
+ cookie?: never;
18322
+ };
18323
+ requestBody?: never;
18324
+ responses: {
18325
+ /** @description Model provider deleted successfully (no body) */
18326
+ 204: {
18327
+ headers: {
18328
+ [name: string]: unknown;
18329
+ };
18330
+ content?: never;
18331
+ };
18332
+ /** @description Cannot delete the last model provider (`MODEL_PROVIDER_LAST_DELETE_BLOCKED`) */
18333
+ 400: {
18334
+ headers: {
18335
+ [name: string]: unknown;
18336
+ };
18337
+ content: {
18338
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18339
+ };
18340
+ };
18341
+ /** @description Unauthorized */
18342
+ 401: {
18343
+ headers: {
18344
+ [name: string]: unknown;
18345
+ };
18346
+ content: {
18347
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18348
+ };
18349
+ };
18350
+ /** @description Model provider not found (`MODEL_PROVIDER_NOT_FOUND`) */
18351
+ 404: {
18352
+ headers: {
18353
+ [name: string]: unknown;
18354
+ };
18355
+ content: {
18356
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18357
+ };
18358
+ };
18359
+ /** @description Provider deletion failed (`MODEL_PROVIDER_DELETE_FAILED`) */
18360
+ 500: {
18361
+ headers: {
18362
+ [name: string]: unknown;
18363
+ };
18364
+ content: {
18365
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18366
+ };
18367
+ };
18368
+ };
18369
+ };
18370
+ validateModelProvider: {
18371
+ parameters: {
18372
+ query?: never;
18373
+ header?: never;
18374
+ path: {
18375
+ /** @description Team that owns the model provider(s). */
18376
+ team_id: string;
18377
+ };
18378
+ cookie?: never;
18379
+ };
18380
+ requestBody: {
18381
+ content: {
18382
+ "application/json": components["schemas"]["ValidateModelProviderRequest"];
18383
+ };
18384
+ };
18385
+ responses: {
18386
+ /** @description Validation completed (check `is_valid` for the outcome) */
18387
+ 200: {
18388
+ headers: {
18389
+ [name: string]: unknown;
18390
+ };
18391
+ content: {
18392
+ "application/json": components["schemas"]["ValidateModelProviderResponse"];
18393
+ };
18394
+ };
18395
+ /** @description Malformed JSON body (`BAD_REQUEST`) or missing required fields (`MODEL_PROVIDER_VALIDATION_FAILED` with `validation_errors`) */
18396
+ 400: {
18397
+ headers: {
18398
+ [name: string]: unknown;
18399
+ };
18400
+ content: {
18401
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18402
+ };
18403
+ };
18404
+ /** @description Unauthorized */
18405
+ 401: {
18406
+ headers: {
18407
+ [name: string]: unknown;
18408
+ };
18409
+ content: {
18410
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18411
+ };
18412
+ };
18413
+ /** @description Validation failed due to an internal service error (`INTERNAL_ERROR`) */
18414
+ 500: {
18415
+ headers: {
18416
+ [name: string]: unknown;
18417
+ };
18418
+ content: {
18419
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18420
+ };
18421
+ };
18422
+ };
18423
+ };
18424
+ listModelProvidersSettings: {
18425
+ parameters: {
18426
+ query?: never;
18427
+ header?: never;
18428
+ path: {
18429
+ /** @description Team that owns the model provider(s). */
18430
+ team_id: string;
18431
+ };
18432
+ cookie?: never;
18433
+ };
18434
+ requestBody?: never;
18435
+ responses: {
18436
+ /** @description Model providers retrieved successfully */
18437
+ 200: {
18438
+ headers: {
18439
+ [name: string]: unknown;
18440
+ };
18441
+ content: {
18442
+ "application/json": components["schemas"]["ModelProviderResponseList"];
18443
+ };
18444
+ };
18445
+ /** @description Unauthorized */
18446
+ 401: {
18447
+ headers: {
18448
+ [name: string]: unknown;
18449
+ };
18450
+ content: {
18451
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18452
+ };
18453
+ };
18454
+ /** @description Failed to retrieve model providers (`DATABASE_ERROR`) */
18455
+ 500: {
18456
+ headers: {
18457
+ [name: string]: unknown;
18458
+ };
18459
+ content: {
18460
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18461
+ };
18462
+ };
18463
+ };
18464
+ };
18465
+ createModelProviderSettings: {
18466
+ parameters: {
18467
+ query?: never;
18468
+ header?: never;
18469
+ path: {
18470
+ /** @description Team that owns the model provider(s). */
18471
+ team_id: string;
18472
+ };
18473
+ cookie?: never;
18474
+ };
18475
+ requestBody: {
18476
+ content: {
18477
+ "application/json": components["schemas"]["CreateModelProviderRequest"];
18478
+ };
18479
+ };
18480
+ responses: {
18481
+ /** @description Model provider created successfully */
18482
+ 200: {
18483
+ headers: {
18484
+ [name: string]: unknown;
18485
+ };
18486
+ content: {
18487
+ "application/json": components["schemas"]["ModelProviderResponse"];
18488
+ };
18489
+ };
18490
+ /** @description Malformed JSON body (`BAD_REQUEST`) or missing required fields (`MODEL_PROVIDER_VALIDATION_FAILED` with `validation_errors`) */
18491
+ 400: {
18492
+ headers: {
18493
+ [name: string]: unknown;
18494
+ };
18495
+ content: {
18496
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18497
+ };
18498
+ };
18499
+ /** @description Unauthorized */
18500
+ 401: {
18501
+ headers: {
18502
+ [name: string]: unknown;
18503
+ };
18504
+ content: {
18505
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18506
+ };
18507
+ };
18508
+ /** @description A provider with the same name already exists (`MODEL_PROVIDER_ALREADY_EXISTS`) */
18509
+ 409: {
18510
+ headers: {
18511
+ [name: string]: unknown;
18512
+ };
18513
+ content: {
18514
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18515
+ };
18516
+ };
18517
+ /** @description Provider creation failed (`MODEL_PROVIDER_CREATE_FAILED`) */
18518
+ 500: {
18519
+ headers: {
18520
+ [name: string]: unknown;
18521
+ };
18522
+ content: {
18523
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18524
+ };
18525
+ };
18526
+ };
18527
+ };
18528
+ getModelProviderSettings: {
18529
+ parameters: {
18530
+ query?: never;
18531
+ header?: never;
18532
+ path: {
18533
+ /** @description Team that owns the model provider(s). */
18534
+ team_id: string;
18535
+ /** @description Model provider ID */
18536
+ id: string;
18537
+ };
18538
+ cookie?: never;
18539
+ };
18540
+ requestBody?: never;
18541
+ responses: {
18542
+ /** @description Model provider retrieved successfully */
18543
+ 200: {
18544
+ headers: {
18545
+ [name: string]: unknown;
18546
+ };
18547
+ content: {
18548
+ "application/json": components["schemas"]["ModelProviderResponse"];
18549
+ };
18550
+ };
18551
+ /** @description Unauthorized */
18552
+ 401: {
18553
+ headers: {
18554
+ [name: string]: unknown;
18555
+ };
18556
+ content: {
18557
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18558
+ };
18559
+ };
18560
+ /** @description Model provider not found (`MODEL_PROVIDER_NOT_FOUND`) */
18561
+ 404: {
18562
+ headers: {
18563
+ [name: string]: unknown;
18564
+ };
18565
+ content: {
18566
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18567
+ };
18568
+ };
18569
+ /** @description Failed to retrieve model provider (`DATABASE_ERROR`) */
18570
+ 500: {
18571
+ headers: {
18572
+ [name: string]: unknown;
18573
+ };
18574
+ content: {
18575
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18576
+ };
18577
+ };
18578
+ };
18579
+ };
18580
+ updateModelProviderSettings: {
18581
+ parameters: {
18582
+ query?: never;
18583
+ header?: never;
18584
+ path: {
18585
+ /** @description Team that owns the model provider(s). */
18586
+ team_id: string;
18587
+ /** @description Model provider ID */
18588
+ id: string;
18589
+ };
18590
+ cookie?: never;
18591
+ };
18592
+ requestBody: {
18593
+ content: {
18594
+ "application/json": components["schemas"]["UpdateModelProviderRequest"];
18595
+ };
18596
+ };
18597
+ responses: {
18598
+ /** @description Model provider updated successfully */
18599
+ 200: {
18600
+ headers: {
18601
+ [name: string]: unknown;
18602
+ };
18603
+ content: {
18604
+ "application/json": components["schemas"]["ModelProviderResponse"];
18605
+ };
18606
+ };
18607
+ /** @description Malformed JSON body (`BAD_REQUEST`) */
18608
+ 400: {
18609
+ headers: {
18610
+ [name: string]: unknown;
18611
+ };
18612
+ content: {
18613
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18614
+ };
18615
+ };
18616
+ /** @description Unauthorized */
18617
+ 401: {
18618
+ headers: {
18619
+ [name: string]: unknown;
18620
+ };
18621
+ content: {
18622
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18623
+ };
18624
+ };
18625
+ /** @description Model provider not found (`MODEL_PROVIDER_NOT_FOUND`) */
18626
+ 404: {
18627
+ headers: {
18628
+ [name: string]: unknown;
18629
+ };
18630
+ content: {
18631
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18632
+ };
18633
+ };
18634
+ /** @description Provider update failed (`MODEL_PROVIDER_UPDATE_FAILED`) */
18635
+ 500: {
18636
+ headers: {
18637
+ [name: string]: unknown;
18638
+ };
18639
+ content: {
18640
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18641
+ };
18642
+ };
18643
+ };
18644
+ };
18645
+ deleteModelProviderSettings: {
18646
+ parameters: {
18647
+ query?: never;
18648
+ header?: never;
18649
+ path: {
18650
+ /** @description Team that owns the model provider(s). */
18651
+ team_id: string;
18652
+ /** @description Model provider ID */
18653
+ id: string;
18654
+ };
18655
+ cookie?: never;
18656
+ };
18657
+ requestBody?: never;
18658
+ responses: {
18659
+ /** @description Model provider deleted successfully (no body) */
18660
+ 204: {
18661
+ headers: {
18662
+ [name: string]: unknown;
18663
+ };
18664
+ content?: never;
18665
+ };
18666
+ /** @description Cannot delete the last model provider (`MODEL_PROVIDER_LAST_DELETE_BLOCKED`) */
18667
+ 400: {
18668
+ headers: {
18669
+ [name: string]: unknown;
18670
+ };
18671
+ content: {
18672
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18673
+ };
18674
+ };
18675
+ /** @description Unauthorized */
18676
+ 401: {
18677
+ headers: {
18678
+ [name: string]: unknown;
18679
+ };
18680
+ content: {
18681
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18682
+ };
18683
+ };
18684
+ /** @description Model provider not found (`MODEL_PROVIDER_NOT_FOUND`) */
18685
+ 404: {
18686
+ headers: {
18687
+ [name: string]: unknown;
18688
+ };
18689
+ content: {
18690
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18691
+ };
18692
+ };
18693
+ /** @description Provider deletion failed (`MODEL_PROVIDER_DELETE_FAILED`) */
18694
+ 500: {
18695
+ headers: {
18696
+ [name: string]: unknown;
18697
+ };
18698
+ content: {
18699
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18700
+ };
18701
+ };
18702
+ };
18703
+ };
18704
+ validateModelProviderSettings: {
18705
+ parameters: {
18706
+ query?: never;
18707
+ header?: never;
18708
+ path: {
18709
+ /** @description Team that owns the model provider(s). */
18710
+ team_id: string;
18711
+ };
18712
+ cookie?: never;
18713
+ };
18714
+ requestBody: {
18715
+ content: {
18716
+ "application/json": components["schemas"]["ValidateModelProviderRequest"];
18717
+ };
18718
+ };
18719
+ responses: {
18720
+ /** @description Validation completed (check `is_valid` for the outcome) */
18721
+ 200: {
18722
+ headers: {
18723
+ [name: string]: unknown;
18724
+ };
18725
+ content: {
18726
+ "application/json": components["schemas"]["ValidateModelProviderResponse"];
18727
+ };
18728
+ };
18729
+ /** @description Malformed JSON body (`BAD_REQUEST`) or missing required fields (`MODEL_PROVIDER_VALIDATION_FAILED` with `validation_errors`) */
18730
+ 400: {
18731
+ headers: {
18732
+ [name: string]: unknown;
18733
+ };
18734
+ content: {
18735
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18736
+ };
18737
+ };
18738
+ /** @description Unauthorized */
18739
+ 401: {
18740
+ headers: {
18741
+ [name: string]: unknown;
18742
+ };
18743
+ content: {
18744
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18745
+ };
18746
+ };
18747
+ /** @description Validation failed due to an internal service error (`INTERNAL_ERROR`) */
18748
+ 500: {
18749
+ headers: {
18750
+ [name: string]: unknown;
18751
+ };
18752
+ content: {
18753
+ "application/problem+json": components["schemas"]["ErrorResponse"];
18754
+ };
18755
+ };
18756
+ };
18757
+ };
17775
18758
  listProjects: {
17776
18759
  parameters: {
17777
18760
  query?: {