Gremlin kubernetes.targets API

Get information on attackable kubernetes targets

OpenAPI Specification

gremlin-kubernetes-targets-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Gremlin agents kubernetes.targets 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: kubernetes.targets
  description: Get information on attackable kubernetes targets
paths:
  /kubernetes/targets/kinds:
    get:
      tags:
      - kubernetes.targets
      summary: List all targetable kubernetes object types
      description: Requires the privilege [`CLIENTS_READ`](https://www.gremlin.com/docs/user-management/access-control/#privileges)
      operationId: kinds
      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:
                  type: string
                  enum:
                  - DEPLOYMENT
                  - REPLICASET
                  - POD
                  - DAEMONSET
                  - STATEFULSET
                  - SERVICE
                  - INGRESS
                  - DEPLOYMENTCONFIG
                  - REPLICATIONCONTROLLER
                  - ROLLOUT
                  - HORIZONTALPODAUTOSCALER
        '403':
          description: 'User requires privilege for target team: CLIENTS_READ'
        '401':
          description: Authorization header missing or malformed. Please provide proper credentials in the authorization header.
      security:
      - privilege:
        - CLIENTS_READ
  /kubernetes/targets:
    get:
      tags:
      - kubernetes.targets
      summary: List all attackable targets
      description: Requires the privilege [`CLIENTS_READ`](https://www.gremlin.com/docs/user-management/access-control/#privileges)
      operationId: targets
      parameters:
      - name: clientId
        in: query
        schema:
          type: string
      - name: serviceId
        in: query
        schema:
          type: string
          default: ''
      - name: teamId
        in: query
        description: Required when using company session token.
        required: true
        schema:
          type: string
      responses:
        default:
          description: default response
          content:
            application/json: {}
        '403':
          description: 'User requires privilege for target team: CLIENTS_READ'
        '401':
          description: Authorization header missing or malformed. Please provide proper credentials in the authorization header.
      security:
      - privilege:
        - CLIENTS_READ
  /kubernetes/targets/by-selector:
    post:
      tags:
      - kubernetes.targets
      summary: List all attackable targets that match the given label selector
      description: Requires the privilege [`CLIENTS_READ`](https://www.gremlin.com/docs/user-management/access-control/#privileges)
      operationId: targetsBySelector
      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/LabelSelection'
        required: true
      responses:
        default:
          description: default response
          content:
            application/json: {}
        '403':
          description: 'User requires privilege for target team: CLIENTS_READ'
        '401':
          description: Authorization header missing or malformed. Please provide proper credentials in the authorization header.
      security:
      - privilege:
        - CLIENTS_READ
components:
  schemas:
    LabelSelection:
      required:
      - clusterId
      - labelSelector
      type: object
      properties:
        labelSelector:
          type: string
        clusterId:
          type: string
        allNamespaces:
          type: boolean
        namespaces:
          type: array
          items:
            type: string