Zoho Creator Bulk Insert APIs API

APIs to insert a large set of data into a form

OpenAPI Specification

zoho-creator-bulk-insert-apis-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  contact:
    name: Zoho Creator Support
    url: https://www.zoho.com/creator/help/
    email: support@zohocreator.com
  description: Zoho Creator provides RESTful APIs that allow you to securely interface with your Zoho Creator applications and perform a variety of tasks.
  title: Zoho Creator API v2 conforming OpenAPI Specification Bulk Insert APIs API
  version: '2.0'
servers:
- description: US Data Center API Server
  url: https://zohoapis.com/
- description: IN Data Center API Server
  url: https://zohoapis.in/
- description: EU Data Center API Server
  url: https://zohoapis.eu/
- description: JP Data Center API Server
  url: https://zohoapis.jp/
- description: SA Data Center API Server
  url: https://zohoapis.sa/
- description: CA Data Center API Server
  url: https://zohoapis.ca/
- description: AU Data Center API Server
  url: https://zohoapis.com.au/
- description: CN Data Center API Server
  url: https://zohoapis.com.cn/
tags:
- name: Bulk Insert APIs
  description: APIs to insert a large set of data into a form
paths:
  /creator/v2/bulk/{account_owner_name}/{app_link_name}/form/{form_link_name}/insert/{job_ID}/result:
    get:
      summary: Download Bulk Insert Result
      security:
      - oauth2:
        - ZohoCreator.bulk.READ
      description: 'To download the bulk insert job result as a CSV file. The file is returned in .zip format. Use the filter parameter to specify the result type: success, failure, or unprocessed.'
      responses:
        '200':
          $ref: '#/components/responses/download_bulk_insert_result_response'
        '400':
          description: '{''code'': 9350, ''message'': ''filter is not mentioned in the request parameter.''}, {''code'': 11000, ''message'': ''Invalid value provided for filter. Please provide a valid value.''}'
        '401':
          description: '{''code'': 1030, ''message'': ''Authorization Failure. The access token is either invalid or has expired.''}, {''code'': 2945, ''message'': ''This is an invalid oauthscope. Please regenerate the oauthtoken corresponding to the API with proper oauthscope.''}, {''code'': 1000, ''message'': ''IAM Error''}'
        '403':
          description: '{''code'': 2933, ''message'': ''You do not have permission to access this application.''}, {''code'': 1080, ''message'': ''API calls cannot be made to disabled applications. Please check with the application admin.''}'
        '404':
          description: '{''code'': 11130, ''message'': ''The result file for job ID JOB_ID was not found.''}, {''code'': 1040, ''message'': ''No account owner named OWNER_NAME found.''}, {''code'': 2892, ''message'': ''No application named APPLICATION_NAME found. Please check and try again.''}, {''code'': 2893, ''message'': ''No form named FORM_NAME found. Please check and try again.''}, {''code'': 1000, ''message'': ''Invalid API URL format.''}, {''code'': 2930, ''message'': ''Error Occurred. We are sorry for the inconvenience.''}'
        '405':
          description: '{''code'': 1020, ''message'': ''METHOD is not a valid method for this request.''}'
        '429':
          description: '{''code'': 2955, ''message'': ''You have reached your API call limit for a minute. Please try again after sometime.''}'
      parameters:
      - $ref: '#/components/parameters/version'
      - $ref: '#/components/parameters/account_owner_name'
      - $ref: '#/components/parameters/app_link_name'
      - $ref: '#/components/parameters/form_link_name'
      - $ref: '#/components/parameters/job_ID'
      - $ref: '#/components/parameters/filter'
      tags:
      - Bulk Insert APIs
  /creator/v2/bulk/{account_owner_name}/{app_link_name}/form/{form_link_name}/insert:
    post:
      summary: Upload Bulk Insert File
      security:
      - oauth2:
        - ZohoCreator.bulk.CREATE
      requestBody:
        $ref: '#/components/requestBodies/upload_bulk_insert_file_request'
      description: To upload a CSV file for the bulk insert job. The file must be a CSV or a ZIP containing a single CSV file. Pass the job_id as a query parameter.
      responses:
        '200':
          $ref: '#/components/responses/upload_bulk_insert_file_response'
        '400':
          description: '{''code'': 9350, ''message'': ''file is not mentioned in the request parameter.''}, {''code'': 11340, ''message'': ''File upload is not supported for CURRENT_STATUS job status.''}'
        '401':
          description: '{''code'': 1030, ''message'': ''Authorization Failure. The access token is either invalid or has expired.''}, {''code'': 2945, ''message'': ''This is an invalid oauthscope. Please regenerate the oauthtoken corresponding to the API with proper oauthscope.''}, {''code'': 1000, ''message'': ''IAM Error''}'
        '403':
          description: '{''code'': 2933, ''message'': ''You do not have permission to access this application.''}, {''code'': 1080, ''message'': ''API calls cannot be made to disabled applications. Please check with the application admin.''}'
        '404':
          description: '{''code'': 11330, ''message'': ''No job available for the given form.''}, {''code'': 1040, ''message'': ''No account owner named OWNER_NAME found.''}, {''code'': 2892, ''message'': ''No application named APPLICATION_NAME found. Please check and try again.''}, {''code'': 2893, ''message'': ''No form named FORM_NAME found. Please check and try again.''}, {''code'': 1000, ''message'': ''Invalid API URL format.''}, {''code'': 2930, ''message'': ''Error Occurred. We are sorry for the inconvenience.''}'
        '405':
          description: '{''code'': 1020, ''message'': ''METHOD is not a valid method for this request.''}'
        '429':
          description: '{''code'': 2955, ''message'': ''You have reached your API call limit for a minute. Please try again after sometime.''}'
        '409':
          description: '{''code'': 11070, ''message'': ''An input file already exists for the specified job.''}'
      parameters:
      - $ref: '#/components/parameters/version'
      - $ref: '#/components/parameters/account_owner_name'
      - $ref: '#/components/parameters/app_link_name'
      - $ref: '#/components/parameters/form_link_name'
      - $ref: '#/components/parameters/job_id'
      tags:
      - Bulk Insert APIs
  /creator/v2/bulk/{account_owner_name}/{app_link_name}/form/{form_link_name}/insert/{job_ID}:
    get:
      summary: Get the Status of the Bulk Insert Job
      security:
      - oauth2:
        - ZohoCreator.bulk.READ
      description: To get the details and status of a bulk insert job performed previously.
      responses:
        '200':
          $ref: '#/components/responses/get_bulk_insert_job_status_response'
        '401':
          description: '{''code'': 1030, ''message'': ''Authorization Failure. The access token is either invalid or has expired.''}, {''code'': 2945, ''message'': ''This is an invalid oauthscope. Please regenerate the oauthtoken corresponding to the API with proper oauthscope.''}, {''code'': 1000, ''message'': ''IAM Error''}'
        '403':
          description: '{''code'': 2933, ''message'': ''You do not have permission to access this application.''}, {''code'': 1080, ''message'': ''API calls cannot be made to disabled applications. Please check with the application admin.''}'
        '404':
          description: '{''code'': 1040, ''message'': ''No account owner named OWNER_NAME found.''}, {''code'': 2892, ''message'': ''No application named APPLICATION_NAME found. Please check and try again.''}, {''code'': 2893, ''message'': ''No form named FORM_NAME found. Please check and try again.''}, {''code'': 1000, ''message'': ''Invalid API URL format.''}, {''code'': 2930, ''message'': ''Error Occurred. We are sorry for the inconvenience.''}'
        '405':
          description: '{''code'': 1020, ''message'': ''METHOD is not a valid method for this request.''}'
        '429':
          description: '{''code'': 2955, ''message'': ''You have reached your API call limit for a minute. Please try again after sometime.''}'
      parameters:
      - $ref: '#/components/parameters/version'
      - $ref: '#/components/parameters/account_owner_name'
      - $ref: '#/components/parameters/app_link_name'
      - $ref: '#/components/parameters/form_link_name'
      - $ref: '#/components/parameters/job_ID'
      tags:
      - Bulk Insert APIs
    put:
      summary: Start or Abort Bulk Insert Job
      security:
      - oauth2:
        - ZohoCreator.bulk.CREATE
      requestBody:
        $ref: '#/components/requestBodies/start_or_abort_bulk_insert_job_request'
      description: To start or abort a bulk insert job. Pass the action as "start" or "abort" in the request body.
      responses:
        '200':
          $ref: '#/components/responses/start_or_abort_bulk_insert_job_response'
        '400':
          description: '{''code'': 9350, ''message'': ''action is not mentioned in the request parameter.''}, {''code'': 11000, ''message'': ''Invalid value provided for action. Please provide a valid value.''}, {''code'': 11350, ''message'': ''The job cannot be started as the file upload is not yet completed. Please upload the file and try again.''}'
        '401':
          description: '{''code'': 1030, ''message'': ''Authorization Failure. The access token is either invalid or has expired.''}, {''code'': 2945, ''message'': ''This is an invalid oauthscope. Please regenerate the oauthtoken corresponding to the API with proper oauthscope.''}, {''code'': 1000, ''message'': ''IAM Error''}'
        '403':
          description: '{''code'': 2933, ''message'': ''You do not have permission to access this application.''}, {''code'': 1080, ''message'': ''API calls cannot be made to disabled applications. Please check with the application admin.''}'
        '404':
          description: '{''code'': 11330, ''message'': ''No job available for the given form.''}, {''code'': 1040, ''message'': ''No account owner named OWNER_NAME found.''}, {''code'': 2892, ''message'': ''No application named APPLICATION_NAME found. Please check and try again.''}, {''code'': 2893, ''message'': ''No form named FORM_NAME found. Please check and try again.''}, {''code'': 1000, ''message'': ''Invalid API URL format.''}, {''code'': 2930, ''message'': ''Error Occurred. We are sorry for the inconvenience.''}'
        '405':
          description: '{''code'': 1020, ''message'': ''METHOD is not a valid method for this request.''}'
        '429':
          description: '{''code'': 2955, ''message'': ''You have reached your API call limit for a minute. Please try again after sometime.''}'
        '409':
          description: '{''code'': 11080, ''message'': ''The job has already been aborted by the user.''}, {''code'': 11090, ''message'': ''The job has already been aborted by the system.''}, {''code'': 11100, ''message'': ''The job has already been completed.''}'
      parameters:
      - $ref: '#/components/parameters/version'
      - $ref: '#/components/parameters/account_owner_name'
      - $ref: '#/components/parameters/app_link_name'
      - $ref: '#/components/parameters/form_link_name'
      - $ref: '#/components/parameters/job_ID'
      tags:
      - Bulk Insert APIs
components:
  parameters:
    job_id:
      schema:
        type: string
      in: query
      name: job_id
      version: 2
      required: false
    filter:
      schema:
        type: string
      in: query
      name: filter
      version: 2
      required: false
    account_owner_name:
      schema:
        type: string
      in: path
      name: account_owner_name
      version: 2
      required: true
    version:
      schema:
        type: string
      in: path
      name: version
      version: 2
      required: true
    job_ID:
      schema:
        type: string
      in: path
      name: job_ID
      version: 2
      required: true
    form_link_name:
      schema:
        type: string
      in: path
      name: form_link_name
      version: 2
      required: true
    app_link_name:
      schema:
        type: string
      in: path
      name: app_link_name
      version: 2
      required: true
  responses:
    start_or_abort_bulk_insert_job_response:
      description: '{''code'': 4070, ''message'': ''Permission Denied. Only admin or developer of this application can perform this operation.''}, {''code'': 7120, ''message'': ''The job ID JOB_ID provided in the request is not valid.''}, {''code'': 7130, ''message'': ''You are not permitted to access the job.''}, {''code'': 4000, ''message'': ''Account''s Developer API limit has been reached. Please upgrade to execute more REST API calls.''}'
      content:
        application/json:
          schema:
            type: object
            properties:
              code:
                format: int32
                type: integer
                example: 3000
              message:
                type: string
                example: Job started successfully
    download_bulk_insert_result_response:
      description: '{''code'': 4070, ''message'': ''Permission Denied. Only admin or developer of this application can perform this operation.''}, {''code'': 11110, ''message'': ''The result file is still being generated. Please try again after some time.''}, {''code'': 11120, ''message'': ''The result file is not available for download. The job is not in a completed state.''}, {''code'': 7120, ''message'': ''The job ID JOB_ID provided in the request is not valid.''}, {''code'': 7130, ''message'': ''You are not permitted to access the job.''}, {''code'': 4000, ''message'': ''Account''s Developer API limit has been reached. Please upgrade to execute more REST API calls.''}'
      content:
        '*/*':
          schema:
            format: binary
            type: string
    get_bulk_insert_job_status_response:
      description: '{''code'': 4070, ''message'': ''Permission Denied. Only admin or developer of this application can perform this operation.''}, {''code'': 7120, ''message'': ''The job ID JOB_ID provided in the request is not valid.''}, {''code'': 7130, ''message'': ''You are not permitted to access the job.''}, {''code'': 4000, ''message'': ''Account''s Developer API limit has been reached. Please upgrade to execute more REST API calls.''}'
      content:
        application/json:
          schema:
            type: object
            properties:
              code:
                format: int32
                type: integer
                example: 3000
              data:
                type: object
                properties:
                  api_status:
                    type: string
                    example: COMPLETED
              record_details:
                type: object
                properties:
                  total_records:
                    format: int64
                    type: integer
                    example: 500
                  failed_records:
                    format: int64
                    type: integer
                    example: 10
                  unprocessed_records:
                    format: int64
                    type: integer
                    example: 0
                  success_records:
                    format: int64
                    type: integer
                    example: 490
    upload_bulk_insert_file_response:
      description: '{''code'': 4070, ''message'': ''Permission Denied. Only admin or developer of this application can perform this operation.''}, {''code'': 7120, ''message'': ''The job ID JOB_ID provided in the request is not valid.''}, {''code'': 7130, ''message'': ''You are not permitted to access the job.''}, {''code'': 4000, ''message'': ''Account''s Developer API limit has been reached. Please upgrade to execute more REST API calls.''}'
      content:
        application/json:
          schema:
            type: object
            properties:
              code:
                format: int32
                type: integer
                example: 3000
              message:
                type: string
                example: File uploaded successfully
  requestBodies:
    upload_bulk_insert_file_request:
      content:
        multipart/form-data:
          schema:
            type: object
            properties:
              file:
                format: binary
                type: string
    start_or_abort_bulk_insert_job_request:
      content:
        application/json:
          schema:
            type: object
            properties:
              action:
                type: string
                version: 2
                example: start
  securitySchemes:
    oauth2:
      flows:
        authorizationCode:
          tokenUrl: https://accounts.zoho.com/oauth/v2/token
          authorizationUrl: https://accounts.zoho.com/oauth/v2/auth?access_type=offline
          scopes:
            ZohoCreator.report.CREATE: Upload file to a record in a report.
            ZohoCreator.bulk.READ: Check the status or download the result of a bulk read or bulk insert job.
            ZohoCreator.bulk.CREATE: Create a bulk read or bulk insert job.
            ZohoCreator.dashboard.READ: Get applications.
            ZohoCreator.report.UPDATE: Update records in a report.
            ZohoCreator.meta.application.READ: Get forms, reports in an application.
            ZohoCreator.report.READ: Get records and download file in a report.
            ZohoCreator.form.CREATE: Add records to a form.
            ZohoCreator.report.DELETE: Delete records in a report.
            ZohoCreator.meta.form.READ: Get list of fields in a form.
      type: oauth2
externalDocs:
  description: Zoho Creator API v2 Documentation
  url: https://www.zoho.com/creator/help/api/v2/