Adding a Provider
Function
Creates a provider. Associated models can also be created in batches.
Debugging
You can debug this API through automatic authentication in API Explorer or use the SDK sample code generated by API Explorer.
Authorization Information
Each account has all the permissions required to call all APIs, but IAM users must be assigned the required permissions.
- If you are using role/policy-based authorization, see Permissions Policies and Supported Actions for details on the required permissions.
- If you are using identity policy-based authorization, the following identity policy-based permissions are required.
Action
Access Level
Resource Type (*: required)
Condition Key
Alias
Dependencies
workspace:modelProvider:create
Write
-
-
-
-
URI
POST /v3/ai-agents/model-providers
Request Parameters
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| provider_type | Yes | String | Provider type. (The value must be the same as that in the template when the template is created. The value is custom when the template is customized.) |
| provider_id | Yes | String | Provider ID. (The value must be the same as that in the template when the template is created. You can specify the value when customizing the template.) |
| api_key | No | String | API key of the provider (encrypted using SCC). |
| provider_name | Yes | String | Provider name (customized by the tenant). |
| base_url | Yes | String | Customized base URL. |
| custom_config | No | ProviderCustomConfig object | Customized provider configuration. |
| models | No | Array of CreateModelReq objects | List of models to be associated in batches. |
| api_type | Yes | String | API protocol type (OpenAI/Anthropic). |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| model_list_api | No | String | Address of the model list API, which is used to query the provider's remote models. |
| auth_header | No | String | Name of the authentication request header. |
| auth_prefix | No | String | Authentication prefix (for example, Bearer). |
| model_id_field | No | String | Field name of the model ID in the provider model list. |
| model_name_field | No | String | Field name of the model name in the provider model list. |
| headers | No | Map<String,String> | Customized HTTP request header, which is added when the provider API is called. |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| name | Yes | String | Model name. |
| input | No | Array of strings | Input type array. |
| provider_model_id | Yes | String | Model ID on the provider side. |
| description | No | String | Model description. |
| reasoning | No | Boolean | Whether inference is supported. |
| cost | No | ModelCost object | Fee information. |
| context_window | No | Integer | Maximum context window. |
| max_tokens | No | Integer | Maximum number of output tokens. |
| compat | No | ModelCompat object | Compatibility configuration. |
Response Parameters
Status code: 200
| Parameter | Type | Description |
|---|---|---|
| id | String | Provider ID. |
| provider_type | String | Provider type. |
| provider_id | String | Provider ID. |
| provider_name | String | Provider name. |
| base_url | String | Provider base URL. |
| connection_status | String | Connection status. The value can be connected, disconnected, or unverified. |
| is_builtin | Boolean | Whether the provider is a built-in provider. |
| api_type | String | API protocol type (OpenAI/Anthropic). |
| custom_config | Object | Customized configuration. |
| last_verify_time | String | Last verification time (in ISO 8601 format and UTC time zone). |
| create_time | String | Creation time (in ISO 8601 format and UTC time zone). |
| update_time | String | Update time (in ISO 8601 format and UTC time zone). |
| created_models | Array of ModelItemResp objects | List of created models. |
| Parameter | Type | Description |
|---|---|---|
| id | String | Model ID. |
| name | String | Model name. |
| provider_model_id | String | Model ID on the provider side. |
| input | Array of strings | Input type array. |
| description | String | Model description. |
| is_builtin | Boolean | Whether the model is a built-in model. |
Status code: 400
| Parameter | Type | Description |
|---|---|---|
| error_code | String | Error code, which is returned upon failure. |
| error_msg | String | Error message. |
Status code: 401
| Parameter | Type | Description |
|---|---|---|
| error_code | String | Error code, which is returned upon failure. |
| error_msg | String | Error message. |
Status code: 403
| Parameter | Type | Description |
|---|---|---|
| error_code | String | Error code, which is returned upon failure. |
| error_msg | String | Error message. |
Status code: 405
| Parameter | Type | Description |
|---|---|---|
| error_code | String | Error code, which is returned upon failure. |
| error_msg | String | Error message. |
Status code: 500
| Parameter | Type | Description |
|---|---|---|
| error_code | String | Error code, which is returned upon failure. |
| error_msg | String | Error message. |
Example Requests
None
Example Responses
None
Status Codes
| Status Code | Description |
|---|---|
| 200 | Operation successful. |
| 400 | The request cannot be understood by the server due to malformed syntax. |
| 401 | Authorization failed. |
| 403 | No permissions. |
| 405 | The request method is not allowed. |
| 500 | Internal server error. |
Error Codes
See Error Codes.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot