{
"analysis_template": {
"id": "template-uuid",
"name": "Customer Satisfaction Analysis",
"description": "Extract satisfaction metrics from support calls",
"schema": { ... },
"messages": [ ... ],
"min_messages_threshold": 5,
"created_at": "2025-12-13T10:00:00.000Z"
}
}| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Display name |
description | string | No | Description of what this template analyzes |
schema | object | Yes | JSON Schema for output structure |
messages | array | Yes | Prompt messages with placeholders |
min_messages_threshold | integer | No | Minimum messages before running analysis (default: 2) |
{
"name": "Sales Lead Qualification",
"schema": {
"type": "object",
"properties": {
"lead_quality": {
"type": "string",
"enum": ["hot", "warm", "cold"]
},
"budget_discussed": {
"type": "boolean"
},
"timeline": {
"type": "string",
"description": "When does the prospect want to buy?"
},
"decision_maker": {
"type": "boolean",
"description": "Is the caller a decision maker?"
},
"products_interested": {
"type": "array",
"items": { "type": "string" }
},
"next_steps": {
"type": "string"
}
}
},
"messages": [
{
"role": "system",
"content": "Analyze this sales call and qualify the lead based on BANT criteria (Budget, Authority, Need, Timeline)."
},
{
"role": "user",
"content": "Schema: {{schema}}\n\nTranscript: {{transcript}}"
}
]
}{
"name": "Support Ticket Classification",
"schema": {
"type": "object",
"properties": {
"category": {
"type": "string",
"enum": ["billing", "technical", "account", "product", "general"]
},
"priority": {
"type": "string",
"enum": ["low", "medium", "high", "urgent"]
},
"resolution_status": {
"type": "string",
"enum": ["resolved", "escalated", "pending", "unresolved"]
},
"root_cause": {
"type": "string"
},
"action_items": {
"type": "array",
"items": { "type": "string" }
}
}
},
"messages": [
{
"role": "system",
"content": "Classify this support call for ticket creation. Identify the category, priority, and resolution status."
},
{
"role": "user",
"content": "Schema: {{schema}}\n\nTranscript: {{transcript}}\n\nCall ended: {{endedReason}}"
}
]
}{
"name": "Appointment Booking Analysis",
"schema": {
"type": "object",
"properties": {
"appointment_booked": {
"type": "boolean"
},
"appointment_date": {
"type": "string",
"description": "Date in YYYY-MM-DD format if booked"
},
"appointment_time": {
"type": "string",
"description": "Time in HH:MM format if booked"
},
"service_type": {
"type": "string"
},
"customer_name": {
"type": "string"
},
"notes": {
"type": "string"
}
}
},
"messages": [
{
"role": "system",
"content": "Extract appointment booking details from this call. If no appointment was booked, set appointment_booked to false."
},
{
"role": "user",
"content": "Schema: {{schema}}\n\nTranscript: {{transcript}}"
}
]
}