Zoho Event API

The Event API from Zoho — 7 operation(s) for event.

Operations 9

GET /api/v1/events List events #
POST /api/v1/events Create event #
GET /api/v1/events/{eventId} Get event #
PATCH /api/v1/events/{eventId} Update an event #
POST /api/v1/events/deleteSpam Delete spam events #
POST /api/v1/events/updateMany Update many events #
POST /api/v1/events/moveToTrash Delete events #
GET /api/v1/tickets/{ticketId}/events List events by ticket #
POST /api/v1/events/emptySpam Empty spam events #

Documentation

Specifications

Code Examples

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/zoho-event-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

zoho-event-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Helpcenter Event API
  version: 1.0.0
tags:
- name: Event
paths:
  /api/v1/events:
    get:
      tags:
      - Event
      summary: List events
      description: This API lists a particular number of events, based on the limit specified.
      operationId: getEvents
      parameters:
      - name: include
        in: query
        required: false
        style: simple
        explode: true
        schema:
          type:
          - 'null'
          - array
          items:
            type:
            - string
            - 'null'
            enum:
            - contacts
            - tickets
            - assignee
            - teams
            maxLength: 100
            minLength: 0
          uniqueItems: true
      - $ref: '#/components/parameters/departmentId'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/from'
      - name: sortBy
        in: query
        required: false
        style: form
        explode: true
        schema:
          type:
          - string
          - 'null'
          enum:
          - startTime
          - createdTime
          maxLength: 100
          minLength: 0
      - $ref: ./Common.json#/components/parameters/orgId
      responses:
        '204':
          $ref: ./Common.json#/components/responses/emptyResponse
        '200':
          $ref: '#/components/responses/getEventsListResponse'
      security:
      - iam-oauth2-schema:
        - Desk.activities.events.READ
        - Desk.events.READ
      x-audience:
      - external-public
    post:
      tags:
      - Event
      summary: Create event
      description: This API adds an event entry to your help desk portal.
      operationId: createEvent
      parameters:
      - $ref: ./Common.json#/components/parameters/orgId
      requestBody:
        $ref: '#/components/requestBodies/eventjson'
      responses:
        '422':
          $ref: ./Common.json#/components/responses/invalidDataErrorResponse
        '200':
          $ref: '#/components/responses/eventResponse'
      security:
      - iam-oauth2-schema:
        - Desk.activities.events.CREATE
        - Desk.events.CREATE
      x-audience:
      - external-public
  /api/v1/events/{eventId}:
    get:
      tags:
      - Event
      summary: Get event
      description: This API fetches the details of an event.
      operationId: getEvent
      parameters:
      - name: include
        in: query
        description: 'Allowed values are : @contacts@, @assignee@,@tickets@,@teams@,@integInfo@,@creator@.'
        required: false
        style: simple
        explode: true
        schema:
          type:
          - 'null'
          - array
          description: 'Allowed values are : @contacts@, @assignee@,@tickets@,@teams@,@integInfo@,@creator@.'
          items:
            type:
            - string
            - 'null'
            enum:
            - contacts
            - tickets
            - assignee
            - teams
            maxLength: 100
            minLength: 0
          uniqueItems: true
      - $ref: '#/components/parameters/eventId'
      - $ref: ./Common.json#/components/parameters/orgId
      responses:
        '200':
          $ref: '#/components/responses/eventResponse'
      security:
      - iam-oauth2-schema:
        - Desk.activities.events.READ
        - Desk.events.READ
      x-audience:
      - external-public
    patch:
      tags:
      - Event
      operationId: updateEvent
      summary: Update an event
      description: This API updates the details of an event.
      parameters:
      - $ref: '#/components/parameters/eventId'
      - $ref: ./Common.json#/components/parameters/orgId
      requestBody:
        $ref: '#/components/requestBodies/updateEvent_eventjson'
      responses:
        '200':
          $ref: '#/components/responses/eventResponse'
        '422':
          $ref: ./Common.json#/components/responses/invalidDataErrorResponse
      security:
      - iam-oauth2-schema:
        - Desk.activities.events.UPDATE
        - Desk.events.UPDATE
      x-audience:
      - external-public
  /api/v1/events/deleteSpam:
    post:
      tags:
      - Event
      summary: Delete spam events
      description: This API deletes the given spam events
      operationId: deleteSpamEvents
      parameters:
      - $ref: ./Common.json#/components/parameters/orgId
      requestBody:
        $ref: '#/components/requestBodies/spamDeleteJSON'
      responses:
        '422':
          $ref: ./Common.json#/components/responses/invalidDataErrorResponse
        '200':
          $ref: ./MassActionResponse.json#/components/responses/massActionListResponse
      security:
      - iam-oauth2-schema:
        - Desk.activities.events.DELETE
      x-audience:
      - external-public
  /api/v1/events/updateMany:
    post:
      tags:
      - Event
      summary: Update many events
      description: This API updates multiple events at once.
      operationId: bulkUpdateEvents
      parameters:
      - $ref: ./Common.json#/components/parameters/orgId
      requestBody:
        $ref: '#/components/requestBodies/event_massupdate'
      responses:
        '422':
          $ref: ./Common.json#/components/responses/invalidDataErrorResponse
        '200':
          $ref: ./CommonMassActionResponse.json#/components/responses/massActionListView
      security:
      - iam-oauth2-schema:
        - Desk.activities.events.UPDATE
        - Desk.events.UPDATE
      x-audience:
      - external-public
  /api/v1/events/moveToTrash:
    post:
      tags:
      - Event
      summary: Delete events
      description: This API moves event entries to the Recycle Bin of your help desk portal.
      operationId: deleteEvent
      parameters:
      - $ref: ./Common.json#/components/parameters/orgId
      requestBody:
        $ref: '#/components/requestBodies/trashJson'
      responses:
        '422':
          $ref: ./Common.json#/components/responses/invalidDataErrorResponse
        '204':
          $ref: ./Common.json#/components/responses/emptyResponse
      security:
      - iam-oauth2-schema:
        - Desk.activities.events.DELETE
        - Desk.events.DELETE
      x-audience:
      - external-public
  /api/v1/tickets/{ticketId}/events:
    get:
      tags:
      - Event
      summary: List events by ticket
      description: This API lists a particular number of events associated with a ticket, based on the limit specified.
      operationId: getEventsByTicket
      parameters:
      - name: include
        in: query
        description: 'Allowed values are : contacts, assignee,tickets,teams,integInfo.'
        required: false
        style: simple
        explode: true
        schema:
          type:
          - 'null'
          - array
          description: 'Allowed values are : contacts, assignee,tickets,teams,integInfo.'
          items:
            type:
            - string
            - 'null'
            enum:
            - contacts
            - tickets
            - assignee
            - teams
            maxLength: 100
            minLength: 0
          uniqueItems: true
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/from'
      - name: sortBy
        in: query
        description: 'Sort by a specific attribute: @startTime@ or @createdTime@.The default sorting order is ascending. A @-@ prefix denotes descending order of sorting.'
        required: false
        style: form
        explode: true
        schema:
          type:
          - string
          - 'null'
          description: 'Sort by a specific attribute: @startTime@ or @createdTime@.The default sorting order is ascending. A @-@ prefix denotes descending order of sorting.'
          enum:
          - startTime
          - createdTime
          maxLength: 100
          minLength: 0
      - $ref: '#/components/parameters/isSpam'
      - $ref: '#/components/parameters/isCompleted'
      - name: ticketId
        in: path
        required: true
        style: simple
        explode: false
        schema:
          type:
          - string
          - 'null'
          - integer
          format: int64
          pattern: ([0-9]+)
      - $ref: ./Common.json#/components/parameters/orgId
      responses:
        '204':
          $ref: ./Common.json#/components/responses/emptyResponse
        '200':
          $ref: '#/components/responses/eventListViewArray'
      security:
      - iam-oauth2-schema:
        - Desk.activities.events.READ
        - Desk.events.READ
        - Desk.tickets.READ
      x-audience:
      - external-public
  /api/v1/events/emptySpam:
    post:
      tags:
      - Event
      summary: Empty spam events
      description: This API deletes all spam events.
      operationId: deleteAllSpamEvents
      parameters:
      - $ref: ./Common.json#/components/parameters/orgId
      requestBody:
        $ref: '#/components/requestBodies/emptyEventsSpamResponse'
      responses:
        '422':
          $ref: ./Common.json#/components/responses/multipleUnprocessEntityResponse
        '202':
          $ref: ./Common.json#/components/responses/emptyResponse
      security:
      - iam-oauth2-schema:
        - Desk.activities.events.DELETE
      x-audience:
      - external-public
components:
  parameters:
    departmentId:
      name: departmentId
      in: query
      description: ID of the department from which the event count must be fetched
      required: true
      style: form
      explode: true
      schema:
        type:
        - string
        - 'null'
        - integer
        format: int64
        description: ID of the department from which the event count must be fetched
        pattern: ([0-9]+)
    limit:
      name: limit
      in: query
      description: Number of events to list
      required: false
      style: form
      explode: true
      schema:
        type:
        - string
        - 'null'
        - integer
        format: int32
        description: Number of events to list
        maximum: 99
        minimum: 1
        pattern: ([0-9]+)
    eventId:
      name: eventId
      in: path
      required: true
      style: simple
      explode: false
      schema:
        type:
        - string
        - 'null'
        - integer
        format: int64
        pattern: ([0-9]+)
    isSpam:
      name: isSpam
      in: query
      description: Key that denotes whether to fetch spam events or not
      required: false
      style: form
      explode: true
      schema:
        type:
        - boolean
        - 'null'
        description: Key that denotes whether to fetch spam events or not
    isCompleted:
      name: isCompleted
      in: query
      description: Key that denotes if the event was completed or not
      required: false
      style: form
      explode: true
      schema:
        type:
        - boolean
        - 'null'
        description: Key that denotes if the event was completed or not
    from:
      name: from
      in: query
      description: Index number, starting from which the events must be listed
      required: false
      style: form
      explode: true
      schema:
        type:
        - string
        - 'null'
        - integer
        format: int32
        description: Index number, starting from which the events must be listed
        pattern: ([0-9]+)
  schemas:
    absoluteReminder:
      type:
      - 'null'
      - object
      additionalProperties: false
      properties:
        alertType:
          type:
          - 'null'
          - array
          items:
            type:
            - string
            - 'null'
            enum:
            - EMAIL
            - POPUP
            - SMS
            maxLength: 100
            minLength: 0
          uniqueItems: true
        reminderType:
          type:
          - string
          - 'null'
          enum:
          - ABSOLUTE
          maxLength: 100
          minLength: 0
        reminderTime:
          type:
          - string
          - 'null'
          maxLength: 100
          minLength: 0
          pattern: (((19|20)\d\d)[-/.]{1}(0?[1-9]|1[012])[-/.]{1}(0?[1-9]|[12][0-9]|3[01])(T)([01]?[0-9]|2[0-3]):[0-5]?[0-9]:[0-5]?[0-9]([/.][\d]{0,3})?(Z))
      required:
      - alertType
      - reminderTime
      - reminderType
    contactJson:
      type:
      - 'null'
      - object
      additionalProperties: false
      properties:
        firstName:
          type:
          - string
          - 'null'
          maxLength: 40
          minLength: 0
        lastName:
          type:
          - string
          - 'null'
          maxLength: 200
          minLength: 0
        accountId:
          type:
          - string
          - 'null'
          - integer
          format: int64
          pattern: ([0-9]+)
        phone:
          type:
          - string
          - 'null'
          maxLength: 50
          minLength: 0
          pattern: '[0-9a-zA-Z_\+\-\.\(\)\$@\?\,\:\''\/\!\P{InBasicLatin}\s]+'
        mobile:
          type:
          - string
          - 'null'
          maxLength: 50
          minLength: 0
          pattern: '[0-9a-zA-Z_\+\-\.\(\)\$@\?\,\:\''\/\!\P{InBasicLatin}\s]+'
        id:
          type:
          - string
          - 'null'
          - integer
          format: int64
          pattern: ([0-9]+)
        isSpam:
          type:
          - boolean
          - 'null'
        email:
          type:
          - string
          - 'null'
          maxLength: 255
          minLength: 0
          pattern: ^[a-zA-Z0-9\_]([a-zA-Z0-9\_\+\-\.\'\&\~]*)@(?=.{4,256}$)(([a-zA-Z0-9]+)(([\-\_]*[a-zA-Z0-9])*)[\.])+[a-zA-Z]{2,22}$
      required:
      - accountId
      - email
      - firstName
      - id
      - isSpam
      - lastName
      - mobile
      - phone
    commonJson:
      type:
      - 'null'
      - object
      additionalProperties: false
      properties:
        contactId:
          type:
          - string
          - 'null'
          - integer
          format: int64
          description: ID of the contact associated with the event
          pattern: ([0-9]+)
        subject:
          type:
          - string
          - 'null'
          description: Subject of the event
          maxLength: 300
          minLength: 0
        departmentId:
          type:
          - string
          - 'null'
          - integer
          format: int64
          description: ID of the department associated with the event and ticket
          pattern: ([0-9]+)
        startTime:
          type:
          - string
          - 'null'
          description: Time when the event started. The value of this key must be recorded in the ISO date format of yyyy-MM-ddThh:mm:ss.SSSZ.
          maxLength: 100
          minLength: 0
          pattern: (((19|20)\d\d)[-/.]{1}(0?[1-9]|1[012])[-/.]{1}(0?[1-9]|[12][0-9]|3[01])(T)([01]?[0-9]|2[0-3]):[0-5]?[0-9]:[0-5]?[0-9]([/.][\d]{0,3})?(Z))
        ownerId:
          type:
          - string
          - 'null'
          - integer
          format: int64
          description: ID of the user to whom the event is assigned
          pattern: ([0-9]+)
        priority:
          type:
          - string
          - 'null'
          description: Priority of the event
          x-dynamic-enum: true
        category:
          type:
          - string
          - 'null'
          description: Category of the event
          maxLength: 120
          minLength: 0
        ticketId:
          type:
          - string
          - 'null'
          - integer
          format: int64
          description: ID of the ticket associated with the event
          pattern: ([0-9]+)
        status:
          type:
          - string
          - 'null'
          description: Completion status of the event
          x-dynamic-enum: true
      required:
      - category
      - contactId
      - departmentId
      - ownerId
      - priority
      - startTime
      - status
      - subject
      - ticketId
    relativeReminder:
      type:
      - 'null'
      - object
      additionalProperties: false
      properties:
        relativeReminderInMin:
          type:
          - string
          - 'null'
          - integer
          format: int32
          pattern: ([0-9]+)
        alertType:
          type:
          - 'null'
          - array
          items:
            type:
            - string
            - 'null'
            enum:
            - EMAIL
            - POPUP
            - SMS
            maxLength: 100
            minLength: 0
          uniqueItems: true
        reminderType:
          type:
          - string
          - 'null'
          enum:
          - RELATIVE
          maxLength: 100
          minLength: 0
      required:
      - alertType
      - relativeReminderInMin
      - reminderType
    reminderArray:
      type:
      - 'null'
      - array
      items:
        oneOf:
        - $ref: '#/components/schemas/relativeReminder'
        - $ref: '#/components/schemas/absoluteReminder'
    long_array:
      type:
      - 'null'
      - array
      items:
        type:
        - string
        - 'null'
        - integer
        format: int64
        pattern: ([0-9]+)
    data:
      type:
      - 'null'
      - array
      items:
        $ref: '#/components/schemas/eventListViewJson'
    eventListViewJson:
      additionalProperties: false
      allOf:
      - $ref: '#/components/schemas/commonJson'
      - type:
        - 'null'
        - object
        properties:
          modifiedTime:
            type:
            - string
            - 'null'
            maxLength: 100
            minLength: 0
            pattern: (((19|20)\d\d)[-/.]{1}(0?[1-9]|1[012])[-/.]{1}(0?[1-9]|[12][0-9]|3[01])(T)([01]?[0-9]|2[0-3]):[0-5]?[0-9]:[0-5]?[0-9]([/.][\d]{0,3})?(Z))
          statusType:
            type:
            - string
            - 'null'
            enum:
            - Open
            - Closed
            maxLength: 100
            minLength: 0
          completedTime:
            type:
            - string
            - 'null'
            maxLength: 100
            minLength: 0
            pattern: (((19|20)\d\d)[-/.]{1}(0?[1-9]|1[012])[-/.]{1}(0?[1-9]|[12][0-9]|3[01])(T)([01]?[0-9]|2[0-3]):[0-5]?[0-9]:[0-5]?[0-9]([/.][\d]{0,3})?(Z))
          creatorId:
            type:
            - string
            - 'null'
            - integer
            format: int64
            pattern: ([0-9]+)
          activityTime:
            type:
            - string
            - 'null'
            - integer
            format: int64
            pattern: ([0-9]+)
          layoutId:
            type:
            - string
            - 'null'
            - integer
            format: int64
            pattern: ([0-9]+)
          isTrashed:
            type:
            - boolean
            - 'null'
          isCommented:
            type:
            - boolean
            - 'null'
          webUrl:
            type:
            - string
            - 'null'
            maxLength: 500
            minLength: 0
            pattern: (^(ht|f)tp(s?)\://[-.\w]*(/?)([a-zA-Z0-9\-\.\?\,\:\'/\\+=&%\$#_@]*)?$)
          createdTime:
            type:
            - string
            - 'null'
            maxLength: 100
            minLength: 0
            pattern: (((19|20)\d\d)[-/.]{1}(0?[1-9]|1[012])[-/.]{1}(0?[1-9]|[12][0-9]|3[01])(T)([01]?[0-9]|2[0-3]):[0-5]?[0-9]:[0-5]?[0-9]([/.][\d]{0,3})?(Z))
          modifiedBy:
            $ref: '#/components/schemas/assignee'
          id:
            type:
            - string
            - 'null'
            - integer
            format: int64
            pattern: ([0-9]+)
          isSpam:
            type:
            - boolean
            - 'null'
            description: Key that denotes whether to fetch spam events or not
        required:
        - activityTime
        - completedTime
        - createdTime
        - creatorId
        - id
        - isCommented
        - isSpam
        - isTrashed
        - isTrashed
        - layoutId
        - modifiedBy
        - modifiedTime
        - statusType
        - webUrl
    assignee:
      type:
      - 'null'
      - object
      additionalProperties: false
      properties:
        photoURL:
          type:
          - string
          - 'null'
          maxLength: 100
          minLength: 0
          pattern: ([0-9a-zA-Z_\-\.\$@\?\,\:\'\/\!\P{InBasicLatin}\s])+
        firstName:
          type:
          - string
          - 'null'
          maxLength: 50
          minLength: 0
        lastName:
          type:
          - string
          - 'null'
          maxLength: 50
          minLength: 0
        emailId:
          type:
          - string
          - 'null'
          maxLength: 100
          minLength: 0
          pattern: ^[a-zA-Z0-9\_]([a-zA-Z0-9\_\+\-\.\'&]*)@(?=.{4,256}$)(([a-zA-Z0-9]+)(([\-\_]*[a-zA-Z0-9])*)[\.])+[a-zA-Z]{2,22}$
        id:
          type:
          - string
          - 'null'
          - integer
          format: int64
          pattern: ([0-9]+)
      required:
      - emailId
      - firstName
      - id
      - lastName
      - photoURL
  requestBodies:
    event_massupdate:
      content:
        application/json:
          schema:
            type:
            - 'null'
            - object
            additionalProperties: false
            properties:
              isCustomField:
                type:
                - boolean
                - 'null'
              fieldName:
                type:
                - string
                - 'null'
                x-dynamic-enum: true
              ids:
                $ref: '#/components/schemas/long_array'
              fieldValue:
                type:
                - string
                - 'null'
                maxLength: 100
                minLength: 0
                pattern: ([0-9a-zA-Z_\-\.\$@\?\,\:\'\/\!\P{InBasicLatin}\s])+
            required:
            - fieldName
            - ids
          examples:
            Valid requestBody Definitions:
              value:
                fieldName: mobile
                isCustomField: false
                ids:
                - '1892000000093303'
                - '1892000000085009'
                - '1892000000050003'
                fieldValue: '8508569875'
    spamDeleteJSON:
      content:
        application/json:
          schema:
            type:
            - 'null'
            - object
            additionalProperties: false
            properties:
              eventIds:
                type:
                - 'null'
                - array
                items:
                  type:
                  - string
                  - 'null'
                  - integer
                  format: int64
                  pattern: ([0-9]+)
                uniqueItems: false
            required:
            - eventIds
          examples:
            Valid requestBody Definitions:
              value:
                eventIds:
                - '1892000000001297'
                - '1892000000001358'
    eventjson:
      content:
        application/json:
          schema:
            additionalProperties: false
            allOf:
            - $ref: '#/components/schemas/commonJson'
            - type:
              - 'null'
              - object
              properties:
                duration:
                  type:
                  - string
                  - 'null'
                  - integer
                  format: int32
                  description: Duration of the event in seconds
                  pattern: ([0-9]+)
                cf:
                  type:
                  - 'null'
                  - object
                  additionalProperties: false
                  patternProperties:
                    ([0-9a-zA-Z_\-\.\$@\?\,\:\'\/\!\P{InBasicLatin}\s])+:
                      type:
                      - string
                      - 'null'
                      maxLength: 100
                      minLength: 0
                      pattern: ([0-9a-zA-Z_\-\.\$@\?\,\:\'\/\!\P{InBasicLatin}\s])+
                reminder:
                  $ref: '#/components/schemas/reminderArray'
                customFields:
                  type:
                  - 'null'
                  - object
                  additionalProperties: false
                  patternProperties:
                    ([0-9a-zA-Z_\-\.\$@\?\,\:\'\/\!\P{InBasicLatin}\s])+:
                      type:
                      - string
                      - 'null'
                      maxLength: 100
                      minLength: 0
                      pattern: ([0-9a-zA-Z_\-\.\$@\?\,\:\'\/\!\P{InBasicLatin}\s])+
                category:
                  type:
                  - string
                  - 'null'
                  description: Category of the event
                  maxLength: 120
                  minLength: 0
            - type: object
              required:
              - category
              - contactId
              - departmentId
              - duration
              - startTime
              - subject
          examples:
            Valid requestBody Definitions:
              value:
                duration: '40'
                contactId: '3000000001234'
                subject: Dubai startup meet
                departmentId: '3000000007043'
                startTime: 1468484846000
                priority: High
                category: Meeting
                ticketId: '3000000008753'
                status: In Progress
    updateEvent_eventjson:
      content:
        application/json:
          schema:
            additionalProperties: false
            allOf:
            - $ref: '#/components/schemas/commonJson'
            - type:
              - 'null'
              - object
              properties:
                duration:
                  type:
                  - string
                  - 'null'
                  - integer
                  format: int32
                  description: Duration of the event in seconds
                  pattern: ([0-9]+)
                cf:
                  type:
                  - 'null'
                  - object
                  additionalProperties: false
                  patternProperties:
                    ([0-9a-zA-Z_\-\.\$@\?\,\:\'\/\!\P{InBasicLatin}\s])+:
                      type:
                      - string
                      - 'null'
                      maxLength: 100
                      minLength: 0
                      pattern: ([0-9a-zA-Z_\-\.\$@\?\,\:\'\/\!\P{InBasicLatin}\s])+
                reminder:
                  $ref: '#/components/schemas/reminderArray'
                customFields:
                  type:
                  - 'null'
                  - object
                  additionalProperties: false
                  patternProperties:
                    ([0-9a-zA-Z_\-\.\$@\?\,\:\'\/\!\P{InBasicLatin}\s])+:
                      type:
                      - string
                      - 'null'
                      maxLength: 100
                      minLength: 0
                      pattern: ([0-9a-zA-Z_\-\.\$@\?\,\:\'\/\!\P{InBasicLatin}\s])+
                category:
                  type:
                  - string
                  - 'null'
                  description: Category of the event
                  maxLength: 120
                  minLength: 0
            - type: object
          examples:
            Valid requestBody Definitions:
              value: null
    emptyEventsSpamResponse:
      content:
        application/json:
          schema:
            type:
            - 'null'
            - object
            additionalProperties: false
            properties:
              departmentId:
                type:
                - string
                - 'null'
                - integer
                format: int64
                description: ID of the department to which the activities belong
                pattern: ([0-9]+)
            required:
            - departmentId
          examples:
            Valid requestBody Definitions:
              value:
                departmentId: '4000000025121'
    trashJson:
      content:
        application/json:
          schema:
            type:
            - 'null'
            - object
            additionalProperties: false
            properties:
              entityIds:
                type:
                - 'null'
                - array
                items:
                  type:
                  - string
                  - 'null'
                  - integer
                  format: int64
                  pattern: ([0-9]+)
                uniqueItems: false
            required:
            - entityIds
          examples:
            Valid requestBody Definitions:
              value:
                entityIds:
                - '3000000053002'
  responses:
    eventListViewArray:
      description: eventListViewArray template definitions
      content:
        application/json:
          schema:
            allOf:
            - type: object
              properties:
                data:
                  type: array
                  items:
                    type: object
                    properties:
                      ticket:
                        type:
                        - 'null'
                        - object
                        additionalProperties: false
                        maxProperties: 13
                        minProperties: 13
                        properties:
                          ticketNumber:
                            type:
                            - string
                            - 'null'
                            - integer
                            format: int32
                            pattern: ([0-9]+)
                          subject:
                            type:
                            - string
                            - 'null'
                            maxLength: 1000
                            minLength: 0
                          isArchived:
                            type:
                            - boolean
                            - 'null'
                          dueDate:
                            type:
                            - string
                            - 'null'
                            maxLength: 100
                            minLength: 0
                            pattern: (((19|20)\d\d)[-/.]{1}(0?[1-9]|1[012])[-/.]{1}(0?[1-9]|[12][0-9]|3[01])(T)([01]?[0-9]|2[0-3]):[0-5]?[0-9]:[0-5]?[0-9]([/.][\d]{0,3})?(Z))
                          channel:
                            type:
                            - string
                            - 'null'
                            x-dynamic-enum: true
                          closedTime:
                            type:
                            - string
                            - 'null'
                            maxLength: 100
                            minLength: 0
                            pattern: (((19|20)\d\d)[-/.]{1}(0?[1-9]|1[012])[-/.]{1}(0?[1-9]|[12][0-9]|3[01])(T)([01]?[0-9]|2[0-3]):[0-5]?[0-9]:[0-5]?[0-9]([/.][\d]{0,3})?(Z))
                          phone:
                            type:
                            - string
                            - 'null'
                            maxLength: 120
                            minLength: 0
                            pattern: '[0-9a-zA-Z_\+\-\.\(\)\$@\?\,\:\''\/\!\P{InBasicLatin}\s]+'
                          teamId:
                            type:
                            - string
                            - 'null'
                            - integer
                            format: int64
                            pattern: ([0-9]+)
                          createdTime:
                            type:
                            - string
                            - 'null'
                            maxLength: 100
                            minLength: 0
                            pattern: (((19|20)\d\d)[-/.]{1}(0?[1-9]|1[012])[-/.]{1}(0?[1-9]|[12][0-9]|3[01])(T)([01]?[0-9]|2[0-3]):[0-5]?[0-9]:[0-5]?[0-9]([/.][\d]{0,3})?(Z))
                          id:
                            type:
                            - string
                            - 'null'
                            - integer
                            format: int64
                            pattern: ([0-9]+)
                          assignee:
                            type:
                            - 'null'
                            - object
                            additionalProperties: false
                            maxProperties: 4
                 

# --- truncated at 32 KB (64 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/zoho/refs/heads/main/openapi/zoho-event-api-openapi.yml