Kayako
Create and track support cases and conversations in Kayako via the Kayako REST API v1.
What It Does
Provides four operations against the Kayako REST API:
| Operation | HTTP | Endpoint |
|---|---|---|
list_cases |
GET | /api/v1/cases.json |
get_case |
GET | /api/v1/cases/{caseId}.json |
create_case |
POST | /api/v1/cases.json |
list_posts |
GET | /api/v1/cases/{caseId}/posts.json |
reply_case |
POST | /api/v1/cases/{caseId}/reply.json |
Authentication
Kayako uses HTTP Basic Authentication:
Authorization: Basic base64(email:password)
The apiKey input takes the literal email:password string — the tool base64-encodes it before sending.
Getting your credentials:
1. Log in to your Kayako instance as an agent or admin.
2. Use your agent email address and account password.
3. Set instance to your subdomain (e.g. acme for acme.kayako.com).
Inputs
| Field | Required | Description |
|---|---|---|
apiKey |
Yes | email:password credential pair for Basic auth |
instance |
Yes | Kayako subdomain (e.g. acme for acme.kayako.com) |
operation |
Yes | One of: list_cases, get_case, create_case, list_posts, reply_case |
caseId |
Conditional | Case ID — required for get_case, list_posts, reply_case |
subject |
Conditional | Case subject — required for create_case |
contents |
Conditional | Message body — required for create_case and reply_case |
channel |
Optional | Channel for create_case: MAIL, NOTE (default: MAIL) |
channelId |
Conditional | Channel ID — required for create_case when channel is MAIL |
requesterId |
Optional | Requester user ID (integer) for create_case |
priorityId |
Optional | Priority ID (integer) for create_case |
Outputs
| Field | Description |
|---|---|
result |
JSON response body from the Kayako API |
status |
HTTP status code as a string (e.g. 200, 201) |
Examples
List open cases
input:
apiKey: "[email protected]:s3cr3t"
instance: "acme"
operation: "list_cases"
Get a specific case
input:
apiKey: "[email protected]:s3cr3t"
instance: "acme"
operation: "get_case"
caseId: "12345"
Create a new internal note case
input:
apiKey: "[email protected]:s3cr3t"
instance: "acme"
operation: "create_case"
subject: "Server is down"
contents: "Customer reported the API is returning 503 errors since 14:00 UTC."
channel: "NOTE"
requesterId: "789"
Add a reply to an existing case
input:
apiKey: "[email protected]:s3cr3t"
instance: "acme"
operation: "reply_case"
caseId: "12345"
contents: "Thank you for reaching out. We are investigating and will update you shortly."
List all posts/messages in a case
input:
apiKey: "[email protected]:s3cr3t"
instance: "acme"
operation: "list_posts"
caseId: "12345"
API Reference
- Base documentation: https://developer.kayako.com/api/v1/reference/introduction/
- Authentication: https://developer.kayako.com/api/v1/reference/authentication/
- Cases: https://developer.kayako.com/api/v1/cases/cases/