Zoho Call API

The Call API from Zoho — 8 operation(s) for call.

Documentation

Specifications

Code Examples

Other Resources

OpenAPI Specification

zoho-call-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Helpcenter Call API
  version: 1.0.0
tags:
- name: Call
paths:
  /api/v1/calls/updateMany:
    post:
      tags:
      - Call
      summary: Update many calls
      description: This API updates multiple calls at once.
      operationId: bulkUpdateCalls
      parameters:
      - $ref: ./Common.json#/components/parameters/orgId
      requestBody:
        $ref: '#/components/requestBodies/call_massupdate'
      responses:
        '422':
          $ref: ./Common.json#/components/responses/invalidDataErrorResponse
        '200':
          $ref: ./CommonMassActionResponse.json#/components/responses/massActionListView
      security:
      - iam-oauth2-schema:
        - Desk.activities.calls.UPDATE
        - Desk.calls.UPDATE
      x-audience:
      - external-public
  /api/v1/calls/{callId}:
    get:
      tags:
      - Call
      summary: Get call
      description: This API fetches the details of a call.
      operationId: getCall
      parameters:
      - name: include
        in: query
        description: 'Additional information related to the call. Values allowed are:  @contacts@, @assignee@,@tickets@,@teams@,@livecalls@,@creator@.'
        required: false
        style: simple
        explode: true
        schema:
          type:
          - 'null'
          - array
          description: 'Additional information related to the call. Values allowed are:  @contacts@, @assignee@,@tickets@,@teams@,@livecalls@,@creator@.'
          items:
            type:
            - string
            - 'null'
            enum:
            - contacts
            - tickets
            - assignee
            - teams
            - livecalls
            maxLength: 100
            minLength: 0
          uniqueItems: true
      - $ref: '#/components/parameters/callId'
      - $ref: ./Common.json#/components/parameters/orgId
      responses:
        '200':
          $ref: '#/components/responses/callResponse'
      security:
      - iam-oauth2-schema:
        - Desk.activities.calls.READ
        - Desk.calls.READ
      x-audience:
      - external-public
    patch:
      tags:
      - Call
      operationId: updateCall
      summary: Update call
      description: This API updates the details of a call.
      parameters:
      - $ref: '#/components/parameters/callId'
      - $ref: ./Common.json#/components/parameters/orgId
      requestBody:
        $ref: '#/components/requestBodies/calljson'
      responses:
        '200':
          $ref: '#/components/responses/callResponse'
        '422':
          $ref: ./Common.json#/components/responses/invalidDataErrorResponse
      security:
      - iam-oauth2-schema:
        - Desk.activities.calls.UPDATE
        - Desk.calls.UPDATE
      x-audience:
      - external-public
  /api/v1/calls/moveToTrash:
    post:
      tags:
      - Call
      summary: Delete calls
      description: This API moves call entries to the Recycle Bin of your help desk portal.
      operationId: deleteCall
      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.calls.DELETE
        - Desk.calls.DELETE
      x-audience:
      - external-public
  /api/v1/calls/{callId}/clearLiveCall:
    post:
      tags:
      - Call
      summary: Clear live call mapping from an activity
      description: This API clears the live call mapping from an activity
      operationId: clearLiveCallMapping
      parameters:
      - $ref: '#/components/parameters/callId'
      - $ref: ./Common.json#/components/parameters/orgId
      responses:
        '422':
          $ref: ./Common.json#/components/responses/invalidDataErrorResponse
        '204':
          $ref: ./Common.json#/components/responses/emptyResponse
      security:
      - iam-oauth2-schema:
        - Desk.calls.UPDATE
      x-audience:
      - external-public
  /api/v1/calls:
    get:
      tags:
      - Call
      summary: ' List calls'
      description: This API fetches a particular number of calls, based on the limit specified.
      operationId: getCalls
      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
      - name: startTime
        in: query
        required: false
        style: simple
        explode: true
        schema:
          type:
          - 'null'
          - array
          items:
            type:
            - string
            - 'null'
            enum:
            - Overdue
            - Today
            - Tomorrow
            - CurrentWeek
            - CurrentMonth
            maxLength: 100
            minLength: 0
          uniqueItems: false
      - name: departmentIds
        in: query
        required: false
        style: simple
        explode: true
        schema:
          type:
          - 'null'
          - array
          items:
            type:
            - string
            - 'null'
            - integer
            format: int64
            pattern: ([0-9]+)
          uniqueItems: false
      - $ref: '#/components/parameters/isCompleted'
      - $ref: ./Common.json#/components/parameters/orgId
      responses:
        '204':
          $ref: ./Common.json#/components/responses/emptyResponse
        '200':
          $ref: '#/components/responses/getCallsListResponse'
      security:
      - iam-oauth2-schema:
        - Desk.activities.calls.READ
        - Desk.calls.READ
      x-audience:
      - external-public
    post:
      tags:
      - Call
      summary: Create call
      description: This API adds a call entry to your help desk portal.
      operationId: createCall
      parameters:
      - $ref: ./Common.json#/components/parameters/orgId
      requestBody:
        $ref: '#/components/requestBodies/addCall_calljson'
      responses:
        '422':
          $ref: ./Common.json#/components/responses/invalidDataErrorResponse
        '200':
          $ref: '#/components/responses/callResponse'
      security:
      - iam-oauth2-schema:
        - Desk.activities.calls.CREATE
        - Desk.calls.CREATE
      x-audience:
      - external-public
  /api/v1/calls/deleteSpam:
    post:
      tags:
      - Call
      summary: Delete spam calls
      description: This API deletes the given spam calls
      operationId: deleteSpamCalls
      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.calls.DELETE
      x-audience:
      - external-public
  /api/v1/calls/emptySpam:
    post:
      tags:
      - Call
      summary: Empty spam calls
      description: This API deletes all spam calls.
      operationId: deleteAllSpamCalls
      parameters:
      - $ref: ./Common.json#/components/parameters/orgId
      requestBody:
        $ref: '#/components/requestBodies/emptyCallsSpamResponse'
      responses:
        '422':
          $ref: ./Common.json#/components/responses/multipleUnprocessEntityResponse
        '202':
          $ref: ./Common.json#/components/responses/emptyResponse
      security:
      - iam-oauth2-schema:
        - Desk.activities.calls.DELETE
      x-audience:
      - external-public
  /api/v1/tickets/{ticketId}/calls:
    get:
      tags:
      - Call
      summary: List calls by ticket
      description: This API lists a particular number of calls associated with a ticket, based on the limit specified.
      operationId: getCallsByTicket
      parameters:
      - name: include
        in: query
        description: 'Allowed values are : @contacts@, @assignee@,@tickets@,@teams@.'
        required: false
        style: simple
        explode: true
        schema:
          type:
          - 'null'
          - array
          description: 'Allowed values are : @contacts@, @assignee@,@tickets@,@teams@.'
          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/callListViewArray'
      security:
      - iam-oauth2-schema:
        - Desk.activities.calls.READ
        - Desk.calls.READ
        - Desk.tickets.READ
      x-audience:
      - external-public
components:
  parameters:
    from:
      name: from
      in: query
      description: Index number, starting from which the calls must be listed
      required: false
      style: form
      explode: true
      schema:
        type:
        - string
        - 'null'
        - integer
        format: int32
        description: Index number, starting from which the calls must be listed
        pattern: ([0-9]+)
    departmentId:
      name: departmentId
      in: query
      description: ID of the department from which the calls 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 calls count must be fetched
        pattern: ([0-9]+)
    isCompleted:
      name: isCompleted
      in: query
      description: Key that denotes if the call was completed or not
      required: false
      style: form
      explode: true
      schema:
        type:
        - boolean
        - 'null'
        description: Key that denotes if the call was completed or not
    limit:
      name: limit
      in: query
      description: Number of calls to list
      required: false
      style: form
      explode: true
      schema:
        type:
        - string
        - 'null'
        - integer
        format: int32
        description: Number of calls to list
        maximum: 99
        minimum: 1
        pattern: ([0-9]+)
    callId:
      name: callId
      in: path
      description: ID of the live call
      required: true
      style: simple
      explode: false
      schema:
        type:
        - string
        - 'null'
        - integer
        format: int64
        description: ID of the live call
        pattern: ([0-9]+)
    isSpam:
      name: isSpam
      in: query
      description: Key that denotes whether to fetch spam calls or not
      required: false
      style: form
      explode: true
      schema:
        type:
        - boolean
        - 'null'
        description: Key that denotes whether to fetch spam calls or not
  requestBodies:
    calljson:
      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 call 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])+
                ticketId:
                  type:
                  - string
                  - 'null'
                  - integer
                  format: int64
                  description: ID of the ticket associated with the call
                  pattern: ([0-9]+)
                direction:
                  type:
                  - string
                  - 'null'
                  description: 'Direction of the call: inbound or outbound'
                  enum:
                  - outbound
                  - inbound
                  maxLength: 100
                  minLength: 0
            - type: object
          examples:
            Valid requestBody Definitions:
              value: null
    emptyCallsSpamResponse:
      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'
    spamDeleteJSON:
      content:
        application/json:
          schema:
            type:
            - 'null'
            - object
            additionalProperties: false
            properties:
              callIds:
                type:
                - 'null'
                - array
                items:
                  type:
                  - string
                  - 'null'
                  - integer
                  format: int64
                  pattern: ([0-9]+)
                uniqueItems: false
            required:
            - callIds
          examples:
            Valid requestBody Definitions:
              value:
                callIds:
                - '1892000000007107'
                - '1892000000001208'
    call_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'
    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'
    addCall_calljson:
      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 call in seconds
                  pattern: ([0-9]+)
                cf:
                  type:
                  - 'null'
                  - object
                  additionalProperties: false
                  patternProperties:
                    ([0-9a-zA-Z_\-\.\$@\?\,\:\'\/\!\P{InBasicLatin}\s])+:
                      type:
                      - string
                      - 'null'
                      description: Call custom fields
                      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'
                      description: Call custom fields
                      maxLength: 100
                      minLength: 0
                      pattern: ([0-9a-zA-Z_\-\.\$@\?\,\:\'\/\!\P{InBasicLatin}\s])+
                ticketId:
                  type:
                  - string
                  - 'null'
                  - integer
                  format: int64
                  description: ID of the ticket associated with the call
                  pattern: ([0-9]+)
                direction:
                  type:
                  - string
                  - 'null'
                  description: 'Direction of the call: inbound or outbound'
                  enum:
                  - outbound
                  - inbound
            - type: object
              required:
              - contactId
              - departmentId
              - direction
              - duration
              - startTime
              - status
              - subject
          examples:
            Valid requestBody Definitions:
              value:
                duration: '300'
                reminder:
                - alertType:
                  - EMAIL
                  - SMS
                  - POPUP
                  reminderType: ABSOLUTE
                  reminderTime: 1545713533000
                contactId: '1892000000088017'
                subject: New Testing Call
                departmentId: '3000000007043'
                startTime: 1469465531000
                priority: High
                ticketId: '3000000008753'
                direction: inbound
                status: In Progress
  schemas:
    commonJson:
      type:
      - 'null'
      - object
      additionalProperties: false
      properties:
        contactId:
          type:
          - string
          - 'null'
          - integer
          format: int64
          description: ID of the contact associated with the call
          pattern: ([0-9]+)
        subject:
          type:
          - string
          - 'null'
          description: Subject of the call
          maxLength: 300
          minLength: 0
        departmentId:
          type:
          - string
          - 'null'
          - integer
          format: int64
          description: ID of the department from which the activities must be fetched
          pattern: ([0-9]+)
        startTime:
          type:
          - string
          - 'null'
          description: Time when the call 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 call is assigned
          pattern: ([0-9]+)
        priority:
          type:
          - string
          - 'null'
          description: Priority of the call
          x-dynamic-enum: true
        ticketId:
          type:
          - string
          - 'null'
          - integer
          format: int64
          description: ID of the ticket associated with the call
          pattern: ([0-9]+)
        status:
          type:
          - string
          - 'null'
          description: Completion status of the call
          enum:
          - Completed
          - Scheduled
          - Missed
          - Canceled
          - In Progress
      required:
      - contactId
      - departmentId
      - ownerId
      - priority
      - startTime
      - status
      - subject
      - ticketId
    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
    long_array:
      type:
      - 'null'
      - array
      items:
        type:
        - string
        - 'null'
        - integer
        format: int64
        pattern: ([0-9]+)
    data:
      type:
      - 'null'
      - array
      items:
        $ref: '#/components/schemas/callListViewJson'
    contactJson:
      type:
      - 'null'
      - object
      additionalProperties: false
      maxProperties: 8
      minProperties: 8
      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
    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
    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
    callListViewJson:
      additionalProperties: false
      allOf:
      - $ref: '#/components/schemas/commonJson'
      - type:
        - 'null'
        - object
        properties:
          callId:
            type:
            - string
            - 'null'
            - integer
            format: int64
            pattern: ([0-9]+)
          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'
          direction:
            type:
            - string
            - 'null'
            enum:
            - outbound
            - inbound
            maxLength: 100
            minLength: 0
        required:
        - activityTime
        - callId
        - completedTime
        - createdTime
        - creatorId
        - direction
        - id
        - isCommented
        - isSpam
        - isTrashed
        - isTrashed
        - layoutId
        - modifiedBy
        - modifiedTime
        - statusType
        - webUrl
    reminderArray:
      type:
      - 'null'
      - array
      items:
        oneOf:
        - $ref: '#/components/schemas/relativeReminder'
        - $ref: '#/components/schemas/absoluteReminder'
  responses:
    callListViewArray:
      description: callListViewArray 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
                            

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