openapi: 3.1.0 info: title: Gainsight CS Bulk Accounts SCIM 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: SCIM description: SCIM provisioning endpoints paths: /scim/v2/Users: get: operationId: scimListUsers summary: Gainsight SCIM list users description: List users via SCIM 2.0 protocol for identity provider integration. tags: - SCIM parameters: - name: filter in: query description: SCIM filter expression schema: type: string - name: startIndex in: query description: Starting index schema: type: integer default: 1 - name: count in: query description: Number of records schema: type: integer default: 100 responses: '200': description: SCIM users returned content: application/scim+json: schema: type: object properties: schemas: type: array items: type: string totalResults: type: integer startIndex: type: integer itemsPerPage: type: integer Resources: type: array items: $ref: '#/components/schemas/ScimUser' '401': $ref: '#/components/responses/Unauthorized' post: operationId: scimCreateUser summary: Gainsight SCIM create user description: Provision a new user via SCIM 2.0. tags: - SCIM requestBody: required: true content: application/scim+json: schema: $ref: '#/components/schemas/ScimUserInput' responses: '201': description: User provisioned content: application/scim+json: schema: $ref: '#/components/schemas/ScimUser' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '409': description: User already exists /scim/v2/Users/{scimUserId}: get: operationId: scimGetUser summary: Gainsight SCIM get user description: Retrieve a user via SCIM 2.0. tags: - SCIM parameters: - $ref: '#/components/parameters/scimUserId' responses: '200': description: SCIM user returned content: application/scim+json: schema: $ref: '#/components/schemas/ScimUser' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' put: operationId: scimUpdateUser summary: Gainsight SCIM update user description: Update a user via SCIM 2.0. tags: - SCIM parameters: - $ref: '#/components/parameters/scimUserId' requestBody: required: true content: application/scim+json: schema: $ref: '#/components/schemas/ScimUserInput' responses: '200': description: User updated content: application/scim+json: schema: $ref: '#/components/schemas/ScimUser' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' delete: operationId: scimDeleteUser summary: Gainsight SCIM delete user description: De-provision a user via SCIM 2.0. tags: - SCIM parameters: - $ref: '#/components/parameters/scimUserId' responses: '204': description: User de-provisioned '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' 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 parameters: scimUserId: name: scimUserId in: path required: true description: SCIM user ID schema: type: string schemas: ScimUserInput: type: object required: - schemas - userName - name - emails properties: schemas: type: array items: type: string userName: type: string name: type: object required: - givenName - familyName properties: givenName: type: string familyName: type: string emails: type: array items: type: object properties: value: type: string format: email type: type: string primary: type: boolean active: type: boolean ScimUser: type: object properties: schemas: type: array items: type: string id: type: string userName: type: string name: type: object properties: givenName: type: string familyName: type: string emails: type: array items: type: object properties: value: type: string format: email type: type: string primary: type: boolean active: type: boolean meta: type: object properties: resourceType: type: string created: type: string format: date-time lastModified: type: string format: date-time 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