Update a Scorecard
Update an existing scorecard's properties. Categories and criteria are managed through separate endpoints.
Request
curl -X PATCH "https://api.chanl.ai/api/v1/scorecards/scorecard_abc123" \
-H "Authorization: Bearer <access_token>" \
-H "Content-Type: application/json" \
-d '{
"name": "Updated Quality Scorecard",
"passingThreshold": 75,
"status": "active"
}'const response = await fetch(`https://api.chanl.ai/api/v1/scorecards/${scorecardId}`, {
method: 'PATCH',
headers: {
'Authorization': 'Bearer ' + accessToken,
'Content-Type': 'application/json',
},
body: JSON.stringify({
name: 'Updated Quality Scorecard',
passingThreshold: 75,
status: 'active'
})
});
const { data } = await response.json();
console.log('Updated scorecard:', data.name);import requests
response = requests.patch(
f'https://api.chanl.ai/api/v1/scorecards/{scorecard_id}',
headers={'Authorization': f'Bearer {access_token}'},
json={
'name': 'Updated Quality Scorecard',
'passingThreshold': 75,
'status': 'active'
}
)
scorecard = response.json()['data']Response
{
"success": true,
"data": {
"id": "scorecard_abc123",
"name": "Updated Quality Scorecard",
"description": "Evaluates agent performance and call quality",
"status": "active",
"version": 2,
"passingThreshold": 75,
"createdAt": "2026-01-01T00:00:00Z",
"updatedAt": "2026-01-06T12:00:00Z"
}
}{
"success": false,
"error": {
"code": "NOT_FOUND",
"message": "Scorecard not found"
}
}Path Parameters
idstringrequiredThe unique identifier of the scorecard to update.
Request Body
namestringUpdated name for the scorecard (must be unique within workspace).
descriptionstringUpdated description of what the scorecard evaluates.
statusstringUpdated status: active, inactive, draft
passingThresholdnumberUpdated minimum passing score (0-100).
iconstringUpdated icon identifier for UI display.
colorstringUpdated color code (hex format).
Version History
Each update increments the scorecard version. This allows tracking changes over time and comparing evaluation results across versions.
{
"version": 1, // Initial creation
"version": 2, // After first update
"version": 3 // After second update
}Managing Categories and Criteria
To update categories or criteria, use the dedicated endpoints:
Add a Category
POST /api/v1/scorecards/{scorecardId}/categories
{
"name": "New Category",
"weight": 25
}Update a Category
PATCH /api/v1/scorecards/{scorecardId}/categories/{categoryId}
{
"name": "Updated Category Name",
"weight": 30
}Add Criteria
POST /api/v1/scorecards/{scorecardId}/criteria
{
"key": "new_criterion",
"name": "New Criterion",
"categoryId": "{categoryId}",
"type": "prompt",
"settings": {
"description": "Evaluation criteria description"
}
}Category weights must sum to 100. When adding or updating categories, ensure the total weight equals 100.