KosmoKrator

productivity

Zoho Desk CLI for AI Agents

Use the Zoho Desk CLI from KosmoKrator to call Zoho Desk tools headlessly, return JSON, inspect schemas, and automate workflows from coding agents, scripts, and CI.

Zoho Desk CLI Setup

Zoho Desk can be configured headlessly with `kosmokrator integrations:configure zoho-desk`.

Install, configure, and verify
# Install KosmoKrator first if it is not available on PATH.
curl -fsSL https://raw.githubusercontent.com/OpenCompanyApp/kosmokrator/main/install.sh | bash

# Configure and verify this integration.
kosmokrator integrations:configure zoho-desk --set access_token="$ZOHO_DESK_ACCESS_TOKEN" --set org_id="$ZOHO_DESK_ORG_ID" --enable --read allow --write ask --json
kosmokrator integrations:doctor zoho-desk --json
kosmokrator integrations:status --json

Credentials

Authentication type: Manual OAuth token oauth2_manual_token. Configure credentials once, then reuse the same stored profile from scripts, coding CLIs, Lua, and MCP.

KeyEnv varTypeRequiredLabel
access_token ZOHO_DESK_ACCESS_TOKEN Secret secret yes Access Token
url ZOHO_DESK_URL URL url no API Base URL
org_id ZOHO_DESK_ORG_ID Text string yes Organization ID

Command Patterns

The generic command is stable across every integration. The provider shortcut is shorter for humans.

Generic CLI call
kosmo integrations:call zoho-desk.zohodesk_list_tickets '{"departmentId":"example_departmentId","status":"example_status","priority":"example_priority","from":1,"limit":1,"sortBy":"example_sortBy","sortOrder":"example_sortOrder","search":"example_search"}' --json
Provider shortcut
kosmo integrations:zoho-desk zohodesk_list_tickets '{"departmentId":"example_departmentId","status":"example_status","priority":"example_priority","from":1,"limit":1,"sortBy":"example_sortBy","sortOrder":"example_sortOrder","search":"example_search"}' --json

Discovery

These commands return structured output for coding agents that need to inspect capabilities before choosing a function.

Discovery commands
kosmo integrations:docs zoho-desk --json
kosmo integrations:docs zoho-desk.zohodesk_list_tickets --json
kosmo integrations:schema zoho-desk.zohodesk_list_tickets --json
kosmo integrations:search "Zoho Desk" --json
kosmo integrations:list --json

Automation Contexts

The same configured command surface works in these environments. The command does not change unless the host wrapper, credentials, or permissions change.

CLI Functions

Every function below can be called headlessly. Commands are highlighted, copyable, and scroll horizontally when payloads are long.

zoho-desk.zohodesk_list_tickets

List support tickets from Zoho Desk. Supports filtering by department, status, priority, and other criteria. Returns ticket IDs, subjects, statuses, and basic details.

Read read
Parameters
departmentId, status, priority, from, limit, sortBy, sortOrder, search
Generic call
kosmo integrations:call zoho-desk.zohodesk_list_tickets '{"departmentId":"example_departmentId","status":"example_status","priority":"example_priority","from":1,"limit":1,"sortBy":"example_sortBy","sortOrder":"example_sortOrder","search":"example_search"}' --json
Shortcut
kosmo integrations:zoho-desk zohodesk_list_tickets '{"departmentId":"example_departmentId","status":"example_status","priority":"example_priority","from":1,"limit":1,"sortBy":"example_sortBy","sortOrder":"example_sortOrder","search":"example_search"}' --json

zoho-desk.zohodesk_get_ticket

Get full details of a specific support ticket by its ID, including subject, description, status, priority, assignee, contact info, and custom fields.

Read read
Parameters
ticketId
Generic call
kosmo integrations:call zoho-desk.zohodesk_get_ticket '{"ticketId":"example_ticketId"}' --json
Shortcut
kosmo integrations:zoho-desk zohodesk_get_ticket '{"ticketId":"example_ticketId"}' --json

zoho-desk.zohodesk_create_ticket

Create a new support ticket in Zoho Desk. Requires at least a subject and department ID. Optionally include a contact ID, description, priority, and other ticket fields.

Write write
Parameters
subject, departmentId, description, contactId, email, priority, status, channel, assigneeId, teamId
Generic call
kosmo integrations:call zoho-desk.zohodesk_create_ticket '{"subject":"example_subject","departmentId":"example_departmentId","description":"example_description","contactId":"example_contactId","email":"example_email","priority":"example_priority","status":"example_status","channel":"example_channel"}' --json
Shortcut
kosmo integrations:zoho-desk zohodesk_create_ticket '{"subject":"example_subject","departmentId":"example_departmentId","description":"example_description","contactId":"example_contactId","email":"example_email","priority":"example_priority","status":"example_status","channel":"example_channel"}' --json

zoho-desk.zohodesk_update_ticket

Update an existing support ticket in Zoho Desk. Provide the ticket ID and the fields to update (e.g., status, priority, assignee, subject, description).

Write write
Parameters
ticketId, subject, description, status, priority, assigneeId, teamId, departmentId, channel
Generic call
kosmo integrations:call zoho-desk.zohodesk_update_ticket '{"ticketId":"example_ticketId","subject":"example_subject","description":"example_description","status":"example_status","priority":"example_priority","assigneeId":"example_assigneeId","teamId":"example_teamId","departmentId":"example_departmentId"}' --json
Shortcut
kosmo integrations:zoho-desk zohodesk_update_ticket '{"ticketId":"example_ticketId","subject":"example_subject","description":"example_description","status":"example_status","priority":"example_priority","assigneeId":"example_assigneeId","teamId":"example_teamId","departmentId":"example_departmentId"}' --json

zoho-desk.zohodesk_list_contacts

List contacts from Zoho Desk. Supports filtering by name, email, and search terms. Returns contact IDs, names, emails, and phone numbers.

Read read
Parameters
from, limit, search, sortBy, sortOrder
Generic call
kosmo integrations:call zoho-desk.zohodesk_list_contacts '{"from":1,"limit":1,"search":"example_search","sortBy":"example_sortBy","sortOrder":"example_sortOrder"}' --json
Shortcut
kosmo integrations:zoho-desk zohodesk_list_contacts '{"from":1,"limit":1,"search":"example_search","sortBy":"example_sortBy","sortOrder":"example_sortOrder"}' --json

zoho-desk.zohodesk_list_articles

List knowledge base articles from Zoho Desk. Supports filtering by department, category, and search terms. Returns article IDs, titles, summaries, and categories.

Read read
Parameters
departmentId, categoryId, from, limit, search, sortBy, sortOrder
Generic call
kosmo integrations:call zoho-desk.zohodesk_list_articles '{"departmentId":"example_departmentId","categoryId":"example_categoryId","from":1,"limit":1,"search":"example_search","sortBy":"example_sortBy","sortOrder":"example_sortOrder"}' --json
Shortcut
kosmo integrations:zoho-desk zohodesk_list_articles '{"departmentId":"example_departmentId","categoryId":"example_categoryId","from":1,"limit":1,"search":"example_search","sortBy":"example_sortBy","sortOrder":"example_sortOrder"}' --json

zoho-desk.zohodesk_list_departments

List all departments configured in Zoho Desk. Returns department IDs, names, descriptions, and visibility settings. Department IDs are needed when creating tickets.

Read read
Parameters
from, limit
Generic call
kosmo integrations:call zoho-desk.zohodesk_list_departments '{"from":1,"limit":1}' --json
Shortcut
kosmo integrations:zoho-desk zohodesk_list_departments '{"from":1,"limit":1}' --json

zoho-desk.zohodesk_get_current_user

Get the profile of the currently authenticated Zoho Desk user. Returns user ID, name, email, role, and other profile information.

Read read
Parameters
none
Generic call
kosmo integrations:call zoho-desk.zohodesk_get_current_user '{}' --json
Shortcut
kosmo integrations:zoho-desk zohodesk_get_current_user '{}' --json

Function Schemas

Use these parameter tables when building CLI payloads without calling integrations:schema first.

zoho-desk.zohodesk_list_tickets 8 parameters
Schema command
kosmo integrations:schema zoho-desk.zohodesk_list_tickets --json
ParameterTypeRequiredDescription
departmentId string no Filter by department ID.
status string no Filter by status (e.g., "Open", "On Hold", "Closed", "Escalated").
priority string no Filter by priority (e.g., "High", "Medium", "Low").
from integer no Starting index for pagination (default: 1).
limit integer no Maximum number of tickets to return (default: 25, max: 200).
sortBy string no Sort field (e.g., "createdTime", "subject", "priority").
sortOrder string no Sort direction: "asc" or "desc".
search string no Search term to filter tickets by subject or description.
zoho-desk.zohodesk_get_ticket 1 parameters
Schema command
kosmo integrations:schema zoho-desk.zohodesk_get_ticket --json
ParameterTypeRequiredDescription
ticketId string yes The ticket ID to retrieve.
zoho-desk.zohodesk_create_ticket 10 parameters
Schema command
kosmo integrations:schema zoho-desk.zohodesk_create_ticket --json
ParameterTypeRequiredDescription
subject string yes The ticket subject line.
departmentId string yes The department ID to assign the ticket to. Use zohodesk_list_departments to find available departments.
description string no Detailed description of the issue or request.
contactId string no Contact ID to associate with the ticket.
email string no Email address of the contact (alternative to contactId).
priority string no Ticket priority: "High", "Medium", "Low", or "Lowest".
status string no Initial status (default depends on department settings).
channel string no Ticket channel (e.g., "Email", "Phone", "Web", "Chat").
assigneeId string no Agent ID to assign the ticket to.
teamId string no Team ID to assign the ticket to.
zoho-desk.zohodesk_update_ticket 9 parameters
Schema command
kosmo integrations:schema zoho-desk.zohodesk_update_ticket --json
ParameterTypeRequiredDescription
ticketId string yes The ticket ID to update.
subject string no Updated ticket subject.
description string no Updated ticket description.
status string no New status (e.g., "Open", "On Hold", "Closed", "Escalated").
priority string no New priority (e.g., "High", "Medium", "Low").
assigneeId string no Agent ID to reassign the ticket to.
teamId string no Team ID to reassign the ticket to.
departmentId string no Move ticket to a different department.
channel string no Updated channel (e.g., "Email", "Phone", "Web").
zoho-desk.zohodesk_list_contacts 5 parameters
Schema command
kosmo integrations:schema zoho-desk.zohodesk_list_contacts --json
ParameterTypeRequiredDescription
from integer no Starting index for pagination (default: 1).
limit integer no Maximum number of contacts to return (default: 25, max: 200).
search string no Search term to filter contacts by name, email, or phone.
sortBy string no Sort field (e.g., "firstName", "createdTime").
sortOrder string no Sort direction: "asc" or "desc".
zoho-desk.zohodesk_list_articles 7 parameters
Schema command
kosmo integrations:schema zoho-desk.zohodesk_list_articles --json
ParameterTypeRequiredDescription
departmentId string no Filter by department ID.
categoryId string no Filter by article category ID.
from integer no Starting index for pagination (default: 1).
limit integer no Maximum number of articles to return (default: 25, max: 200).
search string no Search term to filter articles by title or content.
sortBy string no Sort field (e.g., "title", "modifiedTime").
sortOrder string no Sort direction: "asc" or "desc".
zoho-desk.zohodesk_list_departments 2 parameters
Schema command
kosmo integrations:schema zoho-desk.zohodesk_list_departments --json
ParameterTypeRequiredDescription
from integer no Starting index for pagination (default: 1).
limit integer no Maximum number of departments to return (default: 25).
zoho-desk.zohodesk_get_current_user 0 parameters
Schema command
kosmo integrations:schema zoho-desk.zohodesk_get_current_user --json
ParameterTypeRequiredDescription
No parameters.

Permissions

Headless calls still follow the integration read/write permission policy. Configure read/write defaults with integrations:configure. Add --force only for trusted automation that should bypass that policy.