openapi: 3.0.0
info:
title: Bots chats API
description: "<p>Bots are conversational assistants designed to automate repetitive tasks and manage simple user interactions. Their behavior is fully customizable through predefined Bot Handlers, which are activated by specific actions or through Webhooks that communicate with your own external server.</p> <p>For more information about Bots, please refer to the <b><a href=\"https://www.zoho.com/cliq/help/platform/bots.html\" target=\"_blank\">Bots Help Documentation</a></b>.</p> <p><b>Bot Handlers</b></p> <ul>\n <li>Bot Handlers are the building blocks of a bot's functionality. Each handler is associated with a specific trigger event, such as receiving a direct message, being @mentioned in a channel, or a user subscribing to the bot.</li>\n <li>When the trigger event occurs, the corresponding handler executes it's script to perform actions like sending messages, making API calls, or updating data.</li>\n <li>By configuring different handlers, you can create bots that respond intelligently to various user interactions and automate complex workflows within Zoho Cliq.</li>\n</ul> <p><b>Types of Bot Handlers</b></p> <table style=\"border-collapse: collapse; width: 100%;\">\n <tr>\n <th style=\"padding: 8px; text-align: left; border: 1px solid #ddd;\">Handler</th>\n <th style=\"padding: 8px; text-align: left; border: 1px solid #ddd;\">Description</th>\n </tr>\n <tr>\n <td style=\"padding: 8px; border: 1px solid #ddd;\">Menu Handler</td>\n <td style=\"padding: 8px; border: 1px solid #ddd;\">Adds up to 5 quick-action items to the bot's chat menu. Triggered when a user interacts with the menu.</td>\n </tr>\n <tr>\n <td style=\"padding: 8px; border: 1px solid #ddd;\">Message Handler</td>\n <td style=\"padding: 8px; border: 1px solid #ddd;\">Triggered when the bot receives a message.</td>\n </tr>\n <tr>\n <td style=\"padding: 8px; border: 1px solid #ddd;\">Welcome Handler</td>\n <td style=\"padding: 8px; border: 1px solid #ddd;\">Defines the greeting message sent when a user subscribes to the bot.</td>\n </tr>\n <tr>\n <td style=\"padding: 8px; border: 1px solid #ddd;\">Mention Handler</td>\n <td style=\"padding: 8px; border: 1px solid #ddd;\">Triggered when the bot is @mentioned in a chat or channel.</td>\n </tr>\n <tr>\n <td style=\"padding: 8px; border: 1px solid #ddd;\">Incoming Webhook Handler</td>\n <td style=\"padding: 8px; border: 1px solid #ddd;\">Allows external services to post messages into the bot via outgoing webhooks.</td>\n </tr>\n <tr>\n <td style=\"padding: 8px; border: 1px solid #ddd;\">Context Handler</td>\n <td style=\"padding: 8px; border: 1px solid #ddd;\">Manages multi-turn conversations, maintaining context across a user's interaction with the bot.</td>\n </tr>\n</table> <p><b>What you can do with the Bots API?</b></p> <p>With the Bots API, you can retrieve information about a specific bot, list all bots within your organization, manage configurations specific to handlers, trigger bot calls programmatically, manage subscribers, and much more.</p> <p>Each bot has an <code>execution_type</code> that defines how its handlers run when a trigger event occurs. The Bots API allows developers to create two types of bots:</p> <p id=\"deluge-bots\"><b>Deluge Bots (default)</b><br> Deluge bot executes handler logic using Zoho's Deluge scripting language, hosted entirely within the Zoho Cliq Developer platform, where no external server is required.</p> <ul>\n <li>If <code>execution_type</code> is not specified during bot creation, it defaults to deluge.</li>\n <li>Handler logic is defined as a script field (Deluge source code) when creating or updating handlers.</li>\n <li>Suitable for teams that want to build and manage bot logic entirely within Zoho's ecosystem.</li>\n</ul> <p id=\"webhook-bots\"><b>Webhook Bots</b><br> A Webhook bot delegates all handler execution to your own external server. When a trigger event fires, Zoho Cliq sends an HTTP POST request to the <code>execution_url</code> you configure, and your server processes the event and returns a response.</p> <ul>\n <li>To create a Webhook bot, set <code>execution_type</code> to webhook during bot creation and provide the <code>execution_url</code> where event payloads should be sent.</li>\n <li>Your server must be publicly accessible and able to handle incoming POST requests from Zoho Cliq.</li>\n <li>Ideal for teams seeking complete control over bot logic and possessing the resources to manage an external server. Also suitable for integrations requiring access to external databases, third-party APIs, or custom business logic that cannot be executed in Deluge.</li>\n</ul>\n"
contact: {}
version: 1.0.0
servers:
- url: https://cliq.zoho.com/api/v3
description: Zoho Cliq US DC
tags:
- name: chats
description: Chats Module
paths:
/chats:
get:
summary: Retrieve all direct chats
operationId: Retrieve all direct chats
description: "Use this API to get details of all direct chats.\n<br><br> \n<p>\n <b>Threshold limit</b>: 30 requests per min per user<br>\n Number of API calls allowed within a minute.<br><br>\n <b>Lock period</b>: 10 minutes<br>Wait time before consecutive API requests.<br>\n</p>\n"
parameters:
- name: name
in: query
required: false
schema:
type: string
description: 'Search for chats with names that partially match the provided value.<br>
For example, searching with "pro" may return chats named "Project Alpha" and "Product Launch".
'
- name: recipient
in: query
required: false
schema:
type: string
description: 'Filter chats containing recipient.<br>
Provide the recipient <code>USER_ID</code> to return chats that include that user as a participant.<br>
To learn how to retrieve this ID, see <a href="/cliq/help/restapi/v3/glossary/#USER_ID">USER_ID</a> in the Glossary page.<br>
For example, searching with <code>70027934</code> returns chats that include that user ID.
'
- name: muted
in: query
required: false
schema:
type: boolean
description: 'Set this parameter to true to retrieve the list of chats which are muted by the user.
'
- name: limit
in: query
required: false
schema:
type: integer
format: int64
maxLength: 100
description: 'The number of chats that has to be retrieved.<br>
<b>Maximum limit</b> : 100
'
- name: modified_before
in: query
required: false
schema:
type: integer
format: int64
description: 'Gets the list of chats where the last message is sent before the mentioned time.
<br>
The time should be in <b>epoch milliseconds</b> format.<br>For example, <code>1711929600000</code>.
'
- name: modified_after
in: query
required: false
schema:
type: integer
format: int64
description: 'Gets the list of chats where the last message is sent after the mentioned time.
<br>
The time should be in <b>epoch milliseconds</b> format.<br>For example, <code>1711929600000</code>.
'
- name: drafts
in: query
required: false
schema:
type: boolean
description: 'Set this parameter to true to retrieve the list of chats which have unsent messages (drafts).
'
- name: pinned
in: query
required: false
schema:
type: boolean
description: 'Set this parameter to true to retrieve the list of chats which are pinned by the user.
'
- name: closed
in: query
required: false
schema:
type: boolean
description: 'Set this parameter to true to retrieve the list of chats which are closed by the user.
'
- name: joined
in: query
required: false
schema:
type: boolean
description: 'Set this parameter to true to retrieve the list of chats which are joined by the user.
'
- name: chat_ids
in: query
required: false
schema:
type: string
description: 'Comma-separated list of chat IDs to filter the chats.<br>
To learn how to retrieve these IDs, see <a href="/cliq/help/restapi/v3/glossary/#CHAT_ID">CHAT_ID</a> in the Glossary page.<br>
'
- name: parent_chid
in: query
required: false
schema:
type: string
description: 'Filter chats that are threads of a specific parent chat. Provide the parent chat''s <code>CHAT_ID</code> to return all threads under that chat.<br>
To learn how to retrieve this ID, see <a href="/cliq/help/restapi/v3/glossary/#CHAT_ID">CHAT_ID</a> in the Glossary page.<br>
'
- name: type
in: query
required: false
schema:
type: string
enum:
- guests
- threads
- channel
- bot
- dm
- muted
description: "Filter chats by type.<br>\n<b>Allowed values</b>:<br>\n<ul>\n <li><code>threads</code> - Chats that are threads of a parent chat.</li>\n <li><code>channel</code> - Channel conversations.</li>\n <li><code>bot</code> - Conversations with bots.</li>\n <li><code>dm</code> - Direct messages between users.</li>\n <li><code>muted</code> - Chats that are muted by the user.</li>\n</ul>\n"
responses:
'200':
description: OK
content:
application/json:
examples:
success:
summary: List of direct chats
value:
chats:
- chat_id: '2890538000000012345'
name: Alice Johnson
chat_type: direct_message
participant_count: 2
created_time: '2024-06-01T09:00:00.000Z'
last_modified_time: '2025-04-10T14:30:00.000Z'
pinned: false
removed: false
creator:
id: '70027934'
name: Tim Harrison
last_message_info:
message_id: '1773813859592_51531973059'
sender: '70027934'
time: '2025-04-10T14:30:00.000Z'
content:
text: See you at the standup!
type: text
- chat_id: '2890538000000067890'
name: Bob Carter
chat_type: direct_message
participant_count: 2
created_time: '2024-09-15T11:00:00.000Z'
last_modified_time: '2025-04-09T09:45:00.000Z'
pinned: true
removed: false
creator:
id: '70027934'
name: Tim Harrison
schema:
type: object
properties:
chats:
type: array
items:
$ref: '#/components/schemas/v3-chat'
'400':
description: Bad Request.
content:
application/json:
schema:
type: object
properties:
message:
type: string
example: The request cannot be performed. Usually because of malformed parameter or missing parameter.
'401':
description: Unauthorized.
content:
application/json:
schema:
type: object
properties:
message:
type: string
example: Request was rejected because of invalid AuthToken.
'403':
description: Forbidden.
content:
application/json:
schema:
type: object
properties:
message:
type: string
example: The user does not have enough permission or possibly not an user of the respective organization to access the resource.
'404':
description: Invalid URL.
content:
application/json:
schema:
type: object
properties:
message:
type: string
example: The URL you've sent is wrong. It's possible that the resource you've requested has been moved to another URL.
'405':
description: Method Not Allowed.
content:
application/json:
schema:
type: object
properties:
message:
type: string
example: The requested resource does not support the HTTP method used. For example, requesting List of all customers API with PUT as the HTTP method.
'406':
description: Not Acceptable.
content:
application/json:
schema:
type: object
properties:
message:
type: string
example: The response has been received but the requested response type is not supported by the browser.
'429':
description: Too many requests.
content:
application/json:
schema:
type: object
properties:
message:
type: string
example: Too many requests within a certain time frame.
'500':
description: Internal Server Error.
content:
application/json:
schema:
type: object
properties:
message:
type: string
example: Cliq server encountered an error which prevents it from fulfilling the request.
security:
- Cliq_Auth:
- ZohoCliq.Chats.READ
tags:
- chats
post:
summary: Create chat
operationId: createChatV3
description: "Create a new direct conversation or a group chat.\n<br><br>\n<p>\n <b>Threshold limit</b>: 30 requests per min<br>\n Number of API calls allowed within a minute.<br>\n</p>\n<details style=\"margin:16px 0 8px 0; border:1px solid rgba(148,163,184,0.5); border-radius:8px; font-family:inherit;\" ontoggle=\"this.querySelector('.err-toggle-hint').textContent=this.open?'Click to collapse':'Click to expand'\">\n <summary style=\"cursor:pointer; padding:11px 16px; font-weight:600; background:rgba(148,163,184,0.1); list-style:none; display:flex; align-items:center; gap:8px; user-select:none; border-radius:8px;\">\n <span style=\"display:inline-flex; align-items:center; justify-content:center; width:20px; height:20px; background:rgba(239,68,68,0.15); border-radius:50%; font-size:12px; font-weight:700; color:#ef4444; flex-shrink:0;\">!</span>\n Possible Error Codes\n <span class=\"err-toggle-hint\" style=\"margin-left:auto; font-weight:400; opacity:0.45; font-size:0.8em; letter-spacing:0.01em;\">Click to expand</span>\n </summary>\n <div style=\"padding:14px 16px 16px 16px;\">\n <div style=\"border-radius:6px; border:1px solid rgba(148,163,184,0.35);\">\n <table style=\"border-collapse:collapse; width:100%; font-family:inherit; font-size:0.9em;\">\n <thead>\n <tr>\n <th style=\"padding:10px 18px; text-align:center; background:rgba(148,163,184,0.15); border-bottom:1px solid rgba(148,163,184,0.35); border-right:1px solid rgba(148,163,184,0.35); font-weight:600; width:45%;\">Error Code</th>\n <th style=\"padding:10px 18px; text-align:center; background:rgba(148,163,184,0.15); border-bottom:1px solid rgba(148,163,184,0.35); font-weight:600; width:55%;\">Description</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <td style=\"padding:10px 18px; border-bottom:1px solid rgba(148,163,184,0.2); border-right:1px solid rgba(148,163,184,0.25); vertical-align:middle;\"><span style=\"display:inline-block; background:rgba(239,68,68,0.12); color:#ef4444; padding:3px 10px; border-radius:4px; font-family:monospace; font-size:0.82em; line-height:1.6; word-break:break-all;\">121_deptmem_message</span></td>\n <td style=\"padding:10px 18px; border-bottom:1px solid rgba(148,163,184,0.2);\">Permission to chat with department members is restricted by admin.</td>\n </tr>\n <tr style=\"background:rgba(148,163,184,0.05);\">\n <td style=\"padding:10px 18px; border-bottom:1px solid rgba(148,163,184,0.2); border-right:1px solid rgba(148,163,184,0.25); vertical-align:middle;\"><span style=\"display:inline-block; background:rgba(239,68,68,0.12); color:#ef4444; padding:3px 10px; border-radius:4px; font-family:monospace; font-size:0.82em; line-height:1.6; word-break:break-all;\">121_orgmem_message</span></td>\n <td style=\"padding:10px 18px; border-bottom:1px solid rgba(148,163,184,0.2);\">Permission to chat with organization members is restricted by admin.</td>\n </tr>\n <tr>\n <td style=\"padding:10px 18px; border-bottom:1px solid rgba(148,163,184,0.2); border-right:1px solid rgba(148,163,184,0.25); vertical-align:middle;\"><span style=\"display:inline-block; background:rgba(239,68,68,0.12); color:#ef4444; padding:3px 10px; border-radius:4px; font-family:monospace; font-size:0.82em; line-height:1.6; word-break:break-all;\">chat_continue_nonorg_nonmutual_contact_failed</span></td>\n <td style=\"padding:10px 18px; border-bottom:1px solid rgba(148,163,184,0.2);\">The user is no longer part of your contacts or organization.</td>\n </tr>\n <tr style=\"background:rgba(148,163,184,0.05);\">\n <td style=\"padding:10px 18px; border-bottom:1px solid rgba(148,163,184,0.2); border-right:1px solid rgba(148,163,184,0.25); vertical-align:middle;\"><span style=\"display:inline-block; background:rgba(239,68,68,0.12); color:#ef4444; padding:3px 10px; border-radius:4px; font-family:monospace; font-size:0.82em; line-height:1.6; word-break:break-all;\">121_extmem_message</span></td>\n <td style=\"padding:10px 18px; border-bottom:1px solid rgba(148,163,184,0.2);\">Permission to chat with external users is restricted by admin.</td>\n </tr>\n <tr>\n <td style=\"padding:10px 18px; border-bottom:1px solid rgba(148,163,184,0.2); border-right:1px solid rgba(148,163,184,0.25); vertical-align:middle;\"><span style=\"display:inline-block; background:rgba(239,68,68,0.12); color:#ef4444; padding:3px 10px; border-radius:4px; font-family:monospace; font-size:0.82em; line-height:1.6; word-break:break-all;\">chat_not_available_with_this_inactive_user_and_cannot_create_newchat</span></td>\n <td style=\"padding:10px 18px; border-bottom:1px solid rgba(148,163,184,0.2);\">No chat history with this inactive user; cannot create a new chat.</td>\n </tr>\n <tr style=\"background:rgba(148,163,184,0.05);\">\n <td style=\"padding:10px 18px; border-bottom:1px solid rgba(148,163,184,0.2); border-right:1px solid rgba(148,163,184,0.25); vertical-align:middle;\"><span style=\"display:inline-block; background:rgba(239,68,68,0.12); color:#ef4444; padding:3px 10px; border-radius:4px; font-family:monospace; font-size:0.82em; line-height:1.6; word-break:break-all;\">invalid_inputs</span></td>\n <td style=\"padding:10px 18px; border-bottom:1px solid rgba(148,163,184,0.2);\">Missing or invalid fields (e.g. chat_type not provided or unsupported).</td>\n </tr>\n <tr>\n <td style=\"padding:10px 18px; border-bottom:1px solid rgba(148,163,184,0.2); border-right:1px solid rgba(148,163,184,0.25); vertical-align:middle;\"><span style=\"display:inline-block; background:rgba(239,68,68,0.12); color:#ef4444; padding:3px 10px; border-radius:4px; font-family:monospace; font-size:0.82em; line-height:1.6; word-break:break-all;\">no_valid_users_available_to_create_chat</span></td>\n <td style=\"padding:10px 18px; border-bottom:1px solid rgba(148,163,184,0.2);\">All specified users are inactive or not in your contacts.</td>\n </tr>\n <tr style=\"background:rgba(148,163,184,0.05);\">\n <td style=\"padding:10px 18px; border-bottom:1px solid rgba(148,163,184,0.2); border-right:1px solid rgba(148,163,184,0.25); vertical-align:middle;\"><span style=\"display:inline-block; background:rgba(239,68,68,0.12); color:#ef4444; padding:3px 10px; border-radius:4px; font-family:monospace; font-size:0.82em; line-height:1.6; word-break:break-all;\">insufficient_members_to_create_group_chat</span></td>\n <td style=\"padding:10px 18px; border-bottom:1px solid rgba(148,163,184,0.2);\">Not enough valid members to create a group chat (minimum 3 including creator).</td>\n </tr>\n <tr>\n <td style=\"padding:10px 18px; border-right:1px solid rgba(148,163,184,0.25); vertical-align:middle;\"><span style=\"display:inline-block; background:rgba(239,68,68,0.12); color:#ef4444; padding:3px 10px; border-radius:4px; font-family:monospace; font-size:0.82em; line-height:1.6; word-break:break-all;\">chat_operation_failed</span></td>\n <td style=\"padding:10px 18px;\">Unexpected server error while creating the chat.</td>\n </tr>\n </tbody>\n </table>\n </div>\n <div style=\"background:rgba(245,158,11,0.08); border:1px solid rgba(245,158,11,0.4); border-left:4px solid #f59e0b; padding:12px 16px; border-radius:0 6px 6px 0; margin-top:14px; overflow:hidden;\">\n <b style=\"color:#d97706; font-size:0.88em; display:block; margin-bottom:6px;\">Error Response Format</b>\n <p style=\"margin:0 0 8px 0; font-size:0.85em; opacity:0.75;\">When an error occurs, the API returns a JSON response in this format:</p>\n <code style=\"display:block; background:rgba(245,158,11,0.1); border:1px solid rgba(245,158,11,0.3); padding:8px 12px; border-radius:4px; font-size:0.75em; word-break:break-all;\">{\"message\": \"A human-readable description of the error.\", \"code\": \"error_code\"}</code>\n <p style=\"margin:8px 0 0 0; font-size:0.85em; opacity:0.75;\">where <code style=\"background:rgba(245,158,11,0.1); padding:1px 5px; border-radius:3px;\">code</code> is the error identifier (as listed above) and <code style=\"background:rgba(245,158,11,0.1); padding:1px 5px; border-radius:3px;\">message</code> is a human-readable explanation of what went wrong.</p>\n </div>\n </div>\n</details>\n"
requestBody:
required: true
content:
application/json:
examples:
direct_chat:
summary: Direct Chat
value:
chat_type: direct_message
user_id: '70027934'
group_chat:
summary: Group Chat
value:
chat_type: group_chat
user_ids:
- '70027934'
- '106324287'
- '70317945'
- '72589892'
title: Q2 Product Review - Design, Engineering & QA
schema:
$ref: '#/components/schemas/v3-create-chat-request'
responses:
'200':
description: OK
content:
application/json:
examples:
direct_chat:
summary: Direct Chat response
value:
url: /v3/chats
type: chat
data:
user_membership:
pinned: false
removed: false
chat_type: direct_message
name: Ryan West
creator:
name: Ryan West
id: '855727963'
participant_count: 2
created_time: '2024-11-06T22:39:30-08:00'
last_modified_time: '2026-05-06T23:37:30-07:00'
chat_id: '2198144177691461096'
group_chat:
summary: Group Chat response
value:
url: /v3/chats
type: chat
data:
name: Q2 Product Review - Design, Engineering & QA
chat_id: '1456816193674892935'
chat_type: group_chat
participant_count: 5
created_time: '2025-06-15T10:30:00+05:30'
last_modified_time: '2025-06-15T10:30:00+05:30'
user_membership:
pinned: false
removed: false
creator:
id: '70027934'
name: Tim Harrison
schema:
type: object
properties:
data:
$ref: '#/components/schemas/v3-chat'
'400':
description: Bad Request.
content:
application/json:
schema:
type: object
properties:
message:
type: string
example: The request cannot be performed. Usually because of malformed parameter or missing parameter.
'401':
description: Unauthorized.
content:
application/json:
schema:
type: object
properties:
message:
type: string
example: Request was rejected because of invalid AuthToken.
'403':
description: Forbidden.
content:
application/json:
schema:
type: object
properties:
message:
type: string
example: The user does not have enough permission or possibly not an user of the respective organization to access the resource.
'429':
description: Too many requests.
content:
application/json:
schema:
type: object
properties:
message:
type: string
example: Too many requests within a certain time frame.
'500':
description: Internal Server Error.
content:
application/json:
schema:
type: object
properties:
message:
type: string
example: Cliq server encountered an error which prevents it from fulfilling the request.
security:
- Cliq_Auth:
- ZohoCliq.Chats.CREATE
tags:
- chats
put:
summary: Mark Multiple Chats as Read or Clear Unread Count
operationId: bulkUpdateChatsV3
description: "Manage the read state of multiple chats in a single request.<br> \nTwo bulk actions are supported, controlled by the <code>operation</code> field in the request body:\n<ul>\n <li><code>read_status_update</code>- Manage the read status of multiple chats in a single request. This is particularly useful for keeping your chat list organized and up-to-date, especially when you have a large number of conversations.</li>\n <li><code>clear_unread</code> - Clears the unread message count or status to zero for the specified chats. If a specified chat has no unread entries, it is silently skipped.</li>\n</ul>\n<p>\n <b>Threshold limits</b>: 60 requests per min<br>\n Number of API calls allowed within a minute.<br><br>\n <b>Lock periods</b>: 5 minutes<br>Wait time before consecutive API requests.<br>\n</p>\n<details style=\"margin:16px 0 8px 0; border:1px solid rgba(148,163,184,0.5); border-radius:8px; font-family:inherit;\" ontoggle=\"this.querySelector('.err-toggle-hint').textContent=this.open?'Click to collapse':'Click to expand'\">\n <summary style=\"cursor:pointer; padding:11px 16px; font-weight:600; background:rgba(148,163,184,0.1); list-style:none; display:flex; align-items:center; gap:8px; user-select:none; border-radius:8px;\">\n <span style=\"display:inline-flex; align-items:center; justify-content:center; width:20px; height:20px; background:rgba(239,68,68,0.15); border-radius:50%; font-size:12px; font-weight:700; color:#ef4444; flex-shrink:0;\">!</span>\n Possible Error Codes\n <span class=\"err-toggle-hint\" style=\"margin-left:auto; font-weight:400; opacity:0.45; font-size:0.8em; letter-spacing:0.01em;\">Click to expand</span>\n </summary>\n <div style=\"padding:14px 16px 16px 16px;\">\n <p style=\"margin:0px 0 8px 0; font-weight:600; font-size:0.9em; opacity:0.75;\">Possible Error Codes - Mark Chats as Read (<code>read_status_update</code>)</p>\n <div style=\"border-radius:6px; border:1px solid rgba(148,163,184,0.35);\">\n <table style=\"border-collapse:collapse; width:100%; font-family:inherit; font-size:0.9em;\">\n <thead>\n <tr>\n <th style=\"padding:10px 18px; text-align:center; background:rgba(148,163,184,0.15); border-bottom:1px solid rgba(148,163,184,0.35); border-right:1px solid rgba(148,163,184,0.35); font-weight:600; width:45%;\">Error Code</th>\n <th style=\"padding:10px 18px; text-align:center; background:rgba(148,163,184,0.15); border-bottom:1px solid rgba(148,163,184,0.35); font-weight:600; width:55%;\">Description</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <td style=\"padding:10px 18px; border-bottom:1px solid rgba(148,163,184,0.2); border-right:1px solid rgba(148,163,184,0.25); vertical-align:middle;\"><span style=\"display:inline-block; background:rgba(239,68,68,0.12); color:#ef4444; padding:3px 10px; border-radius:4px; font-family:monospace; font-size:0.82em; line-height:1.6; word-break:break-all;\">param_missing</span></td>\n <td style=\"padding:10px 18px; border-bottom:1px solid rgba(148,163,184,0.2);\">The param 'operation' is missing.</td>\n </tr>\n <tr style=\"background:rgba(148,163,184,0.05);\">\n <td style=\"padding:10px 18px; border-bottom:1px solid rgba(148,163,184,0.2); border-right:1px solid rgba(148,163,184,0.25); vertical-align:middle;\"><span style=\"display:inline-block; background:rgba(239,68,68,0.12); color:#ef4444; padding:3px 10px; border-radius:4px; font-family:monospace; font-size:0.82em; line-height:1.6; word-break:break-all;\">param_missing</span></td>\n <td style=\"padding:10px 18px; border-bottom:1px solid rgba(148,163,184,0.2);\">The param 'read_status' is missing.</td>\n </tr>\n <tr>\n <td style=\"padding:10px 18px; border-bottom:1px solid rgba(148,163,184,0.2); border-right:1px solid rgba(148,163,184,0.25); vertical-align:middle;\"><span style=\"display:inline-block; background:rgba(239,68,68,0.12); color:#ef4444; padding:3px 10px; border-radius:4px; font-family:monospace; font-size:0.82em; line-height:1.6; word-break:break-all;\">param_missing</span></td>\n <td style=\"padding:10px 18px; border-bottom:1px solid rgba(148,163,184,0.2);\">The param 'chats' is missing.</td>\n </tr>\n <tr style=\"background:rgba(148,163,184,0.05);\">\n <td style=\"padding:10px 18px; border-bottom:1px solid rgba(148,163,184,0.2); border-right:1px solid rgba(148,163,184,0.25); vertical-align:middle;\"><span style=\"display:inline-block; background:rgba(239,68,68,0.12); color:#ef4444; padding:3px 10px; border-radius:4px; font-family:monospace; font-size:0.82em; line-height:1.6; word-break:break-all;\">param_missing</span></td>\n <td style=\"padding:10px 18px; border-bottom:1px solid rgba(148,163,184,0.2);\">The param 'chat_id' is missing.</td>\n </tr>\n <tr>\n <td style=\"padding:10px 18px; border-bottom:1px solid rgba(148,163,184,0.2); border-right:1px solid rgba(148,163,184,0.25); vertical-align:middle;\"><span style=\"display:inline-block;
# --- truncated at 32 KB (185 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/zoho-cliq/refs/heads/main/openapi/zoho-cliq-chats-api-openapi.yml