List Scorecards
Retrieve a paginated list of scorecards for your workspace with optional filtering by status.
Request
curl -X GET "https://api.chanl.ai/api/v1/scorecards?status=active&limit=20" \
-H "Authorization: Bearer <access_token>"const params = new URLSearchParams({
status: 'active',
limit: '20'
});
const response = await fetch(`https://api.chanl.ai/api/v1/scorecards?${params}`, {
headers: {
'Authorization': 'Bearer ' + accessToken
}
});
const { data } = await response.json();
console.log('Scorecards:', data.scorecards);import requests
response = requests.get(
'https://api.chanl.ai/api/v1/scorecards',
headers={'Authorization': f'Bearer {access_token}'},
params={'status': 'active', 'limit': 20}
)
scorecards = response.json()['data']['scorecards']Response
{
"success": true,
"data": {
"scorecards": [
{
"id": "scorecard_abc123",
"name": "Quality Scorecard",
"description": "Evaluates call quality and agent performance",
"status": "active",
"version": 1,
"categories": [
{
"id": "cat_1",
"name": "Communication",
"weight": 40
},
{
"id": "cat_2",
"name": "Resolution",
"weight": 35
},
{
"id": "cat_3",
"name": "Compliance",
"weight": 25
}
],
"createdAt": "2026-01-01T00:00:00Z",
"updatedAt": "2026-01-05T12:00:00Z"
}
],
"pagination": {
"total": 5,
"page": 1,
"limit": 20,
"totalPages": 1
}
}
}Query Parameters
statusstringFilter by scorecard status: active, inactive, draft
pageintegerdefault: 1Page number (1-indexed).
limitintegerdefault: 20Items per page (max 100).
sortBystringdefault: createdAtSort field: createdAt, name, updatedAt
sortOrderstringdefault: descSort order: asc, desc
Scorecard Status
| Status | Description |
|---|---|
active | Scorecard is available for evaluations |
inactive | Scorecard is disabled |
draft | Scorecard is being developed |