{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "Zoho Cliq Messageactions Schemas",
"definitions": {
"NoResponse": {
"type": "object",
"description": "Represents an empty successful response where no payload is returned.",
"properties": {
"Response Code": {
"type": "string",
"example": "204 No response"
}
}
},
"MessageActionResponse": {
"type": "object",
"description": "Response schema for message action create, get, and update operations.",
"properties": {
"url": {
"type": "string",
"description": "API endpoint URL for the message action resource.",
"example": "/api/v3/messageactions"
},
"type": {
"type": "string",
"description": "Resource type.",
"example": "messageaction"
},
"data": {
"type": "object",
"description": "Message action details.",
"properties": {
"multi_selectable": {
"type": "boolean",
"example": true
},
"name": {
"type": "string",
"example": "Create Ticket"
},
"id": {
"type": "string",
"example": "53719000002124010"
},
"handlers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string"
}
}
}
},
"creator": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"id": {
"type": "string"
}
}
},
"execution_type": {
"type": "string",
"example": "deluge"
},
"hint": {
"type": "string",
"example": "Create a helpdesk ticket"
},
"status": {
"type": "string",
"example": "enabled"
},
"type": {
"type": "string",
"example": "custom"
},
"message_types": {
"type": "array",
"items": {
"type": "string"
}
},
"scope": {
"type": "string",
"example": "organization"
}
}
}
},
"example": {
"url": "/api/v3/messageactions",
"type": "messageaction",
"data": {
"multi_selectable": true,
"name": "Create Ticket",
"id": "53719000002124010",
"handlers": [
{
"type": "execution_handler"
}
],
"creator": {
"name": "James",
"id": "65113112"
},
"execution_type": "deluge",
"hint": "Create a helpdesk ticket",
"status": "enabled",
"type": "custom",
"message_types": [
"text",
"link"
],
"scope": "organization"
}
}
},
"GenericResponse": {
"type": "object",
"description": "Generic API response envelope.",
"properties": {
"url": {
"type": "string",
"example": "/api/v3/resource"
},
"type": {
"type": "string",
"example": "object"
},
"data": {
"type": "object",
"additionalProperties": true
}
}
},
"updateMessageActionHandlerResponse": {
"type": "object",
"description": "Response schema for message action handler update operations.",
"properties": {
"url": {
"type": "string",
"description": "API endpoint URL for the handler resource."
},
"type": {
"type": "string",
"description": "Handler type.",
"example": "execution_handler"
},
"data": {
"type": "object",
"additionalProperties": true,
"properties": {
"name": {
"type": "string",
"description": "Handler name."
},
"script": {
"type": "string",
"description": "Updated Deluge script source code."
},
"function_id": {
"type": "string",
"description": "Unique identifier of the underlying function associated with this handler."
}
}
}
},
"example": {
"url": "/api/v3/messageactions/53719000002124010/handlers/execution_handler",
"type": "execution_handler",
"data": {
"name": "execution_handler",
"script": "response = Map();\nmessage = info.get(\"message\").get(\"text\");\nresponse.put(\"text\", \"Ticket created for: \" + message);\nreturn response;\n",
"function_id": "53719000002124010"
}
}
},
"MessageActionUpdateResponse": {
"type": "object",
"description": "Response schema for message action update operations.",
"properties": {
"url": {
"type": "string",
"description": "API endpoint URL for the updated message action resource.",
"example": "/api/v3/messageactions/53719000002124010"
},
"type": {
"type": "string",
"description": "Resource type.",
"example": "messageaction"
},
"data": {
"type": "object",
"description": "Updated message action details.",
"properties": {
"name": {
"type": "string"
},
"id": {
"type": "string"
},
"hint": {
"type": "string"
},
"scope": {
"type": "string"
},
"multi_selectable": {
"type": "boolean"
},
"message_types": {
"type": "array",
"items": {
"type": "string"
}
},
"team_ids": {
"type": "array",
"items": {
"type": "integer"
}
},
"handlers": {
"type": "array"
},
"creator": {
"type": "object"
},
"execution_type": {
"type": "string"
},
"status": {
"type": "string"
},
"type": {
"type": "string"
}
}
}
},
"example": {
"url": "/api/v3/messageactions/53719000002124010",
"type": "messageaction",
"data": {
"name": "Create Ticket",
"id": "53719000002124010",
"hint": "Convert this message into a support ticket",
"scope": "organization",
"multi_selectable": false,
"message_types": [
"text",
"link",
"attachment"
],
"handlers": [
{
"type": "execution_handler"
}
],
"creator": {
"name": "James",
"id": "65113112"
},
"execution_type": "deluge",
"status": "enabled",
"type": "custom"
}
}
},
"MessageActionListItemsResponse": {
"type": "object",
"description": "Response schema for listing message actions.",
"properties": {
"url": {
"type": "string",
"example": "/api/v3/messageactions"
},
"type": {
"type": "string",
"example": "messageaction"
},
"sync_token": {
"type": "string",
"description": "Token for incremental sync. Pass this in the next request to retrieve only message actions updated since this response."
},
"next_token": {
"type": "string",
"description": "Pagination token for the next page of results."
},
"data": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"id": {
"type": "string"
},
"hint": {
"type": "string"
},
"scope": {
"type": "string"
},
"multi_selectable": {
"type": "boolean"
},
"message_types": {
"type": "array",
"items": {
"type": "string"
}
},
"handlers": {
"type": "array"
},
"creator": {
"type": "object"
},
"execution_type": {
"type": "string"
},
"status": {
"type": "string"
},
"type": {
"type": "string"
}
}
}
}
},
"example": {
"url": "/api/v3/messageactions",
"type": "messageaction",
"sync_token": "NTB8MTc3NzQzMjI3NjY1OHw1MzcxOTAwMDAwMjEyNDAxMA==",
"data": [
{
"multi_selectable": true,
"name": "Create Ticket",
"id": "53719000002124010",
"handlers": [
{
"type": "execution_handler"
}
],
"creator": {
"name": "James",
"id": "65113112"
},
"execution_type": "deluge",
"hint": "Create a helpdesk ticket",
"status": "enabled",
"type": "custom",
"message_types": [
"text",
"link"
],
"scope": "organization"
},
{
"multi_selectable": false,
"name": "Translate",
"id": "53719000002124013",
"handlers": [
{
"type": "execution_handler"
}
],
"creator": {
"name": "James",
"id": "65113112"
},
"execution_type": "deluge",
"hint": "Translate selected message to English",
"status": "enabled",
"type": "custom",
"message_types": [
"text"
],
"scope": "personal"
}
]
}
},
"MessageActionListResponse": {
"type": "object",
"description": "Response schema for listing message actions.",
"properties": {
"deleted": {
"type": "array",
"items": {
"type": "string"
}
},
"url": {
"type": "string",
"example": "/api/v3/messageactions"
},
"next_token": {
"type": "string"
},
"type": {
"type": "string",
"example": "messageaction"
},
"total_count": {
"type": "integer"
},
"sync_token": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
}
}
}
},
"MessageActionHandlerResponse": {
"type": "object",
"description": "Response schema for message action handler operations.",
"properties": {
"url": {
"type": "string"
},
"type": {
"type": "string",
"example": "execution_handler"
},
"data": {
"type": "object",
"additionalProperties": true
}
}
},
"HANDLER_TYPE_regex": {
"type": "string",
"description": "Type of the message action handler. Message actions support only one handler type: execution_handler, which is triggered when the action is invoked.",
"enum": [
"execution_handler"
]
},
"longid_regex": {
"type": "string",
"description": "Numeric long integer identifier used to reference platform components such as Commands, Functions, Widgets, Message Actions, Schedulers, and Extensions."
},
"v3-msgaction-create": {
"type": "object",
"description": "Payload for creating a message action.",
"required": [
"name",
"hint"
],
"properties": {
"execution_type": {
"type": "string",
"enum": [
"deluge",
"webhook"
],
"description": "Defines how the message action executes its handler.
\n
deluge: Handler logic runs on Zoho's platform via Deluge scripts. Default when omitted.webhook: When the action is triggered, Cliq sends a POST request to your execution_url.execution_type is webhook.organization: Visible and accessible to all users within the organization.team: Visible and accessible only to members of specified teams. Requires team_ids field.personal: Visible and accessible only to the creator, but can be shared with other users by adding them as collaborators.scope is set to team. Each ID corresponds to a team within the organization.scope is team.\n",
"items": {
"type": "integer"
}
},
"multi_selectable": {
"type": "boolean",
"description": "Determines whether the message action can be applied to multiple messages at once. If set to true, users can select multiple messages and invoke the action on all selected messages simultaneously. If false, the action can only be applied to one message at a time.\n"
},
"image": {
"type": "string",
"description": "Base64-encoded string representing a custom icon image for the message action. This icon is displayed in the message action menu alongside the action name.\n"
},
"message_types": {
"type": "array",
"minItems": 1,
"maxItems": 3,
"description": "List of message types that the message action supports. This determines which types of messages the action can be applied to. Allowed values are:text: The action can be applied to text messages.link: The action can be applied to messages containing links.attachment: The action can be applied to messages with attachments.chat: Chat context (chat ID, type, participants).message: Message content and metadata.user: Sender's user profile details.location: Sender's location data.attachments: Attachment metadata and download info.organization: Visible and accessible to all users within the organization.team: Visible and accessible only to members of specified teams. Requires team_ids field.personal: Visible and accessible only to the creator, but can be shared with other users by adding them as collaborators.scope is set to team. Each ID corresponds to a team within the organization.scope is team.\n",
"items": {
"type": "integer"
}
},
"multi_selectable": {
"type": "boolean",
"description": "Updated multi-selection behavior. If set to true, users can select multiple messages and invoke the action on all selected messages simultaneously. If false, the action can only be applied to one message at a time.\n"
},
"image": {
"type": "string",
"description": "Updated Base64-encoded string representing a custom icon image for the message action. This icon is displayed in the message action menu alongside the action name.\n"
},
"message_types": {
"type": "array",
"minItems": 1,
"maxItems": 3,
"description": "Updated list of message types that the message action supports. Allowed values are:text: The action can be applied to text messages.link: The action can be applied to messages containing links.attachment: The action can be applied to messages with attachments.