first commit
This commit is contained in:
512
docs/openapi/paths/management/providers.yaml
Normal file
512
docs/openapi/paths/management/providers.yaml
Normal file
@@ -0,0 +1,512 @@
|
||||
providers:
|
||||
get:
|
||||
operationId: listProviders
|
||||
summary: List all providers
|
||||
description: Returns a list of all configured providers with their configurations and status.
|
||||
tags:
|
||||
- Providers
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/management/providers.yaml#/ListProvidersResponse'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
post:
|
||||
operationId: addProvider
|
||||
summary: Add a new provider
|
||||
description: Adds a new provider with the specified configuration.
|
||||
tags:
|
||||
- Providers
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/management/providers.yaml#/AddProviderRequest'
|
||||
responses:
|
||||
'200':
|
||||
description: Provider added successfully
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/management/providers.yaml#/ProviderResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'409':
|
||||
description: Provider already exists
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/BifrostError'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
providers-by-name:
|
||||
get:
|
||||
operationId: getProvider
|
||||
summary: Get a specific provider
|
||||
description: Returns the configuration for a specific provider.
|
||||
tags:
|
||||
- Providers
|
||||
parameters:
|
||||
- name: provider
|
||||
in: path
|
||||
required: true
|
||||
description: Provider name
|
||||
schema:
|
||||
type: string
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/management/providers.yaml#/ProviderResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'404':
|
||||
description: Provider not found
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/BifrostError'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
put:
|
||||
operationId: updateProvider
|
||||
summary: Update a provider
|
||||
description: |
|
||||
Updates a provider's configuration. Expects ALL fields to be provided,
|
||||
including both edited and non-edited fields. Partial updates are not supported.
|
||||
tags:
|
||||
- Providers
|
||||
parameters:
|
||||
- name: provider
|
||||
in: path
|
||||
required: true
|
||||
description: Provider name
|
||||
schema:
|
||||
type: string
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/management/providers.yaml#/UpdateProviderRequest'
|
||||
responses:
|
||||
'200':
|
||||
description: Provider updated successfully
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/management/providers.yaml#/ProviderResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
delete:
|
||||
operationId: deleteProvider
|
||||
summary: Delete a provider
|
||||
description: Removes a provider from the configuration.
|
||||
tags:
|
||||
- Providers
|
||||
parameters:
|
||||
- name: provider
|
||||
in: path
|
||||
required: true
|
||||
description: Provider name
|
||||
schema:
|
||||
type: string
|
||||
responses:
|
||||
'200':
|
||||
description: Provider deleted successfully
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/management/providers.yaml#/ProviderResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'404':
|
||||
description: Provider not found
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/BifrostError'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
provider-keys:
|
||||
get:
|
||||
operationId: listProviderKeys
|
||||
summary: List keys for a provider
|
||||
description: Returns all keys configured for a specific provider.
|
||||
tags:
|
||||
- Providers
|
||||
parameters:
|
||||
- name: provider
|
||||
in: path
|
||||
required: true
|
||||
description: Provider name
|
||||
schema:
|
||||
type: string
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/management/providers.yaml#/ListProviderKeysResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'404':
|
||||
description: Provider not found
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/BifrostError'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
post:
|
||||
operationId: createProviderKey
|
||||
summary: Create a key for a provider
|
||||
description: |
|
||||
Creates a new API key for the specified provider. The key `id` is auto-generated
|
||||
if omitted. `enabled` defaults to `true` if omitted. `value` is required and must
|
||||
not be empty. Keys cannot be created on keyless providers.
|
||||
tags:
|
||||
- Providers
|
||||
parameters:
|
||||
- name: provider
|
||||
in: path
|
||||
required: true
|
||||
description: Provider name
|
||||
schema:
|
||||
type: string
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/management/providers.yaml#/Key'
|
||||
responses:
|
||||
'200':
|
||||
description: Key created successfully
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/management/providers.yaml#/Key'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'404':
|
||||
description: Provider not found
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/BifrostError'
|
||||
'409':
|
||||
description: Key ID already exists
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/BifrostError'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
provider-key-by-id:
|
||||
get:
|
||||
operationId: getProviderKey
|
||||
summary: Get a specific key for a provider
|
||||
description: Returns a single key for the specified provider.
|
||||
tags:
|
||||
- Providers
|
||||
parameters:
|
||||
- name: provider
|
||||
in: path
|
||||
required: true
|
||||
description: Provider name
|
||||
schema:
|
||||
type: string
|
||||
- name: key_id
|
||||
in: path
|
||||
required: true
|
||||
description: Key ID
|
||||
schema:
|
||||
type: string
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/management/providers.yaml#/Key'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'404':
|
||||
description: Provider or key not found
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/BifrostError'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
put:
|
||||
operationId: updateProviderKey
|
||||
summary: Update a key for a provider
|
||||
description: |
|
||||
Updates an existing key. Send the full key object. Redacted values sent back
|
||||
unchanged are automatically preserved (the server merges them with the stored
|
||||
raw values).
|
||||
tags:
|
||||
- Providers
|
||||
parameters:
|
||||
- name: provider
|
||||
in: path
|
||||
required: true
|
||||
description: Provider name
|
||||
schema:
|
||||
type: string
|
||||
- name: key_id
|
||||
in: path
|
||||
required: true
|
||||
description: Key ID
|
||||
schema:
|
||||
type: string
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/management/providers.yaml#/Key'
|
||||
responses:
|
||||
'200':
|
||||
description: Key updated successfully
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/management/providers.yaml#/Key'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'404':
|
||||
description: Provider or key not found
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/BifrostError'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
delete:
|
||||
operationId: deleteProviderKey
|
||||
summary: Delete a key from a provider
|
||||
description: Deletes a key from the specified provider. Returns the deleted key.
|
||||
tags:
|
||||
- Providers
|
||||
parameters:
|
||||
- name: provider
|
||||
in: path
|
||||
required: true
|
||||
description: Provider name
|
||||
schema:
|
||||
type: string
|
||||
- name: key_id
|
||||
in: path
|
||||
required: true
|
||||
description: Key ID
|
||||
schema:
|
||||
type: string
|
||||
responses:
|
||||
'200':
|
||||
description: Key deleted successfully
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/management/providers.yaml#/Key'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'404':
|
||||
description: Provider or key not found
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/BifrostError'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
keys:
|
||||
get:
|
||||
operationId: listKeys
|
||||
summary: List all keys
|
||||
description: Returns a list of all configured API keys across all providers.
|
||||
tags:
|
||||
- Providers
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: '../../schemas/management/providers.yaml#/Key'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
models:
|
||||
get:
|
||||
operationId: listModelsManagement
|
||||
summary: List models
|
||||
description: |
|
||||
Lists available models with optional filtering by query, provider, or keys.
|
||||
tags:
|
||||
- Providers
|
||||
parameters:
|
||||
- name: query
|
||||
in: query
|
||||
description: Filter models by name (case-insensitive partial match)
|
||||
schema:
|
||||
type: string
|
||||
- name: provider
|
||||
in: query
|
||||
description: Filter by specific provider name
|
||||
schema:
|
||||
type: string
|
||||
- name: keys
|
||||
in: query
|
||||
description: Comma-separated list of key IDs to filter models accessible by those keys
|
||||
style: form
|
||||
explode: false
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
- name: limit
|
||||
in: query
|
||||
description: Maximum number of results to return (default 5)
|
||||
schema:
|
||||
type: integer
|
||||
default: 5
|
||||
- name: unfiltered
|
||||
in: query
|
||||
description: If true, return all models including those filtered out by provider-level restrictions
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/management/providers.yaml#/ListModelsResponse'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
models-details:
|
||||
get:
|
||||
operationId: listModelDetailsManagement
|
||||
summary: List model details
|
||||
description: |
|
||||
Lists available models with capability metadata, when available from the model catalog, with optional filtering by query, provider, or keys.
|
||||
tags:
|
||||
- Providers
|
||||
parameters:
|
||||
- name: query
|
||||
in: query
|
||||
description: Filter models by name (case-insensitive partial match)
|
||||
schema:
|
||||
type: string
|
||||
- name: provider
|
||||
in: query
|
||||
description: Filter by specific provider name
|
||||
schema:
|
||||
type: string
|
||||
- name: keys
|
||||
in: query
|
||||
description: Comma-separated list of key IDs to filter models accessible by those keys
|
||||
style: form
|
||||
explode: false
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
- name: limit
|
||||
in: query
|
||||
description: Maximum number of results to return (default 20)
|
||||
schema:
|
||||
type: integer
|
||||
default: 20
|
||||
- name: unfiltered
|
||||
in: query
|
||||
description: If true, return all models including those filtered out by provider-level restrictions
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/management/providers.yaml#/ListModelDetailsResponse'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
models-parameters:
|
||||
get:
|
||||
operationId: getModelParameters
|
||||
summary: Get model parameters
|
||||
description: Returns the available parameter definitions for models.
|
||||
tags:
|
||||
- Providers
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
additionalProperties: true
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
models-base:
|
||||
get:
|
||||
operationId: listBaseModels
|
||||
summary: List base models
|
||||
description: Returns a list of base models from the model catalog.
|
||||
tags:
|
||||
- Providers
|
||||
parameters:
|
||||
- name: query
|
||||
in: query
|
||||
description: Filter models by name
|
||||
schema:
|
||||
type: string
|
||||
- name: provider
|
||||
in: query
|
||||
description: Filter by provider
|
||||
schema:
|
||||
type: string
|
||||
- name: limit
|
||||
in: query
|
||||
description: Maximum number of results to return
|
||||
schema:
|
||||
type: integer
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
additionalProperties: true
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
Reference in New Issue
Block a user