Gainsight Activities API

Manage timeline activities

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

OpenAPI Specification

gainsight-activities-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Gainsight CS Bulk Accounts Activities 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: Activities
  description: Manage timeline activities
paths:
  /timeline/activities:
    post:
      operationId: createActivity
      summary: Gainsight Create a timeline activity
      description: Create a new activity on the timeline for a company or relationship.
      tags:
      - Activities
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ActivityInput'
      responses:
        '200':
          description: Activity created successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    type: boolean
                  data:
                    $ref: '#/components/schemas/Activity'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /timeline/activities/bulk:
    post:
      operationId: bulkCreateActivities
      summary: Gainsight Bulk create timeline activities
      description: Create multiple activities in a single request. Supports payloads up to 80MB.
      tags:
      - Activities
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - records
              properties:
                records:
                  type: array
                  items:
                    $ref: '#/components/schemas/ActivityInput'
      responses:
        '200':
          description: Activities created
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    type: boolean
                  data:
                    type: object
                    properties:
                      insertedCount:
                        type: integer
                      failedCount:
                        type: integer
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /timeline/activities/{activityId}:
    get:
      operationId: getActivity
      summary: Gainsight Get a timeline activity
      description: Retrieve a specific timeline activity by ID.
      tags:
      - Activities
      parameters:
      - $ref: '#/components/parameters/activityId'
      responses:
        '200':
          description: Activity returned
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    type: boolean
                  data:
                    $ref: '#/components/schemas/Activity'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    put:
      operationId: updateActivity
      summary: Gainsight Update a timeline activity
      description: Update an existing timeline activity.
      tags:
      - Activities
      parameters:
      - $ref: '#/components/parameters/activityId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ActivityInput'
      responses:
        '200':
          description: Activity updated
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    type: boolean
                  data:
                    $ref: '#/components/schemas/Activity'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    delete:
      operationId: deleteActivity
      summary: Gainsight Delete a timeline activity
      description: Delete a timeline activity by ID.
      tags:
      - Activities
      parameters:
      - $ref: '#/components/parameters/activityId'
      responses:
        '200':
          description: Activity deleted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /timeline/activities/search:
    post:
      operationId: searchActivities
      summary: Gainsight Search timeline activities
      description: Search for timeline activities using filter criteria.
      tags:
      - Activities
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SearchRequest'
      responses:
        '200':
          description: Activities returned
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    type: boolean
                  data:
                    type: object
                    properties:
                      records:
                        type: array
                        items:
                          $ref: '#/components/schemas/Activity'
                      totalCount:
                        type: integer
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  schemas:
    Activity:
      type: object
      properties:
        Gsid:
          type: string
          description: Activity unique identifier
        Subject:
          type: string
          description: Activity subject line
        Notes:
          type: string
          description: Activity notes or body content
        ActivityTypeId:
          type: string
          description: Activity type identifier
        ActivityTypeName:
          type: string
          description: Activity type name
        CompanyId:
          type: string
          description: Associated company Gsid
        CompanyName:
          type: string
          description: Associated company name
        ActivityDate:
          type: string
          format: date-time
          description: Date and time of the activity
        OwnerId:
          type: string
          description: Activity owner user ID
        OwnerName:
          type: string
          description: Activity owner name
        ExternalId:
          type: string
          description: External system identifier
        Attendees:
          type: array
          items:
            type: object
            properties:
              personId:
                type: string
              email:
                type: string
                format: email
              name:
                type: string
          description: List of attendees
        Sentiment:
          type: string
          enum:
          - Positive
          - Neutral
          - Negative
          description: Sentiment of the activity
        CreatedDate:
          type: string
          format: date-time
          description: Record creation timestamp
        ModifiedDate:
          type: string
          format: date-time
          description: Last modification timestamp
    ActivityInput:
      type: object
      required:
      - Subject
      - ActivityTypeId
      - CompanyId
      - ActivityDate
      properties:
        Subject:
          type: string
          description: Activity subject
        Notes:
          type: string
          description: Activity notes
        ActivityTypeId:
          type: string
          description: Activity type identifier
        CompanyId:
          type: string
          description: Associated company Gsid
        ActivityDate:
          type: string
          format: date-time
          description: Date and time of the activity
        OwnerId:
          type: string
          description: Activity owner user ID
        ExternalId:
          type: string
          description: External system identifier
        Attendees:
          type: array
          items:
            type: object
            properties:
              personId:
                type: string
              email:
                type: string
                format: email
        Sentiment:
          type: string
          enum:
          - Positive
          - Neutral
          - Negative
    ApiResponse:
      type: object
      properties:
        result:
          type: boolean
        errorCode:
          type: string
        errorDesc:
          type: string
        requestId:
          type: string
    SearchRequest:
      type: object
      properties:
        select:
          type: array
          items:
            type: string
        where:
          type: object
          properties:
            conditions:
              type: array
              items:
                type: object
                properties:
                  name:
                    type: string
                  value: {}
                  operator:
                    type: string
            expression:
              type: string
        limit:
          type: integer
        offset:
          type: integer
  parameters:
    activityId:
      name: activityId
      in: path
      required: true
      description: Timeline activity unique identifier
      schema:
        type: string
  responses:
    NotFound:
      description: The requested resource was not found
    BadRequest:
      description: Invalid request body or parameters
    Unauthorized:
      description: Authentication failed or access key is missing
  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