GitLab CI/CD users API

Operations about users

OpenAPI Specification

gitlab-ci-users-api-openapi.yml Raw ↑
swagger: '2.0'
info:
  title: GitLab access_requests users API
  version: v4
  description: Operations related to access requests
host: gitlab.com
produces:
- application/json
tags:
- name: users
  description: Operations about users
paths:
  /api/v4/user_counts:
    get:
      summary: Return the user specific counts
      description: Assigned open issues, assigned MRs and pending todos count
      produces:
      - application/json
      responses:
        '200':
          description: Return the user specific counts
          schema:
            $ref: '#/definitions/API_Entities_UserCounts'
      tags:
      - users
      operationId: getApiV4UserCounts
  /api/v4/user/runners:
    post:
      summary: Create a runner owned by currently authenticated user
      description: Create a new runner
      produces:
      - application/json
      consumes:
      - application/json
      parameters:
      - name: postApiV4UserRunners
        in: body
        required: true
        schema:
          $ref: '#/definitions/postApiV4UserRunners'
      responses:
        '201':
          description: Create a runner owned by currently authenticated user
          schema:
            $ref: '#/definitions/API_Entities_Ci_RunnerRegistrationDetails'
        '400':
          description: Bad Request
        '403':
          description: Forbidden
      tags:
      - users
      operationId: postApiV4UserRunners
definitions:
  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_UserCounts:
    type: object
    properties:
      merge_requests:
        type: integer
        format: int32
        example: 10
      assigned_issues:
        type: integer
        format: int32
        example: 10
      assigned_merge_requests:
        type: integer
        format: int32
        example: 10
      review_requested_merge_requests:
        type: integer
        format: int32
        example: 10
      todos:
        type: integer
        format: int32
        example: 10
    required:
    - merge_requests
    - assigned_issues
    - assigned_merge_requests
    - review_requested_merge_requests
    - todos
    description: API_Entities_UserCounts model
  postApiV4UserRunners:
    type: object
    properties:
      runner_type:
        type: string
        description: Specifies the scope of the runner
        enum:
        - instance_type
        - group_type
        - project_type
      group_id:
        type: integer
        format: int32
        description: The ID of the group that the runner is created in
        example: 1
      project_id:
        type: integer
        format: int32
        description: The ID of the project that the runner is created in
        example: 1
      description:
        type: string
        description: Description of the runner
      maintenance_note:
        type: string
        description: Free-form maintenance notes for the runner (1024 characters)
      paused:
        type: boolean
        description: Specifies if the runner should ignore new jobs (defaults to false)
      locked:
        type: boolean
        description: Specifies if the runner should be locked for the current project (defaults to false)
      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  (defaults to true)
      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
      token_expires_at:
        type: string
        format: date-time
        description: The expiration time for the runner authentication token (ISO 8601 format). Must be between 5 minutes and 15 days in the future, and cannot exceed instance/group/project limits.
      token_rotation_deadline:
        type: string
        format: date-time
        description: The deadline for token rotation (ISO 8601 format). Must be specified with token_expires_at and be <= token_expires_at.
    required:
    - runner_type
    - group_id
    - project_id
    description: Create a runner owned by currently authenticated user
securityDefinitions:
  access_token_header:
    type: apiKey
    name: PRIVATE-TOKEN
    in: header
  access_token_query:
    type: apiKey
    name: private_token
    in: query