Query structured spec data via REST or MCP. Get exactly what your agent needs.
https://www.gitlab.com/api/v4
/groups/{id}/access_requests
This feature was introduced in GitLab 8.11.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the group owned by the authenticated user |
| page | query | optional | integer | Current page number |
| per_page | query | optional | integer | Number of items per page |
GET /groups/{id}/access_requests
/groups/{id}/access_requests
This feature was introduced in GitLab 8.11.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the group owned by the authenticated user |
POST /groups/{id}/access_requests
/groups/{id}/access_requests/{user_id}
This feature was introduced in GitLab 8.11.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the group owned by the authenticated user |
| user_id | path | required | integer | The user ID of the access requester |
DELETE /groups/{id}/access_requests/{user_id}
/groups/{id}/access_requests/{user_id}/approve
This feature was introduced in GitLab 8.11.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the group owned by the authenticated user |
| user_id | path | required | integer | The user ID of the access requester |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AccessrequestsApproveUserAccessRequest"
}
}
}
}
PUT /groups/{id}/access_requests/{user_id}/approve
/projects/{id}/access_requests
This feature was introduced in GitLab 8.11.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the project owned by the authenticated user |
| page | query | optional | integer | Current page number |
| per_page | query | optional | integer | Number of items per page |
GET /projects/{id}/access_requests
/projects/{id}/access_requests
This feature was introduced in GitLab 8.11.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the project owned by the authenticated user |
POST /projects/{id}/access_requests
/projects/{id}/access_requests/{user_id}
This feature was introduced in GitLab 8.11.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the project owned by the authenticated user |
| user_id | path | required | integer | The user ID of the access requester |
DELETE /projects/{id}/access_requests/{user_id}
/projects/{id}/access_requests/{user_id}/approve
This feature was introduced in GitLab 8.11.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the project owned by the authenticated user |
| user_id | path | required | integer | The user ID of the access requester |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AccessrequestsApproveUserAccessRequest1"
}
}
}
}
PUT /projects/{id}/access_requests/{user_id}/approve
/admin/databases/{database_name}/dictionary/tables/{table_name}
Retrieve dictionary details
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| database_name | path | required | string | The database name |
| table_name | path | required | string | The table name |
GET /admin/databases/{database_name}/dictionary/tables/{table_name}
/projects/{id}/alert_management_alerts/{alert_iid}/metric_images
Metric Images for alert
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the project |
| alert_iid | path | required | integer | The IID of the Alert |
GET /projects/{id}/alert_management_alerts/{alert_iid}/metric_images
/projects/{id}/alert_management_alerts/{alert_iid}/metric_images
Upload a metric image for an alert
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the project |
| alert_iid | path | required | integer | The IID of the Alert |
{
"content": {
"multipart/form-data": {
"schema": {
"$ref": "#/components/schemas/AlertmanagementUploadMetricImageForAlertRequest"
}
}
},
"required": true
}
POST /projects/{id}/alert_management_alerts/{alert_iid}/metric_images
/projects/{id}/alert_management_alerts/{alert_iid}/metric_images/authorize
Workhorse authorize metric image file upload
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the project |
| alert_iid | path | required | integer | The IID of the Alert |
POST /projects/{id}/alert_management_alerts/{alert_iid}/metric_images/authorize
/projects/{id}/alert_management_alerts/{alert_iid}/metric_images/{metric_image_id}
Remove a metric image for an alert
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the project |
| alert_iid | path | required | integer | The IID of the Alert |
| metric_image_id | path | required | integer | The ID of metric image |
DELETE /projects/{id}/alert_management_alerts/{alert_iid}/metric_images/{metric_image_id}
/projects/{id}/alert_management_alerts/{alert_iid}/metric_images/{metric_image_id}
Update a metric image for an alert
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the project |
| alert_iid | path | required | integer | The IID of the Alert |
| metric_image_id | path | required | integer | The ID of metric image |
{
"content": {
"multipart/form-data": {
"schema": {
"$ref": "#/components/schemas/AlertmanagementUpdateMetricImageForAlertRequest"
}
}
}
}
PUT /projects/{id}/alert_management_alerts/{alert_iid}/metric_images/{metric_image_id}
/application/appearance
Get the current appearance
GET /application/appearance
/application/appearance
Modify appearance
{
"content": {
"multipart/form-data": {
"schema": {
"$ref": "#/components/schemas/ApplicationModifyAppearanceRequest"
}
}
}
}
PUT /application/appearance
/applications
List all registered applications
GET /applications
/applications
This feature was introduced in GitLab 10.5
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApplicationsCreateNewApplicationRequest"
}
}
},
"required": true
}
POST /applications
/applications/{id}
Delete a specific application
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the application (not the application_id) |
DELETE /applications/{id}
/avatar
Return avatar url for a user
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| query | required | string | Public email address of the user | |
| size | query | optional | integer | Single pixel dimension for Gravatar images |
GET /avatar
/groups/{id}/badges
This feature was introduced in GitLab 10.6.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the group owned by the authenticated user. |
| page | query | optional | integer | Current page number |
| per_page | query | optional | integer | Number of items per page |
| name | query | optional | string | Name for the badge |
GET /groups/{id}/badges
/groups/{id}/badges
This feature was introduced in GitLab 10.6.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the group owned by the authenticated user. |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BadgesAddToGroupRequest"
}
}
},
"required": true
}
POST /groups/{id}/badges
/groups/{id}/badges/render
This feature was introduced in GitLab 10.6.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the group owned by the authenticated user. |
| link_url | query | required | string | URL of the badge link |
| image_url | query | required | string | URL of the badge image |
GET /groups/{id}/badges/render
/groups/{id}/badges/{badge_id}
This feature was introduced in GitLab 10.6.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the group owned by the authenticated user. |
| badge_id | path | required | integer | The badge ID |
DELETE /groups/{id}/badges/{badge_id}
/groups/{id}/badges/{badge_id}
This feature was introduced in GitLab 10.6.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the group owned by the authenticated user. |
| badge_id | path | required | integer | The badge ID |
GET /groups/{id}/badges/{badge_id}
/groups/{id}/badges/{badge_id}
This feature was introduced in GitLab 10.6.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the group owned by the authenticated user. |
| badge_id | path | required | integer |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BadgesUpdateGroupBadgeRequest"
}
}
}
}
PUT /groups/{id}/badges/{badge_id}
/projects/{id}/badges
This feature was introduced in GitLab 10.6.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the project owned by the authenticated user. |
| page | query | optional | integer | Current page number |
| per_page | query | optional | integer | Number of items per page |
| name | query | optional | string | Name for the badge |
GET /projects/{id}/badges
/projects/{id}/badges
This feature was introduced in GitLab 10.6.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the project owned by the authenticated user. |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BadgesAddToProjectRequest"
}
}
},
"required": true
}
POST /projects/{id}/badges
/projects/{id}/badges/render
This feature was introduced in GitLab 10.6.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the project owned by the authenticated user. |
| link_url | query | required | string | URL of the badge link |
| image_url | query | required | string | URL of the badge image |
GET /projects/{id}/badges/render
/projects/{id}/badges/{badge_id}
This feature was introduced in GitLab 10.6.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the project owned by the authenticated user. |
| badge_id | path | required | integer | The badge ID |
DELETE /projects/{id}/badges/{badge_id}
/projects/{id}/badges/{badge_id}
This feature was introduced in GitLab 10.6.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the project owned by the authenticated user. |
| badge_id | path | required | integer | The badge ID |
GET /projects/{id}/badges/{badge_id}
/projects/{id}/badges/{badge_id}
This feature was introduced in GitLab 10.6.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the project owned by the authenticated user. |
| badge_id | path | required | integer |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BadgesUpdateProjectBadgeRequest"
}
}
}
}
PUT /projects/{id}/badges/{badge_id}
/admin/batched_background_migrations
Get the list of batched background migrations
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| database | query | optional | string | The name of the database, the default `main` |
GET /admin/batched_background_migrations
/admin/batched_background_migrations/{id}
Retrieve a batched background migration
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| database | query | optional | string | The name of the database |
| id | path | required | integer | The batched background migration id |
GET /admin/batched_background_migrations/{id}
/admin/batched_background_migrations/{id}/pause
Pause a batched background migration
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The batched background migration id |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BatchedbackgroundmigrationsPauseMigrationRequest"
}
}
}
}
PUT /admin/batched_background_migrations/{id}/pause
/admin/batched_background_migrations/{id}/resume
Resume a batched background migration
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The batched background migration id |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BatchedbackgroundmigrationsResumeMigrationRequest"
}
}
}
}
PUT /admin/batched_background_migrations/{id}/resume
/projects/{id}/repository/branches
Get a project repository branches
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the project |
| page | query | optional | integer | Current page number |
| per_page | query | optional | integer | Number of items per page |
| search | query | optional | string | Return list of branches matching the search criteria |
| regex | query | optional | string | Return list of branches matching the regex |
| sort | query | optional | string | Return list of branches sorted by the given field |
| page_token | query | optional | string | Name of branch to start the pagination from |
GET /projects/{id}/repository/branches
/projects/{id}/repository/branches
Create branch
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the project |
| branch | query | required | string | The name of the branch |
| ref | query | required | string | Create branch from commit sha or existing branch |
POST /projects/{id}/repository/branches
/projects/{id}/repository/branches/{branch}
Delete a branch
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the project |
| branch | path | required | string | The name of the branch |
DELETE /projects/{id}/repository/branches/{branch}
/projects/{id}/repository/branches/{branch}
Get a single repository branch
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the project |
| branch | path | required | integer |
GET /projects/{id}/repository/branches/{branch}
/projects/{id}/repository/branches/{branch}
Check if a branch exists
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the project |
| branch | path | required | string | The name of the branch |
HEAD /projects/{id}/repository/branches/{branch}
/projects/{id}/repository/branches/{branch}/protect
Protect a single branch
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the project |
| branch | path | required | string | The name of the branch |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BranchesProtectBranchRequest"
}
}
}
}
PUT /projects/{id}/repository/branches/{branch}/protect
/projects/{id}/repository/branches/{branch}/unprotect
Unprotect a single branch
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the project |
| branch | path | required | string | The name of the branch |
PUT /projects/{id}/repository/branches/{branch}/unprotect
/projects/{id}/repository/merged_branches
Delete all merged branches
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID or URL-encoded path of the project |
DELETE /projects/{id}/repository/merged_branches
/broadcast_messages
This feature was introduced in GitLab 8.12.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| page | query | optional | integer | Current page number |
| per_page | query | optional | integer | Number of items per page |
GET /broadcast_messages
/broadcast_messages
This feature was introduced in GitLab 8.12.
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BroadcastmessagesCreateMessageRequest"
}
}
},
"required": true
}
POST /broadcast_messages
/broadcast_messages/{id}
This feature was introduced in GitLab 8.12.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | Broadcast message ID |
DELETE /broadcast_messages/{id}
/broadcast_messages/{id}
This feature was introduced in GitLab 8.12.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | Broadcast message ID |
GET /broadcast_messages/{id}
/broadcast_messages/{id}
This feature was introduced in GitLab 8.12.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | Broadcast message ID |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BroadcastmessagesUpdateMessageByIdRequest"
}
}
}
}
PUT /broadcast_messages/{id}
/bulk_imports
This feature was introduced in GitLab 14.1.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| page | query | optional | integer | Current page number |
| per_page | query | optional | integer | Number of items per page |
| sort | query | optional | string | Return GitLab Migrations sorted in created by `asc` or `desc` order. |
| status | query | optional | string | Return GitLab Migrations with specified status |
GET /bulk_imports
/bulk_imports
This feature was introduced in GitLab 14.2.
{
"content": {
"application/x-www-form-urlencoded": {
"schema": {
"$ref": "#/components/schemas/BulkimportsStartMigrationRequest"
}
}
},
"required": true
}
POST /bulk_imports
/bulk_imports/entities
This feature was introduced in GitLab 14.1.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| page | query | optional | integer | Current page number |
| per_page | query | optional | integer | Number of items per page |
| sort | query | optional | string | Return GitLab Migrations sorted in created by `asc` or `desc` order. |
| status | query | optional | string | Return all GitLab Migrations' entities with specified status |
GET /bulk_imports/entities
/bulk_imports/{import_id}
This feature was introduced in GitLab 14.1.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| import_id | path | required | integer | The ID of user's GitLab Migration |
GET /bulk_imports/{import_id}
/bulk_imports/{import_id}/entities
This feature was introduced in GitLab 14.1.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| import_id | path | required | integer | The ID of user's GitLab Migration |
| status | query | optional | string | Return import entities with specified status |
| page | query | optional | integer | Current page number |
| per_page | query | optional | integer | Number of items per page |
GET /bulk_imports/{import_id}/entities
/bulk_imports/{import_id}/entities/{entity_id}
This feature was introduced in GitLab 14.1.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| import_id | path | required | integer | The ID of user's GitLab Migration |
| entity_id | path | required | integer | The ID of GitLab Migration entity |
GET /bulk_imports/{import_id}/entities/{entity_id}
/admin/ci/variables
List all instance-level variables
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| page | query | optional | integer | Current page number |
| per_page | query | optional | integer | Number of items per page |
GET /admin/ci/variables
/admin/ci/variables
Create a new instance-level variable
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CivariablesCreateNewInstanceLevelVariableRequest"
}
}
},
"required": true
}
POST /admin/ci/variables
/admin/ci/variables/{key}
Delete an existing instance-level variable
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| key | path | required | string | The key of a variable |
DELETE /admin/ci/variables/{key}
/admin/ci/variables/{key}
Get the details of a specific instance-level variable
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| key | path | required | string | The key of a variable |
GET /admin/ci/variables/{key}
/admin/ci/variables/{key}
Update an instance-level variable
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| key | path | required | string | The key of a variable |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CivariablesUpdateInstanceVariableRequest"
}
}
}
}
PUT /admin/ci/variables/{key}
/admin/clusters
This feature was introduced in GitLab 13.2. Returns a list of instance clusters.
GET /admin/clusters
/admin/clusters/add
This feature was introduced in GitLab 13.2. Adds an existing Kubernetes instance cluster.
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ClustersAddExistingInstanceRequest"
}
}
},
"required": true
}
POST /admin/clusters/add
/admin/clusters/{cluster_id}
This feature was introduced in GitLab 13.2. Deletes an existing instance cluster. Does not remove existing resources within the connected Kubernetes cluster.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| cluster_id | path | required | integer | The cluster ID |
DELETE /admin/clusters/{cluster_id}
/admin/clusters/{cluster_id}
This feature was introduced in GitLab 13.2. Returns a single instance cluster.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| cluster_id | path | required | integer | The cluster ID |
GET /admin/clusters/{cluster_id}
/admin/clusters/{cluster_id}
This feature was introduced in GitLab 13.2. Updates an existing instance cluster.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| cluster_id | path | required | integer | The cluster ID |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ClustersUpdateInstanceClusterRequest"
}
}
}
}
PUT /admin/clusters/{cluster_id}
/projects/{id}/jobs
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the project |
| scope | query | optional | array | Return all jobs with the specified statuses |
GET /projects/{id}/jobs
/projects/{id}/jobs/{job_id}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the project |
| job_id | path | required | integer | The ID of the job |
GET /projects/{id}/jobs/{job_id}
/projects/{id}/jobs/{job_id}/play
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the project |
| job_id | path | required | integer | The ID of the manual job to run |
| job_variables_attributes | query | optional | array | An array containing the custom variables available to the job |
POST /projects/{id}/jobs/{job_id}/play
/metadata
This feature was introduced in GitLab 15.2.
GET /metadata
/version
This feature was introduced in GitLab 8.13 and deprecated in 15.5. We recommend you instead use the Metadata API.
GET /version
/admin/migrations/{timestamp}/mark
Mark the migration as successfully executed
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| timestamp | path | required | integer | The migration version timestamp |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/MigrationsMarkAsExecutedRequest"
}
}
}
}
POST /admin/migrations/{timestamp}/mark
/application/plan_limits
List the current limits of a plan on the GitLab instance.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| plan_name | query | optional | string | Name of the plan to get the limits from. Default: default. |
GET /application/plan_limits
/application/plan_limits
Modify the limits of a plan on the GitLab instance.
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PlanlimitsModifyPlanLimitsRequest"
}
}
},
"required": true
}
PUT /application/plan_limits
API_Entities_AccessRequester
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32",
"example": 1
},
"name": {
"type": "string",
"example": "Administrator"
},
"email": {
"type": "string"
},
"state": {
"type": "string",
"example": "active"
},
"web_url": {
"type": "string",
"example": "https://gitlab.example.com/root"
},
"username": {
"type": "string",
"example": "admin"
},
"avatar_url": {
"type": "string",
"example": "https://gravatar.com/avatar/1"
},
"avatar_path": {
"type": "string",
"example": "/user/avatar/28/The-Big-Lebowski-400-400.png"
},
"requested_at": {
"type": "string"
},
"custom_attributes": {
"type": "array",
"items": {
"$ref": "#/components/schemas/API_Entities_CustomAttribute"
}
}
},
"description": "API_Entities_AccessRequester model"
}
API_Entities_Appearance
{
"type": "object",
"properties": {
"logo": {
"type": "string"
},
"title": {
"type": "string"
},
"favicon": {
"type": "string"
},
"pwa_icon": {
"type": "string"
},
"pwa_name": {
"type": "string"
},
"description": {
"type": "string"
},
"header_logo": {
"type": "string"
},
"footer_message": {
"type": "string"
},
"header_message": {
"type": "string"
},
"pwa_short_name": {
"type": "string"
},
"pwa_description": {
"type": "string"
},
"message_font_color": {
"type": "string"
},
"new_project_guidelines": {
"type": "string"
},
"message_background_color": {
"type": "string"
},
"profile_image_guidelines": {
"type": "string"
},
"email_header_and_footer_enabled": {
"type": "string"
}
},
"description": "API_Entities_Appearance model"
}
API_Entities_Application
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"callback_url": {
"type": "string",
"example": "https://redirect.uri"
},
"confidential": {
"type": "boolean",
"example": true
},
"application_id": {
"type": "string",
"example": "5832fc6e14300a0d962240a8144466eef4ee93ef0d218477e55f11cf12fc3737"
},
"application_name": {
"type": "string",
"example": "MyApplication"
}
},
"description": "API_Entities_Application model"
}
API_Entities_ApplicationWithSecret
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"secret": {
"type": "string",
"example": "ee1dd64b6adc89cf7e2c23099301ccc2c61b441064e9324d963c46902a85ec34"
},
"callback_url": {
"type": "string",
"example": "https://redirect.uri"
},
"confidential": {
"type": "boolean",
"example": true
},
"application_id": {
"type": "string",
"example": "5832fc6e14300a0d962240a8144466eef4ee93ef0d218477e55f11cf12fc3737"
},
"application_name": {
"type": "string",
"example": "MyApplication"
}
},
"description": "API_Entities_ApplicationWithSecret model"
}
API_Entities_Avatar
{
"type": "object",
"properties": {
"avatar_url": {
"type": "string"
}
},
"description": "API_Entities_Avatar model"
}
API_Entities_Badge
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"kind": {
"type": "string"
},
"name": {
"type": "string"
},
"link_url": {
"type": "string"
},
"image_url": {
"type": "string"
},
"rendered_link_url": {
"type": "string"
},
"rendered_image_url": {
"type": "string"
}
},
"description": "API_Entities_Badge model"
}
API_Entities_BasicBadgeDetails
{
"type": "object",
"properties": {
"name": {
"type": "string"
},
"link_url": {
"type": "string"
},
"image_url": {
"type": "string"
},
"rendered_link_url": {
"type": "string"
},
"rendered_image_url": {
"type": "string"
}
},
"description": "API_Entities_BasicBadgeDetails model"
}
API_Entities_BatchedBackgroundMigration
{
"type": "object",
"properties": {
"id": {
"type": "string",
"example": "1234"
},
"status": {
"type": "string",
"example": "active"
},
"progress": {
"type": "number",
"format": "float",
"example": 50
},
"created_at": {
"type": "string",
"format": "date-time",
"example": "2022-11-28T14:26:39.000Z"
},
"table_name": {
"type": "string",
"example": "events"
},
"job_class_name": {
"type": "string",
"example": "CopyColumnUsingBackgroundMigrationJob"
}
},
"description": "API_Entities_BatchedBackgroundMigration model"
}
API_Entities_Branch
{
"type": "object",
"properties": {
"name": {
"type": "string",
"example": "master"
},
"commit": {
"$ref": "#/components/schemas/API_Entities_Commit"
},
"merged": {
"type": "boolean",
"example": true
},
"default": {
"type": "boolean",
"example": true
},
"web_url": {
"type": "string",
"example": "https://gitlab.example.com/Commit921/the-dude/-/tree/master"
},
"can_push": {
"type": "boolean",
"example": true
},
"protected": {
"type": "boolean",
"example": true
},
"developers_can_push": {
"type": "boolean",
"example": true
},
"developers_can_merge": {
"type": "boolean",
"example": true
}
},
"description": "API_Entities_Branch model"
}
API_Entities_BroadcastMessage
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"font": {
"type": "string"
},
"color": {
"type": "string"
},
"active": {
"type": "string"
},
"ends_at": {
"type": "string"
},
"message": {
"type": "string"
},
"starts_at": {
"type": "string"
},
"dismissable": {
"type": "string"
},
"target_path": {
"type": "string"
},
"broadcast_type": {
"type": "string"
},
"target_access_levels": {
"type": "string"
}
},
"description": "API_Entities_BroadcastMessage model"
}
API_Entities_BulkImport
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32",
"example": 1
},
"status": {
"enum": [
"created",
"started",
"finished",
"timeout",
"failed"
],
"type": "string",
"example": "finished"
},
"created_at": {
"type": "string",
"format": "date-time",
"example": "2012-05-28T11:42:42.000Z"
},
"updated_at": {
"type": "string",
"format": "date-time",
"example": "2012-05-28T11:42:42.000Z"
},
"source_type": {
"type": "string",
"example": "gitlab"
}
},
"description": "API_Entities_BulkImport model"
}
API_Entities_BulkImports
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32",
"example": 1
},
"status": {
"enum": [
"created",
"started",
"finished",
"timeout",
"failed"
],
"type": "string",
"example": "created"
},
"failures": {
"type": "array",
"items": {
"$ref": "#/components/schemas/API_Entities_BulkImports_EntityFailure"
}
},
"parent_id": {
"type": "integer",
"format": "int32",
"example": 1
},
"created_at": {
"type": "string",
"format": "date-time",
"example": "2012-05-28T11:42:42.000Z"
},
"project_id": {
"type": "integer",
"format": "int32",
"example": 1
},
"updated_at": {
"type": "string",
"format": "date-time",
"example": "2012-05-28T11:42:42.000Z"
},
"entity_type": {
"enum": [
"group",
"project"
],
"type": "string"
},
"namespace_id": {
"type": "integer",
"format": "int32",
"example": 1
},
"bulk_import_id": {
"type": "integer",
"format": "int32",
"example": 1
},
"destination_name": {
"type": "string",
"example": "destination_slug"
},
"destination_slug": {
"type": "string",
"example": "destination_slug"
},
"migrate_projects": {
"type": "boolean",
"example": true
},
"source_full_path": {
"type": "string",
"example": "source_group"
},
"destination_full_path": {
"type": "string",
"example": "some_group/source_project"
},
"destination_namespace": {
"type": "string",
"example": "destination_path"
}
},
"description": "API_Entities_BulkImports model"
}
API_Entities_BulkImports_EntityFailure
{
"type": "object",
"properties": {
"step": {
"type": "string",
"example": "extractor"
},
"relation": {
"type": "string",
"example": "group"
},
"created_at": {
"type": "string",
"format": "date-time",
"example": "2012-05-28T11:42:42.000Z"
},
"pipeline_step": {
"type": "string",
"example": "extractor"
},
"pipeline_class": {
"type": "string",
"example": "BulkImports::Groups::Pipelines::GroupPipeline"
},
"exception_class": {
"type": "string",
"example": "Exception"
},
"exception_message": {
"type": "string",
"example": "error message"
},
"correlation_id_value": {
"type": "string",
"example": "dfcf583058ed4508e4c7c617bd7f0edd"
}
}
}
API_Entities_Ci_Variable
{
"type": "object",
"properties": {
"key": {
"type": "string",
"example": "TEST_VARIABLE_1"
},
"raw": {
"type": "boolean"
},
"value": {
"type": "string",
"example": "TEST_1"
},
"masked": {
"type": "boolean"
},
"protected": {
"type": "boolean"
},
"variable_type": {
"type": "string",
"example": "env_var"
},
"environment_scope": {
"type": "string",
"example": "*"
}
},
"description": "API_Entities_Ci_Variable model"
}
API_Entities_Cluster
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"user": {
"$ref": "#/components/schemas/API_Entities_UserBasic"
},
"domain": {
"type": "string"
},
"enabled": {
"type": "string"
},
"managed": {
"type": "string"
},
"created_at": {
"type": "string"
},
"cluster_type": {
"type": "string"
},
"provider_gcp": {
"$ref": "#/components/schemas/API_Entities_Provider_Gcp"
},
"platform_type": {
"type": "string"
},
"provider_type": {
"type": "string"
},
"environment_scope": {
"type": "string"
},
"management_project": {
"$ref": "#/components/schemas/API_Entities_ProjectIdentity"
},
"platform_kubernetes": {
"$ref": "#/components/schemas/API_Entities_Platform_Kubernetes"
},
"namespace_per_environment": {
"type": "string"
}
},
"description": "API_Entities_Cluster model"
}
API_Entities_Commit
{
"type": "object",
"properties": {
"id": {
"type": "string",
"example": "2695effb5807a22ff3d138d593fd856244e155e7"
},
"title": {
"type": "string",
"example": "Initial commit"
},
"message": {
"type": "string",
"example": "Initial commit"
},
"web_url": {
"type": "string",
"example": "https://gitlab.example.com/janedoe/gitlab-foss/-/commit/ed899a2f4b50b4370feeea94676502b42383c746"
},
"short_id": {
"type": "string",
"example": "2695effb"
},
"trailers": {
"type": "object",
"example": "{ \"Merged-By\": \"Jane Doe janedoe@gitlab.com\" }",
"properties": {}
},
"created_at": {
"type": "string",
"format": "date-time",
"example": "2017-07-26T09:08:53.000Z"
},
"parent_ids": {
"type": "array",
"items": {
"type": "string",
"example": "2a4b78934375d7f53875269ffd4f45fd83a84ebe"
}
},
"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:42.000Z"
},
"committed_date": {
"type": "string",
"format": "date-time",
"example": "2012-05-28T11:42:42.000Z"
},
"committer_name": {
"type": "string",
"example": "Jack Smith"
},
"committer_email": {
"type": "string",
"example": "jack@example.com"
}
}
}
API_Entities_CustomAttribute
{
"type": "object",
"properties": {
"key": {
"type": "string",
"example": "foo"
},
"value": {
"type": "string",
"example": "bar"
}
}
}
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_Job
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "The ID of the job"
},
"ref": {
"type": "string",
"description": "The reference for the job"
},
"tag": {
"type": "boolean",
"description": "Indicates if the job is tagged"
},
"name": {
"type": "string",
"description": "The name of the job"
},
"user": {
"$ref": "#/components/schemas/API_Entities_UserBasic",
"description": "The user that started the job"
},
"stage": {
"type": "string",
"description": "The stage of the job in the CI/CD pipeline"
},
"commit": {
"$ref": "#/components/schemas/API_Entities_Commit"
},
"status": {
"type": "string",
"description": "The current status of the job"
},
"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"
}
}
},
"web_url": {
"type": "string",
"description": "The URL for accessing the job in the web interface"
},
"archived": {
"type": "boolean",
"description": "Indicates if the job is archived"
},
"duration": {
"type": "integer",
"description": "The duration of the job in seconds"
},
"artifacts": {
"type": "array",
"items": {
"description": "WARNING: Missing items property in array schema. Missing items property has been filled with this AnyType schema."
},
"description": "The artifacts produced by the job"
},
"erased_at": {
"type": "string",
"format": "date-time",
"example": "2016-01-11T10:13:33.506Z",
"description": "The time when the job was erased, if applicable"
},
"created_at": {
"type": "string",
"format": "date-time",
"example": "2016-01-11T10:13:33.506Z",
"description": "The creation time of the job"
},
"started_at": {
"type": "string",
"format": "date-time",
"example": "2016-01-11T10:13:33.506Z",
"description": "The start time of the job"
},
"finished_at": {
"type": "string",
"format": "date-time",
"example": "2016-01-11T10:13:33.506Z",
"description": "The finish time of the job"
},
"allow_failure": {
"type": "boolean",
"description": "Indicates if the job is allowed to fail"
},
"queued_duration": {
"type": "number",
"description": "The duration the job was queued before execution, in seconds"
}
},
"description": "API_Entities_Job model"
}
API_Entities_Metadata
{
"type": "object",
"properties": {
"kas": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
},
"version": {
"type": "string",
"example": "15.0.0"
},
"externalUrl": {
"type": "string",
"example": "grpc://gitlab.example.com:8150"
}
}
},
"version": {
"type": "string",
"example": "15.2-pre"
},
"revision": {
"type": "string",
"example": "c401a659d0c"
},
"enterprise": {
"type": "boolean"
}
},
"description": "API_Entities_Metadata model"
}
API_Entities_MetricImage
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32",
"example": 23
},
"url": {
"type": "string",
"example": "https://example.com/metric"
},
"filename": {
"type": "string",
"example": "file.png"
},
"url_text": {
"type": "string",
"example": "An example metric"
},
"file_path": {
"type": "string",
"example": "/uploads/-/system/alert_metric_image/file/23/file.png"
},
"created_at": {
"type": "string",
"format": "date-time",
"example": "2020-11-13T00:06:18.084Z"
}
},
"description": "API_Entities_MetricImage model"
}
API_Entities_PlanLimit
{
"type": "object",
"properties": {
"ci_active_jobs": {
"type": "integer",
"format": "int32",
"example": 0
},
"limits_history": {
"type": "object",
"example": "{\"enforcement_limit\"=>[{\"timestamp\"=>1686909124, \"user_id\"=>1, \"username\"=>\"x\", \"value\"=>5}],\n \"notification_limit\"=>[{\"timestamp\"=>1686909124, \"user_id\"=>2, \"username\"=>\"y\", \"value\"=>7}]}",
"properties": {}
},
"ci_pipeline_size": {
"type": "integer",
"format": "int32",
"example": 0
},
"enforcement_limit": {
"type": "integer",
"format": "int32",
"example": 15000
},
"npm_max_file_size": {
"type": "integer",
"format": "int32",
"example": 524288000
},
"helm_max_file_size": {
"type": "integer",
"format": "int32",
"example": 5242880
},
"notification_limit": {
"type": "integer",
"format": "int32",
"example": 15000
},
"pypi_max_file_size": {
"type": "integer",
"format": "int32",
"example": 3221225472
},
"storage_size_limit": {
"type": "integer",
"format": "int32",
"example": 15000
},
"ci_needs_size_limit": {
"type": "integer",
"format": "int32",
"example": 50
},
"conan_max_file_size": {
"type": "integer",
"format": "int32",
"example": 3221225472
},
"maven_max_file_size": {
"type": "integer",
"format": "int32",
"example": 3221225472
},
"nuget_max_file_size": {
"type": "integer",
"format": "int32",
"example": 524288000
},
"ci_pipeline_schedules": {
"type": "integer",
"format": "int32",
"example": 10
},
"pipeline_hierarchy_size": {
"type": "integer",
"format": "int32",
"example": 1000
},
"ci_project_subscriptions": {
"type": "integer",
"format": "int32",
"example": 2
},
"ci_registered_group_runners": {
"type": "integer",
"format": "int32",
"example": 1000
},
"ci_registered_project_runners": {
"type": "integer",
"format": "int32",
"example": 1000
},
"generic_packages_max_file_size": {
"type": "integer",
"format": "int32",
"example": 5368709120
},
"terraform_module_max_file_size": {
"type": "integer",
"format": "int32",
"example": 1073741824
}
},
"description": "API_Entities_PlanLimit model"
}
API_Entities_Platform_Kubernetes
{
"type": "object",
"properties": {
"api_url": {
"type": "string"
},
"ca_cert": {
"type": "string"
},
"namespace": {
"type": "string"
},
"authorization_type": {
"type": "string"
}
}
}
API_Entities_ProjectIdentity
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32",
"example": 1
},
"name": {
"type": "string",
"example": "project1"
},
"path": {
"type": "string",
"example": "project1"
},
"created_at": {
"type": "string",
"format": "date-time",
"example": "2020-05-07T04:27:17.016Z"
},
"description": {
"type": "string",
"example": "desc"
},
"name_with_namespace": {
"type": "string",
"example": "John Doe / project1"
},
"path_with_namespace": {
"type": "string",
"example": "namespace1/project1"
}
}
}
API_Entities_Provider_Gcp
{
"type": "object",
"properties": {
"zone": {
"type": "string"
},
"endpoint": {
"type": "string"
},
"num_nodes": {
"type": "string"
},
"cluster_id": {
"type": "string"
},
"status_name": {
"type": "string"
},
"machine_type": {
"type": "string"
},
"gcp_project_id": {
"type": "string"
}
}
}
API_Entities_UserBasic
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32",
"example": 1
},
"name": {
"type": "string",
"example": "Administrator"
},
"email": {
"type": "string"
},
"state": {
"type": "string",
"example": "active"
},
"web_url": {
"type": "string",
"example": "https://gitlab.example.com/root"
},
"username": {
"type": "string",
"example": "admin"
},
"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"
}
}
}
}
AccessrequestsApproveUserAccessRequest
{
"properties": {
"access_level": {
"type": "integer",
"format": "int32",
"default": 30,
"description": "A valid access level (defaults: `30`, the Developer role)"
}
}
}
AccessrequestsApproveUserAccessRequest1
{
"properties": {
"access_level": {
"type": "integer",
"format": "int32",
"default": 30,
"description": "A valid access level (defaults: `30`, the Developer role)"
}
}
}
AlertmanagementGetMetricImagesResponse
{
"type": "array",
"items": {
"$ref": "#/components/schemas/API_Entities_MetricImage"
}
}
AlertmanagementUpdateMetricImageForAlertRequest
{
"properties": {
"url": {
"type": "string",
"description": "The url to view more metric info"
},
"url_text": {
"type": "string",
"description": "A description of the image or URL"
}
}
}
AlertmanagementUploadMetricImageForAlertRequest
{
"required": [
"file"
],
"properties": {
"url": {
"type": "string",
"description": "The url to view more metric info"
},
"file": {
"type": "string",
"format": "binary",
"description": "The image file to be uploaded"
},
"url_text": {
"type": "string",
"description": "A description of the image or URL"
}
}
}
ApplicationModifyAppearanceRequest
{
"properties": {
"logo": {
"type": "string",
"format": "binary",
"description": "Instance image used on the sign in / sign up page"
},
"title": {
"type": "string",
"description": "Instance title on the sign in / sign up page"
},
"favicon": {
"type": "string",
"format": "binary",
"description": "Instance favicon in .ico/.png format"
},
"pwa_icon": {
"type": "string",
"format": "binary",
"description": "Icon used for Progressive Web App"
},
"pwa_name": {
"type": "string",
"description": "Name of the Progressive Web App"
},
"description": {
"type": "string",
"description": "Markdown text shown on the sign in / sign up page"
},
"header_logo": {
"type": "string",
"format": "binary",
"description": "Instance image used for the main navigation bar"
},
"footer_message": {
"type": "string",
"description": "Message within the system footer bar"
},
"header_message": {
"type": "string",
"description": "Message within the system header bar"
},
"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"
},
"message_font_color": {
"type": "string",
"description": "Font color for the system header / footer bar"
},
"new_project_guidelines": {
"type": "string",
"description": "Markdown text shown on the new project page"
},
"message_background_color": {
"type": "string",
"description": "Background color for the system header / footer bar"
},
"profile_image_guidelines": {
"type": "string",
"description": "Markdown text shown on the profile page below Public Avatar"
},
"email_header_and_footer_enabled": {
"type": "boolean",
"description": "Add header and footer to all outgoing emails if enabled"
}
}
}
ApplicationsCreateNewApplicationRequest
{
"required": [
"name",
"redirect_uri",
"scopes"
],
"properties": {
"name": {
"type": "string",
"description": "Name of the application."
},
"scopes": {
"type": "string",
"description": "Scopes of the application. You can specify multiple scopes by separating\\\n each scope using a space"
},
"confidential": {
"type": "boolean",
"default": true,
"description": "The application is used where the client secret can be kept confidential. Native mobile apps \\\n and Single Page Apps are considered non-confidential. Defaults to true if not supplied"
},
"redirect_uri": {
"type": "string",
"description": "Redirect URI of the application."
}
}
}
ApplicationsListAllRegisteredResponse
{
"type": "array",
"items": {
"$ref": "#/components/schemas/API_Entities_Application"
}
}
BadgesAddToGroupRequest
{
"required": [
"image_url",
"link_url"
],
"properties": {
"name": {
"type": "string",
"description": "Name for the badge"
},
"link_url": {
"type": "string",
"description": "URL of the badge link"
},
"image_url": {
"type": "string",
"description": "URL of the badge image"
}
}
}
BadgesAddToProjectRequest
{
"required": [
"image_url",
"link_url"
],
"properties": {
"name": {
"type": "string",
"description": "Name for the badge"
},
"link_url": {
"type": "string",
"description": "URL of the badge link"
},
"image_url": {
"type": "string",
"description": "URL of the badge image"
}
}
}
BadgesListViewableByAuthenticatedUser200Response
{
"type": "array",
"items": {
"$ref": "#/components/schemas/API_Entities_Badge"
}
}
BadgesListViewableByAuthenticatedUserResponse
{
"type": "array",
"items": {
"$ref": "#/components/schemas/API_Entities_Badge"
}
}
BadgesUpdateGroupBadgeRequest
{
"properties": {
"name": {
"type": "string",
"description": "Name for the badge"
},
"link_url": {
"type": "string",
"description": "URL of the badge link"
},
"image_url": {
"type": "string",
"description": "URL of the badge image"
}
}
}
BadgesUpdateProjectBadgeRequest
{
"properties": {
"name": {
"type": "string",
"description": "Name for the badge"
},
"link_url": {
"type": "string",
"description": "URL of the badge link"
},
"image_url": {
"type": "string",
"description": "URL of the badge image"
}
}
}
BatchedbackgroundmigrationsListMigrationsResponse
{
"type": "array",
"items": {
"$ref": "#/components/schemas/API_Entities_BatchedBackgroundMigration"
}
}
BatchedbackgroundmigrationsPauseMigrationRequest
{
"properties": {
"database": {
"enum": [
"main",
"ci",
"embedding",
"main_clusterwide",
"geo"
],
"type": "string",
"default": "main",
"description": "The name of the database"
}
}
}
BatchedbackgroundmigrationsResumeMigrationRequest
{
"properties": {
"database": {
"enum": [
"main",
"ci",
"embedding",
"main_clusterwide",
"geo"
],
"type": "string",
"default": "main",
"description": "The name of the database"
}
}
}
BranchesGetProjectRepositoryResponse
{
"type": "array",
"items": {
"$ref": "#/components/schemas/API_Entities_Branch"
}
}
BranchesProtectBranchRequest
{
"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"
}
}
}
BroadcastmessagesCreateMessageRequest
{
"required": [
"message"
],
"properties": {
"font": {
"type": "string",
"description": "Foreground color"
},
"color": {
"type": "string",
"description": "Background color"
},
"ends_at": {
"type": "string",
"format": "date-time",
"description": "Ending time"
},
"message": {
"type": "string",
"description": "Message to display"
},
"starts_at": {
"type": "string",
"format": "date-time",
"description": "Starting time"
},
"dismissable": {
"type": "boolean",
"description": "Is dismissable"
},
"target_path": {
"type": "string",
"description": "Target path"
},
"broadcast_type": {
"enum": [
"banner",
"notification"
],
"type": "string",
"description": "Broadcast type. Defaults to banner"
},
"target_access_levels": {
"type": "array",
"items": {
"enum": [
10,
20,
30,
40,
50
],
"type": "integer",
"format": "int32"
},
"description": "Target user roles"
}
}
}
BroadcastmessagesUpdateMessageByIdRequest
{
"properties": {
"font": {
"type": "string",
"description": "Foreground color"
},
"color": {
"type": "string",
"description": "Background color"
},
"ends_at": {
"type": "string",
"format": "date-time",
"description": "Ending time"
},
"message": {
"type": "string",
"description": "Message to display"
},
"starts_at": {
"type": "string",
"format": "date-time",
"description": "Starting time"
},
"dismissable": {
"type": "boolean",
"description": "Is dismissable"
},
"target_path": {
"type": "string",
"description": "Target path"
},
"broadcast_type": {
"enum": [
"banner",
"notification"
],
"type": "string",
"description": "Broadcast Type"
},
"target_access_levels": {
"type": "array",
"items": {
"enum": [
10,
20,
30,
40,
50
],
"type": "integer",
"format": "int32"
},
"description": "Target user roles"
}
}
}
BulkimportsListEntities200Response
{
"type": "array",
"items": {
"$ref": "#/components/schemas/API_Entities_BulkImports"
}
}
BulkimportsListEntitiesResponse
{
"type": "array",
"items": {
"$ref": "#/components/schemas/API_Entities_BulkImports"
}
}
BulkimportsListMigrationsResponse
{
"type": "array",
"items": {
"$ref": "#/components/schemas/API_Entities_BulkImport"
}
}
BulkimportsStartMigrationRequest
{
"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"
},
"entities[source_type]": {
"type": "array",
"items": {
"enum": [
"group_entity",
"project_entity"
],
"type": "string"
},
"description": "Source entity type"
},
"entities[destination_name]": {
"type": "array",
"items": {
"type": "string"
},
"description": "Deprecated: Use :destination_slug instead. Destination slug for the entity"
},
"entities[destination_slug]": {
"type": "array",
"items": {
"type": "string"
},
"description": "Destination slug for the entity"
},
"entities[migrate_projects]": {
"type": "array",
"items": {
"type": "boolean"
},
"description": "Indicates group migration should include nested projects"
},
"entities[source_full_path]": {
"type": "array",
"items": {
"type": "string"
},
"description": "Relative path of the source entity to import"
},
"configuration[access_token]": {
"type": "string",
"description": "Access token to the source GitLab instance"
},
"entities[destination_namespace]": {
"type": "array",
"items": {
"type": "string"
},
"description": "Destination namespace for the entity"
}
}
}
CivariablesCreateNewInstanceLevelVariableRequest
{
"required": [
"key",
"value"
],
"properties": {
"key": {
"type": "string",
"description": "The key of the variable. Max 255 characters"
},
"raw": {
"type": "boolean",
"description": "Whether the variable will be expanded"
},
"value": {
"type": "string",
"description": "The value of a variable"
},
"masked": {
"type": "boolean",
"description": "Whether the variable is masked"
},
"protected": {
"type": "boolean",
"description": "Whether the variable is protected"
},
"variable_type": {
"enum": [
"env_var",
"file"
],
"type": "string",
"description": "The type of a variable. Available types are: env_var (default) and file"
}
}
}
CivariablesUpdateInstanceVariableRequest
{
"properties": {
"raw": {
"type": "boolean",
"description": "Whether the variable will be expanded"
},
"value": {
"type": "string",
"description": "The value of a variable"
},
"masked": {
"type": "boolean",
"description": "Whether the variable is masked"
},
"protected": {
"type": "boolean",
"description": "Whether the variable is protected"
},
"variable_type": {
"enum": [
"env_var",
"file"
],
"type": "string",
"description": "The type of a variable. Available types are: env_var (default) and file"
}
}
}
ClustersAddExistingInstanceRequest
{
"required": [
"name",
"platform_kubernetes_attributes[api_url]",
"platform_kubernetes_attributes[token]"
],
"properties": {
"name": {
"type": "string",
"description": "Cluster name"
},
"domain": {
"type": "string",
"description": "Cluster base domain"
},
"enabled": {
"type": "boolean",
"default": true,
"description": "Determines if cluster is active or not, defaults to true"
},
"managed": {
"type": "boolean",
"default": true,
"description": "Determines if GitLab will manage namespaces and service accounts for this cluster, defaults to true"
},
"environment_scope": {
"type": "string",
"default": "*",
"description": "The associated environment to the cluster"
},
"management_project_id": {
"type": "integer",
"format": "int32",
"description": "The ID of the management project"
},
"namespace_per_environment": {
"type": "boolean",
"default": true,
"description": "Deploy each environment to a separate Kubernetes namespace"
},
"platform_kubernetes_attributes[token]": {
"type": "string",
"description": "Token to authenticate against Kubernetes"
},
"platform_kubernetes_attributes[api_url]": {
"type": "string",
"description": "URL to access the Kubernetes API"
},
"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]": {
"enum": [
"unknown_authorization",
"rbac",
"abac"
],
"type": "string",
"default": "rbac",
"description": "Cluster authorization type, defaults to RBAC"
}
}
}
ClustersListInstanceClustersResponse
{
"type": "array",
"items": {
"$ref": "#/components/schemas/API_Entities_Cluster"
}
}
ClustersUpdateInstanceClusterRequest
{
"properties": {
"name": {
"type": "string",
"description": "Cluster name"
},
"domain": {
"type": "string",
"description": "Cluster base domain"
},
"enabled": {
"type": "boolean",
"description": "Enable or disable Gitlab's connection to your Kubernetes cluster"
},
"managed": {
"type": "boolean",
"description": "Determines if GitLab will manage namespaces and service accounts for this cluster"
},
"environment_scope": {
"type": "string",
"description": "The associated environment to the cluster"
},
"management_project_id": {
"type": "integer",
"format": "int32",
"description": "The ID of the management project"
},
"namespace_per_environment": {
"type": "boolean",
"default": true,
"description": "Deploy each environment to a separate Kubernetes namespace"
},
"platform_kubernetes_attributes[token]": {
"type": "string",
"description": "Token to authenticate against Kubernetes"
},
"platform_kubernetes_attributes[api_url]": {
"type": "string",
"description": "URL to access the Kubernetes API"
},
"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"
}
}
}
JobsListForProjectResponse
{
"type": "array",
"items": {
"$ref": "#/components/schemas/API_Entities_Job"
}
}
MigrationsMarkAsExecutedRequest
{
"properties": {
"database": {
"enum": [
"main",
"ci",
"embedding",
"main_clusterwide",
"geo"
],
"type": "string",
"default": "main",
"description": "The name of the database"
}
}
}
PlanlimitsModifyPlanLimitsRequest
{
"required": [
"plan_name"
],
"properties": {
"plan_name": {
"enum": [
"default",
"free",
"bronze",
"silver",
"premium",
"gold",
"ultimate",
"ultimate_trial",
"premium_trial",
"opensource"
],
"type": "string",
"description": "Name of the plan to update"
},
"ci_active_jobs": {
"type": "integer",
"format": "int32",
"description": "Total number of jobs in currently active pipelines"
},
"ci_pipeline_size": {
"type": "integer",
"format": "int32",
"description": "Maximum number of jobs in a single pipeline"
},
"enforcement_limit": {
"type": "integer",
"format": "int32",
"description": "Maximum storage size for the root namespace enforcement in MiB"
},
"npm_max_file_size": {
"type": "integer",
"format": "int32",
"description": "Maximum NPM package file size in bytes"
},
"helm_max_file_size": {
"type": "integer",
"format": "int32",
"description": "Maximum Helm chart file size in bytes"
},
"notification_limit": {
"type": "integer",
"format": "int32",
"description": "Maximum storage size for the root namespace notifications in MiB"
},
"pypi_max_file_size": {
"type": "integer",
"format": "int32",
"description": "Maximum PyPI package file size in bytes"
},
"storage_size_limit": {
"type": "integer",
"format": "int32",
"description": "Maximum storage size for the root namespace in MiB"
},
"ci_needs_size_limit": {
"type": "integer",
"format": "int32",
"description": "Maximum number of DAG dependencies that a job can have"
},
"conan_max_file_size": {
"type": "integer",
"format": "int32",
"description": "Maximum Conan package file size in bytes"
},
"maven_max_file_size": {
"type": "integer",
"format": "int32",
"description": "Maximum Maven package file size in bytes"
},
"nuget_max_file_size": {
"type": "integer",
"format": "int32",
"description": "Maximum NuGet package file size in bytes"
},
"ci_pipeline_schedules": {
"type": "integer",
"format": "int32",
"description": "Maximum number of pipeline schedules"
},
"pipeline_hierarchy_size": {
"type": "integer",
"format": "int32",
"description": "Maximum number of downstream pipelines in a pipeline's hierarchy tree"
},
"ci_project_subscriptions": {
"type": "integer",
"format": "int32",
"description": "Maximum number of pipeline subscriptions to and from a project"
},
"ci_registered_group_runners": {
"type": "integer",
"format": "int32",
"description": "Maximum number of runners registered per group"
},
"ci_registered_project_runners": {
"type": "integer",
"format": "int32",
"description": "Maximum number of runners registered per project"
},
"generic_packages_max_file_size": {
"type": "integer",
"format": "int32",
"description": "Maximum generic package file size in bytes"
},
"terraform_module_max_file_size": {
"type": "integer",
"format": "int32",
"description": "Maximum Terraform Module package file size in bytes"
}
}
}