Chanl

Get a Scorecard

Retrieve detailed information about a specific scorecard including its categories and criteria.

Request
curl -X GET "https://api.chanl.ai/api/v1/scorecards/scorecard_abc123" \
  -H "Authorization: Bearer <access_token>"
const response = await fetch(`https://api.chanl.ai/api/v1/scorecards/${scorecardId}`, {
  headers: {
    'Authorization': 'Bearer ' + accessToken
  }
});

const { data } = await response.json();
console.log('Scorecard:', data.name);
console.log('Categories:', data.categories);
import requests

response = requests.get(
    f'https://api.chanl.ai/api/v1/scorecards/{scorecard_id}',
    headers={'Authorization': f'Bearer {access_token}'}
)

scorecard = response.json()['data']
Response
{
  "success": true,
  "data": {
    "id": "scorecard_abc123",
    "name": "Quality Scorecard",
    "description": "Evaluates agent performance and call quality",
    "status": "active",
    "version": 2,
    "passingThreshold": 70,
    "categories": [
      {
        "id": "cat_comm",
        "name": "Communication",
        "description": "Evaluates communication skills",
        "weight": 40,
        "criteria": [
          {
            "id": "crit_greeting",
            "key": "proper_greeting",
            "name": "Proper Greeting",
            "type": "prompt",
            "settings": {
              "description": "Agent greeted the customer professionally with name and company"
            },
            "order": 1,
            "isActive": true
          },
          {
            "id": "crit_clarity",
            "key": "clear_explanation",
            "name": "Clear Explanation",
            "type": "prompt",
            "settings": {
              "description": "Agent explained information clearly and concisely"
            },
            "order": 2,
            "isActive": true
          }
        ]
      },
      {
        "id": "cat_resolution",
        "name": "Resolution",
        "description": "Evaluates problem resolution",
        "weight": 35,
        "criteria": [
          {
            "id": "crit_solution",
            "key": "solution_provided",
            "name": "Solution Provided",
            "type": "prompt",
            "settings": {
              "description": "Agent provided a clear solution or next steps"
            },
            "order": 1,
            "isActive": true
          }
        ]
      },
      {
        "id": "cat_compliance",
        "name": "Compliance",
        "description": "Evaluates regulatory compliance",
        "weight": 25,
        "criteria": [
          {
            "id": "crit_disclosure",
            "key": "disclosure_given",
            "name": "Disclosure Given",
            "type": "keyword",
            "settings": {
              "matchType": "must_contain",
              "keywords": ["this call may be recorded", "call is being recorded"]
            },
            "order": 1,
            "isActive": true
          }
        ]
      }
    ],
    "createdAt": "2026-01-01T00:00:00Z",
    "updatedAt": "2026-01-05T12:00:00Z"
  }
}
{
  "success": false,
  "error": {
    "code": "NOT_FOUND",
    "message": "Scorecard not found"
  }
}

Path Parameters

idstringrequired

The unique identifier of the scorecard.

Response Structure

Scorecard Object

FieldTypeDescription
idstringUnique scorecard identifier
namestringScorecard name
descriptionstringScorecard description
statusstringactive, inactive, draft
versionnumberVersion number
passingThresholdnumberMinimum passing score
categoriesarrayCategories with criteria
createdAtstringCreation timestamp
updatedAtstringLast update timestamp

Category Object

FieldTypeDescription
idstringCategory identifier
namestringCategory name
descriptionstringCategory description
weightnumberWeight percentage (all categories sum to 100)
criteriaarrayCriteria within this category

Criteria Object

FieldTypeDescription
idstringCriteria identifier
keystringUnique key for the criterion
namestringDisplay name
typestringEvaluation type
settingsobjectType-specific settings
ordernumberDisplay order
isActivebooleanWhether criterion is active

Criteria Types Reference

Prompt Type

LLM evaluates based on description:

{
  "type": "prompt",
  "settings": {
    "description": "Agent greeted customer with name and company"
  }
}

Keyword Type

Checks for specific words:

{
  "type": "keyword",
  "settings": {
    "matchType": "must_contain",
    "keywords": ["thank you", "thanks"]
  }
}

Response Time Type

Evaluates response latency:

{
  "type": "response_time",
  "settings": {
    "maxMs": 3000
  }
}

On this page