Update a provider
const url = 'https://your-org.evershell.ai/v1/providers/example';const options = { method: 'PATCH', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"display_name":"example","domain":"example","credential_name":"example","default_model":"example","capabilities":"example","config":{}}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PATCH \ --url https://your-org.evershell.ai/v1/providers/example \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "display_name": "example", "domain": "example", "credential_name": "example", "default_model": "example", "capabilities": "example", "config": {} }'Permissions: caps:write.
Body is a partial — only the present fields are applied.
config is key-by-key merge: each entry sets / clears
independently.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”Request Body required
Section titled “Request Body required ”object
Per-key merge: each entry sets the value (string) or clears it with null. Omitted keys leave the stored value alone.
object
Example generated
{ "display_name": "example", "domain": "example", "credential_name": "example", "default_model": "example", "capabilities": "example", "config": {}}Responses
Section titled “ Responses ”OK
object
References a Credential by name
Reference to the workspace’s caps.yaml capability block this provider matches
Provider-kind-specific extras (Azure api_version, Vertex project, etc.)
object
Example
{ "kind": "anthropic"}Resource not found in the caller’s org
object
object
Closed-enum slug (e.g. permission_denied, validation_error, workspace_not_found)
Human-readable summary
Server-generated request id for correlating logs
Optional structured context. Validation errors land at
details.fields as a per-field map.
object
Example
{ "error": { "code": "permission_denied", "message": "caller lacks required scope", "request_id": "7f3a9c2e" }}Tenant is past_due, decommissioning, or trial-expired
object
object
Closed-enum slug (e.g. permission_denied, validation_error, workspace_not_found)
Human-readable summary
Server-generated request id for correlating logs
Optional structured context. Validation errors land at
details.fields as a per-field map.
object
Example
{ "error": { "code": "permission_denied", "message": "caller lacks required scope", "request_id": "7f3a9c2e" }}