swagger: '2.0' info: title: GitLab access_requests ci_resource_groups API version: v4 description: Operations related to access requests host: gitlab.com produces: - application/json tags: - name: ci_resource_groups description: Operations to manage job concurrency with resource groups paths: /api/v4/projects/{id}/resource_groups: get: description: Get all resource groups for a project produces: - application/json parameters: - in: path name: id description: The ID or URL-encoded path of the project owned by the authenticated user type: string required: true - in: query name: page description: Current page number type: integer format: int32 default: 1 required: false example: 1 - in: query name: per_page description: Number of items per page type: integer format: int32 default: 20 required: false example: 20 responses: '200': description: Get all resource groups for a project schema: type: array items: $ref: '#/definitions/API_Entities_Ci_ResourceGroup' '401': description: Unauthorized '404': description: Not found tags: - ci_resource_groups operationId: getApiV4ProjectsIdResourceGroups /api/v4/projects/{id}/resource_groups/{key}: get: description: Get a specific resource group produces: - application/json parameters: - in: path name: id description: The ID or URL-encoded path of the project owned by the authenticated user type: string required: true - in: path name: key description: The key of the resource group type: string required: true responses: '200': description: Get a specific resource group schema: $ref: '#/definitions/API_Entities_Ci_ResourceGroup' '401': description: Unauthorized '404': description: Not found tags: - ci_resource_groups operationId: getApiV4ProjectsIdResourceGroupsKey put: summary: Edit an existing resource group description: Updates an existing resource group's properties. produces: - application/json consumes: - application/json parameters: - in: path name: id description: The ID or URL-encoded path of the project owned by the authenticated user type: string required: true - in: path name: key description: The key of the resource group type: string required: true - name: putApiV4ProjectsIdResourceGroupsKey in: body required: true schema: $ref: '#/definitions/putApiV4ProjectsIdResourceGroupsKey' responses: '200': description: Edit an existing resource group schema: $ref: '#/definitions/API_Entities_Ci_ResourceGroup' '400': description: Bad request '401': description: Unauthorized '404': description: Not found tags: - ci_resource_groups operationId: putApiV4ProjectsIdResourceGroupsKey /api/v4/projects/{id}/resource_groups/{key}/current_job: get: description: Show current job for a specific resource group produces: - application/json parameters: - in: path name: id description: The ID or URL-encoded path of the project owned by the authenticated user type: string required: true - in: path name: key description: The key of the resource group type: string required: true responses: '200': description: Show current job for a specific resource group schema: $ref: '#/definitions/API_Entities_Ci_JobBasic' '401': description: Unauthorized '404': description: Not found tags: - ci_resource_groups operationId: getApiV4ProjectsIdResourceGroupsKeyCurrentJob /api/v4/projects/{id}/resource_groups/{key}/upcoming_jobs: get: description: List upcoming jobs for a specific resource group produces: - application/json parameters: - in: path name: id description: The ID or URL-encoded path of the project owned by the authenticated user type: string required: true - in: path name: key description: The key of the resource group type: string required: true - in: query name: page description: Current page number type: integer format: int32 default: 1 required: false example: 1 - in: query name: per_page description: Number of items per page type: integer format: int32 default: 20 required: false example: 20 responses: '200': description: List upcoming jobs for a specific resource group schema: type: array items: $ref: '#/definitions/API_Entities_Ci_JobBasic' '401': description: Unauthorized '404': description: Not found tags: - ci_resource_groups operationId: getApiV4ProjectsIdResourceGroupsKeyUpcomingJobs definitions: API_Entities_CustomAttribute: type: object properties: key: type: string example: foo value: type: string example: bar required: - key - value description: API_Entities_CustomAttribute model API_Entities_Ci_PipelineBasic: type: object properties: id: type: integer format: int32 example: 1 iid: type: integer format: int32 example: 2 project_id: type: integer format: int32 example: 3 sha: type: string example: 0ec9e58fdfca6cdd6652c083c9edb53abc0bad52 ref: type: string example: feature-branch status: type: string example: success source: type: string example: push created_at: type: string format: date-time example: '2022-10-21T16:49:48.000+02:00' updated_at: type: string format: date-time example: '2022-10-21T16:49:48.000+02:00' web_url: type: string example: https://gitlab.example.com/gitlab-org/gitlab-foss/-/pipelines/61 required: - id - iid - project_id - sha - ref - status - source - created_at - updated_at - web_url description: API_Entities_Ci_PipelineBasic model API_Entities_Commit: type: object properties: id: type: string example: 2695effb5807a22ff3d138d593fd856244e155e7 short_id: type: string example: 2695effb created_at: type: string format: date-time example: '2017-07-26T11:08:53.000+02:00' parent_ids: type: array items: type: string example: - 2a4b78934375d7f53875269ffd4f45fd83a84ebe title: type: string example: Initial commit message: type: string example: Initial commit author_name: type: string example: John Smith author_email: type: string example: john@example.com authored_date: type: string format: date-time example: '2012-05-28T04:42:42-07:00' committer_name: type: string example: Jack Smith committer_email: type: string example: jack@example.com committed_date: type: string format: date-time example: '2012-05-28T04:42:42-07:00' trailers: type: object example: Merged-By: Jane Doe janedoe@gitlab.com extended_trailers: type: object example: Signed-off-by: - John Doe - Jane Doe web_url: type: string example: https://gitlab.example.com/janedoe/gitlab-foss/-/commit/ed899a2f4b50b4370feeea94676502b42383c746 required: - id - short_id - created_at - parent_ids - title - message - author_name - author_email - authored_date - committer_name - committer_email - committed_date - trailers - extended_trailers - web_url description: API_Entities_Commit model putApiV4ProjectsIdResourceGroupsKey: type: object properties: process_mode: type: string description: The process mode of the resource group enum: - unordered - oldest_first - newest_first - newest_ready_first description: Edit an existing resource group API_Entities_Ci_JobBasic: type: object properties: id: type: integer format: int32 example: 1 status: type: string example: waiting_for_resource stage: type: string example: deploy name: type: string example: deploy_to_production ref: type: string example: main tag: type: boolean coverage: type: number format: float example: 98.29 allow_failure: type: boolean created_at: type: string format: date-time example: '2015-12-24T15:51:21.880Z' started_at: type: string format: date-time example: '2015-12-24T17:54:30.733Z' finished_at: type: string format: date-time example: '2015-12-24T17:54:31.198Z' erased_at: type: string format: date-time example: '2015-12-24T18:00:29.728Z' duration: type: number format: float example: 0.465 description: Time spent running queued_duration: type: number format: float example: 0.123 description: Time spent enqueued user: $ref: '#/definitions/API_Entities_User' commit: $ref: '#/definitions/API_Entities_Commit' pipeline: $ref: '#/definitions/API_Entities_Ci_PipelineBasic' failure_reason: type: string example: script_failure web_url: type: string example: https://example.com/foo/bar/-/jobs/1 project: type: object properties: ci_job_token_scope_enabled: type: string example: false required: - ci_job_token_scope_enabled required: - id - status - stage - name - ref - tag - coverage - allow_failure - created_at - started_at - finished_at - erased_at - duration - queued_duration - user - commit - pipeline - web_url - project description: API_Entities_Ci_JobBasic model API_Entities_Ci_ResourceGroup: type: object properties: id: type: integer format: int32 example: 1 key: type: string example: production process_mode: type: string example: unordered created_at: type: string format: date-time example: '2021-09-01T08:04:59.650Z' updated_at: type: string format: date-time example: '2021-09-01T08:04:59.650Z' required: - id - key - process_mode - created_at - updated_at description: API_Entities_Ci_ResourceGroup model API_Entities_User: type: object properties: id: type: integer format: int32 example: 1 username: type: string example: admin public_email: type: string example: john@example.com name: type: string example: Administrator state: type: string example: active locked: type: boolean avatar_url: type: string example: https://gravatar.com/avatar/1 avatar_path: type: string example: /user/avatar/28/The-Big-Lebowski-400-400.png custom_attributes: type: array items: $ref: '#/definitions/API_Entities_CustomAttribute' web_url: type: string example: https://gitlab.example.com/root created_at: type: string bio: type: string location: type: string linkedin: type: string twitter: type: string discord: type: string website_url: type: string github: type: string job_title: type: string pronouns: type: string organization: type: string bot: type: boolean work_information: type: string followers: type: string following: type: string is_followed: type: string local_time: type: string required: - id - username - public_email - name - state - locked - avatar_url - web_url - bio - location - linkedin - twitter - discord - website_url - github - job_title - pronouns - organization - bot - work_information - local_time securityDefinitions: access_token_header: type: apiKey name: PRIVATE-TOKEN in: header access_token_query: type: apiKey name: private_token in: query