Gainsight Jobs API

Manage bulk import jobs

Operations 4

POST /bulk/jobs Gainsight Create a bulk job #
GET /bulk/jobs Gainsight List bulk jobs #
GET /bulk/jobs/{jobId} Gainsight Get bulk job status #
GET /bulk/jobs/{jobId}/errors Gainsight Get bulk job errors #

Documentation

📖
Documentation
https://support.gainsight.com/PX/API_for_Developers
📖
Authentication
https://support.gainsight.com/PX/API_for_Developers/02About/Authentication
📖
Documentation
https://support.gainsight.com/PX/API_for_Developers/APIs_for_Developers/PX_API
📖
Documentation
https://gainsightpx.docs.apiary.io/
📖
Documentation
https://support.gainsight.com/gainsight_nxt/API_and_Developer_Docs/Company_and_Relationship_API/Company_API_Documentation
📖
Authentication
https://support.gainsight.com/gainsight_nxt/API_and_Developer_Docs/Generate_REST_API/Generate_REST_API_Key
📖
Documentation
https://support.gainsight.com/gainsight_nxt/API_and_Developer_Docs/Person_API/People_API_Documentation
📖
Documentation
https://support.gainsight.com/gainsight_nxt/API_and_Developer_Docs/Custom_Object_API/Gainsight_Custom_Object_API_Documentation
📖
Documentation
https://support.gainsight.com/gainsight_nxt/API_and_Developer_Docs/Cockpit_API/Call_To_Action_(CTA)_API_Documentation
📖
Documentation
https://support.gainsight.com/gainsight_nxt/API_and_Developer_Docs/Timeline_API/Timeline_APIs
📖
Documentation
https://support.gainsight.com/gainsight_nxt/API_and_Developer_Docs/Success_Plan_APIs/Success_Plan_APIs
📖
Documentation
https://support.gainsight.com/gainsight_nxt/API_and_Developer_Docs/Data_Management_APIs/Data_Management_APIs
📖
Documentation
https://support.gainsight.com/gainsight_nxt/API_and_Developer_Docs/Bulk_API/Gainsight_Bulk_REST_APIs
📖
Documentation
https://support.gainsight.com/gainsight_nxt/API_and_Developer_Docs/Bulk_API/Gainsight_Bulk_API
📖
Documentation
https://support.gainsight.com/gainsight_nxt/API_and_Developer_Docs/Events_API/Events_API
📖
Documentation
https://support.gainsight.com/gainsight_nxt/API_and_Developer_Docs/User_Management_APIs/User_Management_APIs
📖
Documentation
https://support.gainsight.com/gainsight_nxt/API_and_Developer_Docs/User_Management_APIs/SCIM_API
📖
Documentation
https://support.gainsight.com/gainsight_nxt/API_and_Developer_Docs/User_Management_APIs/API_for_Company_Team_Record
📖
Documentation
https://support.gainsight.com/gainsight_nxt/API_and_Developer_Docs/Customer_Goals_API/Customer_Goals_APIs
📖
Documentation
https://support.gainsight.com/gainsight_nxt/API_and_Developer_Docs/Renewal_Center_API/Renewal_Center_API
📖
Documentation
https://support.gainsight.com/gainsight_nxt/API_and_Developer_Docs/Cockpit_API/Task_APIs

Specifications

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/gainsight-jobs-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

gainsight-jobs-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Gainsight CS Bulk Jobs API
  description: The Gainsight Bulk API is an asynchronous connector that automates insert or update of large data volumes from CSV files into Gainsight standard and custom objects, with rate limits of 10 calls per hour and 100 per day.
  version: '1.0'
  contact:
    name: Gainsight Support
    url: https://support.gainsight.com
    email: support@gainsight.com
  termsOfService: https://www.gainsight.com/terms-of-service/
servers:
- url: https://{domain}.gainsightcloud.com/v1
  description: Gainsight CS Production
  variables:
    domain:
      default: customer
      description: Customer-specific domain prefix
security:
- apiKey: []
tags:
- name: Jobs
  description: Manage bulk import jobs
paths:
  /bulk/jobs:
    post:
      operationId: createBulkJob
      summary: Gainsight Create a bulk job
      description: Create a new bulk import job to insert or update records from a CSV file into a Gainsight object. Rate limited to 10 calls per hour and 100 per day.
      tags:
      - Jobs
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              type: object
              required:
              - objectName
              - operation
              - file
              properties:
                objectName:
                  type: string
                  description: Target Gainsight object name
                operation:
                  type: string
                  enum:
                  - INSERT
                  - UPDATE
                  - UPSERT
                  description: Bulk operation type
                keyFields:
                  type: string
                  description: Comma-separated key fields for matching (required for UPDATE and UPSERT)
                file:
                  type: string
                  format: binary
                  description: CSV file containing records to import
      responses:
        '200':
          description: Bulk job created
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    type: boolean
                  data:
                    $ref: '#/components/schemas/BulkJob'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '429':
          description: Rate limit exceeded
    get:
      operationId: listBulkJobs
      summary: Gainsight List bulk jobs
      description: Retrieve a list of bulk import jobs.
      tags:
      - Jobs
      parameters:
      - name: status
        in: query
        description: Filter by job status
        schema:
          type: string
          enum:
          - PENDING
          - IN_PROGRESS
          - COMPLETED
          - FAILED
      - name: limit
        in: query
        description: Maximum number of jobs to return
        schema:
          type: integer
          default: 25
      - name: offset
        in: query
        description: Offset for pagination
        schema:
          type: integer
          default: 0
      responses:
        '200':
          description: Jobs returned
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    type: boolean
                  data:
                    type: object
                    properties:
                      records:
                        type: array
                        items:
                          $ref: '#/components/schemas/BulkJob'
                      totalCount:
                        type: integer
        '401':
          $ref: '#/components/responses/Unauthorized'
  /bulk/jobs/{jobId}:
    get:
      operationId: getBulkJob
      summary: Gainsight Get bulk job status
      description: Retrieve the status and details of a specific bulk job.
      tags:
      - Jobs
      parameters:
      - $ref: '#/components/parameters/jobId'
      responses:
        '200':
          description: Job details returned
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    type: boolean
                  data:
                    $ref: '#/components/schemas/BulkJob'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /bulk/jobs/{jobId}/errors:
    get:
      operationId: getBulkJobErrors
      summary: Gainsight Get bulk job errors
      description: Retrieve error details for a completed bulk job.
      tags:
      - Jobs
      parameters:
      - $ref: '#/components/parameters/jobId'
      responses:
        '200':
          description: Job errors returned
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    type: boolean
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/BulkJobError'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
components:
  responses:
    BadRequest:
      description: Invalid request body or parameters
    NotFound:
      description: The requested resource was not found
    Unauthorized:
      description: Authentication failed or access key is missing
  schemas:
    BulkJob:
      type: object
      properties:
        jobId:
          type: string
          description: Bulk job unique identifier
        objectName:
          type: string
          description: Target object name
        operation:
          type: string
          enum:
          - INSERT
          - UPDATE
          - UPSERT
          description: Operation type
        status:
          type: string
          enum:
          - PENDING
          - IN_PROGRESS
          - COMPLETED
          - FAILED
          description: Job status
        totalRecords:
          type: integer
          description: Total records in the file
        processedRecords:
          type: integer
          description: Number of records processed
        successCount:
          type: integer
          description: Number of successful records
        failureCount:
          type: integer
          description: Number of failed records
        fileName:
          type: string
          description: Original CSV file name
        createdDate:
          type: string
          format: date-time
          description: Job creation timestamp
        completedDate:
          type: string
          format: date-time
          description: Job completion timestamp
    BulkJobError:
      type: object
      properties:
        rowNumber:
          type: integer
          description: Row number in the CSV file
        errorMessage:
          type: string
          description: Error message
        fieldName:
          type: string
          description: Field that caused the error
  parameters:
    jobId:
      name: jobId
      in: path
      required: true
      description: Bulk job unique identifier
      schema:
        type: string
  securitySchemes:
    apiKey:
      type: apiKey
      name: accessKey
      in: header
      description: Gainsight CS REST API access key
externalDocs:
  description: Bulk API Documentation
  url: https://support.gainsight.com/gainsight_nxt/API_and_Developer_Docs/Bulk_API/Gainsight_Bulk_REST_APIs