Update connector context
PUT
https://app.sulus.ai/api/v1/agents/{agent_id}/connectors/{connector_id}/context
Set per-agent description, purpose, and use case for an enabled connector
Authentication
Send a bearer token created on your dashboard's Developer page:
Authorization: Bearer <YOUR_API_KEY>
Path parameters
agent_id
string
Required
The agent id (UUID).
Validation:
uuid (route-constrained)Stored in
ai_projects.uidconnector_id
string
Required
The connector uid from the list response.
Validation:
uuid (route-constrained)Stored in
ai_mcp_connectors.uidRequest body
description
string
Optional
Nullable
Agent overlay. Blank or null inherits the connector description.
Validation:
sometimes|nullable|string|max:2000Stored in
ai_project_mcp_connectors.descriptionpurpose
string
Optional
Nullable
Agent overlay. Blank or null inherits the connector purpose.
Validation:
sometimes|nullable|string|max:2000Stored in
ai_project_mcp_connectors.purposeuse_case
string
Optional
Nullable
Agent overlay. Blank or null inherits the connector use case.
Validation:
sometimes|nullable|string|max:2000Stored in
ai_project_mcp_connectors.use_caseErrors
| Status | Meaning | Body |
|---|---|---|
404 |
Agent not found, or you do not have access to it | |
404 |
Connector not found, inactive, or not available to you | |
403 |
You do not have MCP access to this agent. | {"message":"You do not have MCP access to this agent."} |
422 |
Connector is not enabled on this agent | {"message":"Enable this connector on the agent before editing its context."} |
422 |
Validation failed | {"message":"…","errors":{"field":["…"]}} |
401 |
Missing or invalid bearer token | |
403 |
Feature ai_chat not enabled for the account |
Notes
- Requires connector permission on the agent (independent of write access). The connector must already be enabled on this agent.
- Does not rewrite the account connector row. Omitted keys are left unchanged. Blank strings are stored as null and inherit the connector defaults.
- description, purpose, and use_case in the response are effective values after the save. connector_* fields are the unchanged connector defaults.
curl --request PUT \
--url https://app.sulus.ai/api/v1/agents/{agent_id}/connectors/{connector_id}/context \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--header 'Content-Type: application/json' \
--data '{
"description": "Use this connector only for this agent'\''s customer lookups.",
"purpose": "Look up the caller in the customer directory before quoting hours.",
"use_case": "When the caller asks about their account or a recent order."
}'
import requests
url = "https://app.sulus.ai/api/v1/agents/{agent_id}/connectors/{connector_id}/context"
headers = {"Authorization": "Bearer <YOUR_API_KEY>"}
payload = {
"description": "Use this connector only for this agent's customer lookups.",
"purpose": "Look up the caller in the customer directory before quoting hours.",
"use_case": "When the caller asks about their account or a recent order."
}
response = requests.put(url, json=payload, headers=headers)
print(response.json())
package main
import (
"fmt"
"io"
"net/http"
"strings"
)
func main() {
url := "https://app.sulus.ai/api/v1/agents/{agent_id}/connectors/{connector_id}/context"
payload := strings.NewReader(`{
"description": "Use this connector only for this agent's customer lookups.",
"purpose": "Look up the caller in the customer directory before quoting hours.",
"use_case": "When the caller asks about their account or a recent order."
}`)
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <YOUR_API_KEY>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}
Response
200
{
"message": "Connector context updated for this agent.",
"data": {
"uid": "c3d4e5f6-0000-4000-8000-000000000030",
"description": "Use this connector only for this agent's customer lookups.",
"purpose": "Look up the caller in the customer directory before quoting hours.",
"use_case": "When the caller asks about their account or a recent order.",
"connector_description": "Searches the internal knowledge base and returns matching articles.",
"connector_purpose": "Answer product questions from the knowledge base.",
"connector_use_case": "When a caller asks how a feature works.",
"context_overridden": true
}
}
Response — PUT
/agents/{agent_id}/connectors/{connector_id}/context
200
{
"message": "Connector context updated for this agent.",
"data": {
"uid": "c3d4e5f6-0000-4000-8000-000000000030",
"description": "Use this connector only for this agent's customer lookups.",
"purpose": "Look up the caller in the customer directory before quoting hours.",
"use_case": "When the caller asks about their account or a recent order.",
"connector_description": "Searches the internal knowledge base and returns matching articles.",
"connector_purpose": "Answer product questions from the knowledge base.",
"connector_use_case": "When a caller asks how a feature works.",
"context_overridden": true
}
}