openapi: 3.0.1 info: title: Gremlin agents jira API description: The API for interacting with the Gremlin Failure-as-a-Service platform termsOfService: https://www.gremlin.com/terms_of_service_2017_03_24 contact: name: Gremlin Support email: support@gremlin.com license: name: Gremlin License url: https://www.gremlin.com/license_2017_03_24 version: '1.0' servers: - url: https://api.gremlin.com/v1 description: Gremlin API v1 tags: - name: jira description: Create, read Jira tickets paths: /jira/issues: get: tags: - jira summary: Returns issues for entity ids with details. description: Requires the privilege [`INTEGRATIONS_READ`](https://www.gremlin.com/docs/user-management/access-control/#privileges) operationId: issuesForGremlinEntityIds parameters: - name: gremlinEntityIds in: query description: A list of Gremlin entity ids required: true schema: type: array items: type: string - name: teamId in: query description: Required when using company session token. required: true schema: type: string responses: '200': description: Returns issues created for entity ids '400': description: Bad request '404': description: No Jira integration exists '403': description: 'User requires privilege for target team: INTEGRATIONS_READ' '401': description: Authorization header missing or malformed. Please provide proper credentials in the authorization header. security: - privilege: - INTEGRATIONS_READ post: tags: - jira summary: Creates new issue. description: Requires the privilege [`INTEGRATIONS_WRITE`](https://www.gremlin.com/docs/user-management/access-control/#privileges) operationId: issue parameters: - name: teamId in: query description: Required when using company session token. required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateJiraIssueRequest' required: true responses: '200': description: Issue successfully created '400': description: Bad request '404': description: No Jira integration exists '403': description: 'User requires privilege for target team: INTEGRATIONS_WRITE' '401': description: Authorization header missing or malformed. Please provide proper credentials in the authorization header. security: - privilege: - INTEGRATIONS_WRITE /jira/issues/count: get: tags: - jira summary: Returns total issues for entity ids with details. description: Requires the privilege [`MINIMUM_TEAM_PRIVILEGES`](https://www.gremlin.com/docs/user-management/access-control/#privileges) operationId: issueCount parameters: - name: gremlinEntityIds in: query required: true schema: type: array items: type: string - name: teamId in: query description: Required when using company session token. required: true schema: type: string responses: '200': description: Returns total issues created for entity ids '400': description: Bad request '403': description: 'User requires privilege for target team: MINIMUM_TEAM_PRIVILEGES' '401': description: Authorization header missing or malformed. Please provide proper credentials in the authorization header. security: - privilege: - MINIMUM_TEAM_PRIVILEGES /jira/issue-meta: get: tags: - jira summary: Returns the fields and data available and required for creating issues. description: Requires the privilege [`MINIMUM_TEAM_PRIVILEGES`](https://www.gremlin.com/docs/user-management/access-control/#privileges) operationId: issueMeta parameters: - name: projectId in: query required: true schema: type: string - name: issueTypeId in: query required: true schema: type: string - name: teamId in: query description: Required when using company session token. required: true schema: type: string responses: '200': description: Returns the fields and data by project id or key and issue type id or key '404': description: Not found '403': description: 'User requires privilege for target team: MINIMUM_TEAM_PRIVILEGES' '401': description: Authorization header missing or malformed. Please provide proper credentials in the authorization header. security: - privilege: - MINIMUM_TEAM_PRIVILEGES /jira/issues/services: get: tags: - jira summary: Returns issues for an entity id with details. description: Requires the privilege [`INTEGRATIONS_READ`](https://www.gremlin.com/docs/user-management/access-control/#privileges) operationId: issuesForGremlinEntityIdOfType parameters: - name: gremlinEntityId in: query description: A Gremlin entity id required: true schema: type: string - name: type in: query required: true schema: type: string enum: - SCENARIO_RUN - GAME_DAY - SERVICE - ATTACK - SCENARIO - name: teamId in: query description: Required when using company session token. required: true schema: type: string responses: '200': description: Returns issues created for an entity id '400': description: Bad request '404': description: No Jira integration exists '403': description: 'User requires privilege for target team: INTEGRATIONS_READ' '401': description: Authorization header missing or malformed. Please provide proper credentials in the authorization header. security: - privilege: - INTEGRATIONS_READ /jira/labels: get: tags: - jira summary: Returns all labels of Jira instance. description: Requires the privilege [`MINIMUM_TEAM_PRIVILEGES`](https://www.gremlin.com/docs/user-management/access-control/#privileges) operationId: labels parameters: - name: teamId in: query description: Required when using company session token. required: true schema: type: string responses: '200': description: Returns all jira labels '403': description: 'User requires privilege for target team: MINIMUM_TEAM_PRIVILEGES' '401': description: Authorization header missing or malformed. Please provide proper credentials in the authorization header. security: - privilege: - MINIMUM_TEAM_PRIVILEGES /jira/priorities: get: tags: - jira summary: Returns the list of issue priorities. description: Requires the privilege [`MINIMUM_TEAM_PRIVILEGES`](https://www.gremlin.com/docs/user-management/access-control/#privileges) operationId: priorities parameters: - name: teamId in: query description: Required when using company session token. required: true schema: type: string responses: default: description: default response content: application/json: schema: type: array items: $ref: '#/components/schemas/JiraPriority' '403': description: 'User requires privilege for target team: MINIMUM_TEAM_PRIVILEGES' '401': description: Authorization header missing or malformed. Please provide proper credentials in the authorization header. security: - privilege: - MINIMUM_TEAM_PRIVILEGES /jira/projects/{projectIdOrKey}: get: tags: - jira summary: Returns project with given id or key. description: Requires the privilege [`MINIMUM_TEAM_PRIVILEGES`](https://www.gremlin.com/docs/user-management/access-control/#privileges) operationId: projectById parameters: - name: projectIdOrKey in: path required: true schema: type: string - name: teamId in: query description: Required when using company session token. required: true schema: type: string responses: '200': description: Returns projects by id or key '404': description: Not found '403': description: 'User requires privilege for target team: MINIMUM_TEAM_PRIVILEGES' '401': description: Authorization header missing or malformed. Please provide proper credentials in the authorization header. security: - privilege: - MINIMUM_TEAM_PRIVILEGES /jira/projects: get: tags: - jira summary: Search for projects. description: Requires the privilege [`MINIMUM_TEAM_PRIVILEGES`](https://www.gremlin.com/docs/user-management/access-control/#privileges) operationId: projectSearch parameters: - name: query in: query schema: type: string - name: startAt in: query schema: type: integer format: int64 - name: maxResults in: query schema: type: integer format: int32 - name: teamId in: query description: Required when using company session token. required: true schema: type: string responses: '200': description: Returns projects '404': description: Not found '403': description: 'User requires privilege for target team: MINIMUM_TEAM_PRIVILEGES' '401': description: Authorization header missing or malformed. Please provide proper credentials in the authorization header. security: - privilege: - MINIMUM_TEAM_PRIVILEGES /jira/projects/{projectIdOrKey}/users: get: tags: - jira summary: Returns users assignable to given project. description: Requires the privilege [`MINIMUM_TEAM_PRIVILEGES`](https://www.gremlin.com/docs/user-management/access-control/#privileges) operationId: projectUsers parameters: - name: projectIdOrKey in: path required: true schema: type: string - name: startAt in: query schema: type: integer format: int64 - name: maxResults in: query schema: type: integer format: int32 - name: teamId in: query description: Required when using company session token. required: true schema: type: string responses: '200': description: Returns users assignable to given project '404': description: Not found '403': description: 'User requires privilege for target team: MINIMUM_TEAM_PRIVILEGES' '401': description: Authorization header missing or malformed. Please provide proper credentials in the authorization header. security: - privilege: - MINIMUM_TEAM_PRIVILEGES components: schemas: CreateJiraIssueFields: required: - issuetype - project - summary type: object properties: summary: type: string description: type: string issuetype: $ref: '#/components/schemas/JiraId' assignee: $ref: '#/components/schemas/JiraId' priority: $ref: '#/components/schemas/JiraId' project: $ref: '#/components/schemas/JiraId' labels: type: array items: type: string JiraId: required: - id type: object properties: id: type: string JiraPriority: required: - id type: object properties: id: type: string name: type: string iconUrl: type: string GremlinEntityReference: required: - id - type type: object properties: id: type: string type: type: string enum: - SCENARIO_RUN - GAME_DAY - SERVICE - ATTACK - SCENARIO serviceEntityType: type: boolean CreateJiraIssueRequest: required: - entity - fields type: object properties: entity: $ref: '#/components/schemas/GremlinEntityReference' fields: $ref: '#/components/schemas/CreateJiraIssueFields'