Zoho Appointments S API

The Appointments S API from Zoho — 2 operation(s) for appointments s.

Documentation

Specifications

Code Examples

Other Resources

OpenAPI Specification

zoho-appointments-s-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Helpcenter Appointments S API
  version: 1.0.0
tags:
- name: Appointments S
paths:
  /Appointments__s:
    get:
      summary: GET /Appointments__s
      description: appointment records get
      operationId: getAppointmentsS
      responses:
        '200':
          description: OK - Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetappointmentssResponse200'
        '400':
          description: Bad Request - The request cannot be processed due to invalid syntax.
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/ErrorResponseCore1604218709'
                - $ref: '#/components/schemas/ErrorResponseCore1875045219'
      security:
      - iam-oauth2-schema:
        - ZohoCRM.modules.appointments.READ
      tags:
      - Appointments S
    put:
      summary: PUT /Appointments__s
      description: appointment module records update
      operationId: putAppointmentsS
      requestBody:
        description: Request body
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PutappointmentssRequest'
      responses:
        '200':
          description: OK - Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PutappointmentssResponse200'
        '207':
          description: Multi-Status — Response contains mixed status results
          content:
            application/json:
              schema:
                type: object
                additionalProperties: false
                description: Wrapped response containing data
                properties:
                  data:
                    type: array
                    allOf:
                    - contains:
                        $ref: '#/components/schemas/Post207multistatusResponse207'
                      description: success response in data
                      minContains: 1
                    - contains:
                        $ref: '#/components/schemas/ErrorResponseCore1544688711'
                      description: error response in data
                      minContains: 1
                    description: Array of success or failure data items
                    items:
                      oneOf:
                      - $ref: '#/components/schemas/Post207multistatusResponse207'
                      - $ref: '#/components/schemas/ErrorResponseCore1544688711'
                    maxItems: 200
                    minItems: 2
                required:
                - data
        '400':
          description: Bad Request - The request cannot be processed due to invalid syntax.
          content:
            application/json:
              schema:
                oneOf:
                - type: object
                  additionalProperties: false
                  description: Wrapped error response with data
                  properties:
                    data:
                      type: array
                      description: Array of error objects
                      items:
                        oneOf:
                        - $ref: '#/components/schemas/ErrorResponseCore1720623915'
                        - $ref: '#/components/schemas/ErrorResponseCore622374562'
                        - $ref: '#/components/schemas/ErrorResponseCore261228299'
                        - $ref: '#/components/schemas/ErrorResponseCore1207168962'
                        - $ref: '#/components/schemas/ErrorResponseCore1818284114'
                        - $ref: '#/components/schemas/ErrorResponseCore1277582131'
                        - $ref: '#/components/schemas/ErrorResponseCore1593946428'
                        - $ref: '#/components/schemas/ErrorResponseCore2114620743'
                        - $ref: '#/components/schemas/ErrorResponseCore1332683101'
                        - $ref: '#/components/schemas/ErrorResponseCore1090893661'
                        - $ref: '#/components/schemas/ErrorResponseCore653152835'
                        - $ref: '#/components/schemas/ErrorResponseCore899638570'
                        - $ref: '#/components/schemas/ErrorResponseCore496791912'
                        - $ref: '#/components/schemas/ErrorResponseCore201487910'
                        - $ref: '#/components/schemas/ErrorResponseCore55175210'
                      maxItems: 25
                  required:
                  - data
                - $ref: '#/components/schemas/ErrorResponseCore1009543207'
      security:
      - iam-oauth2-schema:
        - ZohoCRM.modules.appointments.UPDATE
      tags:
      - Appointments S
    post:
      summary: POST /Appointments__s
      description: appointment module records creation
      operationId: postAppointmentsS
      requestBody:
        description: Request body
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostappointmentssRequest'
      responses:
        '200':
          description: OK - Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostappointmentssResponse200'
        '207':
          description: Multi-Status — Response contains mixed status results
          content:
            application/json:
              schema:
                type: object
                additionalProperties: false
                description: Wrapped response containing data
                properties:
                  data:
                    type: array
                    allOf:
                    - contains:
                        $ref: '#/components/schemas/Post207multistatusResponse207'
                      description: success response in data
                      minContains: 1
                    - contains:
                        $ref: '#/components/schemas/ErrorResponseCore1168955151'
                      description: error response in data
                      minContains: 1
                    description: Array of success or failure data items
                    items:
                      oneOf:
                      - $ref: '#/components/schemas/Post207multistatusResponse207'
                      - $ref: '#/components/schemas/ErrorResponseCore1168955151'
                    maxItems: 200
                    minItems: 2
                required:
                - data
        '400':
          description: Bad Request - The request cannot be processed due to invalid syntax.
          content:
            application/json:
              schema:
                oneOf:
                - type: object
                  additionalProperties: false
                  description: Wrapped error response with data
                  properties:
                    data:
                      type: array
                      description: Array of error objects
                      items:
                        oneOf:
                        - $ref: '#/components/schemas/ErrorResponseCore1720623915'
                        - $ref: '#/components/schemas/ErrorResponseCore622374562'
                        - $ref: '#/components/schemas/ErrorResponseCore261228299'
                        - $ref: '#/components/schemas/ErrorResponseCore1207168962'
                        - $ref: '#/components/schemas/ErrorResponseCore1818284114'
                        - $ref: '#/components/schemas/ErrorResponseCore1277582131'
                        - $ref: '#/components/schemas/ErrorResponseCore1593946428'
                        - $ref: '#/components/schemas/ErrorResponseCore2114620743'
                        - $ref: '#/components/schemas/ErrorResponseCore1332683101'
                        - $ref: '#/components/schemas/ErrorResponseCore1090893661'
                        - $ref: '#/components/schemas/ErrorResponseCore653152835'
                        - $ref: '#/components/schemas/ErrorResponseCore899638570'
                        - $ref: '#/components/schemas/ErrorResponseCore496791912'
                        - $ref: '#/components/schemas/ErrorResponseCore201487910'
                        - $ref: '#/components/schemas/ErrorResponseCore55175210'
                      maxItems: 25
                  required:
                  - data
                - $ref: '#/components/schemas/ErrorResponseCore1009543207'
      security:
      - iam-oauth2-schema:
        - ZohoCRM.modules.appointments.CREATE
      tags:
      - Appointments S
    delete:
      summary: DELETE /Appointments__s/{ids}
      description: appointment module record delete
      operationId: deleteAppointmentsS
      parameters:
      - $ref: '#/components/parameters/ParamQueryIds'
      responses:
        '200':
          description: OK - Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteappointmentssResponse200'
        '207':
          description: Multi-Status — Response contains mixed status results
          content:
            application/json:
              schema:
                type: object
                additionalProperties: false
                description: Wrapped response containing data
                properties:
                  data:
                    type: array
                    allOf:
                    - contains:
                        $ref: '#/components/schemas/Delete207SuccessResponse'
                      description: success response in data
                      minContains: 1
                    - contains:
                        $ref: '#/components/schemas/ErrorResponseCore2137699283'
                      description: error response in data
                      minContains: 1
                    description: Array of success or failure data items
                    items:
                      oneOf:
                      - $ref: '#/components/schemas/Delete207SuccessResponse'
                    maxItems: 200
                    minItems: 2
                required:
                - data
        '400':
          description: Bad Request - The request cannot be processed due to invalid syntax.
          content:
            application/json:
              schema:
                oneOf:
                - type: object
                  additionalProperties: false
                  description: Wrapped error response with data
                  properties:
                    data:
                      type: array
                      description: Array of error objects
                      items:
                        $ref: '#/components/schemas/ErrorResponseCore2137699283'
                      maxItems: 25
                  required:
                  - data
                - $ref: '#/components/schemas/ErrorResponseCore1875045219'
                - $ref: '#/components/schemas/ErrorResponseCore1604218709'
      security:
      - iam-oauth2-schema:
        - ZohoCRM.modules.appointments.DELETE
      tags:
      - Appointments S
  /Appointments__s/{appointmentId}:
    get:
      summary: GET /Appointments__s/{appointmentId}
      description: appointment mode record get by id
      operationId: getAppointmentById
      parameters:
      - $ref: '#/components/parameters/ParamPathAppointmentid'
      responses:
        '200':
          description: OK - Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetappointmentssResponse200'
        '400':
          description: Bad Request - The request cannot be processed due to invalid syntax.
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/ErrorResponseCore1604218709'
      security:
      - iam-oauth2-schema:
        - ZohoCRM.modules.appointments.READ
      tags:
      - Appointments S
    put:
      summary: PUT /Appointments__s/{id}
      description: appointment module records update by appointment id
      operationId: updateAppointmentById
      parameters:
      - $ref: '#/components/parameters/ParamQueryId'
      - $ref: '#/components/parameters/ParamPathAppointmentid'
      requestBody:
        description: Request body
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PutappointmentssRequest'
      responses:
        '200':
          description: OK - Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PutappointmentssResponse200'
        '400':
          description: Bad Request - The request cannot be processed due to invalid syntax.
          content:
            application/json:
              schema:
                oneOf:
                - type: object
                  additionalProperties: false
                  description: Wrapped error response with data
                  properties:
                    data:
                      type: array
                      description: Array of error objects
                      items:
                        oneOf:
                        - $ref: '#/components/schemas/ErrorResponseCore1720623915'
                        - $ref: '#/components/schemas/ErrorResponseCore622374562'
                        - $ref: '#/components/schemas/ErrorResponseCore261228299'
                        - $ref: '#/components/schemas/ErrorResponseCore1207168962'
                        - $ref: '#/components/schemas/ErrorResponseCore1818284114'
                        - $ref: '#/components/schemas/ErrorResponseCore1277582131'
                        - $ref: '#/components/schemas/ErrorResponseCore1593946428'
                        - $ref: '#/components/schemas/ErrorResponseCore2114620743'
                        - $ref: '#/components/schemas/ErrorResponseCore1332683101'
                        - $ref: '#/components/schemas/ErrorResponseCore1090893661'
                        - $ref: '#/components/schemas/ErrorResponseCore653152835'
                        - $ref: '#/components/schemas/ErrorResponseCore899638570'
                        - $ref: '#/components/schemas/ErrorResponseCore496791912'
                        - $ref: '#/components/schemas/ErrorResponseCore201487910'
                        - $ref: '#/components/schemas/ErrorResponseCore55175210'
                      maxItems: 25
                  required:
                  - data
                - $ref: '#/components/schemas/ErrorResponseCore1944579470'
      security:
      - iam-oauth2-schema:
        - ZohoCRM.modules.appointments.UPDATE
      tags:
      - Appointments S
    delete:
      summary: DELETE /Appointments__s/id
      description: appointment module record delete by id
      operationId: deleteId
      parameters:
      - $ref: '#/components/parameters/ParamPathAppointmentid'
      responses:
        '200':
          description: OK - Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteidResponse200'
        '400':
          description: Bad Request - The request cannot be processed due to invalid syntax.
          content:
            application/json:
              schema:
                oneOf:
                - type: object
                  additionalProperties: false
                  description: Wrapped error response with data
                  properties:
                    data:
                      type: array
                      description: Array of error objects
                      items:
                        $ref: '#/components/schemas/ErrorResponseCore2137699283'
                      maxItems: 25
                  required:
                  - data
                - $ref: '#/components/schemas/ErrorResponseCore1875045219'
                - $ref: '#/components/schemas/ErrorResponseCore1604218709'
      security:
      - iam-oauth2-schema:
        - ZohoCRM.modules.appointments.DELETE
      tags:
      - Appointments S
components:
  schemas:
    ErrorResponseCore1944579470:
      type: object
      additionalProperties: false
      description: the id given seems to be invalid
      properties:
        code:
          type: string
          description: Error code
          enum:
          - INVALID_DATA
        details:
          type: object
          additionalProperties: false
          description: Error details with validation information
          properties:
            resource_path_index:
              type: integer
              format: int32
              description: 'Detail field: resource_path_index'
          required:
          - resource_path_index
        message:
          type: string
          description: Error message
          enum:
          - the id given seems to be invalid
        status:
          type: string
          description: Error status
          enum:
          - error
      required:
      - code
      - details
      - message
      - status
      title: Error Response Core
    ErrorResponseCore201487910:
      type: object
      additionalProperties: false
      description: Appointment cannot be scheduled for past dates
      properties:
        code:
          type: string
          description: Error code
          enum:
          - DEPENDENT_MISMATCH
        details:
          type: object
          additionalProperties: false
          description: Error details with validation information
          properties:
            dependee:
              type: object
              additionalProperties: false
              description: 'Detail field: dependee'
              properties:
                api_name:
                  type: string
                  description: 'Nested detail field: api_name'
                  maxLength: 255
                json_path:
                  type: string
                  description: 'Nested detail field: json_path'
                  maxLength: 1000
              required:
              - api_name
              - json_path
            api_name:
              type: string
              description: 'Detail field: api_name'
              maxLength: 255
            json_path:
              type: string
              description: 'Detail field: json_path'
              maxLength: 1000
          required:
          - api_name
          - dependee
          - json_path
        message:
          type: string
          description: Error message
          enum:
          - Appointment cannot be scheduled for past dates
        status:
          type: string
          description: Error status
          enum:
          - error
      required:
      - code
      - details
      - message
      - status
      title: Error Response Core
    DataNested1:
      type: object
      additionalProperties: false
      description: Nested schema for data
      properties:
        code:
          type: string
          description: 'Field: code'
          maxLength: 255
        details:
          $ref: '#/components/schemas/DetailsNested'
        message:
          type: string
          description: 'Field: message'
          maxLength: 255
        status:
          type: string
          description: 'Field: status'
          maxLength: 255
    PutappointmentssRequest:
      type: object
      additionalProperties: false
      description: Request body schema
      properties:
        data:
          type: array
          description: data array contains post request body (Required)
          items:
            $ref: '#/components/schemas/DataNested'
          maxItems: 4
      required:
      - data
    ErrorResponseCore1604218709:
      type: object
      additionalProperties: false
      description: invalid module
      properties:
        code:
          type: string
          description: Error code
          enum:
          - INVALID_MODULE
        details:
          type: object
          additionalProperties: false
          description: Error details with validation information
          properties:
            resource_path_index:
              type: integer
              format: int32
              description: 'Detail field: resource_path_index'
          required:
          - resource_path_index
        message:
          type: string
          description: Error message
          enum:
          - the module name given seems to be invalid
        status:
          type: string
          description: Error status
          enum:
          - error
      required:
      - code
      - details
      - message
      - status
      title: Error Response Core
    ErrorResponseCore1544688711:
      type: object
      additionalProperties: false
      description: Auto-generated from 207 Multi-Status error item
      properties:
        code:
          type: string
          description: Error code
          enum:
          - INVALID_DATA
        details:
          type: object
          additionalProperties: false
          description: Error details with validation information
          properties:
            api_name:
              type: string
              description: 'Detail field: api_name'
              maxLength: 255
            json_path:
              type: string
              description: 'Detail field: json_path'
              maxLength: 1000
          required:
          - api_name
          - json_path
        message:
          type: string
          description: Error message
          enum:
          - the id given seems to be invalid
        status:
          type: string
          description: Error status
          enum:
          - error
      required:
      - code
      - details
      - message
      - status
      title: Error Response Core
    GETOwnerNested:
      type: object
      additionalProperties: false
      description: Nested schema for Owner
      properties:
        name:
          type: string
          description: 'Field: name'
          maxLength: 255
        id:
          type: string
          description: 'Field: id'
          maxLength: 255
        email:
          type: string
          description: 'Field: email'
          maxLength: 255
      required:
      - email
      - id
      - name
    ErrorResponseCore2137699283:
      type: object
      additionalProperties: false
      description: Auto-generated from 207 Multi-Status error item
      properties:
        code:
          type: string
          description: Error code
          enum:
          - INVALID_DATA
        details:
          type: object
          additionalProperties: false
          description: Error details with validation information
          properties:
            id:
              type: string
              description: 'Detail field: id'
              maxLength: 255
          required:
          - id
        message:
          type: string
          description: Error message
          enum:
          - record not deleted
        status:
          type: string
          description: Error status
          enum:
          - error
      required:
      - code
      - details
      - message
      - status
      title: Error Response Core
    PostappointmentssResponse200:
      type: object
      additionalProperties: false
      description: appointment creation success response
      properties:
        data:
          type: array
          description: 'Field: data'
          items:
            $ref: '#/components/schemas/DataNested1'
          maxItems: 4
    ErrorResponseCore1875045219:
      type: object
      additionalProperties: false
      description: invalid method request
      properties:
        code:
          type: string
          description: Error code
          enum:
          - INVALID_REQUEST_METHOD
        details:
          type: object
          additionalProperties: false
          description: Error details with validation information
          properties: {}
        message:
          type: string
          description: Error message
          enum:
          - The http request method type is not a valid one
        status:
          type: string
          description: Error status
          enum:
          - error
      required:
      - code
      - details
      - message
      - status
      title: Error Response Core
    AppointmentForNested:
      type: object
      additionalProperties: false
      description: Contains the name, ID and the module's API name of the customer for whom you are creating the appointment.
      properties:
        name:
          type:
          - string
          - 'null'
          description: name
          maxLength: 2
        id:
          type:
          - string
          - 'null'
          description: id
          maxLength: 18
        module:
          $ref: '#/components/schemas/ModuleNested'
          description: module name
    ErrorResponseCore1277582131:
      type: object
      additionalProperties: false
      description: Appointment Owner is not a part of Service Members
      properties:
        code:
          type: string
          description: Error code
          enum:
          - DEPENDENT_MISMATCH
        details:
          type: object
          additionalProperties: false
          description: Error details with validation information
          properties:
            dependee:
              type: object
              additionalProperties: false
              description: 'Detail field: dependee'
              properties:
                api_name:
                  type: string
                  description: 'Nested detail field: api_name'
                  maxLength: 255
                json_path:
                  type: string
                  description: 'Nested detail field: json_path'
                  maxLength: 1000
              required:
              - api_name
              - json_path
            api_name:
              type: string
              description: 'Detail field: api_name'
              maxLength: 255
            json_path:
              type: string
              description: 'Detail field: json_path'
              maxLength: 1000
          required:
          - api_name
          - dependee
          - json_path
        message:
          type: string
          description: Error message
          enum:
          - Appointment Owner is not a part of Service Members
        status:
          type: string
          description: Error status
          enum:
          - error
      required:
      - code
      - details
      - message
      - status
      title: Error Response Core
    ErrorResponseCore1168955151:
      type: object
      additionalProperties: false
      description: Auto-generated from 207 Multi-Status error item
      properties:
        code:
          type: string
          description: Error code
          enum:
          - MANDATORY_NOT_FOUND
        details:
          type: object
          additionalProperties: false
          description: Error details with validation information
          properties:
            api_name:
              type: string
              description: 'Detail field: api_name'
              maxLength: 255
            json_path:
              type: string
              description: 'Detail field: json_path'
              maxLength: 1000
          required:
          - api_name
          - json_path
        message:
          type: string
          description: Error message
          enum:
          - Mandatory field data not found
        status:
          type: string
          description: Error status
          enum:
          - error
      required:
      - code
      - details
      - message
      - status
      title: Error Response Core
    ModifiedByNested:
      type: object
      additionalProperties: false
      description: modified by
      properties:
        name:
          type:
          - string
          - 'null'
          description: name
          maxLength: 255
        id:
          type:
          - string
          - 'null'
          description: id
          maxLength: 255
        email:
          type:
          - string
          - 'null'
          format: email
          description: email
          maxLength: 33
    CreatedByNested:
      type: object
      additionalProperties: false
      description: appointment created by
      properties:
        name:
          type:
          - string
          - 'null'
          description: name
          maxLength: 255
        id:
          type:
          - string
          - 'null'
          description: id
          maxLength: 255
        email:
          type:
          - string
          - 'null'
          format: email
          description: email
          maxLength: 33
    ErrorResponseCore1009543207:
      type: object
      additionalProperties: false
      description: 'Invalid data type for field: data'
      properties:
        code:
          type: string
          description: Error code
          enum:
          - INVALID_DATA
        details:
          type: object
          additionalProperties: false
          description: Error details with validation information
          properties:
            maximum_length:
              type: integer
              format: int32
              description: 'Detail field: maximum_length'
            api_name:
              type: string
              description: 'Detail field: api_name'
              maxLength: 255
            json_path:
              type: string
              description: 'Detail field: json_path'
              maxLength: 1000
          required:
          - api_name
          - json_path
          - maximum_length
        message:
          type: string
          description: Error message
          enum:
          - invalid data
        status:
          type: string
          description: Error status
          enum:
          - error
      required:
      - code
      - details
      - message
      - status
      title: Error Response Core
    ErrorResponseCore2114620743:
      type: object
      additionalProperties: false
      description: the given module name is not exist in multimodulelookup for Appointment_For.module.api_name
      properties:
        code:
          type: string
          description: Error code
          enum:
          - INVALID_DATA
        details:
          type: object
          additionalProperties: false
          description: Error details with validation information
          properties:
            api_name:
              type: string
              description: 'Detail field: api_name'
              maxLength: 255
            json_path:
              type: string
              description: 'Detail field: json_path'
              maxLength: 1000
          required:
          - api_name
          - json_path
        message:
          type: string
          description: Error message
          enum:
          - the given module name is not exist in multimodulelookup
        status:
          type: string
          description: Error status
          enum:
          - error
      required:
      - code
      - details
      - message
      - status
      title: Error Response Core
    GETDataNested:
      type: object
      additionalProperties: false
      description: Nested schema for data
      properties:
        Owner:
          $ref: '#/components/schemas/GETOwnerNested'
        $currency_symbol:
          type: string
          description: 'Field: $currency_symbol'
          maxLength: 255
        Address:
          type:
          - 'null'
          - string
          description: 'Field: Address'
          maxLength: 255
        Appointment_Start_Time:
          type: string
          description: 'Field: Appointment_Start_Time'
          maxLength: 120
        Cancellation_Reason:
          type:
          - 'null'
          - string
          description: 'Field: Cancellation_Reason'
          maxLength: 120
        $field_states:
          type:
          - 'null'
          - string
          maxLength: 255
          description: 'Field: $field_states'
        Appointment_For:
          $ref: '#/components/schemas/GETAppointmentForNested'
        Rescheduled_To:
          type:
          - 'null'
          - string
          description: 'Field: Rescheduled_To'
          maxLength: 120
        $sharing_permission:
          type: string
          description: 'Field: $sharing_permission'
          maxLength: 2

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