GitLab CI/CD ci_runners API

Operations about ci_runners

OpenAPI Specification

gitlab-ci-ci-runners-api-openapi.yml Raw ↑
swagger: '2.0'
info:
  title: GitLab access_requests ci_runners API
  version: v4
  description: Operations related to access requests
host: gitlab.com
produces:
- application/json
tags:
- name: ci_runners
  description: Operations about ci_runners
paths:
  /api/v4/runners:
    post:
      summary: Register a new runner
      description: Register a new runner for the instance
      produces:
      - application/json
      consumes:
      - application/json
      parameters:
      - name: postApiV4Runners
        in: body
        required: true
        schema:
          $ref: '#/definitions/postApiV4Runners'
      responses:
        '201':
          description: Register a new runner
          schema:
            $ref: '#/definitions/API_Entities_Ci_RunnerRegistrationDetails'
        '400':
          description: Bad Request
        '403':
          description: Forbidden
        '410':
          description: Gone
      tags:
      - ci_runners
      operationId: postApiV4Runners
    delete:
      summary: Delete a runner by authentication token
      description: Delete a registered runner
      produces:
      - application/json
      parameters:
      - in: query
        name: token
        description: The runner's authentication token
        type: string
        required: true
      responses:
        '204':
          description: Delete a registered runner
        '403':
          description: Forbidden
      tags:
      - ci_runners
      operationId: deleteApiV4Runners
  /api/v4/runners/managers:
    delete:
      summary: Internal endpoint that deletes a runner manager by authentication token and system ID.
      description: Delete a registered runner manager
      produces:
      - application/json
      parameters:
      - in: query
        name: token
        description: The runner's authentication token
        type: string
        required: true
      - in: query
        name: system_id
        description: The runner's system identifier.
        type: string
        required: true
      responses:
        '204':
          description: Runner manager was deleted
        '400':
          description: Bad Request
        '403':
          description: Forbidden
        '404':
          description: Not Found
      tags:
      - ci_runners
      operationId: deleteApiV4RunnersManagers
  /api/v4/runners/verify:
    post:
      summary: Verify authentication for a registered runner
      description: Validate authentication credentials
      produces:
      - application/json
      consumes:
      - application/json
      parameters:
      - name: postApiV4RunnersVerify
        in: body
        required: true
        schema:
          $ref: '#/definitions/postApiV4RunnersVerify'
      responses:
        '200':
          description: Credentials are valid
        '403':
          description: Forbidden
        '422':
          description: Runner is orphaned
      tags:
      - ci_runners
      operationId: postApiV4RunnersVerify
  /api/v4/runners/reset_authentication_token:
    post:
      description: Reset runner authentication token with current token
      produces:
      - application/json
      consumes:
      - application/json
      parameters:
      - name: postApiV4RunnersResetAuthenticationToken
        in: body
        required: true
        schema:
          $ref: '#/definitions/postApiV4RunnersResetAuthenticationToken'
      responses:
        '201':
          description: Reset runner authentication token with current token
          schema:
            $ref: '#/definitions/API_Entities_Ci_ResetTokenResult'
        '403':
          description: Forbidden
        '422':
          description: Unprocessable Entity
      tags:
      - ci_runners
      operationId: postApiV4RunnersResetAuthenticationToken
  /api/v4/runners/router/discovery:
    get:
      summary: Discover Job Router information
      description: This endpoint can be used by the runner to retrieve information about the Job Router.
      produces:
      - application/json
      responses:
        '200':
          description: Discover Job Router information
          schema:
            $ref: '#/definitions/API_Entities_Ci_JobRouter_DiscoveryInformation'
        '403':
          description: 403 Forbidden
        '501':
          description: 501 Not Implemented
      tags:
      - ci_runners
      operationId: getApiV4RunnersRouterDiscovery
definitions:
  API_Entities_Ci_JobRouter_DiscoveryInformation:
    type: object
    properties:
      server_url:
        type: string
        example: wss://kas.example.com
    required:
    - server_url
    description: API_Entities_Ci_JobRouter_DiscoveryInformation model
  postApiV4RunnersVerify:
    type: object
    properties:
      token:
        type: string
        description: The runner's authentication token
      system_id:
        type: string
        description: The runner's system identifier
    required:
    - token
    description: Validate authentication credentials
  postApiV4RunnersResetAuthenticationToken:
    type: object
    properties:
      token:
        type: string
        description: The current authentication token of the runner
    required:
    - token
    description: Reset runner authentication token with current token
  API_Entities_Ci_RunnerRegistrationDetails:
    type: object
    properties:
      id:
        type: string
      token:
        type: string
      token_expires_at:
        type: string
    required:
    - id
    - token
    - token_expires_at
    description: API_Entities_Ci_RunnerRegistrationDetails model
  API_Entities_Ci_ResetTokenResult:
    type: object
    properties:
      token:
        type: string
      token_expires_at:
        type: string
    required:
    - token
    description: API_Entities_Ci_ResetTokenResult model
  postApiV4Runners:
    type: object
    properties:
      token:
        type: string
        description: Registration token
      description:
        type: string
        description: Description of the runner
      maintainer_note:
        type: string
        description: 'Deprecated: see `maintenance_note`'
      maintenance_note:
        type: string
        description: Free-form maintenance notes for the runner (1024 characters)
      info:
        type: object
        description: Runner's metadata
        properties:
          name:
            type: string
            description: Runner's name
          version:
            type: string
            description: Runner's version
          revision:
            type: string
            description: Runner's revision
          platform:
            type: string
            description: Runner's platform
          architecture:
            type: string
            description: Runner's architecture
      active:
        type: boolean
        description: 'Deprecated: Use `paused` instead. Specifies if the runner is allowed to receive new jobs'
      paused:
        type: boolean
        description: Specifies if the runner should ignore new jobs
      locked:
        type: boolean
        description: Specifies if the runner should be locked for the current project
      access_level:
        type: string
        description: The access level of the runner
        enum:
        - not_protected
        - ref_protected
      run_untagged:
        type: boolean
        description: Specifies if the runner should handle untagged jobs
      tag_list:
        type: array
        description: A list of runner tags
        items:
          type: string
      maximum_timeout:
        type: integer
        format: int32
        description: Maximum timeout that limits the amount of time (in seconds) that runners can run jobs
    required:
    - token
    description: Register a new runner
securityDefinitions:
  access_token_header:
    type: apiKey
    name: PRIVATE-TOKEN
    in: header
  access_token_query:
    type: apiKey
    name: private_token
    in: query