openapi: 3.1.0 info: title: Gainsight CS Bulk Accounts Success Plans 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: Success Plans description: Manage success plans paths: /successplans: post: operationId: createSuccessPlan summary: Gainsight Create a success plan description: Create a new success plan for a company. tags: - Success Plans requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/SuccessPlanInput' responses: '200': description: Success plan created content: application/json: schema: type: object properties: result: type: boolean data: $ref: '#/components/schemas/SuccessPlan' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' /successplans/{planId}: get: operationId: getSuccessPlan summary: Gainsight Get a success plan description: Retrieve a specific success plan by ID. tags: - Success Plans parameters: - $ref: '#/components/parameters/planId' responses: '200': description: Success plan returned content: application/json: schema: type: object properties: result: type: boolean data: $ref: '#/components/schemas/SuccessPlan' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' put: operationId: updateSuccessPlan summary: Gainsight Update a success plan description: Update an existing success plan. tags: - Success Plans parameters: - $ref: '#/components/parameters/planId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/SuccessPlanInput' responses: '200': description: Success plan updated content: application/json: schema: type: object properties: result: type: boolean data: $ref: '#/components/schemas/SuccessPlan' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' /successplans/search: post: operationId: searchSuccessPlans summary: Gainsight Search success plans description: Search for success plans using filter criteria. tags: - Success Plans requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/SearchRequest' responses: '200': description: Success plans returned content: application/json: schema: type: object properties: result: type: boolean data: type: object properties: records: type: array items: $ref: '#/components/schemas/SuccessPlan' totalCount: type: integer '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' components: 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 schemas: 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 SuccessPlan: type: object properties: Gsid: type: string description: Success plan unique identifier Name: type: string description: Plan name CompanyId: type: string description: Associated company Gsid CompanyName: type: string description: Associated company name TypeId: type: string description: Success plan type identifier TypeName: type: string description: Type name Status: type: string enum: - Active - Completed - Archived description: Plan status OwnerId: type: string description: Plan owner user ID OwnerName: type: string description: Plan owner name StartDate: type: string format: date description: Plan start date EndDate: type: string format: date description: Plan end date Comments: type: string description: Plan comments CreatedDate: type: string format: date-time description: Record creation timestamp ModifiedDate: type: string format: date-time description: Last modification timestamp SuccessPlanInput: type: object required: - Name - CompanyId - TypeId properties: Name: type: string CompanyId: type: string TypeId: type: string Status: type: string enum: - Active - Completed - Archived OwnerId: type: string StartDate: type: string format: date EndDate: type: string format: date Comments: type: string parameters: planId: name: planId in: path required: true description: Success plan 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