Skip to content

Canned Responses

The Canned Responses API allows you to manage pre-defined quick replies for your organization.

RoleListCreateUpdateDeleteUse
AdminYesYesYesYesYes
ManagerYesYesYesYesYes
AgentYesNoNoNoYes

Retrieve all canned responses for your organization.

Terminal window
GET /api/canned-responses
ParameterTypeDescription
pageintegerPage number (default: 1)
limitintegerItems per page (default: 20)
categorystringFilter by category (e.g., greeting, support)
searchstringSearch in name, content, and shortcut
active_onlystringSet to "true" to only return active responses
{
"status": "success",
"data": {
"canned_responses": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Welcome Message",
"shortcut": "welcome",
"content": "Hello {{contact_name}}! Thank you for reaching out. How can I help you today?",
"category": "greeting",
"is_active": true,
"usage_count": 42,
"buttons": [
{
"id": "track_order",
"title": "Track Order",
"type": "reply"
}
],
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-15T10:30:00Z"
}
],
"total": 1,
"page": 1,
"limit": 20
}
}

Retrieve a single canned response by ID.

Terminal window
GET /api/canned-responses/{id}
{
"status": "success",
"data": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Welcome Message",
"shortcut": "welcome",
"content": "Hello {{contact_name}}! Thank you for reaching out. How can I help you today?",
"category": "greeting",
"is_active": true,
"usage_count": 42,
"buttons": [
{
"id": "track_order",
"title": "Track Order",
"type": "reply"
}
],
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-15T10:30:00Z"
}
}

Create a new canned response.

Terminal window
POST /api/canned-responses
{
"name": "Welcome Message",
"shortcut": "welcome",
"content": "Hello {{contact_name}}! Thank you for reaching out. How can I help you today?",
"category": "greeting",
"buttons": [
{
"id": "track_order",
"title": "Track Order",
"type": "reply"
}
]
}
FieldTypeRequiredDescription
namestringYesDisplay name for the response
contentstringYesThe response text (supports placeholders)
shortcutstringNoQuick-access code for slash commands
categorystringNoCategory for organization
buttonsarrayNoOptional interactive buttons to attach to the response
FieldTypeRequiredDescription
idstringYesUnique button identifier
titlestringYesButton label (max 20 characters for reply buttons)
typestringNoButton type: reply (default), url, phone, voice_call
urlstringNoTarget URL (for url buttons)
phone_numberstringNoTarget phone number (for phone buttons)
ttl_minutesintegerNoButton TTL in minutes (for voice_call buttons)
{
"status": "success",
"data": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Welcome Message",
"shortcut": "welcome",
"content": "Hello {{contact_name}}! Thank you for reaching out. How can I help you today?",
"category": "greeting",
"is_active": true,
"usage_count": 0,
"buttons": [
{
"id": "track_order",
"title": "Track Order",
"type": "reply"
}
],
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-15T10:30:00Z"
}
}

Update an existing canned response.

Terminal window
PUT /api/canned-responses/{id}
{
"name": "Updated Welcome Message",
"shortcut": "hi",
"content": "Hi {{contact_name}}! Welcome to our support. How may I assist you?",
"category": "greeting",
"is_active": true,
"buttons": []
}
FieldTypeDescription
namestringDisplay name for the response
contentstringThe response text
shortcutstringQuick-access code
categorystringCategory for organization
is_activebooleanWhether the response is active
buttonsarrayInteractive buttons configuration

Delete a canned response.

Terminal window
DELETE /api/canned-responses/{id}
{
"status": "success",
"data": {
"message": "Canned response deleted"
}
}

Increment the usage counter for a canned response.

Terminal window
POST /api/canned-responses/{id}/use
{
"status": "success",
"data": {
"message": "Usage incremented"
}
}

Canned response content can include placeholders that are replaced with actual values when used:

PlaceholderDescription
{{contact_name}}Contact’s profile name
{{phone_number}}Contact’s phone number