openapi: 3.0.1 info: title: GitLab API version: v4 description: > An OpenAPI definition for the GitLab REST API. Few API resources or endpoints are currently included. The intent is to expand this to match the entire Markdown documentation of the API: . Contributions are welcome. When viewing this on gitlab.com, you can test API calls directly from the browser against the `gitlab.com` instance, if you are logged in. The feature uses the current [GitLab session cookie](https://docs.gitlab.com/ee/api/index.html#session-cookie), so each request is made using your account. Instructions for using this tool can be found in [Interactive API Documentation](https://docs.gitlab.com/ee/api/openapi/openapi_interactive.html) termsOfService: https://about.gitlab.com/terms/ license: name: CC BY-SA 4.0 url: https://gitlab.com/gitlab-org/gitlab/-/blob/master/LICENSE servers: - url: https://www.gitlab.com/api/ security: - ApiKeyAuth: [] tags: - name: Admin - name: Application - name: Applications description: Operations about applications - name: Avatar - name: Broadcast Messages description: Operations about broadcast_messages - name: Bulk Imports description: Operations about bulk_imports - name: Groups - name: Metadata description: Operations related to metadata of the GitLab instance - name: Projects description: Operations related to projects - name: Version paths: /api/v4/groups/{id}/badges/{badge_id}: get: tags: - Groups summary: GitLab Gets a Badge of a Group. description: This feature was introduced in GitLab 10.6. operationId: getApiV4GroupsIdBadgesBadgeId parameters: - name: id in: path description: >- The ID or URL-encoded path of the group owned by the authenticated user. required: true schema: type: string example: '123456' - name: badge_id in: path description: The badge ID required: true schema: type: integer format: int32 example: 42 responses: '200': description: Gets a badge of a group. content: application/json: schema: $ref: '#/components/schemas/API_Entities_Badge' x-microcks-operation: delay: 0 dispatcher: FALLBACK put: tags: - Groups summary: GitLab Updates a Badge of a Group. description: This feature was introduced in GitLab 10.6. operationId: putApiV4GroupsIdBadgesBadgeId parameters: - name: id in: path description: >- The ID or URL-encoded path of the group owned by the authenticated user. required: true schema: type: string example: '123456' - name: badge_id in: path required: true schema: type: integer format: int32 example: 42 requestBody: content: application/json: schema: properties: link_url: type: string description: URL of the badge link image_url: type: string description: URL of the badge image name: type: string description: Name for the badge responses: '200': description: Updates a badge of a group. content: application/json: schema: $ref: '#/components/schemas/API_Entities_Badge' x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: tags: - Groups summary: GitLab Removes a Badge from the Group. description: This feature was introduced in GitLab 10.6. operationId: deleteApiV4GroupsIdBadgesBadgeId parameters: - name: id in: path description: >- The ID or URL-encoded path of the group owned by the authenticated user. required: true schema: type: string example: '123456' - name: badge_id in: path description: The badge ID required: true schema: type: integer format: int32 example: 42 responses: '204': description: Removes a badge from the group. content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/groups/{id}/badges: get: tags: - Groups summary: GitLab Gets a List of Group Badges Viewable by the Authenticated User. description: This feature was introduced in GitLab 10.6. operationId: getApiV4GroupsIdBadges parameters: - name: id in: path description: >- The ID or URL-encoded path of the group owned by the authenticated user. required: true schema: type: string example: '123456' - name: page in: query description: Current page number schema: type: integer format: int32 default: 1 example: 42 - name: per_page in: query description: Number of items per page schema: type: integer format: int32 default: 20 example: 42 - name: name in: query description: Name for the badge schema: type: string example: Example Project responses: '200': description: Gets a list of group badges viewable by the authenticated user. content: application/json: schema: type: array items: $ref: '#/components/schemas/API_Entities_Badge' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: tags: - Groups summary: GitLab Adds a Badge to a Group. description: This feature was introduced in GitLab 10.6. operationId: postApiV4GroupsIdBadges parameters: - name: id in: path description: >- The ID or URL-encoded path of the group owned by the authenticated user. required: true schema: type: string example: '123456' requestBody: content: application/json: schema: required: - image_url - link_url properties: link_url: type: string description: URL of the badge link image_url: type: string description: URL of the badge image name: type: string description: Name for the badge required: true responses: '201': description: Adds a badge to a group. content: application/json: schema: $ref: '#/components/schemas/API_Entities_Badge' x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/groups/{id}/badges/render: get: tags: - Groups summary: GitLab Preview a Badge from a Group. description: This feature was introduced in GitLab 10.6. operationId: getApiV4GroupsIdBadgesRender parameters: - name: id in: path description: >- The ID or URL-encoded path of the group owned by the authenticated user. required: true schema: type: string example: '123456' - name: link_url in: query description: URL of the badge link required: true schema: type: string example: https://gitlab.com/example - name: image_url in: query description: URL of the badge image required: true schema: type: string example: https://gitlab.com/example responses: '200': description: Preview a badge from a group. content: application/json: schema: $ref: '#/components/schemas/API_Entities_BasicBadgeDetails' x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/groups/{id}/access_requests/{user_id}: delete: tags: - Groups summary: GitLab Denies an Access Request for the Given User. description: This feature was introduced in GitLab 8.11. operationId: deleteApiV4GroupsIdAccessRequestsUserId parameters: - name: id in: path description: >- The ID or URL-encoded path of the group owned by the authenticated user required: true schema: type: string example: '123456' - name: user_id in: path description: The user ID of the access requester required: true schema: type: integer format: int32 example: 42 responses: '204': description: Denies an access request for the given user. content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/groups/{id}/access_requests/{user_id}/approve: put: tags: - Groups summary: GitLab Approves an Access Request for the Given User. description: This feature was introduced in GitLab 8.11. operationId: putApiV4GroupsIdAccessRequestsUserIdApprove parameters: - name: id in: path description: >- The ID or URL-encoded path of the group owned by the authenticated user required: true schema: type: string example: '123456' - name: user_id in: path description: The user ID of the access requester required: true schema: type: integer format: int32 example: 42 requestBody: content: application/json: schema: properties: access_level: type: integer description: 'A valid access level (defaults: `30`, the Developer role)' format: int32 default: 30 responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/API_Entities_AccessRequester' successfull_response: example: id: 1 username: raymond_smith name: Raymond Smith state: active created_at: 2012-10-22T14:13:35Z access_level: 20 x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/groups/{id}/access_requests: get: tags: - Groups summary: GitLab Gets a List of Access Requests for a Group. description: This feature was introduced in GitLab 8.11. operationId: getApiV4GroupsIdAccessRequests parameters: - name: id in: path description: >- The ID or URL-encoded path of the group owned by the authenticated user required: true schema: type: string example: '123456' - name: page in: query description: Current page number schema: type: integer format: int32 default: 1 example: 42 - name: per_page in: query description: Number of items per page schema: type: integer format: int32 default: 20 example: 42 responses: '200': description: Gets a list of access requests for a group. content: application/json: schema: $ref: '#/components/schemas/API_Entities_AccessRequester' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: tags: - Groups summary: GitLab Requests Access for the Authenticated User to a Group. description: This feature was introduced in GitLab 8.11. operationId: postApiV4GroupsIdAccessRequests parameters: - name: id in: path description: >- The ID or URL-encoded path of the group owned by the authenticated user required: true schema: type: string example: '123456' responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/API_Entities_AccessRequester' successfull_response: example: id: 1 username: raymond_smith name: Raymond Smith state: active created_at: 2012-10-22T14:13:35Z access_level: 20 x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/projects/{id}/repository/merged_branches: delete: tags: - Projects description: Delete all merged branches operationId: deleteApiV4ProjectsIdRepositoryMergedBranches parameters: - name: id in: path description: The ID or URL-encoded path of the project required: true schema: type: string example: '123456' responses: '202': description: 202 Accepted content: {} '404': description: 404 Project Not Found content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/projects/{id}/repository/branches/{branch}: get: tags: - Projects description: Get a single repository branch operationId: getApiV4ProjectsIdRepositoryBranchesBranch parameters: - name: id in: path description: The ID or URL-encoded path of the project required: true schema: type: string example: '123456' - name: branch in: path required: true schema: type: integer format: int32 example: 42 responses: '200': description: Get a single repository branch content: application/json: schema: $ref: '#/components/schemas/API_Entities_Branch' '404': description: Branch Not Found content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: tags: - Projects description: Delete a branch operationId: deleteApiV4ProjectsIdRepositoryBranchesBranch parameters: - name: id in: path description: The ID or URL-encoded path of the project required: true schema: type: string example: '123456' - name: branch in: path description: The name of the branch required: true schema: type: string example: main responses: '204': description: Delete a branch content: {} '404': description: Branch Not Found content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK head: tags: - Projects description: Check if a branch exists operationId: headApiV4ProjectsIdRepositoryBranchesBranch parameters: - name: id in: path description: The ID or URL-encoded path of the project required: true schema: type: string - name: branch in: path description: The name of the branch required: true schema: type: string responses: '204': description: No Content content: {} '404': description: Not Found content: {} /api/v4/projects/{id}/repository/branches: get: tags: - Projects description: Get a project repository branches operationId: getApiV4ProjectsIdRepositoryBranches parameters: - name: id in: path description: The ID or URL-encoded path of the project required: true schema: type: string example: '123456' - name: page in: query description: Current page number schema: type: integer format: int32 default: 1 example: 42 - name: per_page in: query description: Number of items per page schema: type: integer format: int32 default: 20 example: 42 - name: search in: query description: Return list of branches matching the search criteria schema: type: string example: example_value - name: regex in: query description: Return list of branches matching the regex schema: type: string example: example_value - name: sort in: query description: Return list of branches sorted by the given field schema: type: string enum: - name_asc - updated_asc - updated_desc example: name_asc - name: page_token in: query description: Name of branch to start the pagination from schema: type: string example: glpat-example-token responses: '200': description: Get a project repository branches content: application/json: schema: type: array items: $ref: '#/components/schemas/API_Entities_Branch' '404': description: 404 Project Not Found content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK post: tags: - Projects description: Create branch operationId: postApiV4ProjectsIdRepositoryBranches parameters: - name: id in: path description: The ID or URL-encoded path of the project required: true schema: type: string example: '123456' - name: branch in: query description: The name of the branch required: true schema: type: string example: main - name: ref in: query description: Create branch from commit sha or existing branch required: true schema: type: string example: main responses: '201': description: Create branch content: application/json: schema: $ref: '#/components/schemas/API_Entities_Branch' '400': description: Failed to create branch content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/projects/{id}/repository/branches/{branch}/unprotect: put: tags: - Projects description: Unprotect a single branch operationId: putApiV4ProjectsIdRepositoryBranchesBranchUnprotect parameters: - name: id in: path description: The ID or URL-encoded path of the project required: true schema: type: string example: '123456' - name: branch in: path description: The name of the branch required: true schema: type: string example: main responses: '200': description: Unprotect a single branch content: application/json: schema: $ref: '#/components/schemas/API_Entities_Branch' '404': description: 404 Project Not Found content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/projects/{id}/repository/branches/{branch}/protect: put: tags: - Projects description: Protect a single branch operationId: putApiV4ProjectsIdRepositoryBranchesBranchProtect parameters: - name: id in: path description: The ID or URL-encoded path of the project required: true schema: type: string example: '123456' - name: branch in: path description: The name of the branch required: true schema: type: string example: main requestBody: content: application/json: schema: properties: developers_can_push: type: boolean description: Flag if developers can push to that branch developers_can_merge: type: boolean description: Flag if developers can merge to that branch responses: '200': description: Protect a single branch content: application/json: schema: $ref: '#/components/schemas/API_Entities_Branch' '404': description: 404 Branch Not Found content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/projects/{id}/badges/{badge_id}: get: tags: - Projects summary: GitLab Gets a Badge of a Project. description: This feature was introduced in GitLab 10.6. operationId: getApiV4ProjectsIdBadgesBadgeId parameters: - name: id in: path description: >- The ID or URL-encoded path of the project owned by the authenticated user. required: true schema: type: string example: '123456' - name: badge_id in: path description: The badge ID required: true schema: type: integer format: int32 example: 42 responses: '200': description: Gets a badge of a project. content: application/json: schema: $ref: '#/components/schemas/API_Entities_Badge' x-microcks-operation: delay: 0 dispatcher: FALLBACK put: tags: - Projects summary: GitLab Updates a Badge of a Project. description: This feature was introduced in GitLab 10.6. operationId: putApiV4ProjectsIdBadgesBadgeId parameters: - name: id in: path description: >- The ID or URL-encoded path of the project owned by the authenticated user. required: true schema: type: string example: '123456' - name: badge_id in: path required: true schema: type: integer format: int32 example: 42 requestBody: content: application/json: schema: properties: link_url: type: string description: URL of the badge link image_url: type: string description: URL of the badge image name: type: string description: Name for the badge responses: '200': description: Updates a badge of a project. content: application/json: schema: $ref: '#/components/schemas/API_Entities_Badge' x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: tags: - Projects summary: GitLab Removes a Badge from the Project. description: This feature was introduced in GitLab 10.6. operationId: deleteApiV4ProjectsIdBadgesBadgeId parameters: - name: id in: path description: >- The ID or URL-encoded path of the project owned by the authenticated user. required: true schema: type: string example: '123456' - name: badge_id in: path description: The badge ID required: true schema: type: integer format: int32 example: 42 responses: '204': description: Removes a badge from the project. content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/projects/{id}/badges: get: tags: - Projects summary: GitLab Gets a List of Project Badges Viewable by the Authenticated User. description: This feature was introduced in GitLab 10.6. operationId: getApiV4ProjectsIdBadges parameters: - name: id in: path description: >- The ID or URL-encoded path of the project owned by the authenticated user. required: true schema: type: string example: '123456' - name: page in: query description: Current page number schema: type: integer format: int32 default: 1 example: 42 - name: per_page in: query description: Number of items per page schema: type: integer format: int32 default: 20 example: 42 - name: name in: query description: Name for the badge schema: type: string example: Example Project responses: '200': description: Gets a list of project badges viewable by the authenticated user. content: application/json: schema: type: array items: $ref: '#/components/schemas/API_Entities_Badge' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: tags: - Projects summary: GitLab Adds a Badge to a Project. description: This feature was introduced in GitLab 10.6. operationId: postApiV4ProjectsIdBadges parameters: - name: id in: path description: >- The ID or URL-encoded path of the project owned by the authenticated user. required: true schema: type: string example: '123456' requestBody: content: application/json: schema: required: - image_url - link_url properties: link_url: type: string description: URL of the badge link image_url: type: string description: URL of the badge image name: type: string description: Name for the badge required: true responses: '201': description: Adds a badge to a project. content: application/json: schema: $ref: '#/components/schemas/API_Entities_Badge' x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/projects/{id}/badges/render: get: tags: - Projects summary: GitLab Preview a Badge from a Project. description: This feature was introduced in GitLab 10.6. operationId: getApiV4ProjectsIdBadgesRender parameters: - name: id in: path description: >- The ID or URL-encoded path of the project owned by the authenticated user. required: true schema: type: string example: '123456' - name: link_url in: query description: URL of the badge link required: true schema: type: string example: https://gitlab.com/example - name: image_url in: query description: URL of the badge image required: true schema: type: string example: https://gitlab.com/example responses: '200': description: Preview a badge from a project. content: application/json: schema: $ref: '#/components/schemas/API_Entities_BasicBadgeDetails' x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/projects/{id}/access_requests/{user_id}: delete: tags: - Projects summary: GitLab Denies an Access Request for the Given User. description: This feature was introduced in GitLab 8.11. operationId: deleteApiV4ProjectsIdAccessRequestsUserId parameters: - name: id in: path description: >- The ID or URL-encoded path of the project owned by the authenticated user required: true schema: type: string example: '123456' - name: user_id in: path description: The user ID of the access requester required: true schema: type: integer format: int32 example: 42 responses: '204': description: Denies an access request for the given user. content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/projects/{id}/access_requests/{user_id}/approve: put: tags: - Projects summary: GitLab Approves an Access Request for the Given User. description: This feature was introduced in GitLab 8.11. operationId: putApiV4ProjectsIdAccessRequestsUserIdApprove parameters: - name: id in: path description: >- The ID or URL-encoded path of the project owned by the authenticated user required: true schema: type: string example: '123456' - name: user_id in: path description: The user ID of the access requester required: true schema: type: integer format: int32 example: 42 requestBody: content: application/json: schema: properties: access_level: type: integer description: 'A valid access level (defaults: `30`, the Developer role)' format: int32 default: 30 responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/API_Entities_AccessRequester' successfull_response: example: id: 1 username: raymond_smith name: Raymond Smith state: active created_at: 2012-10-22T14:13:35Z access_level: 20 x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/projects/{id}/access_requests: get: tags: - Projects summary: GitLab Gets a List of Access Requests for a Project. description: This feature was introduced in GitLab 8.11. operationId: getApiV4ProjectsIdAccessRequests parameters: - name: id in: path description: >- The ID or URL-encoded path of the project owned by the authenticated user required: true schema: type: string example: '123456' - name: page in: query description: Current page number schema: type: integer format: int32 default: 1 example: 42 - name: per_page in: query description: Number of items per page schema: type: integer format: int32 default: 20 example: 42 responses: '200': description: Gets a list of access requests for a project. content: application/json: schema: $ref: '#/components/schemas/API_Entities_AccessRequester' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: tags: - Projects summary: GitLab Requests Access for the Authenticated User to a Project. description: This feature was introduced in GitLab 8.11. operationId: postApiV4ProjectsIdAccessRequests parameters: - name: id in: path description: >- The ID or URL-encoded path of the project owned by the authenticated user required: true schema: type: string example: '123456' responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/API_Entities_AccessRequester' successfull_response: example: id: 1 username: raymond_smith name: Raymond Smith state: active created_at: 2012-10-22T14:13:35Z access_level: 20 x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/projects/{id}/alert_management_alerts/{alert_iid}/metric_images/{metric_image_id}: put: tags: - Projects description: Update a metric image for an alert operationId: putApiV4ProjectsIdAlertManagementAlertsAlertIidMetricImagesMetricImageId parameters: - name: id in: path description: The ID or URL-encoded path of the project required: true schema: type: string example: '123456' - name: alert_iid in: path description: The IID of the Alert required: true schema: type: integer format: int32 example: 42 - name: metric_image_id in: path description: The ID of metric image required: true schema: type: integer format: int32 example: 42 requestBody: content: multipart/form-data: schema: properties: url: type: string description: The url to view more metric info url_text: type: string description: A description of the image or URL responses: '200': description: Update a metric image for an alert content: application/json: schema: $ref: '#/components/schemas/API_Entities_MetricImage' '403': description: Forbidden content: {} '422': description: Unprocessable entity content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: tags: - Projects description: Remove a metric image for an alert operationId: >- deleteApiV4ProjectsIdAlertManagementAlertsAlertIidMetricImagesMetricImageId parameters: - name: id in: path description: The ID or URL-encoded path of the project required: true schema: type: string example: '123456' - name: alert_iid in: path description: The IID of the Alert required: true schema: type: integer format: int32 example: 42 - name: metric_image_id in: path description: The ID of metric image required: true schema: type: integer format: int32 example: 42 responses: '204': description: Remove a metric image for an alert content: application/json: schema: $ref: '#/components/schemas/API_Entities_MetricImage' '403': description: Forbidden content: {} '422': description: Unprocessable entity content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/projects/{id}/alert_management_alerts/{alert_iid}/metric_images: get: tags: - Projects description: Metric Images for alert operationId: getApiV4ProjectsIdAlertManagementAlertsAlertIidMetricImages parameters: - name: id in: path description: The ID or URL-encoded path of the project required: true schema: type: string example: '123456' - name: alert_iid in: path description: The IID of the Alert required: true schema: type: integer format: int32 example: 42 responses: '200': description: Metric Images for alert content: application/json: schema: type: array items: $ref: '#/components/schemas/API_Entities_MetricImage' '404': description: Not found content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK post: tags: - Projects description: Upload a metric image for an alert operationId: postApiV4ProjectsIdAlertManagementAlertsAlertIidMetricImages parameters: - name: id in: path description: The ID or URL-encoded path of the project required: true schema: type: string example: '123456' - name: alert_iid in: path description: The IID of the Alert required: true schema: type: integer format: int32 example: 42 requestBody: content: multipart/form-data: schema: required: - file properties: file: type: string description: The image file to be uploaded format: binary url: type: string description: The url to view more metric info url_text: type: string description: A description of the image or URL required: true responses: '200': description: Upload a metric image for an alert content: application/json: schema: $ref: '#/components/schemas/API_Entities_MetricImage' '403': description: Forbidden content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/projects/{id}/alert_management_alerts/{alert_iid}/metric_images/authorize: post: tags: - Projects description: Workhorse authorize metric image file upload operationId: postApiV4ProjectsIdAlertManagementAlertsAlertIidMetricImagesAuthorize parameters: - name: id in: path description: The ID or URL-encoded path of the project required: true schema: type: string example: '123456' - name: alert_iid in: path description: The IID of the Alert required: true schema: type: integer format: int32 example: 42 responses: '200': description: Workhorse authorize metric image file upload content: {} '403': description: Forbidden content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/admin/batched_background_migrations/{id}: get: tags: - Admin description: Retrieve a batched background migration operationId: getApiV4AdminBatchedBackgroundMigrationsId parameters: - name: database in: query description: The name of the database schema: type: string default: main enum: - main - ci - embedding - main_clusterwide - geo example: main - name: id in: path description: The batched background migration id required: true schema: type: integer format: int32 example: 42 responses: '200': description: Retrieve a batched background migration content: application/json: schema: $ref: '#/components/schemas/API_Entities_BatchedBackgroundMigration' '401': description: 401 Unauthorized content: {} '403': description: 403 Forbidden content: {} '404': description: 404 Not found content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/admin/batched_background_migrations: get: tags: - Admin description: Get the list of batched background migrations operationId: getApiV4AdminBatchedBackgroundMigrations parameters: - name: database in: query description: The name of the database, the default `main` schema: type: string default: main enum: - main - ci - embedding - main_clusterwide - geo example: main responses: '200': description: Get the list of batched background migrations content: application/json: schema: type: array items: $ref: '#/components/schemas/API_Entities_BatchedBackgroundMigration' '401': description: 401 Unauthorized content: {} '403': description: 403 Forbidden content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/admin/batched_background_migrations/{id}/resume: put: tags: - Admin description: Resume a batched background migration operationId: putApiV4AdminBatchedBackgroundMigrationsIdResume parameters: - name: id in: path description: The batched background migration id required: true schema: type: integer format: int32 example: 42 requestBody: content: application/json: schema: properties: database: type: string description: The name of the database default: main enum: - main - ci - embedding - main_clusterwide - geo responses: '200': description: Resume a batched background migration content: application/json: schema: $ref: '#/components/schemas/API_Entities_BatchedBackgroundMigration' '401': description: 401 Unauthorized content: {} '403': description: 403 Forbidden content: {} '404': description: 404 Not found content: {} '422': description: You can resume only `paused` batched background migrations. content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/admin/batched_background_migrations/{id}/pause: put: tags: - Admin description: Pause a batched background migration operationId: putApiV4AdminBatchedBackgroundMigrationsIdPause parameters: - name: id in: path description: The batched background migration id required: true schema: type: integer format: int32 example: 42 requestBody: content: application/json: schema: properties: database: type: string description: The name of the database default: main enum: - main - ci - embedding - main_clusterwide - geo responses: '200': description: Pause a batched background migration content: application/json: schema: $ref: '#/components/schemas/API_Entities_BatchedBackgroundMigration' '401': description: 401 Unauthorized content: {} '403': description: 403 Forbidden content: {} '404': description: 404 Not found content: {} '422': description: You can pause only `active` batched background migrations. content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/admin/ci/variables/{key}: get: tags: - Admin description: Get the details of a specific instance-level variable operationId: getApiV4AdminCiVariablesKey parameters: - name: key in: path description: The key of a variable required: true schema: type: string example: example_value responses: '200': description: Get the details of a specific instance-level variable content: application/json: schema: $ref: '#/components/schemas/API_Entities_Ci_Variable' '404': description: Instance Variable Not Found content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK put: tags: - Admin description: Update an instance-level variable operationId: putApiV4AdminCiVariablesKey parameters: - name: key in: path description: The key of a variable required: true schema: type: string example: example_value requestBody: content: application/json: schema: properties: value: type: string description: The value of a variable protected: type: boolean description: Whether the variable is protected masked: type: boolean description: Whether the variable is masked raw: type: boolean description: Whether the variable will be expanded variable_type: type: string description: >- The type of a variable. Available types are: env_var (default) and file enum: - env_var - file responses: '200': description: Update an instance-level variable content: application/json: schema: $ref: '#/components/schemas/API_Entities_Ci_Variable' '404': description: Instance Variable Not Found content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: tags: - Admin description: Delete an existing instance-level variable operationId: deleteApiV4AdminCiVariablesKey parameters: - name: key in: path description: The key of a variable required: true schema: type: string example: example_value responses: '204': description: Delete an existing instance-level variable content: application/json: schema: $ref: '#/components/schemas/API_Entities_Ci_Variable' '404': description: Instance Variable Not Found content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/admin/ci/variables: get: tags: - Admin description: List all instance-level variables operationId: getApiV4AdminCiVariables parameters: - name: page in: query description: Current page number schema: type: integer format: int32 default: 1 example: 42 - name: per_page in: query description: Number of items per page schema: type: integer format: int32 default: 20 example: 42 responses: '200': description: List all instance-level variables content: application/json: schema: $ref: '#/components/schemas/API_Entities_Ci_Variable' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: tags: - Admin description: Create a new instance-level variable operationId: postApiV4AdminCiVariables requestBody: content: application/json: schema: required: - key - value properties: key: type: string description: The key of the variable. Max 255 characters value: type: string description: The value of a variable protected: type: boolean description: Whether the variable is protected masked: type: boolean description: Whether the variable is masked raw: type: boolean description: Whether the variable will be expanded variable_type: type: string description: >- The type of a variable. Available types are: env_var (default) and file enum: - env_var - file required: true responses: '201': description: Create a new instance-level variable content: application/json: schema: $ref: '#/components/schemas/API_Entities_Ci_Variable' '400': description: 400 Bad Request content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/admin/databases/{database_name}/dictionary/tables/{table_name}: get: tags: - Admin description: Retrieve dictionary details operationId: getApiV4AdminDatabasesDatabaseNameDictionaryTablesTableName parameters: - name: database_name in: path description: The database name required: true schema: type: string enum: - main - ci example: main - name: table_name in: path description: The table name required: true schema: type: string example: Example Project responses: '200': description: Retrieve dictionary details content: application/json: schema: $ref: '#/components/schemas/API_Entities_Dictionary_Table' '401': description: 401 Unauthorized content: {} '403': description: 403 Forbidden content: {} '404': description: 404 Not found content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/admin/clusters/{cluster_id}: get: tags: - Admin summary: GitLab Get a Single Instance Cluster description: >- This feature was introduced in GitLab 13.2. Returns a single instance cluster. operationId: getApiV4AdminClustersClusterId parameters: - name: cluster_id in: path description: The cluster ID required: true schema: type: integer format: int32 example: 42 responses: '200': description: Get a single instance cluster content: application/json: schema: $ref: '#/components/schemas/API_Entities_Cluster' '403': description: Forbidden content: {} '404': description: Not found content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK put: tags: - Admin summary: GitLab Edit Instance Cluster description: >- This feature was introduced in GitLab 13.2. Updates an existing instance cluster. operationId: putApiV4AdminClustersClusterId parameters: - name: cluster_id in: path description: The cluster ID required: true schema: type: integer format: int32 example: 42 requestBody: content: application/json: schema: properties: name: type: string description: Cluster name enabled: type: boolean description: >- Enable or disable Gitlab's connection to your Kubernetes cluster environment_scope: type: string description: The associated environment to the cluster namespace_per_environment: type: boolean description: Deploy each environment to a separate Kubernetes namespace default: true domain: type: string description: Cluster base domain management_project_id: type: integer description: The ID of the management project format: int32 managed: type: boolean description: >- Determines if GitLab will manage namespaces and service accounts for this cluster platform_kubernetes_attributes[api_url]: type: string description: URL to access the Kubernetes API platform_kubernetes_attributes[token]: type: string description: Token to authenticate against Kubernetes platform_kubernetes_attributes[ca_cert]: type: string description: >- TLS certificate (needed if API is using a self-signed TLS certificate) platform_kubernetes_attributes[namespace]: type: string description: Unique namespace related to Project responses: '200': description: Edit instance cluster content: application/json: schema: $ref: '#/components/schemas/API_Entities_Cluster' '400': description: Validation error content: {} '403': description: Forbidden content: {} '404': description: Not found content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: tags: - Admin summary: GitLab Delete Instance Cluster description: >- This feature was introduced in GitLab 13.2. Deletes an existing instance cluster. Does not remove existing resources within the connected Kubernetes cluster. operationId: deleteApiV4AdminClustersClusterId parameters: - name: cluster_id in: path description: The cluster ID required: true schema: type: integer format: int32 example: 42 responses: '204': description: Delete instance cluster content: application/json: schema: $ref: '#/components/schemas/API_Entities_Cluster' '403': description: Forbidden content: {} '404': description: Not found content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/admin/clusters/add: post: tags: - Admin summary: GitLab Add Existing Instance Cluster description: >- This feature was introduced in GitLab 13.2. Adds an existing Kubernetes instance cluster. operationId: postApiV4AdminClustersAdd requestBody: content: application/json: schema: required: - name - platform_kubernetes_attributes[api_url] - platform_kubernetes_attributes[token] properties: name: type: string description: Cluster name enabled: type: boolean description: Determines if cluster is active or not, defaults to true default: true environment_scope: type: string description: The associated environment to the cluster default: '*' namespace_per_environment: type: boolean description: Deploy each environment to a separate Kubernetes namespace default: true domain: type: string description: Cluster base domain management_project_id: type: integer description: The ID of the management project format: int32 managed: type: boolean description: >- Determines if GitLab will manage namespaces and service accounts for this cluster, defaults to true default: true platform_kubernetes_attributes[api_url]: type: string description: URL to access the Kubernetes API platform_kubernetes_attributes[token]: type: string description: Token to authenticate against Kubernetes platform_kubernetes_attributes[ca_cert]: type: string description: >- TLS certificate (needed if API is using a self-signed TLS certificate) platform_kubernetes_attributes[namespace]: type: string description: Unique namespace related to Project platform_kubernetes_attributes[authorization_type]: type: string description: Cluster authorization type, defaults to RBAC default: rbac enum: - unknown_authorization - rbac - abac required: true responses: '201': description: Add existing instance cluster content: application/json: schema: $ref: '#/components/schemas/API_Entities_Cluster' '400': description: Validation error content: {} '403': description: Forbidden content: {} '404': description: Not found content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/admin/clusters: get: tags: - Admin summary: GitLab List Instance Clusters description: >- This feature was introduced in GitLab 13.2. Returns a list of instance clusters. operationId: getApiV4AdminClusters responses: '200': description: List instance clusters content: application/json: schema: type: array items: $ref: '#/components/schemas/API_Entities_Cluster' '403': description: Forbidden content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/admin/migrations/{timestamp}/mark: post: tags: - Admin description: Mark the migration as successfully executed operationId: postApiV4AdminMigrationsTimestampMark parameters: - name: timestamp in: path description: The migration version timestamp required: true schema: type: integer format: int32 example: 42 requestBody: content: application/json: schema: properties: database: type: string description: The name of the database default: main enum: - main - ci - embedding - main_clusterwide - geo responses: '201': description: 201 Created content: {} '401': description: 401 Unauthorized content: {} '403': description: 403 Forbidden content: {} '404': description: 404 Not found content: {} '422': description: You can mark only pending migrations content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/applications/{id}: delete: tags: - Applications summary: GitLab Delete an Application description: Delete a specific application operationId: deleteApiV4ApplicationsId parameters: - name: id in: path description: The ID of the application (not the application_id) required: true schema: type: integer format: int32 example: 42 responses: '204': description: Delete an application content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/applications: get: tags: - Applications summary: GitLab Get Applications description: List all registered applications operationId: getApiV4Applications responses: '200': description: Get applications content: application/json: schema: type: array items: $ref: '#/components/schemas/API_Entities_Application' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: tags: - Applications summary: GitLab Create a New Application description: This feature was introduced in GitLab 10.5 operationId: postApiV4Applications requestBody: content: application/json: schema: required: - name - redirect_uri - scopes properties: name: type: string description: Name of the application. redirect_uri: type: string description: Redirect URI of the application. scopes: type: string description: >- Scopes of the application. You can specify multiple scopes by separating\ each scope using a space confidential: type: boolean description: >- The application is used where the client secret can be kept confidential. Native mobile apps \ and Single Page Apps are considered non-confidential. Defaults to true if not supplied default: true required: true responses: '200': description: Create a new application content: application/json: schema: $ref: '#/components/schemas/API_Entities_ApplicationWithSecret' x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/avatar: get: tags: - Avatar description: Return avatar url for a user operationId: getApiV4Avatar parameters: - name: email in: query description: Public email address of the user required: true schema: type: string example: user@example.com - name: size in: query description: Single pixel dimension for Gravatar images schema: type: integer format: int32 example: 42 responses: '200': description: Return avatar url for a user content: application/json: schema: $ref: '#/components/schemas/API_Entities_Avatar' x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/broadcast_messages/{id}: get: tags: - Broadcast Messages summary: GitLab Get a Specific Broadcast Message description: This feature was introduced in GitLab 8.12. operationId: getApiV4BroadcastMessagesId parameters: - name: id in: path description: Broadcast message ID required: true schema: type: integer format: int32 example: 42 responses: '200': description: Get a specific broadcast message content: application/json: schema: $ref: '#/components/schemas/API_Entities_BroadcastMessage' x-microcks-operation: delay: 0 dispatcher: FALLBACK put: tags: - Broadcast Messages summary: GitLab Update a Broadcast Message description: This feature was introduced in GitLab 8.12. operationId: putApiV4BroadcastMessagesId parameters: - name: id in: path description: Broadcast message ID required: true schema: type: integer format: int32 example: 42 requestBody: content: application/json: schema: properties: message: type: string description: Message to display starts_at: type: string description: Starting time format: date-time ends_at: type: string description: Ending time format: date-time color: type: string description: Background color font: type: string description: Foreground color target_access_levels: type: array description: Target user roles items: type: integer format: int32 enum: - 10 - 20 - 30 - 40 - 50 target_path: type: string description: Target path broadcast_type: type: string description: Broadcast Type enum: - banner - notification dismissable: type: boolean description: Is dismissable responses: '200': description: Update a broadcast message content: application/json: schema: $ref: '#/components/schemas/API_Entities_BroadcastMessage' x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: tags: - Broadcast Messages summary: GitLab Delete a Broadcast Message description: This feature was introduced in GitLab 8.12. operationId: deleteApiV4BroadcastMessagesId parameters: - name: id in: path description: Broadcast message ID required: true schema: type: integer format: int32 example: 42 responses: '200': description: Delete a broadcast message content: application/json: schema: $ref: '#/components/schemas/API_Entities_BroadcastMessage' x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/broadcast_messages: get: tags: - Broadcast Messages summary: GitLab Get All Broadcast Messages description: This feature was introduced in GitLab 8.12. operationId: getApiV4BroadcastMessages parameters: - name: page in: query description: Current page number schema: type: integer format: int32 default: 1 example: 42 - name: per_page in: query description: Number of items per page schema: type: integer format: int32 default: 20 example: 42 responses: '200': description: Get all broadcast messages content: application/json: schema: $ref: '#/components/schemas/API_Entities_BroadcastMessage' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: tags: - Broadcast Messages summary: GitLab Create a Broadcast Message description: This feature was introduced in GitLab 8.12. operationId: postApiV4BroadcastMessages requestBody: content: application/json: schema: required: - message properties: message: type: string description: Message to display starts_at: type: string description: Starting time format: date-time ends_at: type: string description: Ending time format: date-time color: type: string description: Background color font: type: string description: Foreground color target_access_levels: type: array description: Target user roles items: type: integer format: int32 enum: - 10 - 20 - 30 - 40 - 50 target_path: type: string description: Target path broadcast_type: type: string description: Broadcast type. Defaults to banner enum: - banner - notification dismissable: type: boolean description: Is dismissable required: true responses: '201': description: Create a broadcast message content: application/json: schema: $ref: '#/components/schemas/API_Entities_BroadcastMessage' x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/bulk_imports/{import_id}/entities/{entity_id}: get: tags: - Bulk Imports summary: GitLab Get GitLab Migration Entity Details description: This feature was introduced in GitLab 14.1. operationId: getApiV4BulkImportsImportIdEntitiesEntityId parameters: - name: import_id in: path description: The ID of user's GitLab Migration required: true schema: type: integer format: int32 example: 42 - name: entity_id in: path description: The ID of GitLab Migration entity required: true schema: type: integer format: int32 example: 42 responses: '200': description: Get GitLab Migration entity details content: application/json: schema: $ref: '#/components/schemas/API_Entities_BulkImports' '401': description: Unauthorized content: {} '404': description: Not found content: {} '503': description: Service unavailable content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/bulk_imports/{import_id}/entities: get: tags: - Bulk Imports summary: GitLab List GitLab Migration Entities description: This feature was introduced in GitLab 14.1. operationId: getApiV4BulkImportsImportIdEntities parameters: - name: import_id in: path description: The ID of user's GitLab Migration required: true schema: type: integer format: int32 example: 42 - name: status in: query description: Return import entities with specified status schema: type: string enum: - created - started - finished - timeout - failed example: created - name: page in: query description: Current page number schema: type: integer format: int32 default: 1 example: 42 - name: per_page in: query description: Number of items per page schema: type: integer format: int32 default: 20 example: 42 responses: '200': description: List GitLab Migration entities content: application/json: schema: type: array items: $ref: '#/components/schemas/API_Entities_BulkImports' '401': description: Unauthorized content: {} '404': description: Not found content: {} '503': description: Service unavailable content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/bulk_imports/{import_id}: get: tags: - Bulk Imports summary: GitLab Get GitLab Migration Details description: This feature was introduced in GitLab 14.1. operationId: getApiV4BulkImportsImportId parameters: - name: import_id in: path description: The ID of user's GitLab Migration required: true schema: type: integer format: int32 example: 42 responses: '200': description: Get GitLab Migration details content: application/json: schema: $ref: '#/components/schemas/API_Entities_BulkImport' '401': description: Unauthorized content: {} '404': description: Not found content: {} '503': description: Service unavailable content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/bulk_imports/entities: get: tags: - Bulk Imports summary: GitLab List All GitLab Migrations' Entities description: This feature was introduced in GitLab 14.1. operationId: getApiV4BulkImportsEntities parameters: - name: page in: query description: Current page number schema: type: integer format: int32 default: 1 example: 42 - name: per_page in: query description: Number of items per page schema: type: integer format: int32 default: 20 example: 42 - name: sort in: query description: Return GitLab Migrations sorted in created by `asc` or `desc` order. schema: type: string default: desc enum: - asc - desc example: asc - name: status in: query description: Return all GitLab Migrations' entities with specified status schema: type: string enum: - created - started - finished - timeout - failed example: created responses: '200': description: List all GitLab Migrations' entities content: application/json: schema: type: array items: $ref: '#/components/schemas/API_Entities_BulkImports' '401': description: Unauthorized content: {} '404': description: Not found content: {} '503': description: Service unavailable content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/bulk_imports: get: tags: - Bulk Imports summary: GitLab List All GitLab Migrations description: This feature was introduced in GitLab 14.1. operationId: getApiV4BulkImports parameters: - name: page in: query description: Current page number schema: type: integer format: int32 default: 1 example: 42 - name: per_page in: query description: Number of items per page schema: type: integer format: int32 default: 20 example: 42 - name: sort in: query description: Return GitLab Migrations sorted in created by `asc` or `desc` order. schema: type: string default: desc enum: - asc - desc example: asc - name: status in: query description: Return GitLab Migrations with specified status schema: type: string enum: - created - started - finished - timeout - failed example: created responses: '200': description: List all GitLab Migrations content: application/json: schema: type: array items: $ref: '#/components/schemas/API_Entities_BulkImport' '401': description: Unauthorized content: {} '404': description: Not found content: {} '503': description: Service unavailable content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK post: tags: - Bulk Imports summary: GitLab Start a New GitLab Migration description: This feature was introduced in GitLab 14.2. operationId: postApiV4BulkImports requestBody: content: application/x-www-form-urlencoded: schema: required: - configuration[access_token] - configuration[url] - entities[destination_namespace] - entities[source_full_path] - entities[source_type] properties: configuration[url]: type: string description: Source GitLab instance URL configuration[access_token]: type: string description: Access token to the source GitLab instance entities[source_type]: type: array description: Source entity type items: type: string enum: - group_entity - project_entity entities[source_full_path]: type: array description: Relative path of the source entity to import items: type: string entities[destination_namespace]: type: array description: Destination namespace for the entity items: type: string entities[destination_slug]: type: array description: Destination slug for the entity items: type: string entities[destination_name]: type: array description: >- Deprecated: Use :destination_slug instead. Destination slug for the entity items: type: string entities[migrate_projects]: type: array description: Indicates group migration should include nested projects items: type: boolean required: true responses: '200': description: Start a new GitLab Migration content: application/json: schema: $ref: '#/components/schemas/API_Entities_BulkImport' '400': description: Bad request content: {} '401': description: Unauthorized content: {} '404': description: Not found content: {} '422': description: Unprocessable entity content: {} '503': description: Service unavailable content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/application/appearance: get: tags: - Application description: Get the current appearance operationId: getApiV4ApplicationAppearance responses: '200': description: Get the current appearance content: application/json: schema: $ref: '#/components/schemas/API_Entities_Appearance' x-microcks-operation: delay: 0 dispatcher: FALLBACK put: tags: - Application description: Modify appearance operationId: putApiV4ApplicationAppearance requestBody: content: multipart/form-data: schema: properties: title: type: string description: Instance title on the sign in / sign up page description: type: string description: Markdown text shown on the sign in / sign up page pwa_name: type: string description: Name of the Progressive Web App pwa_short_name: type: string description: Optional, short name for Progressive Web App pwa_description: type: string description: An explanation of what the Progressive Web App does logo: type: string description: Instance image used on the sign in / sign up page format: binary pwa_icon: type: string description: Icon used for Progressive Web App format: binary header_logo: type: string description: Instance image used for the main navigation bar format: binary favicon: type: string description: Instance favicon in .ico/.png format format: binary new_project_guidelines: type: string description: Markdown text shown on the new project page profile_image_guidelines: type: string description: Markdown text shown on the profile page below Public Avatar header_message: type: string description: Message within the system header bar footer_message: type: string description: Message within the system footer bar message_background_color: type: string description: Background color for the system header / footer bar message_font_color: type: string description: Font color for the system header / footer bar email_header_and_footer_enabled: type: boolean description: Add header and footer to all outgoing emails if enabled responses: '200': description: Modify appearance content: application/json: schema: $ref: '#/components/schemas/API_Entities_Appearance' x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/application/plan_limits: get: tags: - Application summary: GitLab Get Current Plan Limits description: List the current limits of a plan on the GitLab instance. operationId: getApiV4ApplicationPlanLimits parameters: - name: plan_name in: query description: 'Name of the plan to get the limits from. Default: default.' schema: type: string default: default enum: - default - free - bronze - silver - premium - gold - ultimate - ultimate_trial - premium_trial - opensource example: default responses: '200': description: Get current plan limits content: application/json: schema: $ref: '#/components/schemas/API_Entities_PlanLimit' '401': description: Unauthorized content: {} '403': description: Forbidden content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK put: tags: - Application summary: GitLab Change Plan Limits description: Modify the limits of a plan on the GitLab instance. operationId: putApiV4ApplicationPlanLimits requestBody: content: application/json: schema: required: - plan_name properties: plan_name: type: string description: Name of the plan to update enum: - default - free - bronze - silver - premium - gold - ultimate - ultimate_trial - premium_trial - opensource ci_pipeline_size: type: integer description: Maximum number of jobs in a single pipeline format: int32 ci_active_jobs: type: integer description: Total number of jobs in currently active pipelines format: int32 ci_project_subscriptions: type: integer description: >- Maximum number of pipeline subscriptions to and from a project format: int32 ci_pipeline_schedules: type: integer description: Maximum number of pipeline schedules format: int32 ci_needs_size_limit: type: integer description: Maximum number of DAG dependencies that a job can have format: int32 ci_registered_group_runners: type: integer description: Maximum number of runners registered per group format: int32 ci_registered_project_runners: type: integer description: Maximum number of runners registered per project format: int32 conan_max_file_size: type: integer description: Maximum Conan package file size in bytes format: int32 enforcement_limit: type: integer description: >- Maximum storage size for the root namespace enforcement in MiB format: int32 generic_packages_max_file_size: type: integer description: Maximum generic package file size in bytes format: int32 helm_max_file_size: type: integer description: Maximum Helm chart file size in bytes format: int32 maven_max_file_size: type: integer description: Maximum Maven package file size in bytes format: int32 notification_limit: type: integer description: >- Maximum storage size for the root namespace notifications in MiB format: int32 npm_max_file_size: type: integer description: Maximum NPM package file size in bytes format: int32 nuget_max_file_size: type: integer description: Maximum NuGet package file size in bytes format: int32 pypi_max_file_size: type: integer description: Maximum PyPI package file size in bytes format: int32 terraform_module_max_file_size: type: integer description: Maximum Terraform Module package file size in bytes format: int32 storage_size_limit: type: integer description: Maximum storage size for the root namespace in MiB format: int32 pipeline_hierarchy_size: type: integer description: >- Maximum number of downstream pipelines in a pipeline's hierarchy tree format: int32 required: true responses: '200': description: Change plan limits content: application/json: schema: $ref: '#/components/schemas/API_Entities_PlanLimit' '400': description: Bad request content: {} '401': description: Unauthorized content: {} '403': description: Forbidden content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/metadata: get: tags: - Metadata summary: GitLab Retrieve Metadata Information for This GitLab Instance description: This feature was introduced in GitLab 15.2. operationId: getApiV4Metadata responses: '200': description: Retrieve metadata information for this GitLab instance content: application/json: schema: $ref: '#/components/schemas/API_Entities_Metadata' '401': description: Unauthorized content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/version: get: tags: - Version summary: GitLab Retrieves Version Information for the GitLab Instance description: >- This feature was introduced in GitLab 8.13 and deprecated in 15.5. We recommend you instead use the Metadata API. operationId: getApiV4Version responses: '200': description: Retrieves version information for the GitLab instance content: application/json: schema: $ref: '#/components/schemas/API_Entities_Metadata' '401': description: Unauthorized content: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/projects/{id}/jobs: get: tags: - Projects summary: GitLab List Jobs for a Project operationId: listProjectJobs parameters: - name: id in: path required: true description: The ID of the project schema: type: integer example: 42 - name: scope in: query required: false description: Return all jobs with the specified statuses schema: type: array items: type: string responses: '200': description: An array of jobs content: application/json: schema: type: array items: $ref: '#/components/schemas/API_Entities_Job' x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/projects/{id}/jobs/{job_id}: get: tags: - Projects summary: GitLab Get a Single Job by ID operationId: getSingleJob parameters: - name: id in: path required: true description: The ID of the project schema: type: integer example: 42 - name: job_id in: path required: true description: The ID of the job schema: type: integer example: 42 responses: '200': description: A single job object content: application/json: schema: $ref: '#/components/schemas/API_Entities_Job' x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v4/projects/{id}/jobs/{job_id}/play: post: tags: - Projects summary: GitLab Run a Manual Job operationId: triggerManualJob parameters: - name: id in: path required: true description: The ID of the project schema: type: integer example: 42 - name: job_id in: path required: true description: The ID of the manual job to run schema: type: integer example: 42 - name: job_variables_attributes in: query required: false description: An array containing the custom variables available to the job schema: type: array items: type: string responses: '200': description: Job started successfully x-microcks-operation: delay: 0 dispatcher: FALLBACK components: schemas: API_Entities_Badge: type: object properties: name: type: string example: Example Project link_url: type: string example: https://gitlab.com/example image_url: type: string example: https://gitlab.com/example rendered_link_url: type: string example: https://gitlab.com/example rendered_image_url: type: string example: https://gitlab.com/example id: type: string example: '123456' kind: type: string example: example_value description: API_Entities_Badge model API_Entities_BasicBadgeDetails: type: object properties: name: type: string example: Example Project link_url: type: string example: https://gitlab.com/example image_url: type: string example: https://gitlab.com/example rendered_link_url: type: string example: https://gitlab.com/example rendered_image_url: type: string example: https://gitlab.com/example description: API_Entities_BasicBadgeDetails model API_Entities_AccessRequester: type: object properties: id: type: integer format: int32 example: 1 username: type: string example: admin name: type: string example: Administrator state: type: string example: active 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: '#/components/schemas/API_Entities_CustomAttribute' web_url: type: string example: https://gitlab.example.com/root email: type: string example: user@example.com requested_at: type: string example: '2026-04-17T12:00:00Z' description: API_Entities_AccessRequester model API_Entities_CustomAttribute: type: object properties: key: type: string example: foo value: type: string example: bar API_Entities_Branch: type: object properties: name: type: string example: master commit: $ref: '#/components/schemas/API_Entities_Commit' merged: type: boolean example: true protected: type: boolean example: true developers_can_push: type: boolean example: true developers_can_merge: type: boolean example: true can_push: type: boolean example: true default: type: boolean example: true web_url: type: string example: https://gitlab.example.com/Commit921/the-dude/-/tree/master description: API_Entities_Branch 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-26T09:08:53Z 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-28T11:42:42Z 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-28T11:42:42Z trailers: type: object properties: {} example: '{ "Merged-By": "Jane Doe janedoe@gitlab.com" }' web_url: type: string example: >- https://gitlab.example.com/janedoe/gitlab-foss/-/commit/ed899a2f4b50b4370feeea94676502b42383c746 API_Entities_MetricImage: type: object properties: id: type: integer format: int32 example: 23 created_at: type: string format: date-time example: 2020-11-13T00:06:18.084000Z filename: type: string example: file.png file_path: type: string example: /uploads/-/system/alert_metric_image/file/23/file.png url: type: string example: https://example.com/metric url_text: type: string example: An example metric description: API_Entities_MetricImage model API_Entities_BatchedBackgroundMigration: type: object properties: id: type: string example: '1234' job_class_name: type: string example: CopyColumnUsingBackgroundMigrationJob table_name: type: string example: events status: type: string example: active progress: type: number format: float example: 50 created_at: type: string format: date-time example: 2022-11-28T14:26:39Z description: API_Entities_BatchedBackgroundMigration model API_Entities_Ci_Variable: type: object properties: variable_type: type: string example: env_var key: type: string example: TEST_VARIABLE_1 value: type: string example: TEST_1 protected: type: boolean example: true masked: type: boolean example: true raw: type: boolean example: true environment_scope: type: string example: '*' description: API_Entities_Ci_Variable model API_Entities_Dictionary_Table: type: object properties: table_name: type: string example: users feature_categories: type: array items: type: string example: database description: API_Entities_Dictionary_Table model API_Entities_Cluster: type: object properties: id: type: string example: '123456' name: type: string example: Example Project created_at: type: string example: '2026-04-17T12:00:00Z' domain: type: string example: example_value enabled: type: string example: example_value managed: type: string example: example_value provider_type: type: string example: example_value platform_type: type: string example: '2026-04-17T12:00:00Z' environment_scope: type: string example: example_value cluster_type: type: string example: example_value namespace_per_environment: type: string example: Example Project user: $ref: '#/components/schemas/API_Entities_UserBasic' platform_kubernetes: $ref: '#/components/schemas/API_Entities_Platform_Kubernetes' provider_gcp: $ref: '#/components/schemas/API_Entities_Provider_Gcp' management_project: $ref: '#/components/schemas/API_Entities_ProjectIdentity' description: API_Entities_Cluster model API_Entities_UserBasic: type: object properties: id: type: integer format: int32 example: 1 username: type: string example: admin name: type: string example: Administrator state: type: string example: active 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: '#/components/schemas/API_Entities_CustomAttribute' web_url: type: string example: https://gitlab.example.com/root email: type: string example: user@example.com API_Entities_Platform_Kubernetes: type: object properties: api_url: type: string example: https://gitlab.com/example namespace: type: string example: Example Project authorization_type: type: string example: '2026-04-17T12:00:00Z' ca_cert: type: string example: example_value API_Entities_Provider_Gcp: type: object properties: cluster_id: type: string example: '123456' status_name: type: string example: Example Project gcp_project_id: type: string example: '123456' zone: type: string example: example_value machine_type: type: string example: example_value num_nodes: type: string example: example_value endpoint: type: string example: example_value API_Entities_ProjectIdentity: type: object properties: id: type: integer format: int32 example: 1 description: type: string example: desc name: type: string example: project1 name_with_namespace: type: string example: John Doe / project1 path: type: string example: project1 path_with_namespace: type: string example: namespace1/project1 created_at: type: string format: date-time example: 2020-05-07T04:27:17.016000Z API_Entities_Application: type: object properties: id: type: string example: '123456' application_id: type: string example: 5832fc6e14300a0d962240a8144466eef4ee93ef0d218477e55f11cf12fc3737 application_name: type: string example: MyApplication callback_url: type: string example: https://redirect.uri confidential: type: boolean example: true description: API_Entities_Application model API_Entities_ApplicationWithSecret: type: object properties: id: type: string example: '123456' application_id: type: string example: 5832fc6e14300a0d962240a8144466eef4ee93ef0d218477e55f11cf12fc3737 application_name: type: string example: MyApplication callback_url: type: string example: https://redirect.uri confidential: type: boolean example: true secret: type: string example: ee1dd64b6adc89cf7e2c23099301ccc2c61b441064e9324d963c46902a85ec34 description: API_Entities_ApplicationWithSecret model API_Entities_Avatar: type: object properties: avatar_url: type: string example: https://gitlab.com/example description: API_Entities_Avatar model API_Entities_BroadcastMessage: type: object properties: id: type: string example: '123456' message: type: string example: example_value starts_at: type: string example: '2026-04-17T12:00:00Z' ends_at: type: string example: '2026-04-17T12:00:00Z' color: type: string example: example_value font: type: string example: example_value target_access_levels: type: string example: example_value target_path: type: string example: my-group/my-project broadcast_type: type: string example: example_value dismissable: type: string example: example_value active: type: string example: example_value description: API_Entities_BroadcastMessage model API_Entities_BulkImports: type: object properties: id: type: integer format: int32 example: 1 bulk_import_id: type: integer format: int32 example: 1 status: type: string example: created enum: - created - started - finished - timeout - failed entity_type: type: string enum: - group - project example: group source_full_path: type: string example: source_group destination_full_path: type: string example: some_group/source_project destination_name: type: string example: destination_slug destination_slug: type: string example: destination_slug destination_namespace: type: string example: destination_path parent_id: type: integer format: int32 example: 1 namespace_id: type: integer format: int32 example: 1 project_id: type: integer format: int32 example: 1 created_at: type: string format: date-time example: 2012-05-28T11:42:42Z updated_at: type: string format: date-time example: 2012-05-28T11:42:42Z failures: type: array items: $ref: '#/components/schemas/API_Entities_BulkImports_EntityFailure' migrate_projects: type: boolean example: true description: API_Entities_BulkImports model API_Entities_BulkImports_EntityFailure: type: object properties: relation: type: string example: group step: type: string example: extractor exception_message: type: string example: error message exception_class: type: string example: Exception correlation_id_value: type: string example: dfcf583058ed4508e4c7c617bd7f0edd created_at: type: string format: date-time example: 2012-05-28T11:42:42Z pipeline_class: type: string example: BulkImports::Groups::Pipelines::GroupPipeline pipeline_step: type: string example: extractor API_Entities_BulkImport: type: object properties: id: type: integer format: int32 example: 1 status: type: string example: finished enum: - created - started - finished - timeout - failed source_type: type: string example: gitlab created_at: type: string format: date-time example: 2012-05-28T11:42:42Z updated_at: type: string format: date-time example: 2012-05-28T11:42:42Z description: API_Entities_BulkImport model API_Entities_Appearance: type: object properties: title: type: string example: example_value description: type: string example: Example description pwa_name: type: string example: Example Project pwa_short_name: type: string example: Example Project pwa_description: type: string example: Example description logo: type: string example: example_value pwa_icon: type: string example: example_value header_logo: type: string example: example_value favicon: type: string example: example_value new_project_guidelines: type: string example: example_value profile_image_guidelines: type: string example: example_value header_message: type: string example: example_value footer_message: type: string example: example_value message_background_color: type: string example: example_value message_font_color: type: string example: example_value email_header_and_footer_enabled: type: string example: user@example.com description: API_Entities_Appearance model API_Entities_PlanLimit: type: object properties: ci_pipeline_size: type: integer format: int32 example: 0 ci_active_jobs: type: integer format: int32 example: 0 ci_project_subscriptions: type: integer format: int32 example: 2 ci_pipeline_schedules: type: integer format: int32 example: 10 ci_needs_size_limit: type: integer format: int32 example: 50 ci_registered_group_runners: type: integer format: int32 example: 1000 ci_registered_project_runners: type: integer format: int32 example: 1000 conan_max_file_size: type: integer format: int32 example: 3221225472 enforcement_limit: type: integer format: int32 example: 15000 generic_packages_max_file_size: type: integer format: int32 example: 5368709120 helm_max_file_size: type: integer format: int32 example: 5242880 limits_history: type: object properties: {} example: >- {"enforcement_limit"=>[{"timestamp"=>1686909124, "user_id"=>1, "username"=>"x", "value"=>5}], "notification_limit"=>[{"timestamp"=>1686909124, "user_id"=>2, "username"=>"y", "value"=>7}]} maven_max_file_size: type: integer format: int32 example: 3221225472 notification_limit: type: integer format: int32 example: 15000 npm_max_file_size: type: integer format: int32 example: 524288000 nuget_max_file_size: type: integer format: int32 example: 524288000 pipeline_hierarchy_size: type: integer format: int32 example: 1000 pypi_max_file_size: type: integer format: int32 example: 3221225472 terraform_module_max_file_size: type: integer format: int32 example: 1073741824 storage_size_limit: type: integer format: int32 example: 15000 description: API_Entities_PlanLimit model API_Entities_Metadata: type: object properties: version: type: string example: 15.2-pre revision: type: string example: c401a659d0c kas: type: object properties: enabled: type: boolean externalUrl: type: string example: grpc://gitlab.example.com:8150 version: type: string example: 15.0.0 enterprise: type: boolean example: true description: API_Entities_Metadata model API_Entities_Job: type: object properties: id: type: integer description: The ID of the job example: 42 name: type: string description: The name of the job example: Example Project status: type: string description: The current status of the job example: '2026-04-17T12:00:00Z' stage: type: string description: The stage of the job in the CI/CD pipeline example: example_value created_at: type: string format: date-time example: 2016-01-11T10:13:33.506000Z description: The creation time of the job started_at: type: string format: date-time example: 2016-01-11T10:13:33.506000Z description: The start time of the job finished_at: type: string format: date-time example: 2016-01-11T10:13:33.506000Z description: The finish time of the job commit: $ref: '#/components/schemas/API_Entities_Commit' archived: type: boolean description: Indicates if the job is archived example: true allow_failure: type: boolean description: Indicates if the job is allowed to fail example: true erased_at: type: string format: date-time example: 2016-01-11T10:13:33.506000Z description: The time when the job was erased, if applicable duration: type: integer description: The duration of the job in seconds example: 42 queued_duration: type: number description: The duration the job was queued before execution, in seconds example: 42.5 ref: type: string description: The reference for the job example: main artifacts: type: array description: The artifacts produced by the job tag: type: boolean description: Indicates if the job is tagged example: true web_url: type: string description: The URL for accessing the job in the web interface example: https://gitlab.com/example project: type: object properties: ci_job_token_scope_enabled: type: boolean description: >- Indicates if the CI/CD job token scope setting is enabled for the project user: $ref: '#/components/schemas/API_Entities_UserBasic' description: The user that started the job description: API_Entities_Job model securitySchemes: ApiKeyAuth: type: apiKey in: header name: Private-Token