Default Personas
Retrieve system-provided default personas for common customer archetypes.
Default personas are pre-built, tested persona templates that can be used immediately or as starting points for custom personas.
Request
curl -X GET "https://api.chanl.ai/api/v1/workspaces/ws_123/personas/defaults" \
-H "Authorization: Bearer <access_token>"const response = await fetch(`https://api.chanl.ai/api/v1/workspaces/${workspaceId}/personas/defaults`, {
headers: {
'Authorization': 'Bearer ' + accessToken
}
});
const { data } = await response.json();
console.log('Default personas:', data.personas);import requests
response = requests.get(
f'https://api.chanl.ai/api/v1/workspaces/{workspace_id}/personas/defaults',
headers={'Authorization': f'Bearer {access_token}'}
)
default_personas = response.json()['data']['personas']Response
{
"success": true,
"data": {
"personas": [
{
"id": "default_polite",
"name": "Polite Customer",
"language": "en",
"description": "A courteous customer who is patient and follows instructions well",
"emotion": "neutral",
"difficulty": "easy",
"category": "customer_service",
"tags": ["polite", "patient", "easy"]
},
{
"id": "default_frustrated",
"name": "Frustrated Customer",
"language": "en",
"description": "A customer who is upset about an ongoing issue and wants quick resolution",
"emotion": "frustrated",
"difficulty": "medium",
"category": "customer_service",
"tags": ["frustrated", "impatient", "medium"]
},
{
"id": "default_confused",
"name": "Confused Customer",
"language": "en",
"description": "A customer who needs extra help understanding technology or processes",
"emotion": "confused",
"difficulty": "medium",
"category": "customer_service",
"tags": ["confused", "needs_help", "medium"]
},
{
"id": "default_price_sensitive",
"name": "Price-Sensitive Buyer",
"language": "en",
"description": "A prospect focused on getting the best value and price",
"emotion": "cautious",
"difficulty": "medium",
"category": "sales",
"tags": ["sales", "price_focused", "cautious"]
},
{
"id": "default_tech_savvy",
"name": "Tech-Savvy User",
"language": "en",
"description": "An advanced user who provides detailed technical information",
"emotion": "analytical",
"difficulty": "easy",
"category": "technical_support",
"tags": ["technical", "advanced", "analytical"]
}
],
"categories": [
{
"name": "customer_service",
"display_name": "Customer Service",
"count": 3
},
{
"name": "sales",
"display_name": "Sales",
"count": 1
},
{
"name": "technical_support",
"display_name": "Technical Support",
"count": 1
}
]
}
}Create Persona from Default
To create a custom persona based on a default template:
curl -X POST "https://api.chanl.ai/api/v1/workspaces/ws_123/personas" \
-H "Authorization: Bearer <access_token>" \
-H "Content-Type: application/json" \
-d '{
"name": "My Polite Customer",
"template_id": "default_polite",
"customizations": {
"backgroundNoise": "office",
"tags": ["polite", "patient", "office_environment"]
}
}'const response = await fetch(`https://api.chanl.ai/api/v1/workspaces/${workspaceId}/personas`, {
method: 'POST',
headers: {
'Authorization': `Bearer ${accessToken}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({
name: 'My Polite Customer',
template_id: 'default_polite',
customizations: {
backgroundNoise: 'office',
tags: ['polite', 'patient', 'office_environment']
}
})
});
const data = await response.json();import requests
response = requests.post(
f'https://api.chanl.ai/api/v1/workspaces/{workspace_id}/personas',
headers={'Authorization': f'Bearer {access_token}'},
json={
'name': 'My Polite Customer',
'template_id': 'default_polite',
'customizations': {
'backgroundNoise': 'office',
'tags': ['polite', 'patient', 'office_environment']
}
}
)
data = response.json()Query Parameters
categorystringFilter by persona category (customer_service, sales, technical_support)
languagestringFilter by language code (currently only "en" available)
difficultystringFilter by difficulty level (easy, medium, hard)
Default Persona Categories
Customer Service
- Polite Customer - Courteous and patient
- Frustrated Customer - Upset but reasonable
- Confused Customer - Needs extra guidance
- Impatient Customer - Wants quick resolution
- Elderly Customer - Needs simple explanations
Sales
- Price-Sensitive Buyer - Focused on value and cost
- Feature-Focused Buyer - Interested in capabilities
- Skeptical Prospect - Needs convincing
- Ready-to-Buy - Quick decision maker
Technical Support
- Tech-Savvy User - Provides detailed information
- Beginner User - Needs step-by-step help
- Frustrated IT Manager - Time-sensitive technical issues