ArthurAI Model Providers API
Endpoints for model provider management
Endpoints for model provider management
openapi: 3.1.0
info:
title: Arthur GenAI Engine Agent Discovery Model Providers API
version: 2.1.688
description: Endpoints for model provider management
tags:
- name: Model Providers
description: Endpoints for model provider management
paths:
/api/v1/model_providers/{provider}:
put:
tags:
- Model Providers
summary: Set the configuration for a model provider.
description: Set the configuration for a model provider. Optionally upload GCP service account JSON credentials or bedrock credentials
operationId: set_model_provider_api_v1_model_providers__provider__put
security:
- API Key: []
parameters:
- name: provider
in: path
required: true
schema:
$ref: '#/components/schemas/ModelProvider'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PutModelProviderCredentials'
responses:
'201':
description: Configuration set
content:
application/json:
schema: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
delete:
tags:
- Model Providers
summary: Disables the configuration for a model provider.
description: Disables the configuration for a model provider
operationId: delete_model_provider_api_v1_model_providers__provider__delete
security:
- API Key: []
parameters:
- name: provider
in: path
required: true
schema:
$ref: '#/components/schemas/ModelProvider'
responses:
'204':
description: Provider deleted.
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/model_providers:
get:
tags:
- Model Providers
summary: List the model providers.
description: Shows all model providers and if they're enabled.
operationId: get_model_providers_api_v1_model_providers_get
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ModelProviderList'
security:
- API Key: []
/api/v1/model_providers/{provider}/available_models:
get:
tags:
- Model Providers
summary: List the models available from a provider.
description: Returns a list of the names of all available models for a provider.
operationId: get_model_providers_available_models_api_v1_model_providers__provider__available_models_get
security:
- API Key: []
parameters:
- name: provider
in: path
required: true
schema:
$ref: '#/components/schemas/ModelProvider'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ModelProviderModelList'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
components:
schemas:
ModelProviderModelList:
properties:
provider:
$ref: '#/components/schemas/ModelProvider'
description: Provider of the models
available_models:
items:
type: string
type: array
title: Available Models
description: Available models from the provider
type: object
required:
- provider
- available_models
title: ModelProviderModelList
GCPServiceAccountCredentialsRequest:
properties:
type:
type: string
format: password
title: Type
writeOnly: true
project_id:
type: string
format: password
title: Project Id
writeOnly: true
private_key_id:
type: string
format: password
title: Private Key Id
writeOnly: true
private_key:
type: string
format: password
title: Private Key
writeOnly: true
client_email:
type: string
format: password
title: Client Email
writeOnly: true
client_id:
type: string
format: password
title: Client Id
writeOnly: true
auth_uri:
type: string
format: password
title: Auth Uri
writeOnly: true
token_uri:
type: string
format: password
title: Token Uri
writeOnly: true
auth_provider_x509_cert_url:
type: string
format: password
title: Auth Provider X509 Cert Url
writeOnly: true
client_x509_cert_url:
type: string
format: password
title: Client X509 Cert Url
writeOnly: true
universe_domain:
type: string
format: password
title: Universe Domain
writeOnly: true
type: object
required:
- type
- project_id
- private_key_id
- private_key
- client_email
- client_id
- auth_uri
- token_uri
- auth_provider_x509_cert_url
- client_x509_cert_url
- universe_domain
title: GCPServiceAccountCredentialsRequest
ValidationError:
properties:
loc:
items:
anyOf:
- type: string
- type: integer
type: array
title: Location
msg:
type: string
title: Message
type:
type: string
title: Error Type
input:
title: Input
ctx:
type: object
title: Context
type: object
required:
- loc
- msg
- type
title: ValidationError
ModelProvider:
type: string
enum:
- anthropic
- openai
- gemini
- bedrock
- vertex_ai
- hosted_vllm
- azure
title: ModelProvider
ModelProviderResponse:
properties:
provider:
$ref: '#/components/schemas/ModelProvider'
description: The model provider
enabled:
type: boolean
title: Enabled
description: Whether the provider is enabled with credentials
type: object
required:
- provider
- enabled
title: ModelProviderResponse
PutModelProviderCredentials:
properties:
api_key:
anyOf:
- type: string
format: password
writeOnly: true
- type: 'null'
title: Api Key
description: The API key for the provider.
project_id:
anyOf:
- type: string
- type: 'null'
title: Project Id
description: The vertex AI project ID. Will override the project ID in the key file if provided.
region:
anyOf:
- type: string
- type: 'null'
title: Region
description: The vertex AI region to use
aws_access_key_id:
anyOf:
- type: string
format: password
writeOnly: true
- type: 'null'
title: Aws Access Key Id
description: The AWS access key ID.
aws_secret_access_key:
anyOf:
- type: string
format: password
writeOnly: true
- type: 'null'
title: Aws Secret Access Key
description: The AWS secret access key.
aws_bedrock_runtime_endpoint:
anyOf:
- type: string
format: password
writeOnly: true
- type: 'null'
title: Aws Bedrock Runtime Endpoint
description: The AWS Bedrock runtime endpoint.
aws_role_name:
anyOf:
- type: string
format: password
writeOnly: true
- type: 'null'
title: Aws Role Name
description: The AWS role name.
aws_session_name:
anyOf:
- type: string
format: password
writeOnly: true
- type: 'null'
title: Aws Session Name
description: The AWS session name.
api_base:
anyOf:
- type: string
format: password
writeOnly: true
- type: 'null'
title: Api Base
description: The API base URL. Required for Azure (endpoint URL) and vLLM models.
api_version:
anyOf:
- type: string
- type: 'null'
title: Api Version
description: The API version. Required for Azure (e.g. '2024-02-01').
credentials_file:
anyOf:
- $ref: '#/components/schemas/GCPServiceAccountCredentialsRequest'
- type: 'null'
description: Optional GCP service account credentials JSON
type: object
title: PutModelProviderCredentials
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
type: array
title: Detail
type: object
title: HTTPValidationError
ModelProviderList:
properties:
providers:
items:
$ref: '#/components/schemas/ModelProviderResponse'
type: array
title: Providers
description: List of model providers
type: object
required:
- providers
title: ModelProviderList
securitySchemes:
API Key:
type: http
description: Bearer token authentication with an API key
scheme: bearer