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