Use this API to manage projects and the resources they contain, including:
- Project settings, visibility, access permissions, and security settings.
- Archiving, transferring, forking, and starring projects.
- Project issues, issue statistics, and project statistics.
- Markdown uploads referenced in issues, merge requests, snippets, or wiki pages.
- Protection rules for container image tags, container repositories, and packages.
If a user is not a member of a private project, a GET request on that project results in a
404 status code.
List CODEOWNERS entries that match a file path
GET /api/v4/code-owners-for-file
Parameters
| Name | Type | Description |
|---|---|---|
project_Query, | String | — |
file_Query, | String | — |
refQuery | String | — |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | — |
400 | Bad Request | — |
403 | Forbidden | — |
404 | Not found | — |
List all projects
GET /api/v4/projects
Lists all projects. Unauthenticated requests return only public projects with a limited subset of attributes. You can filter responses by custom attributes.
Parameters
| Name | Type | Description |
|---|---|---|
order_Query | String | Return projects ordered by field. Allowed values: id,name,path,created_,updated_,last_,similarity,star_,storage_,repository_,wiki_,packages_Default: created_ |
sortQuery | String | Return projects sorted in ascending and descending order Allowed values: asc,descDefault: desc |
archivedQuery | Boolean | Limit by archived status |
visibilityQuery | String | Limit by visibility Allowed values: private,internal,public |
searchQuery | String | Return list of projects matching the search criteria |
search_Query | Boolean | Include ancestor namespaces when matching search criteria |
ownedQuery | Boolean | Limit by owned by authenticated user Default: false |
starredQuery | Boolean | Limit by starred status Default: false |
importedQuery | Boolean | Limit by imported by authenticated user Default: false |
membershipQuery | Boolean | Limit by projects that the current user is a member of Default: false |
with_Query | Boolean | Limit by enabled issues feature Default: false |
with_Query | Boolean | Limit by enabled merge requests feature Default: false |
with_Query | String | Limit to repositories which use the given programming language |
min_Query | Integer | Limit by minimum access level of authenticated user Allowed values: 10,15,20,25,30,40,50 |
id_Query | Integer | Limit results to projects with IDs greater than the specified ID |
id_Query | Integer | Limit results to projects with IDs less than the specified ID |
last_Query | String (date- | Limit results to projects with last_ |
last_Query | String (date- | Limit results to projects with last_ |
repository_Query | String | Which storage shard the repository is on. |
topicQuery | Array of strings | Comma- |
topic_Query | Integer | Limit results to projects with the assigned topic given by the topic ID |
updated_Query | String (date- | Return projects updated before the specified datetime. |
updated_Query | String (date- | Return projects updated after the specified datetime. |
include_Query | Boolean | Include projects in pending delete state. |
marked_Query | String (date) | Date when the project was marked for deletion |
activeQuery | Boolean | Limit by projects that are not archived and not marked for deletion |
pageQuery | Integer | Current page number Default: 1Example: 1 |
per_Query | Integer | Number of items per page Default: 20Example: 20 |
simpleQuery | Boolean | Return only the ID, Default: false |
statisticsQuery | Boolean | Include project statistics Default: false |
with_Query | Boolean | Include custom attributes in the response Default: false |
custom_Query | Object | Filter with custom attributes |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad request | — |
Create a project
POST /api/v4/projects
Creates a project owned by the authenticated user. If your HTTP repository is not publicly accessible, add authentication information to the URL https://username:password@gitlab.company.com/group/project.git, where password is a public access key with the api scope.
Request body (multipart/form-data)
| Property | Type | Description |
|---|---|---|
allow_ | Boolean | Allow to merge if pipeline is skipped |
analytics_ | String | Analytics access level.disabled,private or enabledAllowed values: disabled,private,enabled |
auto_ | String | Auto- Allowed values: disabled,enabled |
auto_ | String | Auto Deploy strategy Allowed values: continuous,manual,timed_ |
auto_ | Boolean | Flag indication if Auto Dev |
autoclose_ | Boolean | Flag indication if referenced issues auto- |
avatar | String (binary) | Avatar image for project |
build_ | String | The Git strategy.fetchAllowed values: fetch,clone |
build_ | Integer | Build timeout |
builds_ | String | Builds access level.disabled,private or enabledAllowed values: disabled,private,enabled |
ci_ | String | The path to CI config file.. |
cicd_ | Boolean | Set whether the project is a CI/ |
container_ | Object | Object that contains information on the container expiration policy |
container_ | String | Container expiration policy cadence for recurring job |
container_ | Boolean | Flag indication if container expiration policy is enabled |
container_ | Integer | Container expiration policy number of images to keep |
container_ | String | Container expiration policy regex for image removal |
container_ | String | Container expiration policy regex for image retention |
container_ | String | Container expiration policy remove images older than value |
container_ | String | Controls visibility of the container registry.disabled,private or enabled.private will make the container registry accessible only to project members (reporter role and above).enabled will make the container registry accessible to everyone who has access to the project.disabled will disable the container registryAllowed values: disabled,private,enabled |
container_ | Boolean | Deprecated: |
default_ | String | The default branch of the project Example: main |
description | String | The description of the project |
emails_ | Boolean | Deprecated: |
emails_ | Boolean | Enable email notifications |
enforce_ | Boolean | Enforce auth check on uploads |
environments_ | String | Environments access level.disabled,private or enabledAllowed values: disabled,private,enabled |
feature_ | String | Feature flags access level.disabled,private or enabledAllowed values: disabled,private,enabled |
forking_ | String | Forks access level.disabled,private or enabledAllowed values: disabled,private,enabled |
group_ | Boolean | Flag indication if group runners are enabled for that project |
import_ | String | URL from which the project is imported.template_,template_ |
infrastructure_ | String | Infrastructure access level.disabled,private or enabledAllowed values: disabled,private,enabled |
initialize_ | Boolean | Initialize a project with a README. |
issue_ | String | Template used to create a branch from an issue |
issues_ | String | Issues access level.disabled,private or enabledAllowed values: disabled,private,enabled |
issues_ | Boolean | Flag indication if the issue tracker is enabled |
jobs_ | Boolean | Flag indication if jobs are enabled |
lfs_ | Boolean | Flag indication if Git LFS is enabled for that project |
merge_ | String | Template used to create merge commit message |
merge_ | String | The merge method used when merging merge requests Allowed values: ff,rebase_,merge |
merge_ | String | Regex pattern for validating merge request titles Maximum length: 255 |
merge_ | String | Example merge request title that matches merge_ Maximum length: 255 |
merge_ | String | Merge requests access level.disabled,private or enabledAllowed values: disabled,private,enabled |
merge_ | Boolean | Flag indication if merge requests are enabled |
model_ | String | Model experiments access level.disabled,private or enabledAllowed values: disabled,private,enabled |
model_ | String | Model registry access level.disabled,private or enabledAllowed values: disabled,private,enabled |
monitor_ | String | Monitor access level.disabled,private or enabledAllowed values: disabled,private,enabled |
mr_ | Boolean | Merge requests of this forked project targets itself by default |
mr_ | String | Template used to generate the default merge request title. Maximum length: 100 |
name | String | The name of the project Example: New Project |
namespace_ | Integer | Namespace ID for the new project. |
only_ | Boolean | Only allow to merge if all threads are resolved |
only_ | Boolean | Only allow to merge if builds succeed |
package_ | String | Controls visibility of the package registry.disabled,private,enabled or public.private will make the package registry accessible only to project members (reporter role and above).enabled will make the package registry accessible to everyone who has access to the project.public will make the package registry accessible to everyone.disabled will disable the package registryAllowed values: disabled,private,enabled,public |
packages_ | Boolean | Deprecated: |
pages_ | String | Pages access level.disabled,private,enabled or publicAllowed values: disabled,private,enabled,public |
path | String | The path of the repository Example: new_ |
printing_ | Boolean | Show link to create/ |
public_ | Boolean | Deprecated: |
public_ | Boolean | Perform public builds |
releases_ | String | Releases access level.disabled,private or enabledAllowed values: disabled,private,enabled |
remove_ | Boolean | Remove the source branch by default after merge |
repository_ | String | Repository access level.disabled,private or enabledAllowed values: disabled,private,enabled |
repository_ | String | The object format of the project repository Allowed values: sha1,sha256 |
repository_ | String | Which storage shard the repository is on. |
request_ | Boolean | Allow users to request member access |
resolve_ | Boolean | Automatically resolve merge request diff threads on lines changed with a push |
resource_ | String | The process mode of the resource group Allowed values: unordered,oldest_,newest_,newest_ |
security_ | String | Security and compliance access level.disabled,private or enabledAllowed values: disabled,private,enabled |
service_ | Boolean | Disable or enable the service desk |
shared_ | Boolean | Flag indication if shared runners are enabled for that project |
show_ | Boolean | Show default award emojis |
show_ | Boolean | Include the code diff preview in merge request notification emails |
snippets_ | String | Snippets access level.disabled,private or enabledAllowed values: disabled,private,enabled |
snippets_ | Boolean | Flag indication if snippets are enabled |
squash_ | String | Template used to create squash commit message |
squash_ | String | Squash default for project.never,always,default_,default_Allowed values: never,always,default_,default_ |
suggestion_ | String | The commit message used to apply merge request suggestions |
tag_ | Array of strings | Deprecated: |
template_ | String | Name of template from which to create project.import_,template_ |
template_ | Integer | Project ID of template from which to create project.import_,template_ |
topics | Array of strings | The list of topics for a project |
visibility | String | The visibility of the project Allowed values: private,internal,public |
warn_ | Boolean | Warn about potentially unwanted characters |
wiki_ | String | Wiki access level.disabled,private or enabledAllowed values: disabled,private,enabled |
wiki_ | Boolean | Flag indication if the wiki is enabled |
Responses
| Code | Description | Schema |
|---|---|---|
201 | Created | APIEntities |
400 | Bad request | — |
403 | Unauthenticated | — |
404 | Not found | — |
Create a project for a user
POST /api/v4/projects/user/{user_id}
Creates a project for a user. Administrators only.
Parameters
| Name | Type | Description |
|---|---|---|
user_Path, | Integer | The ID of a user Example: 1 |
Request body (multipart/form-data)
| Property | Type | Description |
|---|---|---|
allow_ | Boolean | Allow to merge if pipeline is skipped |
analytics_ | String | Analytics access level.disabled,private or enabledAllowed values: disabled,private,enabled |
auto_ | String | Auto- Allowed values: disabled,enabled |
auto_ | String | Auto Deploy strategy Allowed values: continuous,manual,timed_ |
auto_ | Boolean | Flag indication if Auto Dev |
autoclose_ | Boolean | Flag indication if referenced issues auto- |
avatar | String (binary) | Avatar image for project |
build_ | String | The Git strategy.fetchAllowed values: fetch,clone |
build_ | Integer | Build timeout |
builds_ | String | Builds access level.disabled,private or enabledAllowed values: disabled,private,enabled |
ci_ | String | The path to CI config file.. |
cicd_ | Boolean | Set whether the project is a CI/ |
container_ | Object | Object that contains information on the container expiration policy |
container_ | String | Container expiration policy cadence for recurring job |
container_ | Boolean | Flag indication if container expiration policy is enabled |
container_ | Integer | Container expiration policy number of images to keep |
container_ | String | Container expiration policy regex for image removal |
container_ | String | Container expiration policy regex for image retention |
container_ | String | Container expiration policy remove images older than value |
container_ | String | Controls visibility of the container registry.disabled,private or enabled.private will make the container registry accessible only to project members (reporter role and above).enabled will make the container registry accessible to everyone who has access to the project.disabled will disable the container registryAllowed values: disabled,private,enabled |
container_ | Boolean | Deprecated: |
default_ | String | The default branch of the project Example: main |
description | String | The description of the project |
emails_ | Boolean | Deprecated: |
emails_ | Boolean | Enable email notifications |
enforce_ | Boolean | Enforce auth check on uploads |
environments_ | String | Environments access level.disabled,private or enabledAllowed values: disabled,private,enabled |
feature_ | String | Feature flags access level.disabled,private or enabledAllowed values: disabled,private,enabled |
forking_ | String | Forks access level.disabled,private or enabledAllowed values: disabled,private,enabled |
group_ | Boolean | Flag indication if group runners are enabled for that project |
import_ | String | URL from which the project is imported.template_,template_ |
infrastructure_ | String | Infrastructure access level.disabled,private or enabledAllowed values: disabled,private,enabled |
initialize_ | Boolean | Initialize a project with a README. |
issue_ | String | Template used to create a branch from an issue |
issues_ | String | Issues access level.disabled,private or enabledAllowed values: disabled,private,enabled |
issues_ | Boolean | Flag indication if the issue tracker is enabled |
jobs_ | Boolean | Flag indication if jobs are enabled |
lfs_ | Boolean | Flag indication if Git LFS is enabled for that project |
merge_ | String | Template used to create merge commit message |
merge_ | String | The merge method used when merging merge requests Allowed values: ff,rebase_,merge |
merge_ | String | Regex pattern for validating merge request titles Maximum length: 255 |
merge_ | String | Example merge request title that matches merge_ Maximum length: 255 |
merge_ | String | Merge requests access level.disabled,private or enabledAllowed values: disabled,private,enabled |
merge_ | Boolean | Flag indication if merge requests are enabled |
model_ | String | Model experiments access level.disabled,private or enabledAllowed values: disabled,private,enabled |
model_ | String | Model registry access level.disabled,private or enabledAllowed values: disabled,private,enabled |
monitor_ | String | Monitor access level.disabled,private or enabledAllowed values: disabled,private,enabled |
mr_ | Boolean | Merge requests of this forked project targets itself by default |
mr_ | String | Template used to generate the default merge request title. Maximum length: 100 |
nameRequired | String | The name of the project Example: New Project |
namespace_ | Integer | Namespace ID for the new project. |
only_ | Boolean | Only allow to merge if all threads are resolved |
only_ | Boolean | Only allow to merge if builds succeed |
package_ | String | Controls visibility of the package registry.disabled,private,enabled or public.private will make the package registry accessible only to project members (reporter role and above).enabled will make the package registry accessible to everyone who has access to the project.public will make the package registry accessible to everyone.disabled will disable the package registryAllowed values: disabled,private,enabled,public |
packages_ | Boolean | Deprecated: |
pages_ | String | Pages access level.disabled,private,enabled or publicAllowed values: disabled,private,enabled,public |
path | String | The path of the repository Example: new_ |
printing_ | Boolean | Show link to create/ |
public_ | Boolean | Deprecated: |
public_ | Boolean | Perform public builds |
releases_ | String | Releases access level.disabled,private or enabledAllowed values: disabled,private,enabled |
remove_ | Boolean | Remove the source branch by default after merge |
repository_ | String | Repository access level.disabled,private or enabledAllowed values: disabled,private,enabled |
repository_ | String | The object format of the project repository Allowed values: sha1,sha256 |
repository_ | String | Which storage shard the repository is on. |
request_ | Boolean | Allow users to request member access |
resolve_ | Boolean | Automatically resolve merge request diff threads on lines changed with a push |
resource_ | String | The process mode of the resource group Allowed values: unordered,oldest_,newest_,newest_ |
security_ | String | Security and compliance access level.disabled,private or enabledAllowed values: disabled,private,enabled |
service_ | Boolean | Disable or enable the service desk |
shared_ | Boolean | Flag indication if shared runners are enabled for that project |
show_ | Boolean | Show default award emojis |
show_ | Boolean | Include the code diff preview in merge request notification emails |
snippets_ | String | Snippets access level.disabled,private or enabledAllowed values: disabled,private,enabled |
snippets_ | Boolean | Flag indication if snippets are enabled |
squash_ | String | Template used to create squash commit message |
squash_ | String | Squash default for project.never,always,default_,default_Allowed values: never,always,default_,default_ |
suggestion_ | String | The commit message used to apply merge request suggestions |
tag_ | Array of strings | Deprecated: |
template_ | String | Name of template from which to create project.import_,template_ |
template_ | Integer | Project ID of template from which to create project.import_,template_ |
topics | Array of strings | The list of topics for a project |
visibility | String | The visibility of the project Allowed values: private,internal,public |
warn_ | Boolean | Warn about potentially unwanted characters |
wiki_ | String | Wiki access level.disabled,private or enabledAllowed values: disabled,private,enabled |
wiki_ | Boolean | Flag indication if the wiki is enabled |
Responses
| Code | Description | Schema |
|---|---|---|
201 | Created | APIEntities |
400 | Bad request | — |
403 | Unauthenticated | — |
404 | Not found | — |
Retrieve a project
GET /api/v4/projects/{id}
Retrieves details on a specified project. This endpoint can be accessed without authentication if the project is publicly accessible.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
statisticsQuery | Boolean | Include project statistics Default: false |
with_Query | Boolean | Include custom attributes in the response Default: false |
custom_Query | Object | Filter with custom attributes |
licenseQuery | Boolean | Include project license data Default: false |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
404 | Not Found | — |
Update a project
PUT /api/v4/projects/{id}
Updates an existing project. If your HTTP repository is not publicly accessible, add authentication information to the URL https://username:password@gitlab.company.com/group/project.git, where password is a public access key with the api scope.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Request body (multipart/form-data)
| Property | Type | Description |
|---|---|---|
allow_ | Boolean | Allow to merge if pipeline is skipped |
allow_ | Boolean | Allow the pipeline triggerer to approve deployments |
analytics_ | String | Analytics access level.disabled,private or enabledAllowed values: disabled,private,enabled |
auto_ | String | Auto- Allowed values: disabled,enabled |
auto_ | String | Auto Deploy strategy Allowed values: continuous,manual,timed_ |
auto_ | Boolean | Flag indication if Auto Dev |
autoclose_ | Boolean | Flag indication if referenced issues auto- |
automatic_ | Boolean | Enable automatic rebase of the source branch before merge |
avatar | String (binary) | Avatar image for project |
build_ | String | The Git strategy.fetchAllowed values: fetch,clone |
build_ | Integer | Build timeout |
builds_ | String | Builds access level.disabled,private or enabledAllowed values: disabled,private,enabled |
ci_ | Boolean | Allow fork merge request pipelines to run in parent project |
ci_ | String | The path to CI config file.. |
ci_ | Integer | Default number of revisions for shallow cloning |
ci_ | Integer | Pipelines older than the configured time are deleted |
ci_ | Boolean | Display all manually- |
ci_ | Boolean | Prevent older deployment jobs that are still pending |
ci_ | Boolean | Allow job retries for rollback deployments |
ci_ | Array of strings | Claims that will be used to build the sub claim in id tokens |
ci_ | String | Limit ability to override CI/ Allowed values: no_,developer,maintainer,owner |
ci_ | Boolean | Allow pushing to this project’s repository by authenticating with a CI/ |
ci_ | Boolean | Enable or disable separated caches based on branch protection |
ci_ | Boolean | Skip the branch pipeline when a branch has an open merge request, |
cicd_ | Boolean | Set whether the project is a CI/ |
container_ | Object | Object that contains information on the container expiration policy |
container_ | String | Container expiration policy cadence for recurring job |
container_ | Boolean | Flag indication if container expiration policy is enabled |
container_ | Integer | Container expiration policy number of images to keep |
container_ | String | Container expiration policy regex for image removal |
container_ | String | Container expiration policy regex for image retention |
container_ | String | Container expiration policy remove images older than value |
container_ | String | Controls visibility of the container registry.disabled,private or enabled.private will make the container registry accessible only to project members (reporter role and above).enabled will make the container registry accessible to everyone who has access to the project.disabled will disable the container registryAllowed values: disabled,private,enabled |
container_ | Boolean | Deprecated: |
default_ | String | The default branch of the project Example: main |
description | String | The description of the project |
emails_ | Boolean | Deprecated: |
emails_ | Boolean | Enable email notifications |
enforce_ | Boolean | Enforce auth check on uploads |
environments_ | String | Environments access level.disabled,private or enabledAllowed values: disabled,private,enabled |
fe_ | Object | FE project settings attributes |
fe_ | String | Regex for indexing additional branches in Open |
feature_ | String | Feature flags access level.disabled,private or enabledAllowed values: disabled,private,enabled |
feature_ | String | Limit the ability to create, Allowed values: no_,developer,maintainer,owner |
forking_ | String | Forks access level.disabled,private or enabledAllowed values: disabled,private,enabled |
group_ | Boolean | Flag indication if group runners are enabled for that project |
infrastructure_ | String | Infrastructure access level.disabled,private or enabledAllowed values: disabled,private,enabled |
issue_ | String | Template used to create a branch from an issue |
issues_ | String | Issues access level.disabled,private or enabledAllowed values: disabled,private,enabled |
issues_ | Boolean | Flag indication if the issue tracker is enabled |
jobs_ | Boolean | Flag indication if jobs are enabled |
keep_ | Boolean | Indicates if the latest artifact should be kept for this project |
lfs_ | Boolean | Flag indication if Git LFS is enabled for that project |
max_ | Integer | Set the maximum file size for each job’s artifacts |
max_ | Integer | Set the maximum number of parallel pipelines for a merge train |
merge_ | String | Template used to create merge commit message |
merge_ | String | The merge method used when merging merge requests Allowed values: ff,rebase_,merge |
merge_ | Boolean | Enable or disable merged results pipelines |
merge_ | String | Regex pattern for validating merge request titles Maximum length: 255 |
merge_ | String | Example merge request title that matches merge_ Maximum length: 255 |
merge_ | String | Merge requests access level.disabled,private or enabledAllowed values: disabled,private,enabled |
merge_ | Boolean | Flag indication if merge requests are enabled |
merge_ | String | — |
merge_ | Boolean | Require merge requests to merge through a merge train |
merge_ | Boolean | Enable or disable merge trains |
merge_ | Boolean | Allow merge requests to merge immediately without restarting the merge train |
model_ | String | Model experiments access level.disabled,private or enabledAllowed values: disabled,private,enabled |
model_ | String | Model registry access level.disabled,private or enabledAllowed values: disabled,private,enabled |
monitor_ | String | Monitor access level.disabled,private or enabledAllowed values: disabled,private,enabled |
mr_ | Boolean | Merge requests of this forked project targets itself by default |
mr_ | String | Template used to generate the default merge request title. Maximum length: 100 |
name | String | The name of the project Example: project |
only_ | Boolean | Only allow to merge if all threads are resolved |
only_ | Boolean | Only allow to merge if builds succeed |
package_ | String | Controls visibility of the package registry.disabled,private,enabled or public.private will make the package registry accessible only to project members (reporter role and above).enabled will make the package registry accessible to everyone who has access to the project.public will make the package registry accessible to everyone.disabled will disable the package registryAllowed values: disabled,private,enabled,public |
packages_ | Boolean | Deprecated: |
pages_ | String | Pages access level.disabled,private,enabled or publicAllowed values: disabled,private,enabled,public |
path | String | The path of the repository Example: group/ |
printing_ | Boolean | Show link to create/ |
protect_ | Boolean | Make protected CI/ |
public_ | Boolean | Deprecated: |
public_ | Boolean | Perform public builds |
releases_ | String | Releases access level.disabled,private or enabledAllowed values: disabled,private,enabled |
remove_ | Boolean | Remove the source branch by default after merge |
repository_ | String | Repository access level.disabled,private or enabledAllowed values: disabled,private,enabled |
repository_ | String | Which storage shard the repository is on. |
request_ | Boolean | Allow users to request member access |
resolve_ | Boolean | Automatically resolve merge request diff threads on lines changed with a push |
resource_ | String | The process mode of the resource group Allowed values: unordered,oldest_,newest_,newest_ |
restrict_ | Boolean | Restrict use of user- |
security_ | String | Security and compliance access level.disabled,private or enabledAllowed values: disabled,private,enabled |
service_ | Boolean | Disable or enable the service desk |
shared_ | Boolean | Flag indication if shared runners are enabled for that project |
show_ | Boolean | Show default award emojis |
show_ | Boolean | Include the code diff preview in merge request notification emails |
snippets_ | String | Snippets access level.disabled,private or enabledAllowed values: disabled,private,enabled |
snippets_ | Boolean | Flag indication if snippets are enabled |
squash_ | String | Template used to create squash commit message |
squash_ | String | Squash default for project.never,always,default_,default_Allowed values: never,always,default_,default_ |
suggestion_ | String | The commit message used to apply merge request suggestions |
tag_ | Array of strings | Deprecated: |
topics | Array of strings | The list of topics for a project |
visibility | String | The visibility of the project Allowed values: private,internal,public |
warn_ | Boolean | Warn about potentially unwanted characters |
wiki_ | String | Wiki access level.disabled,private or enabledAllowed values: disabled,private,enabled |
wiki_ | Boolean | Flag indication if the wiki is enabled |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad request | — |
403 | Unauthenticated | — |
404 | Not Found | — |
Delete a project
DELETE /api/v4/projects/{id}
Deletes a specified project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Responses
| Code | Description | Schema |
|---|---|---|
202 | Accepted | — |
400 | Bad Request | — |
403 | Unauthenticated | — |
404 | Not found | — |
Search a project
GET /api/v4/projects/{id}/(-/)search
Searches for content in a specified project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
searchQuery, | String | The expression it should be searched for |
scopeQuery, | String | The scope of the search Allowed values: issues,work_,merge_,milestones,notes,wiki_,commits,blobs,usersMinimum length: 1 |
refQuery | String | The name of a repository branch or tag. |
stateQuery | String | Filter results by state Allowed values: all,opened,closed,merged |
confidentialQuery | Boolean | Filter results by confidentiality |
typeQuery | Array of strings | Filter work items by type. |
fieldsQuery | Array of strings | Array of fields to search. |
languageQuery | Array of strings | Array of languages to filter blobs by language |
label_Query | Array of strings | Array of labels to filter work_ |
source_Query | String | Filter merge requests by source branch Maximum length: 255 |
target_Query | String | Filter merge requests by target branch Maximum length: 255 |
not_Query | String | Exclude merge requests by source branch Maximum length: 255 |
not_Query | String | Exclude merge requests by target branch Maximum length: 255 |
author_Query | String | Filter merge requests by author username Maximum length: 255 |
not_Query | String | Exclude merge requests by author username Maximum length: 255 |
num_Query | Integer | Number of context lines around each match. Maximum: 20Minimum: 0 |
pageQuery | Integer | Current page number Default: 1Example: 1 |
per_Query | Integer | Number of items per page Default: 20Example: 20 |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | — |
400 | Bad Request | — |
404 | Not Found | — |
Archive a project
POST /api/v4/projects/{id}/archive
Archives a specified project. You must be an administrator or be assigned the Owner role on the project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Responses
| Code | Description | Schema |
|---|---|---|
201 | Created | APIEntities |
400 | Bad Request | — |
403 | Unauthenticated | — |
404 | Not Found | — |
Create a fork of a project
POST /api/v4/projects/{id}/fork
Creates a fork of a project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Request body (application/json)
| Property | Type | Description |
|---|---|---|
branches | String | Branches to fork |
description | String | The description that will be assigned to the fork Example: Description |
mr_ | Boolean | Merge requests of this forked project targets itself by default |
name | String | The name that will be assigned to the fork Example: Fork |
namespace | String | (deprecated) The ID or name of the namespace that the project will be forked into Example: gitlab |
namespace_ | Integer | The ID of the namespace that the project will be forked into Example: 1 |
namespace_ | String | The path of the namespace that the project will be forked into Example: new_ |
path | String | The path that will be assigned to the fork Example: fork |
visibility | String | The visibility of the fork Allowed values: private,internal,public |
Responses
| Code | Description | Schema |
|---|---|---|
201 | Created | APIEntities |
400 | Bad Request | — |
403 | Unauthenticated | — |
404 | Not found | — |
409 | Conflict | — |
Delete a fork relationship
DELETE /api/v4/projects/{id}/fork
Deletes a fork relationship between projects.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Responses
| Code | Description | Schema |
|---|---|---|
204 | No Content | — |
304 | Not modified | — |
400 | Bad Request | — |
403 | Unauthenticated | — |
404 | Not found | — |
Create a fork relationship
POST /api/v4/projects/{id}/fork/{forked_from_id}
Creates a fork relationship between a project and an upstream project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
forked_Path, | String | The ID of the project it was forked from Example: gitlab |
Responses
| Code | Description | Schema |
|---|---|---|
201 | Created | APIEntities |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | Unauthenticated | — |
404 | Not found | — |
List all forks of a project
GET /api/v4/projects/{id}/forks
Lists all forks of a project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
order_Query | String | Return projects ordered by field. Allowed values: id,name,path,created_,updated_,last_,similarity,star_,storage_,repository_,wiki_,packages_Default: created_ |
sortQuery | String | Return projects sorted in ascending and descending order Allowed values: asc,descDefault: desc |
archivedQuery | Boolean | Limit by archived status |
visibilityQuery | String | Limit by visibility Allowed values: private,internal,public |
searchQuery | String | Return list of projects matching the search criteria |
search_Query | Boolean | Include ancestor namespaces when matching search criteria |
ownedQuery | Boolean | Limit by owned by authenticated user Default: false |
starredQuery | Boolean | Limit by starred status Default: false |
importedQuery | Boolean | Limit by imported by authenticated user Default: false |
membershipQuery | Boolean | Limit by projects that the current user is a member of Default: false |
with_Query | Boolean | Limit by enabled issues feature Default: false |
with_Query | Boolean | Limit by enabled merge requests feature Default: false |
with_Query | String | Limit to repositories which use the given programming language |
min_Query | Integer | Limit by minimum access level of authenticated user Allowed values: 10,15,20,25,30,40,50 |
id_Query | Integer | Limit results to projects with IDs greater than the specified ID |
id_Query | Integer | Limit results to projects with IDs less than the specified ID |
last_Query | String (date- | Limit results to projects with last_ |
last_Query | String (date- | Limit results to projects with last_ |
repository_Query | String | Which storage shard the repository is on. |
topicQuery | Array of strings | Comma- |
topic_Query | Integer | Limit results to projects with the assigned topic given by the topic ID |
updated_Query | String (date- | Return projects updated before the specified datetime. |
updated_Query | String (date- | Return projects updated after the specified datetime. |
include_Query | Boolean | Include projects in pending delete state. |
marked_Query | String (date) | Date when the project was marked for deletion |
activeQuery | Boolean | Limit by projects that are not archived and not marked for deletion |
pageQuery | Integer | Current page number Default: 1Example: 1 |
per_Query | Integer | Number of items per page Default: 20Example: 20 |
simpleQuery | Boolean | Return only the ID, Default: false |
with_Query | Boolean | Include custom attributes in the response Default: false |
custom_Query | Object | Filter with custom attributes |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
404 | Not Found | — |
List all ancestor groups
GET /api/v4/projects/{id}/groups
Lists all ancestor groups for a specified project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
searchQuery | String | Return list of groups matching the search criteria Example: group |
skip_Query | Array of integers | Array of group ids to exclude from list |
with_Query | Boolean | Include shared groups Default: false |
shared_Query | Boolean | Limit to shared groups user has access to Default: false |
shared_Query | Integer | Limit returned shared groups by minimum access level to the project Allowed values: 10,15,20,25,30,40,50 |
pageQuery | Integer | Current page number Default: 1Example: 1 |
per_Query | Integer | Number of items per page Default: 20Example: 20 |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
403 | Unauthenticated | — |
404 | Not found | — |
Start the housekeeping task for a project
POST /api/v4/projects/{id}/housekeeping
Starts the housekeeping task for a project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Request body (application/json)
| Property | Type | Description |
|---|---|---|
task | String | prune to trigger manual prune of unreachable objects or eager to trigger eager housekeepingAllowed values: :,:Default: : |
Responses
| Code | Description | Schema |
|---|---|---|
201 | Created | — |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | Unauthenticated | — |
404 | Not Found | — |
409 | Conflict | — |
Import members
POST /api/v4/projects/{id}/import_project_members/{project_id}
Imports members from another project. If the role of the importing member for the target project is a Maintainer, then members with the Owner role for the source project are imported with the Maintainer role. If the importing member is an Owner, then members with the Owner role for the source project are imported with the Owner role.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
project_Path, | Integer | The ID of the source project to import the members from |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | — |
400 | Bad Request | — |
403 | Forbidden - | — |
404 | Project Not Found | — |
422 | Import failed | — |
List all invited groups in a project
GET /api/v4/projects/{id}/invited_groups
Lists all invited groups in a project. Unauthenticated requests return only public invited groups. Limited to 60 requests a minute per user account for authenticated requires and per IP address for unauthenticated requests. Supports offset-based pagination (up to 50,000 projects) and keyset-based pagination (greater than 50,000 projects).
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
relationQuery | Array of strings | Filter by group relation |
searchQuery | String | Search for a specific group |
min_Query | Integer | Limit by minimum access level of authenticated user Allowed values: 10,15,20,25,30,40,50 |
pageQuery | Integer | Current page number Default: 1Example: 1 |
per_Query | Integer | Number of items per page Default: 20Example: 20 |
with_Query | Boolean | Include custom attributes in the response Default: false |
custom_Query | Object | Filter with custom attributes |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
404 | Not Found | — |
List all project issues
GET /api/v4/projects/{id}/issues
Lists all issues for a specified project. If the project is private, you need to provide credentials to authorize. In most cases, you should authenticate with a personal access token.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
with_Query | Boolean | Return titles of labels and other details Default: false |
stateQuery | String | Return opened, Allowed values: opened,closed,allDefault: all |
closed_Query | Integer | Return issues which were closed by the user with the given ID |
order_Query | String | Return issues ordered by created_,due_,label_,milestone_,popularity,priority,relative_,title,updated_ fieldsAllowed values: created_,due_,label_,milestone_,popularity,priority,relative_,title,updated_Default: created_ |
sortQuery | String | Return issues sorted in asc or desc orderAllowed values: asc,descDefault: desc |
due_Query | String | Return issues that have no due date (0),overdue,week,month,next_,0Allowed values: 0,any,today,tomorrow,overdue,week,month,next_, |
issue_Query | String | The type of the issue. Allowed values: issue,incident,test_,requirement,task,ticket |
labelsQuery | Array of strings | Comma- |
milestoneQuery | String | Milestone title.milestone_ |
milestone_Query | String | Return issues assigned to milestones with the specified timebox value (“Any”,milestoneAllowed values: Any,None,Upcoming,Started |
iidsQuery | Array of integers | The IID array of issues |
searchQuery | String | Search issues for text present in the title, |
inQuery | String | title,description, |
author_Query | Integer | Return issues which are authored by the user with the given ID.author_ |
author_Query | String | Return issues which are authored by the user with the given username.author_ |
assignee_Query | Integer or string | Return issues which are assigned to the user with the given ID.assignee_ |
assignee_Query | Array of strings | Return issues which are assigned to the user with the given username.assignee_ |
created_Query | String (date- | Return issues created after the specified time |
created_Query | String (date- | Return issues created before the specified time |
updated_Query | String (date- | Return issues updated after the specified time |
updated_Query | String (date- | Return issues updated before the specified time |
notQuery | Object | Filters by the specified parameters |
not[labels]Query | Array of strings | Comma- |
not[milestone]Query | String | Milestone title.not[milestone_ |
not[milestone_Query | String | Return issues assigned to milestones without the specified timebox value (“Any”,not[milestone]Allowed values: Any,None,Upcoming,Started |
not[iids]Query | Array of integers | The IID array of issues |
not[author_Query | Integer | Return issues which are not authored by the user with the given ID.not[author_ |
not[author_Query | String | Return issues which are not authored by the user with the given username.not[author_ |
not[assignee_Query | Integer | Return issues which are not assigned to the user with the given ID.not[assignee_ |
not[assignee_Query | Array of strings | Return issues which are not assigned to the user with the given username.not[assignee_ |
scopeQuery | String | Return issues for the given scope:created_,assigned_ or allAllowed values: created-,assigned-,created_,assigned_,all |
my_Query | String | Return issues reacted by the authenticated user by the given emoji |
confidentialQuery | Boolean | Filter confidential or public issues |
pageQuery | Integer | Current page number Default: 1Example: 1 |
per_Query | Integer | Number of items per page Default: 20Example: 20 |
cursorQuery | String | Cursor for obtaining the next set of records |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
404 | Not Found | — |
Create an issue
POST /api/v4/projects/{id}/issues
Creates an issue for a specified project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Request body (application/json)
| Property | Type | Description |
|---|---|---|
add_ | Array of strings | Comma- |
assignee_ | Integer | [Deprecated] The ID of a user to assign issue |
assignee_ | Array of integers | The array of user IDs to assign issue |
confidential | Boolean | Boolean parameter if the issue should be confidential |
created_ | String (date- | Date time when the issue was created. |
description | String | The description of an issue |
discussion_ | Boolean | Boolean parameter indicating if the issue’s discussion is locked |
discussion_ | String | The ID of a discussion to resolve,merge_ |
due_ | String | Date string in the format YEAR- |
iid | Integer | The internal ID of a project issue. |
issue_ | String | The type of the issue. Allowed values: issue,incident,test_,requirement,task,ticket |
labels | Array of strings | Comma- |
merge_ | Integer | The IID of a merge request for which to resolve discussions |
milestone | String | The title of a project or ancestor-milestone_Maximum length: 255 |
milestone_ | Integer | The ID of a milestone to assign issue.milestone |
remove_ | Array of strings | Comma- |
severity | String | The severity of the issue. Allowed values: unknown,low,medium,high,critical |
start_ | String | Date string in the format YEAR- |
titleRequired | String | The title of an issue |
Responses
| Code | Description | Schema |
|---|---|---|
201 | Created | APIEntities |
400 | Bad Request | — |
404 | Not Found | — |
Retrieve a project issue
GET /api/v4/projects/{id}/issues/{issue_iid}
Retrieves a specified issue for a project. If the project is private or the issue is confidential, you need to provide credentials to authorize. In most cases, you should authenticate with a personal access token.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
issue_Path, | Integer | The internal ID of a project issue |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
404 | Not Found | — |
Update an issue
PUT /api/v4/projects/{id}/issues/{issue_iid}
Updates a specified issue for a project. This request is also used to close or reopen an issue using the state_event parameter. At least one of the following parameters is required for the request to be successful: assignee_id, assignee_ids, confidential, created_at, description, discussion_locked, due_date, issue_type, labels, milestone_id, state_event, title.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
issue_Path, | Integer | The internal ID of a project issue |
Request body (application/json)
| Property | Type | Description |
|---|---|---|
add_ | Array of strings | Comma- |
assignee_ | Integer | [Deprecated] The ID of a user to assign issue |
assignee_ | Array of integers | The array of user IDs to assign issue |
confidential | Boolean | Boolean parameter if the issue should be confidential |
created_ | String | — |
description | String | The description of an issue |
discussion_ | Boolean | Boolean parameter indicating if the issue’s discussion is locked |
due_ | String | Date string in the format YEAR- |
issue_ | String | The type of the issue. Allowed values: issue,incident,test_,requirement,task,ticket |
labels | Array of strings | Comma- |
milestone | String | The title of a project or ancestor-milestone_Maximum length: 255 |
milestone_ | Integer | The ID of a milestone to assign issue.milestone |
remove_ | Array of strings | Comma- |
severity | String | The severity of the issue. Allowed values: unknown,low,medium,high,critical |
start_ | String | Date string in the format YEAR- |
state_ | String | State of the issue Allowed values: reopen,close |
title | String | The title of an issue |
updated_ | String (date- | Date time when the issue was updated. |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
404 | Not Found | — |
Delete an issue
DELETE /api/v4/projects/{id}/issues/{issue_iid}
Deletes a specified issue.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
issue_Path, | Integer | The internal ID of a project issue |
Responses
| Code | Description | Schema |
|---|---|---|
204 | No Content | — |
400 | Bad Request | — |
404 | Not Found | — |
Clone an issue
POST /api/v4/projects/{id}/issues/{issue_iid}/clone
Clones a specified issue to a project. Copies as much data as possible as long as the target project contains equivalent criteria, such as labels or milestones. If you have insufficient permissions, an error message with status code 400 is returned.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
issue_Path, | Integer | The internal ID of a project issue |
Request body (application/json)
| Property | Type | Description |
|---|---|---|
to_Required | Integer | The ID of the new project |
with_ | Boolean | Clone issue with notes Default: false |
Responses
| Code | Description | Schema |
|---|---|---|
201 | Created | APIEntities |
400 | Bad Request | — |
404 | Not Found | — |
List all merge requests that close an issue on merge
GET /api/v4/projects/{id}/issues/{issue_iid}/closed_by
Lists all merge requests that close a specified issue when merged. If the project is private or the issue is confidential, you need to provide credentials to authorize. In most cases, you should authenticate with a personal access token.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
issue_Path, | Integer | The internal ID of a project issue |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
404 | Not Found | — |
Move an issue
POST /api/v4/projects/{id}/issues/{issue_iid}/move
Moves a specified issue to a different project. If the target project is the source project or the user has insufficient permissions, an error message with status code 400 is returned. If a label or milestone with the same name also exists in the target project, it is then assigned to the issue being moved.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
issue_Path, | Integer | The internal ID of a project issue |
Request body (application/json)
| Property | Type | Description |
|---|---|---|
to_Required | Integer | The ID of the new project |
Responses
| Code | Description | Schema |
|---|---|---|
201 | Created | APIEntities |
400 | Bad Request | — |
404 | Not Found | — |
Update the order of an issue
PUT /api/v4/projects/{id}/issues/{issue_iid}/reorder
Updates the order of a specified issue in a project. You can see the results when sorting issues manually.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
issue_Path, | Integer | The internal ID of a project issue |
Request body (application/json)
| Property | Type | Description |
|---|---|---|
move_ | Integer | The ID of the issue we want to be after |
move_ | Integer | The ID of the issue we want to be before |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
404 | Not Found | — |
Retrieve issues statistics for a project
GET /api/v4/projects/{id}/issues_statistics
Retrieves statistics for issues in a specified project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
labelsQuery | Array of strings | Comma- |
milestoneQuery | String | Milestone title.milestone_ |
milestone_Query | String | Return issues assigned to milestones with the specified timebox value (“Any”,milestoneAllowed values: Any,None,Upcoming,Started |
iidsQuery | Array of integers | The IID array of issues |
searchQuery | String | Search issues for text present in the title, |
inQuery | String | title,description, |
author_Query | Integer | Return issues which are authored by the user with the given ID.author_ |
author_Query | String | Return issues which are authored by the user with the given username.author_ |
assignee_Query | Integer or string | Return issues which are assigned to the user with the given ID.assignee_ |
assignee_Query | Array of strings | Return issues which are assigned to the user with the given username.assignee_ |
created_Query | String (date- | Return issues created after the specified time |
created_Query | String (date- | Return issues created before the specified time |
updated_Query | String (date- | Return issues updated after the specified time |
updated_Query | String (date- | Return issues updated before the specified time |
notQuery | Object | Filters by the specified parameters |
not[labels]Query | Array of strings | Comma- |
not[milestone]Query | String | Milestone title.not[milestone_ |
not[milestone_Query | String | Return issues assigned to milestones without the specified timebox value (“Any”,not[milestone]Allowed values: Any,None,Upcoming,Started |
not[iids]Query | Array of integers | The IID array of issues |
not[author_Query | Integer | Return issues which are not authored by the user with the given ID.not[author_ |
not[author_Query | String | Return issues which are not authored by the user with the given username.not[author_ |
not[assignee_Query | Integer | Return issues which are not assigned to the user with the given ID.not[assignee_ |
not[assignee_Query | Array of strings | Return issues which are not assigned to the user with the given username.not[assignee_ |
scopeQuery | String | Return issues for the given scope:created_,assigned_ or allAllowed values: created-,assigned-,created_,assigned_,all |
my_Query | String | Return issues reacted by the authenticated user by the given emoji |
confidentialQuery | Boolean | Filter confidential or public issues |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | — |
400 | Bad Request | — |
404 | Not Found | — |
Retrieve programming language usage information
GET /api/v4/projects/{id}/languages
Retrieves information about all programming languages used in a specified project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | — |
400 | Bad Request | — |
404 | Not found | — |
List all package protection rules
GET /api/v4/projects/{id}/packages/protection/rules
Lists all package protection rules for a specified project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | Forbidden | — |
404 | Not Found | — |
Create a package protection rule
POST /api/v4/projects/{id}/packages/protection/rules
Creates a package protection rule for a specified project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Request body (application/json)
| Property | Type | Description |
|---|---|---|
minimum_ | String | Minimum Gitnull,owner or admin.null,maintainer.minimum_ is not set.packages_.Allowed values: owner,admin |
minimum_ | String | Minimum Gitnull,maintainer,owner or admin.null,developer.minimum_ is not setAllowed values: maintainer,owner,admin |
package_Required | String | Package name protected by the rule. |
package_Required | String | Package type protected by the rule. Allowed values: cargo,conan,generic,helm,maven,npm,nuget,pypi,terraform_Minimum length: 1 |
Responses
| Code | Description | Schema |
|---|---|---|
201 | Created | APIEntities |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | Forbidden | — |
404 | Not Found | — |
422 | Unprocessable Entity | — |
Update a package protection rule
PATCH /api/v4/projects/{id}/packages/protection/rules/{package_protection_rule_id}
Updates a package protection rule for a specified project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
package_Path, | Integer | The ID of the package protection rule |
Request body (application/json)
| Property | Type | Description |
|---|---|---|
minimum_ | String | Minimum Gitnull,owner or admin.null,maintainer.minimum_ is not set.packages_.Allowed values: owner,admin |
minimum_ | String | Minimum Gitnull,maintainer,owner or admin.null,developer.minimum_ is not setAllowed values: maintainer,owner,admin |
package_ | String | Package name protected by the rule. |
package_ | String | Package type protected by the rule. Allowed values: cargo,conan,generic,helm,maven,npm,nuget,pypi,terraform_ |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | Forbidden | — |
404 | Not Found | — |
422 | Unprocessable Entity | — |
Delete a package protection rule
DELETE /api/v4/projects/{id}/packages/protection/rules/{package_protection_rule_id}
Deletes a package protection rule from a specified project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
package_Path, | Integer | The ID of the package protection rule |
Responses
| Code | Description | Schema |
|---|---|---|
204 | 204 No Content | — |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | Forbidden | — |
404 | Not Found | — |
Check pages access of this project
GET /api/v4/projects/{id}/pages_access
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | — |
400 | Bad Request | — |
403 | Unauthenticated | — |
404 | Not Found | — |
List all container repository protection rules
GET /api/v4/projects/{id}/registry/protection/repository/rules
Lists all container repository protection rules for a specified project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | Forbidden | — |
404 | Not Found | — |
Create a container repository protection rule
POST /api/v4/projects/{id}/registry/protection/repository/rules
Creates a container repository protection rule for a specified project to control who can push or delete container images.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Request body (application/json)
| Property | Type | Description |
|---|---|---|
minimum_ | String | Minimum Git Allowed values: maintainer,owner,admin |
minimum_ | String | Minimum Git Allowed values: maintainer,owner,admin |
repository_Required | String | Container repository path pattern protected by the protection rule.flight/.* allowed |
Responses
| Code | Description | Schema |
|---|---|---|
201 | Created | APIEntities |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | Forbidden | — |
404 | Not Found | — |
422 | Unprocessable Entity | — |
Update a container repository protection rule
PATCH /api/v4/projects/{id}/registry/protection/repository/rules/{protection_rule_id}
Updates a container repository protection rule for a specified project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
protection_Path, | Integer | The ID of the container protection rule |
Request body (application/json)
| Property | Type | Description |
|---|---|---|
minimum_ | String | Minimum Git""Allowed values: maintainer,owner,admin, |
minimum_ | String | Minimum Git""Allowed values: maintainer,owner,admin, |
repository_ | String | Container repository path pattern protected by the protection rule.flight/.* allowed |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | Forbidden | — |
404 | Not Found | — |
422 | Unprocessable Entity | — |
Delete a container repository protection rule
DELETE /api/v4/projects/{id}/registry/protection/repository/rules/{protection_rule_id}
Deletes a specified container repository protection rule.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
protection_Path, | Integer | The ID of the container protection rule |
Responses
| Code | Description | Schema |
|---|---|---|
204 | 204 No Content | — |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | Forbidden | — |
404 | Not Found | — |
List all container registry protection tag rules
GET /api/v4/projects/{id}/registry/protection/tag/rules
Lists all container registry protection tag rules for a project. This feature was introduced in GitLab 18.7.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | Forbidden | — |
404 | Not Found | — |
Create a container registry protection tag rule
POST /api/v4/projects/{id}/registry/protection/tag/rules
Creates a container registry protection tag rule for a project to control who can push or delete container tags. This feature was introduced in GitLab 18.8.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Request body (application/json)
| Property | Type | Description |
|---|---|---|
minimum_Required | String | Minimum Git Allowed values: maintainer,owner,adminMinimum length: 1 |
minimum_Required | String | Minimum Git Allowed values: maintainer,owner,adminMinimum length: 1 |
tag_Required | String | Container tag name pattern protected by the protection rule.v*-.* allowed |
Responses
| Code | Description | Schema |
|---|---|---|
201 | Created | APIEntities |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | Forbidden | — |
404 | Not Found | — |
422 | Unprocessable Entity | — |
Update a container registry protection tag rule
PATCH /api/v4/projects/{id}/registry/protection/tag/rules/{protection_rule_id}
Updates a container registry protection tag rule for a project. This feature was introduced in GitLab 18.9.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
protection_Path, | Integer | The ID of the container protection tag rule |
Request body (application/json)
| Property | Type | Description |
|---|---|---|
minimum_ | String | Minimum Git"")Allowed values: maintainer,owner,admin, |
minimum_ | String | Minimum Git"")Allowed values: maintainer,owner,admin, |
tag_ | String | Container tag name pattern protected by the protection rule.v*-.* allowed |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | Forbidden | — |
404 | Not Found | — |
422 | Unprocessable Entity | — |
Delete a container registry protection tag rule
DELETE /api/v4/projects/{id}/registry/protection/tag/rules/{protection_rule_id}
Deletes a container registry protection tag rule from a project. This feature was introduced in GitLab 18.9.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
protection_Path, | Integer | The ID of the container protection tag rule |
Responses
| Code | Description | Schema |
|---|---|---|
204 | Delete a container protection tag rule | — |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | Forbidden | — |
404 | Not Found | — |
Start a task to recalculate repository size for a project
POST /api/v4/projects/{id}/repository_size
This feature was introduced in GitLab 15.0.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Responses
| Code | Description | Schema |
|---|---|---|
201 | Created | — |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | Unauthenticated | — |
404 | Not Found | — |
Restore a project marked for deletion
POST /api/v4/projects/{id}/restore
Restores a specified project that was marked for deletion.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Responses
| Code | Description | Schema |
|---|---|---|
201 | Created | APIEntities |
400 | Bad Request | — |
404 | Not Found | — |
List all runners for a project
GET /api/v4/projects/{id}/runners
List all runners available in the project, including from ancestor groups and any allowed shared runners.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
scopeQuery | String | Deprecated:type or status instead.Allowed values: specific,shared,instance_,group_,project_,active,paused,online,offline,never_,stale |
typeQuery | String | The type of runners to return Allowed values: instance_,group_,project_ |
pausedQuery | Boolean | Whether to include only runners that are accepting or ignoring new jobs |
statusQuery | String | The status of runners to return Allowed values: active,paused,online,offline,never_,stale |
tag_Query | Array of strings | A list of runner tags Example: ["macos", |
version_Query | String | The version prefix of runners to return Pattern: (?<=^|\n(?!$))[\d+.Example: 15. |
pageQuery | Integer | Current page number Default: 1Example: 1 |
per_Query | Integer | Number of items per page Default: 20Example: 20 |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Scope contains invalid value | — |
403 | No access granted | — |
404 | Not Found | — |
Assign a runner to a project
POST /api/v4/projects/{id}/runners
Assigns an available project runner to a project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Request body (application/json)
| Property | Type | Description |
|---|---|---|
runner_Required | Integer | The ID of a runner |
Responses
| Code | Description | Schema |
|---|---|---|
201 | Created | APIEntities |
400 | Bad Request | — |
403 | Runner is locked | — |
404 | Runner not found | — |
Reset runner registration token
POST /api/v4/projects/{id}/runners/reset_registration_token
FE version
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String | The ID of a project |
Responses
| Code | Description | Schema |
|---|---|---|
201 | Created | APIEntities |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | Forbidden | — |
404 | Project Not Found | — |
Unassign a runner from a project
DELETE /api/v4/projects/{id}/runners/{runner_id}
Unassigns a specified project runner from a project. You cannot unassign a runner from the owner project. Use the delete a runner operation instead.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
runner_Path, | Integer | The ID of a runner |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
403 | You cannot unassign a runner from the owner project. | — |
404 | Runner not found | — |
412 | Precondition Failed | — |
Share a project with a group
POST /api/v4/projects/{id}/share
Shares a specified project with a group.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Request body (application/json)
| Property | Type | Description |
|---|---|---|
expires_ | String (date) | Share expiration date |
group_Required | Integer | The group access level Allowed values: 10,15,20,25,30,40,50 |
group_Required | Integer | The ID of a group Example: 1 |
Responses
| Code | Description | Schema |
|---|---|---|
201 | Created | APIEntities |
400 | Bad request | — |
403 | Unauthenticated | — |
404 | Not found | — |
Delete a shared project link in a group
DELETE /api/v4/projects/{id}/share/{group_id}
Deletes a shared project link in a group.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
group_Path, | Integer | The ID of the group |
Responses
| Code | Description | Schema |
|---|---|---|
204 | No Content | — |
400 | Bad request | — |
404 | Not found | — |
List all groups available to invite to a project
GET /api/v4/projects/{id}/share_locations
Lists all groups that can be invited to a project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | Integer | The id of the project |
searchQuery | String | Return list of groups matching the search criteria |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
404 | Not Found | — |
Star a project
POST /api/v4/projects/{id}/star
Stars a specified project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Responses
| Code | Description | Schema |
|---|---|---|
201 | Created | APIEntities |
304 | Not modified | — |
400 | Bad Request | — |
403 | Unauthenticated | — |
404 | Not Found | — |
List all users who starred a project
GET /api/v4/projects/{id}/starrers
Lists all users who starred a specified project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
searchQuery | String | Return list of users matching the search criteria Example: user |
pageQuery | Integer | Current page number Default: 1Example: 1 |
per_Query | Integer | Number of items per page Default: 20Example: 20 |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
403 | Unauthenticated | — |
404 | Not found | — |
Retrieve the statistics of the last 30 days
GET /api/v4/projects/{id}/statistics
Retrieves the clone and pull statistics for the last 30 days from a specified project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
401 | 401 Unauthorized | — |
404 | 404 Project Not Found | — |
Retrieve the path to repository storage
GET /api/v4/projects/{id}/storage
Retrieves the path to repository storage for a specified project. If you are using Gitaly Cluster (Praefect), see Praefect-generated replica paths instead. Administrators only.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String | ID of a project |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
403 | Unauthenticated | — |
404 | Not Found | — |
List all Terraform state protection rules for a project
GET /api/v4/projects/{id}/terraform/state_protection_rules
Lists all Terraform state protection rules for a project. This feature was introduced in GitLab 18.11.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | Forbidden | — |
404 | Not Found | — |
Create a Terraform state protection rule for a project
POST /api/v4/projects/{id}/terraform/state_protection_rules
This feature was introduced in GitLab 19.1.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Request body (application/json)
| Property | Type | Description |
|---|---|---|
allowed_ | String | Source restriction for write requests. Allowed values: anywhere,ci_,ci_ |
minimum_Required | String | Minimum Git Allowed values: developer,maintainer,owner,adminMinimum length: 1 |
state_Required | String | Terraform state name to protect. Maximum length: 255 |
Responses
| Code | Description | Schema |
|---|---|---|
201 | Created | APIEntities |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | Forbidden | — |
404 | Not Found | — |
422 | Unprocessable Entity | — |
Update a Terraform state protection rule for a project
PATCH /api/v4/projects/{id}/terraform/state_protection_rules/{terraform_state_protection_rule_id}
This feature was introduced in GitLab 19.0.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
terraform_Path, | Integer | The ID of the Terraform state protection rule |
Request body (application/json)
| Property | Type | Description |
|---|---|---|
allowed_ | String | If defined, Allowed values: anywhere,ci_,ci_ |
minimum_ | String | If defined, Allowed values: developer,maintainer,owner,admin |
state_ | String | Terraform state name to protect |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | Forbidden | — |
404 | Not Found | — |
422 | Unprocessable Entity | — |
Delete a Terraform state protection rule
DELETE /api/v4/projects/{id}/terraform/state_protection_rules/{terraform_state_protection_rule_id}
This feature was introduced in GitLab 19.0.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
terraform_Path, | Integer | The ID of the Terraform state protection rule |
Responses
| Code | Description | Schema |
|---|---|---|
204 | 204 No Content | — |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | Forbidden | — |
404 | Not Found | — |
Transfer a project to another namespace
PUT /api/v4/projects/{id}/transfer
Transfers a project to another namespace.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Request body (application/json)
| Property | Type | Description |
|---|---|---|
namespaceRequired | String | The ID or path of the new namespace Example: gitlab |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad request | — |
403 | Unauthenticated | — |
404 | Not found | — |
List all transferable namespaces for a project
GET /api/v4/projects/{id}/transfer_locations
Lists all namespaces where a specified project can be transferred.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
searchQuery | String | Return list of namespaces matching the search criteria Example: search |
pageQuery | Integer | Current page number Default: 1Example: 1 |
per_Query | Integer | Number of items per page Default: 20Example: 20 |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
403 | Unauthenticated | — |
404 | Not Found | — |
Unarchive a project
POST /api/v4/projects/{id}/unarchive
Unarchives a specified project. You must be an administrator or have the Owner role on the project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Responses
| Code | Description | Schema |
|---|---|---|
201 | Created | APIEntities |
400 | Bad Request | — |
403 | Unauthenticated | — |
404 | Not Found | — |
Unstar a project
POST /api/v4/projects/{id}/unstar
Unstars a specified project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Responses
| Code | Description | Schema |
|---|---|---|
201 | Created | APIEntities |
304 | Not modified | — |
400 | Bad Request | — |
403 | Unauthenticated | — |
404 | Not Found | — |
List all uploads
GET /api/v4/projects/{id}/uploads
Lists all uploads of a project sorted by created_at in descending order. You must have the Maintainer or Owner role for the project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
pageQuery | Integer | Current page number Default: 1Example: 1 |
per_Query | Integer | Number of items per page Default: 20Example: 20 |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
403 | Unauthenticated | — |
404 | Not found | — |
Create an upload
POST /api/v4/projects/{id}/uploads
Creates an upload.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Request body (multipart/form-data)
| Property | Type | Description |
|---|---|---|
fileRequired | String (binary) | The attachment file to be uploaded |
Responses
| Code | Description | Schema |
|---|---|---|
201 | Created | APIEntities |
400 | Bad Request | — |
404 | Not found | — |
Workhorse authorize the file upload
POST /api/v4/projects/{id}/uploads/authorize
This feature was introduced in GitLab 13.11
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | — |
400 | Bad Request | — |
404 | Not found | — |
Download an uploaded file by secret and filename
GET /api/v4/projects/{id}/uploads/{secret}/{filename}
Downloads an uploaded file with a specified secret and filename. You must have the Guest, Planner, Reporter, Developer, Maintainer, or Owner role for the project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
secretPath, | String | The 32- |
filenamePath, | String | The filename of a project upload |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | String (binary) (application/) |
400 | Bad Request | — |
403 | Unauthenticated | — |
404 | Not found | — |
Delete an uploaded file by secret and filename
DELETE /api/v4/projects/{id}/uploads/{secret}/{filename}
Deletes an uploaded file with a specified secret and filename. You must have the Maintainer or Owner role for the project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
secretPath, | String | The 32- |
filenamePath, | String | The filename of a project upload |
Responses
| Code | Description | Schema |
|---|---|---|
204 | No Content | — |
400 | Bad request | — |
403 | Unauthenticated | — |
404 | Not found | — |
Download an uploaded file by ID
GET /api/v4/projects/{id}/uploads/{upload_id}
Downloads an uploaded file with a specified ID. You must have the Maintainer or Owner role for the project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
upload_Path, | Integer | The ID of a project upload |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | String (binary) (application/) |
400 | Bad Request | — |
403 | Unauthenticated | — |
404 | Not found | — |
Delete an uploaded file by ID
DELETE /api/v4/projects/{id}/uploads/{upload_id}
Deletes an uploaded file with a specified ID. You must have the Maintainer or Owner role for the project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
upload_Path, | Integer | The ID of a project upload |
Responses
| Code | Description | Schema |
|---|---|---|
204 | No Content | — |
400 | Bad request | — |
403 | Unauthenticated | — |
404 | Not found | — |
List all members of a project
GET /api/v4/projects/{id}/users
Lists all members with access to a specified project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | String or integer | The ID or URL- |
searchQuery | String | Return list of users matching the search criteria Example: user |
skip_Query | Array of integers | Filter out users with the specified IDs |
pageQuery | Integer | Current page number Default: 1Example: 1 |
per_Query | Integer | Number of items per page Default: 20Example: 20 |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
403 | Unauthenticated | — |
404 | Not found | — |
Get projects associated with a runner
GET /api/v4/runners/{id}/projects
Get a paginated list of all projects associated with the specified runner. Access is restricted based on user permissions.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | Integer | The ID of a runner |
pageQuery | Integer | Current page number Default: 1Example: 1 |
per_Query | Integer | Number of items per page Default: 20Example: 20 |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | No access granted | — |
404 | Runner not found | — |
List all projects contributions for a user
GET /api/v4/users/{user_id}/contributed_projects
Lists all contributions to visible projects for a specified user. Returns only contributions in the past year.
Parameters
| Name | Type | Description |
|---|---|---|
user_Path, | String | The ID or username of the user |
order_Query | String | Return projects ordered by field. Allowed values: id,name,path,created_,updated_,last_,similarity,star_,storage_,repository_,wiki_,packages_Default: created_ |
sortQuery | String | Return projects sorted in ascending and descending order Allowed values: asc,descDefault: desc |
pageQuery | Integer | Current page number Default: 1Example: 1 |
per_Query | Integer | Number of items per page Default: 20Example: 20 |
simpleQuery | Boolean | Return only the ID, Default: false |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
404 | 404 User Not Found | — |
List all personal projects for a user
GET /api/v4/users/{user_id}/projects
Lists all personal projects for a specified user. Does not return group or subgroup projects. If the user profile is private, returns only an empty list.
Parameters
| Name | Type | Description |
|---|---|---|
user_Path, | String | The ID or username of the user |
order_Query | String | Return projects ordered by field. Allowed values: id,name,path,created_,updated_,last_,similarity,star_,storage_,repository_,wiki_,packages_Default: created_ |
sortQuery | String | Return projects sorted in ascending and descending order Allowed values: asc,descDefault: desc |
archivedQuery | Boolean | Limit by archived status |
visibilityQuery | String | Limit by visibility Allowed values: private,internal,public |
searchQuery | String | Return list of projects matching the search criteria |
search_Query | Boolean | Include ancestor namespaces when matching search criteria |
ownedQuery | Boolean | Limit by owned by authenticated user Default: false |
starredQuery | Boolean | Limit by starred status Default: false |
importedQuery | Boolean | Limit by imported by authenticated user Default: false |
membershipQuery | Boolean | Limit by projects that the current user is a member of Default: false |
with_Query | Boolean | Limit by enabled issues feature Default: false |
with_Query | Boolean | Limit by enabled merge requests feature Default: false |
with_Query | String | Limit to repositories which use the given programming language |
min_Query | Integer | Limit by minimum access level of authenticated user Allowed values: 10,15,20,25,30,40,50 |
id_Query | Integer | Limit results to projects with IDs greater than the specified ID |
id_Query | Integer | Limit results to projects with IDs less than the specified ID |
last_Query | String (date- | Limit results to projects with last_ |
last_Query | String (date- | Limit results to projects with last_ |
repository_Query | String | Which storage shard the repository is on. |
topicQuery | Array of strings | Comma- |
topic_Query | Integer | Limit results to projects with the assigned topic given by the topic ID |
updated_Query | String (date- | Return projects updated before the specified datetime. |
updated_Query | String (date- | Return projects updated after the specified datetime. |
include_Query | Boolean | Include projects in pending delete state. |
marked_Query | String (date) | Date when the project was marked for deletion |
activeQuery | Boolean | Limit by projects that are not archived and not marked for deletion |
pageQuery | Integer | Current page number Default: 1Example: 1 |
per_Query | Integer | Number of items per page Default: 20Example: 20 |
simpleQuery | Boolean | Return only the ID, Default: false |
statisticsQuery | Boolean | Include project statistics Default: false |
with_Query | Boolean | Include custom attributes in the response Default: false |
custom_Query | Object | Filter with custom attributes |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
404 | 404 User Not Found | — |
List all projects starred by a user
GET /api/v4/users/{user_id}/starred_projects
Lists all visible projects starred by a specified user. Unauthenticated requests return only public projects.
Parameters
| Name | Type | Description |
|---|---|---|
user_Path, | String | The ID or username of the user |
order_Query | String | Return projects ordered by field. Allowed values: id,name,path,created_,updated_,last_,similarity,star_,storage_,repository_,wiki_,packages_Default: created_ |
sortQuery | String | Return projects sorted in ascending and descending order Allowed values: asc,descDefault: desc |
archivedQuery | Boolean | Limit by archived status |
visibilityQuery | String | Limit by visibility Allowed values: private,internal,public |
searchQuery | String | Return list of projects matching the search criteria |
search_Query | Boolean | Include ancestor namespaces when matching search criteria |
ownedQuery | Boolean | Limit by owned by authenticated user Default: false |
starredQuery | Boolean | Limit by starred status Default: false |
importedQuery | Boolean | Limit by imported by authenticated user Default: false |
membershipQuery | Boolean | Limit by projects that the current user is a member of Default: false |
with_Query | Boolean | Limit by enabled issues feature Default: false |
with_Query | Boolean | Limit by enabled merge requests feature Default: false |
with_Query | String | Limit to repositories which use the given programming language |
min_Query | Integer | Limit by minimum access level of authenticated user Allowed values: 10,15,20,25,30,40,50 |
id_Query | Integer | Limit results to projects with IDs greater than the specified ID |
id_Query | Integer | Limit results to projects with IDs less than the specified ID |
last_Query | String (date- | Limit results to projects with last_ |
last_Query | String (date- | Limit results to projects with last_ |
repository_Query | String | Which storage shard the repository is on. |
topicQuery | Array of strings | Comma- |
topic_Query | Integer | Limit results to projects with the assigned topic given by the topic ID |
updated_Query | String (date- | Return projects updated before the specified datetime. |
updated_Query | String (date- | Return projects updated after the specified datetime. |
include_Query | Boolean | Include projects in pending delete state. |
marked_Query | String (date) | Date when the project was marked for deletion |
activeQuery | Boolean | Limit by projects that are not archived and not marked for deletion |
pageQuery | Integer | Current page number Default: 1Example: 1 |
per_Query | Integer | Number of items per page Default: 20Example: 20 |
simpleQuery | Boolean | Return only the ID, Default: false |
statisticsQuery | Boolean | Include project statistics Default: false |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | APIEntities |
400 | Bad Request | — |
404 | 404 User Not Found | — |
Validate CODEOWNERS file by project full path
GET /api/v4/validate-code-owner-file
Parameters
| Name | Type | Description |
|---|---|---|
project_Query, | String | — |
refQuery | String | — |
file_Query | String | — |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | — |
400 | Bad Request | — |
403 | Unauthenticated | — |
404 | Not found | — |
Schemas
Objects returned by the operations above and objects nested in their request bodies.
APIEntitiesBasicProjectDetails
| Property | Type | Description |
|---|---|---|
avatar_ | String | Example:http: |
created_ | String (date- | Example:2020- |
custom_ | APIEntities | — |
default_ | String | Example:main |
description | String | Example:desc |
forks_ | Integer | Example:1 |
http_ | String | Example:https: |
id | Integer (int64) | Example:1 |
last_ | String (date- | Example:2013- |
license | APIEntities | — |
license_ | String | Example:https: |
name | String | Example:project1 |
name_ | String | Example:John Doe / |
namespace | APIEntities | — |
path | String | Example:project1 |
path_ | String | Example:namespace1/ |
readme_ | String | Example:https: |
repository_ | String | Example:default |
ssh_ | String | Example:git@gitlab. |
star_ | Integer | Example:1 |
tag_ | Array of strings | Example:["tag"] |
topics | Array of strings | Example:["topic"] |
visibility | String | Example:public |
web_ | String | Example:https: |
APIEntitiesCiResetTokenResult
| Property | Type | Description |
|---|---|---|
token | String | — |
token_ | String | — |
APIEntitiesCiRunner
| Property | Type | Description |
|---|---|---|
active | Boolean | Example:true |
created_ | String (date- | Example:2025- |
created_ | APIEntities | — |
description | String | Example:test- |
id | Integer (int64) | Example:8 |
ip_ | String | Example:127. |
is_ | Boolean | Example:true |
job_ | String | Allowed values:active,idleExample: idle |
name | String | Example:test |
online | Boolean | Example:true |
paused | Boolean | Example:false |
runner_ | String | Allowed values:instance_,group_,project_Example: instance_ |
status | String | Example:online |
APIEntitiesContainerExpirationPolicy
| Property | Type | Description |
|---|---|---|
cadence | String | — |
enabled | String | — |
keep_ | String | — |
name_ | String | — |
name_ | String | — |
next_ | String | — |
older_ | String | — |
APIEntitiesCustomAttribute
| Property | Type | Description |
|---|---|---|
key | String | Example:foo |
value | String | Example:bar |
APIEntitiesGroup
| Property | Type | Description |
|---|---|---|
archived | Boolean | — |
auto_ | String | — |
avatar_ | String | — |
created_ | String | — |
crm_ | Boolean | — |
custom_ | APIEntities | — |
default_ | String | — |
default_ | Integer | — |
default_ | String | — |
description | String | — |
emails_ | Boolean | — |
emails_ | Boolean | — |
full_ | String | — |
full_ | String | — |
id | Integer (int64) | — |
lfs_ | Boolean | — |
lock_ | Boolean | — |
lock_ | Boolean | — |
marked_ | String | — |
math_ | Boolean | — |
max_ | Integer | — |
mentions_ | String | — |
name | String | Example:Diaspora |
organization_ | Integer (int64) | — |
parent_ | String | — |
path | String | — |
project_ | String | — |
request_ | Boolean | — |
require_ | Boolean | — |
resource_ | Boolean | — |
root_ | APIEntities | — |
share_ | Boolean | — |
shared_ | String | — |
show_ | Boolean | — |
statistics | Object | — |
statistics. | String | — |
statistics. | String | — |
statistics. | String | — |
statistics. | String | — |
statistics. | String | — |
statistics. | String | — |
statistics. | String | — |
statistics. | String | — |
statistics. | String | — |
subgroup_ | String | — |
two_ | Integer | — |
visibility | String | — |
web_ | String | Example:http: |
APIEntitiesGroupAccess
| Property | Type | Description |
|---|---|---|
access_ | String | — |
notification_ | String | — |
APIEntitiesIssuableReferences
| Property | Type | Description |
|---|---|---|
full | String | Example:test&6 |
relative | String | Example:&6 |
short | String | Example:&6 |
APIEntitiesIssuableTimeStats
| Property | Type | Description |
|---|---|---|
human_ | String | Example:3h 30m |
human_ | String | Example:1h |
time_ | Integer | Example:12600 |
total_ | Integer | Example:3600 |
APIEntitiesIssue
| Property | Type | Description |
|---|---|---|
_ | Object | — |
_ | String | Example:http: |
_ | String | Example:http: |
_ | String | Example:http: |
_ | String | Example:http: |
_ | String | Example:http: |
assignee | APIEntities | — |
assignees | APIEntities | — |
author | APIEntities | — |
closed_ | String (date- | Example:2022- |
closed_ | APIEntities | — |
confidential | Boolean | — |
created_ | String (date- | Example:2022- |
description | String | Example:Repellendus impedit et vel velit dignissimos. |
discussion_ | Boolean | — |
downvotes | Integer | — |
due_ | String (date) | Example:2022- |
has_ | Boolean | Example:true |
id | Integer (int64) | Example:84 |
iid | Integer | Example:14 |
imported | Boolean | Example:false |
imported_ | String | Example:github |
issue_ | String | Example:issue |
labels | Array of strings | Example:["bug"] |
merge_ | Integer | — |
milestone | APIEntities | — |
moved_ | Integer (int64) | Example:1 |
project_ | Integer (int64) | Example:4 |
references | APIEntities | — |
service_ | String | Example:user@example. |
severity | String | One of [“UNKNOWN”, |
start_ | String (date) | Example:2022- |
state | String | Example:closed |
subscribed | Boolean | Example:false |
task_ | APIEntities | — |
task_ | String | Example:2 of 4 tasks completed |
time_ | APIEntities | — |
title | String | Example:Impedit et ut et dolores vero provident ullam est |
type | String | One of [“ISSUE”, Example: ISSUE |
updated_ | String (date- | Example:2022- |
upvotes | Integer | — |
user_ | Integer | — |
web_ | String | Example:http: |
APIEntitiesLicenseBasic
| Property | Type | Description |
|---|---|---|
html_ | String | Example:http: |
key | String | Example:gpl- |
name | String | Example:GNU General Public License v3. |
nickname | String | Example:GNU GPLv3 |
source_ | String | — |
APIEntitiesMarkdownUploadAdmin
| Property | Type | Description |
|---|---|---|
created_ | String (date- | Example:2012- |
filename | String | Example:image. |
id | Integer (int64) | Example:1 |
size | Integer | Example:1024 |
uploaded_ | APIEntities | — |
APIEntitiesMergeRequestBasic
| Property | Type | Description |
|---|---|---|
allow_ | Boolean | — |
allow_ | Boolean | — |
assignee | APIEntities | — |
assignees | APIEntities | — |
author | APIEntities | — |
blocking_ | Boolean | — |
closed_ | String (date- | Example:2022- |
closed_ | APIEntities | — |
created_ | String (date- | Example:2022- |
description | String | Example:Repellendus impedit et vel velit dignissimos. |
description_ | String | — |
detailed_ | String | Example:mergeable |
discussion_ | Boolean | — |
downvotes | Integer | — |
draft | Boolean | — |
force_ | Boolean | — |
has_ | Boolean | — |
id | Integer (int64) | Example:84 |
iid | Integer | Example:14 |
imported | Boolean | — |
imported_ | String | Example:bitbucket |
labels | Array of strings | — |
merge_ | String (date- | Example:2022- |
merge_ | String | Example:1234abcd |
merge_ | String | Example:unchecked |
merge_ | APIEntities | — |
merge_ | Boolean | — |
merged_ | String (date- | Example:2022- |
merged_ | APIEntities | — |
milestone | APIEntities | — |
prepared_ | String (date- | Example:2022- |
project_ | Integer (int64) | Example:4 |
reference | String | Example:!1 |
references | APIEntities | — |
reviewers | APIEntities | — |
sha | String | Example:1234abcd |
should_ | Boolean | — |
source_ | String | — |
source_ | Integer (int64) | — |
squash | Boolean | — |
squash_ | String | Example:1234abcd |
squash_ | Boolean | — |
state | String | Example:closed |
target_ | String | — |
target_ | Integer (int64) | — |
task_ | APIEntities | — |
time_ | APIEntities | — |
title | String | Example:Impedit et ut et dolores vero provident ullam est |
title_ | String | — |
updated_ | String (date- | Example:2022- |
upvotes | Integer | — |
user_ | Integer | — |
web_ | String | Example:https: |
work_ | Boolean | — |
APIEntitiesMilestone
| Property | Type | Description |
|---|---|---|
created_ | String | — |
description | String | — |
due_ | String | — |
expired | Boolean | — |
group_ | String | — |
id | Integer (int64) | — |
iid | Integer (int64) | — |
project_ | Integer (int64) | — |
start_ | String | — |
state | String | — |
title | String | — |
updated_ | String | — |
web_ | String | — |
APIEntitiesNamespaceBasic
| Property | Type | Description |
|---|---|---|
avatar_ | String | Example:https: |
full_ | String | Example:group/ |
id | Integer (int64) | Example:2 |
kind | String | Example:project |
name | String | Example:project |
parent_ | Integer (int64) | Example:1 |
path | String | Example:my_ |
web_ | String | Example:https: |
APIEntitiesNamespaceRootStorageStatistics
| Property | Type | Description |
|---|---|---|
build_ | Integer | CI artifacts size in bytes |
container_ | Integer | container registry size in bytes |
container_ | Boolean | Indicates whether the deduplicated container registry size for the namespace is an estimated value or not |
dependency_ | Integer | Dependency Proxy sizes in bytes |
lfs_ | Integer | LFS objects size in bytes |
packages_ | Integer | Packages size in bytes |
pipeline_ | Integer | CI pipeline artifacts size in bytes |
repository_ | Integer | Git repository size in bytes |
snippets_ | Integer | Snippets size in bytes |
storage_ | Integer | Total storage in bytes |
uploads_ | Integer | Uploads size in bytes |
wiki_ | Integer | Wiki size in bytes |
APIEntitiesProject
| Property | Type | Description |
|---|---|---|
_ | Object | — |
_ | String | Example:https: |
_ | String | Example:https: |
_ | String | Example:https: |
_ | String | Example:https: |
_ | String | Example:https: |
_ | String | Example:https: |
_ | String | Example:https: |
_ | String | Example:https: |
allow_ | Boolean | — |
allow_ | Boolean | — |
analytics_ | String | Example:enabled |
archived | Boolean | — |
auto_ | String | Example:enabled |
auto_ | String | Example:continuous |
auto_ | Boolean | — |
autoclose_ | Boolean | — |
automatic_ | Boolean | — |
avatar_ | String | Example:http: |
build_ | String | Example:fetch |
build_ | Integer | Example:3600 |
builds_ | String | Example:enabled |
can_ | Boolean | — |
ci_ | Boolean | — |
ci_ | String | Example: |
ci_ | Integer | Example:20 |
ci_ | Integer | Example:86400 |
ci_ | Boolean | — |
ci_ | Boolean | — |
ci_ | Boolean | — |
ci_ | Array of strings | — |
ci_ | Boolean | — |
ci_ | String | — |
ci_ | Boolean | — |
ci_ | Boolean | — |
ci_ | Boolean | — |
container_ | APIEntities | — |
container_ | String | Example:enabled |
container_ | Boolean | — |
container_ | String | Example:registry. |
created_ | String (date- | Example:2020- |
creator_ | Integer (int64) | Example:1 |
custom_ | APIEntities | — |
default_ | String | Example:main |
description | String | Example:desc |
description_ | String | — |
emails_ | Boolean | — |
emails_ | Boolean | — |
empty_ | Boolean | — |
enforce_ | Boolean | — |
environments_ | String | Example:enabled |
fe_ | Object | — |
feature_ | String | Example:enabled |
forked_ | APIEntities | — |
forking_ | String | Example:enabled |
forks_ | Integer | Example:1 |
group_ | Boolean | — |
http_ | String | Example:https: |
id | Integer (int64) | Example:1 |
import_ | String | Example:Import error |
import_ | String | Example:none |
import_ | String | Example:git |
import_ | String | Example:https: |
infrastructure_ | String | Example:enabled |
issue_ | String | Example:%(title) |
issues_ | String | Example:enabled |
issues_ | Boolean | — |
jobs_ | Boolean | — |
keep_ | Boolean | — |
last_ | String (date- | Example:2013- |
lfs_ | Boolean | — |
license | APIEntities | — |
license_ | String | Example:https: |
marked_ | String (date- | Example:2020- |
marked_ | String (date- | Example:2020- |
max_ | Integer | — |
max_ | Integer | — |
merge_ | String | Example:%(title) |
merge_ | String | Example:merge |
merge_ | Boolean | — |
merge_ | String | — |
merge_ | String | — |
merge_ | String | Example:enabled |
merge_ | Boolean | — |
merge_ | Boolean | — |
merge_ | Boolean | — |
merge_ | Boolean | — |
model_ | String | Example:enabled |
model_ | String | Example:enabled |
monitor_ | String | Example:enabled |
mr_ | Boolean | — |
mr_ | String | Example:%(source_ |
name | String | Example:project1 |
name_ | String | Example:John Doe / |
namespace | APIEntities | — |
only_ | Boolean | — |
only_ | Boolean | — |
open_ | Integer | Example:1 |
owner | APIEntities | — |
package_ | String | Example:enabled |
packages_ | Boolean | — |
pages_ | String | Example:enabled |
path | String | Example:project1 |
path_ | String | Example:namespace1/ |
printing_ | Boolean | — |
protect_ | Boolean | — |
public_ | Boolean | — |
readme_ | String | Example:https: |
releases_ | String | Example:enabled |
remove_ | Boolean | — |
repository_ | String | Example:enabled |
repository_ | String | Example:sha1 |
repository_ | String | Example:default |
request_ | Boolean | — |
resolve_ | Boolean | — |
resource_ | String | Example:unordered |
restrict_ | Boolean | — |
runner_ | Integer | Example:3600 |
runners_ | String | Example:b8547b1dc37721d05889 |
security_ | String | Example:enabled |
service_ | String | Example:address@example. |
service_ | Boolean | — |
shared_ | Boolean | — |
shared_ | Array of objects | — |
show_ | Boolean | — |
snippets_ | String | Example:enabled |
snippets_ | Boolean | — |
squash_ | String | Example:%(source_ |
squash_ | String | Example:default_ |
ssh_ | String | Example:git@gitlab. |
star_ | Integer | Example:1 |
statistics | APIEntities | — |
suggestion_ | String | Example:Suggestion message |
tag_ | Array of strings | Example:["tag"] |
topics | Array of strings | Example:["topic"] |
updated_ | String (date- | Example:2020- |
visibility | String | Example:public |
warn_ | Boolean | — |
web_ | String | Example:https: |
wiki_ | String | Example:enabled |
wiki_ | Boolean | — |
APIEntitiesProjectAccess
| Property | Type | Description |
|---|---|---|
access_ | String | — |
notification_ | String | — |
APIEntitiesProjectDailyFetches
| Property | Type | Description |
|---|---|---|
count | Integer | Example:3 |
date | String (date) | Example:2022- |
APIEntitiesProjectDailyStatistics
| Property | Type | Description |
|---|---|---|
fetches | Object | — |
fetches. | Array of APIEntities | — |
fetches. | Integer | Example:3 |
APIEntitiesProjectGroupLink
| Property | Type | Description |
|---|---|---|
expires_ | String (date) | Example:2016- |
group_ | Integer | Example:10 |
group_ | Integer (int64) | Example:1 |
id | Integer (int64) | Example:1 |
project_ | Integer (int64) | Example:1 |
APIEntitiesProjectRepositoryStorage
| Property | Type | Description |
|---|---|---|
created_ | String (date- | Example:2012- |
disk_ | String | Example:@hashed/ |
project_ | Integer (int64) | Example:1 |
repository_ | String | Example:default |
APIEntitiesProjectsContainerRegistryProtectionRule
| Property | Type | Description |
|---|---|---|
id | Integer (int64) | Example:1 |
minimum_ | String | Example:maintainer |
minimum_ | String | Example:maintainer |
project_ | Integer (int64) | Example:1 |
repository_ | String | Example:flightjs/ |
APIEntitiesProjectsContainerRegistryProtectionTagRule
| Property | Type | Description |
|---|---|---|
id | Integer (int64) | Example:1 |
minimum_ | String | Example:maintainer |
minimum_ | String | Example:maintainer |
project_ | Integer (int64) | Example:123 |
tag_ | String | Example:v*- |
APIEntitiesProjectsPackagesProtectionRule
| Property | Type | Description |
|---|---|---|
id | Integer (int64) | Example:1 |
minimum_ | String | Example:owner |
minimum_ | String | Example:maintainer |
package_ | String | Example:flightjs/ |
package_ | String | Example:npm |
project_ | Integer (int64) | Example:1 |
APIEntitiesProjectStatistics
| Property | Type | Description |
|---|---|---|
commit_ | Integer | Example:37 |
container_ | Integer | Example:0 |
job_ | Integer | Example:0 |
lfs_ | Integer | Example:0 |
packages_ | Integer | Example:0 |
pipeline_ | Integer | Example:0 |
repository_ | Integer | Example:1. |
snippets_ | Integer | Example:0 |
storage_ | Integer | Example:1. |
uploads_ | Integer | Example:0 |
wiki_ | Integer | Example:0 |
APIEntitiesProjectsWithAccessAndCatalogSetting
| Property | Type | Description |
|---|---|---|
_ | Object | — |
_ | String | Example:https: |
_ | String | Example:https: |
_ | String | Example:https: |
_ | String | Example:https: |
_ | String | Example:https: |
_ | String | Example:https: |
_ | String | Example:https: |
_ | String | Example:https: |
allow_ | Boolean | — |
allow_ | Boolean | — |
analytics_ | String | Example:enabled |
archived | Boolean | — |
auto_ | String | Example:enabled |
auto_ | String | Example:continuous |
auto_ | Boolean | — |
autoclose_ | Boolean | — |
automatic_ | Boolean | — |
avatar_ | String | Example:http: |
build_ | String | Example:fetch |
build_ | Integer | Example:3600 |
builds_ | String | Example:enabled |
can_ | Boolean | — |
ci_ | Boolean | — |
ci_ | String | Example: |
ci_ | Integer | Example:20 |
ci_ | Integer | Example:86400 |
ci_ | Boolean | — |
ci_ | Boolean | — |
ci_ | Boolean | — |
ci_ | Array of strings | — |
ci_ | Boolean | — |
ci_ | String | — |
ci_ | Boolean | — |
ci_ | Boolean | — |
ci_ | Boolean | — |
cicd_ | Boolean | — |
container_ | APIEntities | — |
container_ | String | Example:enabled |
container_ | Boolean | — |
container_ | String | Example:registry. |
created_ | String (date- | Example:2020- |
creator_ | Integer (int64) | Example:1 |
custom_ | APIEntities | — |
default_ | String | Example:main |
description | String | Example:desc |
description_ | String | — |
emails_ | Boolean | — |
emails_ | Boolean | — |
empty_ | Boolean | — |
enforce_ | Boolean | — |
environments_ | String | Example:enabled |
fe_ | Object | — |
feature_ | String | Example:enabled |
forked_ | APIEntities | — |
forking_ | String | Example:enabled |
forks_ | Integer | Example:1 |
group_ | Boolean | — |
http_ | String | Example:https: |
id | Integer (int64) | Example:1 |
import_ | String | Example:Import error |
import_ | String | Example:none |
import_ | String | Example:git |
import_ | String | Example:https: |
infrastructure_ | String | Example:enabled |
issue_ | String | Example:%(title) |
issues_ | String | Example:enabled |
issues_ | Boolean | — |
jobs_ | Boolean | — |
keep_ | Boolean | — |
last_ | String (date- | Example:2013- |
lfs_ | Boolean | — |
license | APIEntities | — |
license_ | String | Example:https: |
marked_ | String (date- | Example:2020- |
marked_ | String (date- | Example:2020- |
max_ | Integer | — |
max_ | Integer | — |
merge_ | String | Example:%(title) |
merge_ | String | Example:merge |
merge_ | Boolean | — |
merge_ | String | — |
merge_ | String | — |
merge_ | String | Example:enabled |
merge_ | Boolean | — |
merge_ | Boolean | — |
merge_ | Boolean | — |
merge_ | Boolean | — |
model_ | String | Example:enabled |
model_ | String | Example:enabled |
monitor_ | String | Example:enabled |
mr_ | Boolean | — |
mr_ | String | Example:%(source_ |
name | String | Example:project1 |
name_ | String | Example:John Doe / |
namespace | APIEntities | — |
only_ | Boolean | — |
only_ | Boolean | — |
open_ | Integer | Example:1 |
owner | APIEntities | — |
package_ | String | Example:enabled |
packages_ | Boolean | — |
pages_ | String | Example:enabled |
path | String | Example:project1 |
path_ | String | Example:namespace1/ |
permissions | Object | — |
permissions. | APIEntities | — |
permissions. | APIEntities | — |
printing_ | Boolean | — |
protect_ | Boolean | — |
public_ | Boolean | — |
readme_ | String | Example:https: |
releases_ | String | Example:enabled |
remove_ | Boolean | — |
repository_ | String | Example:enabled |
repository_ | String | Example:sha1 |
repository_ | String | Example:default |
request_ | Boolean | — |
resolve_ | Boolean | — |
resource_ | String | Example:unordered |
restrict_ | Boolean | — |
runner_ | Integer | Example:3600 |
runners_ | String | Example:b8547b1dc37721d05889 |
security_ | String | Example:enabled |
service_ | String | Example:address@example. |
service_ | Boolean | — |
shared_ | Boolean | — |
shared_ | Array of objects | — |
show_ | Boolean | — |
snippets_ | String | Example:enabled |
snippets_ | Boolean | — |
squash_ | String | Example:%(source_ |
squash_ | String | Example:default_ |
ssh_ | String | Example:git@gitlab. |
star_ | Integer | Example:1 |
statistics | APIEntities | — |
suggestion_ | String | Example:Suggestion message |
tag_ | Array of strings | Example:["tag"] |
topics | Array of strings | Example:["topic"] |
updated_ | String (date- | Example:2020- |
visibility | String | Example:public |
warn_ | Boolean | — |
web_ | String | Example:https: |
wiki_ | String | Example:enabled |
wiki_ | Boolean | — |
APIEntitiesProjectsWithCatalogSetting
| Property | Type | Description |
|---|---|---|
_ | Object | — |
_ | String | Example:https: |
_ | String | Example:https: |
_ | String | Example:https: |
_ | String | Example:https: |
_ | String | Example:https: |
_ | String | Example:https: |
_ | String | Example:https: |
_ | String | Example:https: |
allow_ | Boolean | — |
allow_ | Boolean | — |
analytics_ | String | Example:enabled |
archived | Boolean | — |
auto_ | String | Example:enabled |
auto_ | String | Example:continuous |
auto_ | Boolean | — |
autoclose_ | Boolean | — |
automatic_ | Boolean | — |
avatar_ | String | Example:http: |
build_ | String | Example:fetch |
build_ | Integer | Example:3600 |
builds_ | String | Example:enabled |
can_ | Boolean | — |
ci_ | Boolean | — |
ci_ | String | Example: |
ci_ | Integer | Example:20 |
ci_ | Integer | Example:86400 |
ci_ | Boolean | — |
ci_ | Boolean | — |
ci_ | Boolean | — |
ci_ | Array of strings | — |
ci_ | Boolean | — |
ci_ | String | — |
ci_ | Boolean | — |
ci_ | Boolean | — |
ci_ | Boolean | — |
cicd_ | Boolean | — |
container_ | APIEntities | — |
container_ | String | Example:enabled |
container_ | Boolean | — |
container_ | String | Example:registry. |
created_ | String (date- | Example:2020- |
creator_ | Integer (int64) | Example:1 |
custom_ | APIEntities | — |
default_ | String | Example:main |
description | String | Example:desc |
description_ | String | — |
emails_ | Boolean | — |
emails_ | Boolean | — |
empty_ | Boolean | — |
enforce_ | Boolean | — |
environments_ | String | Example:enabled |
fe_ | Object | — |
feature_ | String | Example:enabled |
forked_ | APIEntities | — |
forking_ | String | Example:enabled |
forks_ | Integer | Example:1 |
group_ | Boolean | — |
http_ | String | Example:https: |
id | Integer (int64) | Example:1 |
import_ | String | Example:Import error |
import_ | String | Example:none |
import_ | String | Example:git |
import_ | String | Example:https: |
infrastructure_ | String | Example:enabled |
issue_ | String | Example:%(title) |
issues_ | String | Example:enabled |
issues_ | Boolean | — |
jobs_ | Boolean | — |
keep_ | Boolean | — |
last_ | String (date- | Example:2013- |
lfs_ | Boolean | — |
license | APIEntities | — |
license_ | String | Example:https: |
marked_ | String (date- | Example:2020- |
marked_ | String (date- | Example:2020- |
max_ | Integer | — |
max_ | Integer | — |
merge_ | String | Example:%(title) |
merge_ | String | Example:merge |
merge_ | Boolean | — |
merge_ | String | — |
merge_ | String | — |
merge_ | String | Example:enabled |
merge_ | Boolean | — |
merge_ | Boolean | — |
merge_ | Boolean | — |
merge_ | Boolean | — |
model_ | String | Example:enabled |
model_ | String | Example:enabled |
monitor_ | String | Example:enabled |
mr_ | Boolean | — |
mr_ | String | Example:%(source_ |
name | String | Example:project1 |
name_ | String | Example:John Doe / |
namespace | APIEntities | — |
only_ | Boolean | — |
only_ | Boolean | — |
open_ | Integer | Example:1 |
owner | APIEntities | — |
package_ | String | Example:enabled |
packages_ | Boolean | — |
pages_ | String | Example:enabled |
path | String | Example:project1 |
path_ | String | Example:namespace1/ |
printing_ | Boolean | — |
protect_ | Boolean | — |
public_ | Boolean | — |
readme_ | String | Example:https: |
releases_ | String | Example:enabled |
remove_ | Boolean | — |
repository_ | String | Example:enabled |
repository_ | String | Example:sha1 |
repository_ | String | Example:default |
request_ | Boolean | — |
resolve_ | Boolean | — |
resource_ | String | Example:unordered |
restrict_ | Boolean | — |
runner_ | Integer | Example:3600 |
runners_ | String | Example:b8547b1dc37721d05889 |
security_ | String | Example:enabled |
service_ | String | Example:address@example. |
service_ | Boolean | — |
shared_ | Boolean | — |
shared_ | Array of objects | — |
show_ | Boolean | — |
snippets_ | String | Example:enabled |
snippets_ | Boolean | — |
squash_ | String | Example:%(source_ |
squash_ | String | Example:default_ |
ssh_ | String | Example:git@gitlab. |
star_ | Integer | Example:1 |
statistics | APIEntities | — |
suggestion_ | String | Example:Suggestion message |
tag_ | Array of strings | Example:["tag"] |
topics | Array of strings | Example:["topic"] |
updated_ | String (date- | Example:2020- |
visibility | String | Example:public |
warn_ | Boolean | — |
web_ | String | Example:https: |
wiki_ | String | Example:enabled |
wiki_ | Boolean | — |
APIEntitiesProjectUpload
| Property | Type | Description |
|---|---|---|
alt | String | Example:filename |
full_ | String | Example:/ |
id | Integer (int64) | Example:1 |
markdown | String | Example:[filename](/ |
url | String | Example:/ |
APIEntitiesPublicGroupDetails
| Property | Type | Description |
|---|---|---|
avatar_ | String | Example:http: |
full_ | String | Example:Foobar Group |
full_ | String | Example:foo- |
id | Integer (int64) | — |
name | String | Example:Diaspora |
web_ | String | Example:http: |
APIEntitiesTaskCompletionStatus
| Property | Type | Description |
|---|---|---|
completed_ | Integer | Example:3 |
count | Integer | Example:5 |
APIEntitiesTerraformStateProtectionRule
| Property | Type | Description |
|---|---|---|
allowed_ | String | Example:ci_ |
id | Integer (int64) | Example:1 |
minimum_ | String | Example:maintainer |
project_ | Integer (int64) | Example:1 |
state_ | String | Example:production |
APIEntitiesUserBasic
| Property | Type | Description |
|---|---|---|
avatar_ | String | Example:/ |
avatar_ | String | Example:https: |
custom_ | Array of APIEntities | — |
id | Integer (int64) | Example:1 |
locked | Boolean | — |
name | String | Example:Administrator |
public_ | String | Example:john@example. |
state | String | Example:active |
username | String | Example:admin |
web_ | String | Example:https: |
APIEntitiesUserSafe
| Property | Type | Description |
|---|---|---|
id | Integer (int64) | Example:1 |
name | String | Example:Administrator |
public_ | String | Example:john@example. |
username | String | Example:admin |