Use this API to view and manage groups and the resources they contain, including:

Endpoint responses might vary based on the permissions of the authenticated user in the group. If a user isn’t a member of a private group, requests to that group return a 404 Not Found status code.

For project members, use the project members API.

List all groups

GET /api/v4/groups

Lists all visible groups for the authenticated user. Unauthenticated requests return only public groups.

Parameters

NameTypeDescription
statistics
Query
BooleanInclude project statistics
Default: false
archived
Query
BooleanLimit by archived status
skip_groups
Query
Array of integersArray of group ids to exclude from list
all_available
Query
BooleanWhen true, returns all accessible groups. When false, returns only groups where the user is a member
visibility
Query
StringLimit by visibility
Allowed values: private, internal, public
search
Query
StringSearch for a specific group
owned
Query
BooleanLimit by owned by authenticated user
Default: false
order_by
Query
StringOrder by name, path, id or similarity if searching
Allowed values: name, path, id, similarity
Default: name
sort
Query
StringSort by asc (ascending) or desc (descending)
Allowed values: asc, desc
Default: asc
min_access_level
Query
IntegerMinimum access level of authenticated user
Allowed values: 10, 15, 20, 25, 30, 40, 50
top_level_only
Query
BooleanOnly include top-level groups
marked_for_deletion_on
Query
String (date)Return groups that are marked for deletion on this date
active
Query
BooleanLimit by groups that are not archived and not marked for deletion
page
Query
IntegerCurrent page number
Default: 1
Example: 1
per_page
Query
IntegerNumber of items per page
Default: 20
Example: 20
with_custom_attributes
Query
BooleanInclude custom attributes in the response
Default: false
custom_attributes
Query
ObjectFilter with custom attributes

Responses

CodeDescriptionSchema
200OKAPIEntitiesGroup
400Bad Request—

Create a group

POST /api/v4/groups

Creates a project group. Available only for users who can create groups.

Request body (multipart/form-data)

PropertyTypeDescription
auto_devops_enabledBooleanDefault to Auto DevOps pipeline for all projects within this group
avatarString (binary)Avatar image for the group
crm_enabledBooleanEnable Customer Relations Management for this group
default_branchStringThe default branch of group’s projects
Example: main
default_branch_protectionIntegerDetermine if developers can push to default branch
Allowed values: 0, 3, 1, 2, 4
default_branch_protection_defaultsObjectDetermine if developers can push to default branch
default_branch_protection_defaults.allow_force_pushBooleanAllow force push for all users with push access
default_branch_protection_defaults.allowed_to_mergeArray of objectsAn array of access levels allowed to merge
default_branch_protection_defaults.allowed_to_merge[].access_level
Required
IntegerA valid access level
Allowed values: 30, 40, 60, 0
default_branch_protection_defaults.allowed_to_pushArray of objectsAn array of access levels allowed to push
default_branch_protection_defaults.allowed_to_push[].access_level
Required
IntegerA valid access level
Allowed values: 30, 40, 60, 0
default_branch_protection_defaults.code_owner_approval_requiredBooleanRequire approval from code owners
default_branch_protection_defaults.developer_can_initial_pushBooleanAllow developers to initial push
descriptionStringThe description of the group
emails_disabledBoolean(Deprecated) Disable email notifications. Use: emails_enabled
emails_enabledBooleanEnable email notifications
enabled_git_access_protocolStringAllow only the selected protocols to be used for Git access
Allowed values: ssh, http, all
lfs_enabledBooleanEnable/disable LFS for the projects in this group
lock_resource_access_token_notify_inheritedBooleanPrevent subgroups from overriding the access token expiry notification setting
mentions_disabledBooleanDisable a group from getting mentioned
name
Required
StringThe name of the group
organization_idIntegerThe organization id for the group
parent_idIntegerThe parent group id for creating nested group
path
Required
StringThe path of the group
project_creation_levelStringDetermine if developers can create projects in the group
Allowed values: noone, owner, maintainer, developer, administrator
request_access_enabledBooleanAllow users to request member access
require_two_factor_authenticationBooleanRequire all users in this group to setup Two-factor authentication
resource_access_token_notify_inheritedBooleanSend access token expiry notifications to all inherited members of the group
share_with_group_lockBooleanPrevent sharing a project with another group within this group
show_diff_preview_in_emailBooleanInclude the code diff preview in merge request notification emails
subgroup_creation_levelStringAllowed to create subgroups
Allowed values: owner, maintainer
two_factor_grace_periodIntegerTime before Two-factor authentication is enforced
visibilityStringThe visibility of the group
Allowed values: private, internal, public

Responses

CodeDescriptionSchema
201CreatedAPIEntitiesGroup
400Bad Request—

Retrieve a group

GET /api/v4/groups/{id}

Retrieves a specified group by ID or path.

Parameters

NameTypeDescription
id
Path, required
StringThe ID of a group
with_custom_attributes
Query
BooleanInclude custom attributes in the response
Default: false
custom_attributes
Query
ObjectFilter with custom attributes
with_projects
Query
BooleanOmit project details
Default: true

Responses

CodeDescriptionSchema
200OKAPIEntitiesGroupDetail
400Bad Request—
404Not Found—

Update group attributes

PUT /api/v4/groups/{id}

Updates the attributes for a specified group. You must be an administrator or have the Owner role for the group.

Parameters

NameTypeDescription
id
Path, required
StringThe ID of a group

Request body (multipart/form-data)

PropertyTypeDescription
auto_devops_enabledBooleanDefault to Auto DevOps pipeline for all projects within this group
avatarString (binary)Avatar image for the group
crm_enabledBooleanEnable Customer Relations Management for this group
default_branchStringThe default branch of group’s projects
Example: main
default_branch_protectionIntegerDetermine if developers can push to default branch
Allowed values: 0, 3, 1, 2, 4
default_branch_protection_defaultsObjectDetermine if developers can push to default branch
default_branch_protection_defaults.allow_force_pushBooleanAllow force push for all users with push access
default_branch_protection_defaults.allowed_to_mergeArray of objectsAn array of access levels allowed to merge
default_branch_protection_defaults.allowed_to_merge[].access_level
Required
IntegerA valid access level
Allowed values: 30, 40, 60, 0
default_branch_protection_defaults.allowed_to_pushArray of objectsAn array of access levels allowed to push
default_branch_protection_defaults.allowed_to_push[].access_level
Required
IntegerA valid access level
Allowed values: 30, 40, 60, 0
default_branch_protection_defaults.code_owner_approval_requiredBooleanRequire approval from code owners
default_branch_protection_defaults.developer_can_initial_pushBooleanAllow developers to initial push
descriptionStringThe description of the group
emails_disabledBoolean(Deprecated) Disable email notifications. Use: emails_enabled
emails_enabledBooleanEnable email notifications
enabled_git_access_protocolStringAllow only the selected protocols to be used for Git access
Allowed values: ssh, http, all
lfs_enabledBooleanEnable/disable LFS for the projects in this group
lock_math_rendering_limits_enabledBooleanIndicates if math rendering limits are locked for all descendent groups
lock_resource_access_token_notify_inheritedBooleanPrevent subgroups from overriding the access token expiry notification setting
math_rendering_limits_enabledBooleanIndicates if math rendering limits are used for this group
max_artifacts_sizeIntegerSet the maximum file size for each job’s artifacts
mentions_disabledBooleanDisable a group from getting mentioned
nameStringThe name of the group
pathStringThe path of the group
prevent_sharing_groups_outside_hierarchyBooleanPrevent sharing groups within this namespace with any groups outside the namespace. Only available on top-level groups
project_creation_levelStringDetermine if developers can create projects in the group
Allowed values: noone, owner, maintainer, developer, administrator
request_access_enabledBooleanAllow users to request member access
require_two_factor_authenticationBooleanRequire all users in this group to setup Two-factor authentication
resource_access_token_notify_inheritedBooleanSend access token expiry notifications to all inherited members of the group
share_with_group_lockBooleanPrevent sharing a project with another group within this group
shared_runners_settingStringEnable/disable shared runners for the group and its subgroups and projects
Allowed values: disabled_and_unoverridable, disabled_and_overridable, enabled
show_diff_preview_in_emailBooleanInclude the code diff preview in merge request notification emails
step_up_auth_required_oauth_providerStringOAuth provider required for step-up authentication. Pass empty string to disable
subgroup_creation_levelStringAllowed to create subgroups
Allowed values: owner, maintainer
two_factor_grace_periodIntegerTime before Two-factor authentication is enforced
visibilityStringThe visibility of the group
Allowed values: private, internal, public

Responses

CodeDescriptionSchema
200OKAPIEntitiesGroup
400Bad Request—
404Not Found—

Schedule a group for deletion

DELETE /api/v4/groups/{id}

Schedules a group for deletion. Groups are deleted at the end of the retention period (30 days by default). Use the permanently_remove param to override the retention period.

Parameters

NameTypeDescription
id
Path, required
StringThe ID of a group

Responses

CodeDescriptionSchema
202Accepted—
400Bad Request—
404Not Found—

Archive a group

POST /api/v4/groups/{id}/archive

Archives a specified group. You must be an administrator or have the Owner role for the group.

Parameters

NameTypeDescription
id
Path, required
StringThe ID of a group

Responses

CodeDescriptionSchema
200OKAPIEntitiesGroup
400Bad Request—
403Unauthenticated—
404Not Found—

List all descendant groups

GET /api/v4/groups/{id}/descendant_groups

Lists all descendant groups for a specified group.

Parameters

NameTypeDescription
id
Path, required
StringThe ID of a group
statistics
Query
BooleanInclude project statistics
Default: false
archived
Query
BooleanLimit by archived status
skip_groups
Query
Array of integersArray of group ids to exclude from list
all_available
Query
BooleanWhen true, returns all accessible groups. When false, returns only groups where the user is a member
visibility
Query
StringLimit by visibility
Allowed values: private, internal, public
search
Query
StringSearch for a specific group
owned
Query
BooleanLimit by owned by authenticated user
Default: false
order_by
Query
StringOrder by name, path, id or similarity if searching
Allowed values: name, path, id, similarity
Default: name
sort
Query
StringSort by asc (ascending) or desc (descending)
Allowed values: asc, desc
Default: asc
min_access_level
Query
IntegerMinimum access level of authenticated user
Allowed values: 10, 15, 20, 25, 30, 40, 50
top_level_only
Query
BooleanOnly include top-level groups
marked_for_deletion_on
Query
String (date)Return groups that are marked for deletion on this date
active
Query
BooleanLimit by groups that are not archived and not marked for deletion
page
Query
IntegerCurrent page number
Default: 1
Example: 1
per_page
Query
IntegerNumber of items per page
Default: 20
Example: 20
with_custom_attributes
Query
BooleanInclude custom attributes in the response
Default: false
custom_attributes
Query
ObjectFilter with custom attributes

Responses

CodeDescriptionSchema
200OKAPIEntitiesGroup
400Bad Request—
404Not Found—

List all shared groups

GET /api/v4/groups/{id}/groups/shared

Lists all groups shared with a specified group.

Parameters

NameTypeDescription
id
Path, required
StringThe ID of a group
skip_groups
Query
Array of integersArray of group ids to exclude from list
visibility
Query
StringLimit by visibility
Allowed values: private, internal, public
search
Query
StringSearch for a specific group
min_access_level
Query
IntegerMinimum access level of authenticated user
Allowed values: 10, 15, 20, 25, 30, 40, 50
order_by
Query
StringOrder by name, path, id or similarity if searching
Allowed values: name, path, id, similarity
Default: name
sort
Query
StringSort by asc (ascending) or desc (descending)
Allowed values: asc, desc
Default: asc
page
Query
IntegerCurrent page number
Default: 1
Example: 1
per_page
Query
IntegerNumber of items per page
Default: 20
Example: 20
with_custom_attributes
Query
BooleanInclude custom attributes in the response
Default: false
custom_attributes
Query
ObjectFilter with custom attributes

Responses

CodeDescriptionSchema
200OKAPIEntitiesGroup
400Bad Request—
404Not Found—

List all invited groups

GET /api/v4/groups/{id}/invited_groups

Lists all groups invited to a specified group.

Parameters

NameTypeDescription
id
Path, required
StringThe ID of a group
relation
Query
Array of stringsInclude group relations
search
Query
StringSearch for a specific group
min_access_level
Query
IntegerMinimum access level of authenticated user
Allowed values: 10, 15, 20, 25, 30, 40, 50
page
Query
IntegerCurrent page number
Default: 1
Example: 1
per_page
Query
IntegerNumber of items per page
Default: 20
Example: 20
with_custom_attributes
Query
BooleanInclude custom attributes in the response
Default: false
custom_attributes
Query
ObjectFilter with custom attributes

Responses

CodeDescriptionSchema
200OKAPIEntitiesGroup
400Bad Request—
404Not Found—

List all issues for a group

GET /api/v4/groups/{id}/issues

Lists all issues for a specified group. If the group is private, you must provide credentials to authorize. In most cases, you should authenticate with a personal access token.

Parameters

NameTypeDescription
id
Path, required
StringThe ID of a group
with_labels_details
Query
BooleanReturn titles of labels and other details
Default: false
state
Query
StringReturn opened, closed, or all issues
Allowed values: opened, closed, all
Default: all
closed_by_id
Query
IntegerReturn issues which were closed by the user with the given ID
order_by
Query
StringReturn issues ordered by created_at, due_date, label_priority, milestone_due, popularity, priority, relative_position, title, or updated_at fields
Allowed values: created_at, due_date, label_priority, milestone_due, popularity, priority, relative_position, title, updated_at
Default: created_at
sort
Query
StringReturn issues sorted in asc or desc order
Allowed values: asc, desc
Default: desc
due_date
Query
StringReturn issues that have no due date (0), or whose due date is this week, this month, between two weeks ago and next month, or which are overdue. Accepts: overdue, week, month, next_month_and_previous_two_weeks, 0
Allowed values: 0, any, today, tomorrow, overdue, week, month, next_month_and_previous_two_weeks, ``
issue_type
Query
StringThe type of the issue. Accepts: issue, incident, test_case, requirement, task, ticket
Allowed values: issue, incident, test_case, requirement, task, ticket
labels
Query
Array of stringsComma-separated list of label names
milestone
Query
StringMilestone title. Mutually exclusive with milestone_id
milestone_id
Query
StringReturn issues assigned to milestones with the specified timebox value (“Any”, “None”, “Upcoming” or “Started”). Mutually exclusive with milestone
Allowed values: Any, None, Upcoming, Started
iids
Query
Array of integersThe IID array of issues
search
Query
StringSearch issues for text present in the title, description, or any combination of these
in
Query
Stringtitle, description, or a string joining them with comma
author_id
Query
IntegerReturn issues which are authored by the user with the given ID. Mutually exclusive with author_username
author_username
Query
StringReturn issues which are authored by the user with the given username. Mutually exclusive with author_id
assignee_id
Query
Integer or stringReturn issues which are assigned to the user with the given ID. Mutually exclusive with assignee_username
assignee_username
Query
Array of stringsReturn issues which are assigned to the user with the given username. Mutually exclusive with assignee_id
created_after
Query
String (date-time)Return issues created after the specified time
created_before
Query
String (date-time)Return issues created before the specified time
updated_after
Query
String (date-time)Return issues updated after the specified time
updated_before
Query
String (date-time)Return issues updated before the specified time
not
Query
ObjectFilters by the specified parameters
not[labels]
Query
Array of stringsComma-separated list of label names
not[milestone]
Query
StringMilestone title. Mutually exclusive with not[milestone_id]
not[milestone_id]
Query
StringReturn issues assigned to milestones without the specified timebox value (“Any”, “None”, “Upcoming” or “Started”). Mutually exclusive with not[milestone]
Allowed values: Any, None, Upcoming, Started
not[iids]
Query
Array of integersThe IID array of issues
not[author_id]
Query
IntegerReturn issues which are not authored by the user with the given ID. Mutually exclusive with not[author_username]
not[author_username]
Query
StringReturn issues which are not authored by the user with the given username. Mutually exclusive with not[author_id]
not[assignee_id]
Query
IntegerReturn issues which are not assigned to the user with the given ID. Mutually exclusive with not[assignee_username]
not[assignee_username]
Query
Array of stringsReturn issues which are not assigned to the user with the given username. Mutually exclusive with not[assignee_id]
scope
Query
StringReturn issues for the given scope: created_by_me, assigned_to_me or all
Allowed values: created-by-me, assigned-to-me, created_by_me, assigned_to_me, all
my_reaction_emoji
Query
StringReturn issues reacted by the authenticated user by the given emoji
confidential
Query
BooleanFilter confidential or public issues
page
Query
IntegerCurrent page number
Default: 1
Example: 1
per_page
Query
IntegerNumber of items per page
Default: 20
Example: 20
non_archived
Query
BooleanReturn issues from non archived projects
Default: true

Responses

CodeDescriptionSchema
200OKAPIEntitiesIssue
400Bad Request—
404Not Found—

Retrieve issues statistics for a group

GET /api/v4/groups/{id}/issues_statistics

Retrieves statistics for issues in a specified group.

Parameters

NameTypeDescription
id
Path, required
StringThe ID of a group
labels
Query
Array of stringsComma-separated list of label names
milestone
Query
StringMilestone title. Mutually exclusive with milestone_id
milestone_id
Query
StringReturn issues assigned to milestones with the specified timebox value (“Any”, “None”, “Upcoming” or “Started”). Mutually exclusive with milestone
Allowed values: Any, None, Upcoming, Started
iids
Query
Array of integersThe IID array of issues
search
Query
StringSearch issues for text present in the title, description, or any combination of these
in
Query
Stringtitle, description, or a string joining them with comma
author_id
Query
IntegerReturn issues which are authored by the user with the given ID. Mutually exclusive with author_username
author_username
Query
StringReturn issues which are authored by the user with the given username. Mutually exclusive with author_id
assignee_id
Query
Integer or stringReturn issues which are assigned to the user with the given ID. Mutually exclusive with assignee_username
assignee_username
Query
Array of stringsReturn issues which are assigned to the user with the given username. Mutually exclusive with assignee_id
created_after
Query
String (date-time)Return issues created after the specified time
created_before
Query
String (date-time)Return issues created before the specified time
updated_after
Query
String (date-time)Return issues updated after the specified time
updated_before
Query
String (date-time)Return issues updated before the specified time
not
Query
ObjectFilters by the specified parameters
not[labels]
Query
Array of stringsComma-separated list of label names
not[milestone]
Query
StringMilestone title. Mutually exclusive with not[milestone_id]
not[milestone_id]
Query
StringReturn issues assigned to milestones without the specified timebox value (“Any”, “None”, “Upcoming” or “Started”). Mutually exclusive with not[milestone]
Allowed values: Any, None, Upcoming, Started
not[iids]
Query
Array of integersThe IID array of issues
not[author_id]
Query
IntegerReturn issues which are not authored by the user with the given ID. Mutually exclusive with not[author_username]
not[author_username]
Query
StringReturn issues which are not authored by the user with the given username. Mutually exclusive with not[author_id]
not[assignee_id]
Query
IntegerReturn issues which are not assigned to the user with the given ID. Mutually exclusive with not[assignee_username]
not[assignee_username]
Query
Array of stringsReturn issues which are not assigned to the user with the given username. Mutually exclusive with not[assignee_id]
scope
Query
StringReturn issues for the given scope: created_by_me, assigned_to_me or all
Allowed values: created-by-me, assigned-to-me, created_by_me, assigned_to_me, all
my_reaction_emoji
Query
StringReturn issues reacted by the authenticated user by the given emoji
confidential
Query
BooleanFilter confidential or public issues

Responses

CodeDescriptionSchema
200OK—
400Bad Request—
404Not Found—

Retrieve pending reassignments

GET /api/v4/groups/{id}/placeholder_reassignments

Retrieves a CSV file with a list of pending reassignments. This feature was introduced in GitLab 17.10.

Parameters

NameTypeDescription
id
Path, required
StringThe ID of a group

Responses

CodeDescriptionSchema
200OKString (text/csv)
400Bad Request—
404Not Found—

Reassign placeholders

POST /api/v4/groups/{id}/placeholder_reassignments

Reassigns placeholder users with an uploaded CSV file.

Parameters

NameTypeDescription
id
Path, required
StringThe ID of a group

Request body (multipart/form-data)

PropertyTypeDescription
file
Required
String (binary)The CSV file containing the reassignments

Responses

CodeDescriptionSchema
201Created—
400Bad Request—
404Not Found—

Workhorse authorization for the reassignment CSV file

POST /api/v4/groups/{id}/placeholder_reassignments/authorize

Authorizes Workhorse to handle CSV file uploads for placeholder reassignments. This feature was introduced in GitLab 17.10

Parameters

NameTypeDescription
id
Path, required
StringThe ID of a group

Responses

CodeDescriptionSchema
201Created—
400Bad Request—
404Not Found—

List all projects in a group

GET /api/v4/groups/{id}/projects

Lists all projects in a specified group accessible to the authenticated user. Unauthenticated requests return only public projects with a limited subset of attributes.

Parameters

NameTypeDescription
id
Path, required
StringThe ID of a group
active
Query
BooleanLimit by projects that are not archived and not marked for deletion
archived
Query
BooleanLimit by archived status
visibility
Query
StringLimit by visibility
Allowed values: private, internal, public
search
Query
StringReturn list of authorized projects matching the search criteria
order_by
Query
StringReturn projects ordered by field
Allowed values: id, name, path, created_at, updated_at, last_activity_at, similarity, star_count
Default: created_at
sort
Query
StringReturn projects sorted in ascending and descending order
Allowed values: asc, desc
Default: desc
simple
Query
BooleanReturn only the ID, URL, name, and path of each project
Default: false
owned
Query
BooleanLimit by owned by authenticated user
Default: false
starred
Query
BooleanLimit by starred status
Default: false
with_issues_enabled
Query
BooleanLimit by enabled issues feature
Default: false
with_merge_requests_enabled
Query
BooleanLimit by enabled merge requests feature
Default: false
with_shared
Query
BooleanInclude projects shared to this group
Default: true
include_subgroups
Query
BooleanIncludes projects in subgroups of this group
Default: false
include_ancestor_groups
Query
BooleanIncludes projects in ancestors of this group
Default: false
min_access_level
Query
IntegerLimit by minimum access level of authenticated user on projects
Allowed values: 10, 15, 20, 25, 30, 40, 50
page
Query
IntegerCurrent page number
Default: 1
Example: 1
per_page
Query
IntegerNumber of items per page
Default: 20
Example: 20
with_custom_attributes
Query
BooleanInclude custom attributes in the response
Default: false
custom_attributes
Query
ObjectFilter with custom attributes

Responses

CodeDescriptionSchema
200OKAPIEntitiesProject
400Bad Request—
404Not Found—

List all shared projects

GET /api/v4/groups/{id}/projects/shared

Lists all projects shared with a specified group.

Parameters

NameTypeDescription
id
Path, required
StringThe ID of a group
archived
Query
BooleanLimit by archived status
visibility
Query
StringLimit by visibility
Allowed values: private, internal, public
search
Query
StringReturn list of authorized projects matching the search criteria
order_by
Query
StringReturn projects ordered by field
Allowed values: id, name, path, created_at, updated_at, last_activity_at, star_count
Default: created_at
sort
Query
StringReturn projects sorted in ascending and descending order
Allowed values: asc, desc
Default: desc
simple
Query
BooleanReturn only the ID, URL, name, and path of each project
Default: false
starred
Query
BooleanLimit by starred status
Default: false
with_issues_enabled
Query
BooleanLimit by enabled issues feature
Default: false
with_merge_requests_enabled
Query
BooleanLimit by enabled merge requests feature
Default: false
min_access_level
Query
IntegerLimit by minimum access level of authenticated user on projects
Allowed values: 10, 15, 20, 25, 30, 40, 50
page
Query
IntegerCurrent page number
Default: 1
Example: 1
per_page
Query
IntegerNumber of items per page
Default: 20
Example: 20
with_custom_attributes
Query
BooleanInclude custom attributes in the response
Default: false
custom_attributes
Query
ObjectFilter with custom attributes

Responses

CodeDescriptionSchema
200OKAPIEntitiesProject
400Bad Request—
404Not Found—

Transfer a project to a group

POST /api/v4/groups/{id}/projects/{project_id}

Transfers a specified project to another group. Administrators only.

Parameters

NameTypeDescription
id
Path, required
StringThe ID of a group
project_id
Path, required
StringThe ID or path of the project

Responses

CodeDescriptionSchema
201CreatedAPIEntitiesGroupDetail
400Bad Request—
404Not Found—

Restore a group

POST /api/v4/groups/{id}/restore

Restores a specified group that was previously scheduled for deletion. Can not restore groups outside of the retention period (30 days by default).

Parameters

NameTypeDescription
id
Path, required
StringThe ID of a group

Responses

CodeDescriptionSchema
201Created—
400Bad Request—
404Not Found—

List all runners in a group

GET /api/v4/groups/{id}/runners

Lists all runners available in a specified group and any ancestor groups, including any allowed instance runners.

Parameters

NameTypeDescription
id
Path, required
StringThe ID of a group
type
Query
StringThe type of runners to return
Allowed values: instance_type, group_type, project_type
paused
Query
BooleanWhether to include only runners that are accepting or ignoring new jobs
status
Query
StringThe status of runners to return
Allowed values: active, paused, online, offline, never_contacted, stale
tag_list
Query
Array of stringsA list of runner tags
Example: ["macos","shell"]
version_prefix
Query
StringThe version prefix of runners to return
Pattern: (?<=^|\n(?!$))[\d+.]+
Example: 15.1.
page
Query
IntegerCurrent page number
Default: 1
Example: 1
per_page
Query
IntegerNumber of items per page
Default: 20
Example: 20

Responses

CodeDescriptionSchema
200OKAPIEntitiesCiRunner
400Scope contains invalid value—
403Forbidden—
404Not Found—

Reset runner registration token

POST /api/v4/groups/{id}/runners/reset_registration_token

FE version

Parameters

NameTypeDescription
id
Path, required
StringThe ID of a group

Responses

CodeDescriptionSchema
201CreatedAPIEntitiesCiResetTokenResult
400Bad Request—
401Unauthorized—
403Forbidden—
404Group Not Found—

Add a group to a group

POST /api/v4/groups/{id}/share

Adds a group to a group.

Parameters

NameTypeDescription
id
Path, required
StringThe ID of a group

Request body (application/json)

PropertyTypeDescription
expires_atString (date)Share expiration date
group_access
Required
IntegerThe group access level
Allowed values: 10, 15, 20, 25, 30, 40, 50
group_id
Required
IntegerThe ID of the group to share
member_role_idIntegerThe ID of the Member Role to be assigned to the group

Responses

CodeDescriptionSchema
201CreatedAPIEntitiesGroupDetail
400Bad Request—
404Not Found—

Remove a group from a group

DELETE /api/v4/groups/{id}/share/{group_id}

Removes a group from a group.

Parameters

NameTypeDescription
id
Path, required
StringThe ID of a group
group_id
Path, required
IntegerThe ID of the shared group

Responses

CodeDescriptionSchema
204Resource deleted—
400Bad Request—
404Not Found—

Remove a shared project from a group

DELETE /api/v4/groups/{id}/shared_projects/{project_id}

Removes a shared project targeting this group. The group Owner can remove a shared project without access to the source project.

Parameters

NameTypeDescription
id
Path, required
StringThe ID of a group
project_id
Path, required
IntegerThe ID of the shared project

Responses

CodeDescriptionSchema
204No Content—
400Bad request—
403Forbidden—
404Not found—

List all subgroups

GET /api/v4/groups/{id}/subgroups

Lists all subgroups for a specified group.

Parameters

NameTypeDescription
id
Path, required
StringThe ID of a group
statistics
Query
BooleanInclude project statistics
Default: false
archived
Query
BooleanLimit by archived status
skip_groups
Query
Array of integersArray of group ids to exclude from list
all_available
Query
BooleanWhen true, returns all accessible groups. When false, returns only groups where the user is a member
visibility
Query
StringLimit by visibility
Allowed values: private, internal, public
search
Query
StringSearch for a specific group
owned
Query
BooleanLimit by owned by authenticated user
Default: false
order_by
Query
StringOrder by name, path, id or similarity if searching
Allowed values: name, path, id, similarity
Default: name
sort
Query
StringSort by asc (ascending) or desc (descending)
Allowed values: asc, desc
Default: asc
min_access_level
Query
IntegerMinimum access level of authenticated user
Allowed values: 10, 15, 20, 25, 30, 40, 50
top_level_only
Query
BooleanOnly include top-level groups
marked_for_deletion_on
Query
String (date)Return groups that are marked for deletion on this date
active
Query
BooleanLimit by groups that are not archived and not marked for deletion
page
Query
IntegerCurrent page number
Default: 1
Example: 1
per_page
Query
IntegerNumber of items per page
Default: 20
Example: 20
with_custom_attributes
Query
BooleanInclude custom attributes in the response
Default: false
custom_attributes
Query
ObjectFilter with custom attributes

Responses

CodeDescriptionSchema
200OKAPIEntitiesGroup
400Bad Request—
404Not Found—

Transfer a group

POST /api/v4/groups/{id}/transfer

Transfers a group to another parent group or transforms a subgroup into a top-level group. You must be an administrator or have the Owner role for the group.

Parameters

NameTypeDescription
id
Path, required
StringThe ID of a group

Request body (application/json)

PropertyTypeDescription
group_idIntegerThe ID of the target group to which the group needs to be transferred to.If not provided, the source group will be promoted to a top-level group

Responses

CodeDescriptionSchema
201Created—
400Bad Request—
404Not Found—

List all transfer locations for a group

GET /api/v4/groups/{id}/transfer_locations

Lists all groups that a specified source group can be transferred to.

Parameters

NameTypeDescription
id
Path, required
StringThe ID of a group
search
Query
StringReturn list of namespaces matching the search criteria
page
Query
IntegerCurrent page number
Default: 1
Example: 1
per_page
Query
IntegerNumber of items per page
Default: 20
Example: 20

Responses

CodeDescriptionSchema
200OKAPIEntitiesGroup
400Bad Request—
404Not Found—

Transfer a group to an organization

POST /api/v4/groups/{id}/transfer_to_organization

Parameters

NameTypeDescription
id
Path, required
StringThe ID of a group

Request body (application/json)

PropertyTypeDescription
organization_id
Required
IntegerThe ID of the organization to transfer the group to

Responses

CodeDescriptionSchema
201CreatedAPIEntitiesGroupDetail
400Bad request—
401Unauthorized—
403Forbidden—
404Group or Organization not found—
422Unprocessable entity—

Unarchive a group

POST /api/v4/groups/{id}/unarchive

Unarchives a specified group. You must be an administrator or have the Owner role for the group.

Parameters

NameTypeDescription
id
Path, required
StringThe ID of a group

Responses

CodeDescriptionSchema
200OKAPIEntitiesGroup
400Bad Request—
403Unauthenticated—
404Not Found—

List all uploads for a group

GET /api/v4/groups/{id}/uploads

Lists all uploads for a specified group sorted by created_at in descending order. You must have the Maintainer or Owner role for the group.

Parameters

NameTypeDescription
id
Path, required
String or integerThe ID or URL-encoded path of the group
page
Query
IntegerCurrent page number
Default: 1
Example: 1
per_page
Query
IntegerNumber of items per page
Default: 20
Example: 20

Responses

CodeDescriptionSchema
200OKAPIEntitiesMarkdownUploadAdmin
400Bad Request—
403Unauthenticated—
404Not found—

Upload a file to a group

POST /api/v4/groups/{id}/uploads

Uploads a file to the specified group. Returns a markdown-formatted link to the file.

Parameters

NameTypeDescription
id
Path, required
String or integerThe ID or URL-encoded path of the group

Request body (multipart/form-data)

PropertyTypeDescription
file
Required
String (binary)The file to upload

Responses

CodeDescriptionSchema
201CreatedAPIEntitiesGroupUpload
400Bad request—
404Not found—

Workhorse authorize the file upload

POST /api/v4/groups/{id}/uploads/authorize

This feature was introduced in GitLab 19.0

Parameters

NameTypeDescription
id
Path, required
String or integerThe ID or URL-encoded path of the group

Responses

CodeDescriptionSchema
200OK—
400Bad Request—
404Not found—

Download an uploaded file by secret and filename

GET /api/v4/groups/{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 group.

Parameters

NameTypeDescription
id
Path, required
String or integerThe ID or URL-encoded path of the group
secret
Path, required
StringThe 32-character secret of a group upload
filename
Path, required
StringThe filename of a group upload

Responses

CodeDescriptionSchema
200OKString (binary) (application/octet-stream)
400Bad Request—
403Unauthenticated—
404Not found—

Delete an uploaded file by secret and filename

DELETE /api/v4/groups/{id}/uploads/{secret}/{filename}

Deletes an uploaded file with a specified secret and filename. You must have the Maintainer or Owner role for the group.

Parameters

NameTypeDescription
id
Path, required
String or integerThe ID or URL-encoded path of the group
secret
Path, required
StringThe 32-character secret of a group upload
filename
Path, required
StringThe filename of a group upload

Responses

CodeDescriptionSchema
204No Content—
400Bad request—
403Unauthenticated—
404Not found—

Download an uploaded file by ID

GET /api/v4/groups/{id}/uploads/{upload_id}

Downloads an uploaded file with a specified ID. You must have the Maintainer or Owner role for the group.

Parameters

NameTypeDescription
id
Path, required
String or integerThe ID or URL-encoded path of the group
upload_id
Path, required
IntegerThe ID of a group upload

Responses

CodeDescriptionSchema
200OKString (binary) (application/octet-stream)
400Bad Request—
403Unauthenticated—
404Not found—

Delete an uploaded file by ID

DELETE /api/v4/groups/{id}/uploads/{upload_id}

Deletes an uploaded file with a specified ID. You must have the Maintainer or Owner role for the group.

Parameters

NameTypeDescription
id
Path, required
String or integerThe ID or URL-encoded path of the group
upload_id
Path, required
IntegerThe ID of a group upload

Responses

CodeDescriptionSchema
204No Content—
400Bad request—
403Unauthenticated—
404Not found—

Get the users list of a group

GET /api/v4/groups/{id}/users

Parameters

NameTypeDescription
search
Query
StringReturn list of users matching the search criteria
Example: user
page
Query
IntegerCurrent page number
Default: 1
Example: 1
per_page
Query
IntegerNumber of items per page
Default: 20
Example: 20
id
Path, required
String or integerThe ID or URL-encoded path of the group
Example: 11

Responses

CodeDescriptionSchema
200OKAPIEntitiesUserBasic
400Bad Request—
403Unauthenticated—
404Not 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

NameTypeDescription
id
Path, required
IntegerThe id of the project
search
Query
StringReturn list of groups matching the search criteria

Responses

CodeDescriptionSchema
200OKAPIEntitiesGroup
400Bad Request—
404Not Found—

Reset the runner registration token for the instance

POST /api/v4/runners/reset_registration_token

Resets the runner registration token for the GitLab instance.

Responses

CodeDescriptionSchema
201CreatedAPIEntitiesCiResetTokenResult
400Bad Request—
403Forbidden—

Schemas

Objects returned by the operations above and objects nested in their request bodies.

APIEntitiesBasicProjectDetails

PropertyTypeDescription
avatar_urlStringExample: http://example.com/uploads/project/avatar/3/uploads/avatar.png
created_atString (date-time)Example: 2020-05-07T04:27:17.016Z
custom_attributesAPIEntitiesCustomAttribute—
default_branchStringExample: main
descriptionStringExample: desc
forks_countIntegerExample: 1
http_url_to_repoStringExample: https://gitlab.example.com/gitlab/gitlab.git
idInteger (int64)Example: 1
last_activity_atString (date-time)Example: 2013-09-30T13:46:02Z
licenseAPIEntitiesLicenseBasic—
license_urlStringExample: https://gitlab.example.com/gitlab/gitlab/blob/master/LICENCE
nameStringExample: project1
name_with_namespaceStringExample: John Doe / project1
namespaceAPIEntitiesNamespaceBasic—
pathStringExample: project1
path_with_namespaceStringExample: namespace1/project1
readme_urlStringExample: https://gitlab.example.com/gitlab/gitlab/blob/master/README.md
repository_storageStringExample: default
ssh_url_to_repoStringExample: git@gitlab.example.com:gitlab/gitlab.git
star_countIntegerExample: 1
tag_listArray of stringsExample: ["tag"]
topicsArray of stringsExample: ["topic"]
visibilityStringExample: public
web_urlStringExample: https://gitlab.example.com/gitlab/gitlab

APIEntitiesCiResetTokenResult

PropertyTypeDescription
tokenString—
token_expires_atString—

APIEntitiesCiRunner

PropertyTypeDescription
activeBooleanExample: true
created_atString (date-time)Example: 2025-05-03T00:00:00.000Z
created_byAPIEntitiesUserBasic—
descriptionStringExample: test-1-20150125
idInteger (int64)Example: 8
ip_addressStringExample: 127.0.0.1
is_sharedBooleanExample: true
job_execution_statusStringAllowed values: active, idle
Example: idle
nameStringExample: test
onlineBooleanExample: true
pausedBooleanExample: false
runner_typeStringAllowed values: instance_type, group_type, project_type
Example: instance_type
statusStringExample: online

APIEntitiesContainerExpirationPolicy

PropertyTypeDescription
cadenceString—
enabledString—
keep_nString—
name_regexString—
name_regex_keepString—
next_run_atString—
older_thanString—

APIEntitiesCustomAttribute

PropertyTypeDescription
keyStringExample: foo
valueStringExample: bar

APIEntitiesGroup

PropertyTypeDescription
archivedBoolean—
auto_devops_enabledString—
avatar_urlString—
created_atString—
crm_enabledBoolean—
custom_attributesAPIEntitiesCustomAttribute—
default_branchString—
default_branch_protectionInteger—
default_branch_protection_defaultsString—
descriptionString—
emails_disabledBoolean—
emails_enabledBoolean—
full_nameString—
full_pathString—
idInteger (int64)—
lfs_enabledBoolean—
lock_math_rendering_limits_enabledBoolean—
lock_resource_access_token_notify_inheritedBoolean—
marked_for_deletion_onString—
math_rendering_limits_enabledBoolean—
max_artifacts_sizeInteger—
mentions_disabledString—
nameStringExample: Diaspora
organization_idInteger (int64)—
parent_idString—
pathString—
project_creation_levelString—
request_access_enabledBoolean—
require_two_factor_authenticationBoolean—
resource_access_token_notify_inheritedBoolean—
root_storage_statisticsAPIEntitiesNamespaceRootStorageStatistics—
share_with_group_lockBoolean—
shared_runners_settingString—
show_diff_preview_in_emailBoolean—
statisticsObject—
statistics.job_artifacts_sizeString—
statistics.lfs_objects_sizeString—
statistics.packages_sizeString—
statistics.pipeline_artifacts_sizeString—
statistics.repository_sizeString—
statistics.snippets_sizeString—
statistics.storage_sizeString—
statistics.uploads_sizeString—
statistics.wiki_sizeString—
subgroup_creation_levelString—
two_factor_grace_periodInteger—
visibilityString—
web_urlStringExample: http://gitlab.example.com/groups/diaspora

APIEntitiesGroupDetail

PropertyTypeDescription
archivedBoolean—
auto_devops_enabledString—
avatar_urlString—
created_atString—
crm_enabledBoolean—
custom_attributesAPIEntitiesCustomAttribute—
default_branchString—
default_branch_protectionInteger—
default_branch_protection_defaultsString—
descriptionString—
emails_disabledBoolean—
emails_enabledBoolean—
enabled_git_access_protocolStringExample: ssh
full_nameString—
full_pathString—
idInteger (int64)—
lfs_enabledBoolean—
lock_math_rendering_limits_enabledBoolean—
lock_resource_access_token_notify_inheritedBoolean—
marked_for_deletion_onString—
math_rendering_limits_enabledBoolean—
max_artifacts_sizeInteger—
mentions_disabledString—
nameStringExample: Diaspora
organization_idInteger (int64)—
parent_idString—
pathString—
prevent_sharing_groups_outside_hierarchyBoolean—
project_creation_levelString—
projectsAPIEntitiesProject—
request_access_enabledBoolean—
require_two_factor_authenticationBoolean—
resource_access_token_notify_inheritedBoolean—
root_storage_statisticsAPIEntitiesNamespaceRootStorageStatistics—
runners_tokenStringExample: b8bc4a7a29eb76ea83cf79e4908c2b
share_with_group_lockBoolean—
shared_projectsAPIEntitiesProject—
shared_runners_settingString—
shared_with_groupsArray of objects—
show_diff_preview_in_emailBoolean—
statisticsObject—
statistics.job_artifacts_sizeString—
statistics.lfs_objects_sizeString—
statistics.packages_sizeString—
statistics.pipeline_artifacts_sizeString—
statistics.repository_sizeString—
statistics.snippets_sizeString—
statistics.storage_sizeString—
statistics.uploads_sizeString—
statistics.wiki_sizeString—
step_up_auth_required_oauth_providerStringOAuth provider required for step-up authentication
subgroup_creation_levelString—
two_factor_grace_periodInteger—
visibilityString—
web_urlStringExample: http://gitlab.example.com/groups/diaspora

APIEntitiesGroupUpload

PropertyTypeDescription
altStringThe name of the file
full_pathStringThe full path to the file
idInteger (int64)The ID of the file
markdownStringA markdown-formatted link to the file
urlStringThe URL to access the file

APIEntitiesIssuableReferences

PropertyTypeDescription
fullStringExample: test&6
relativeStringExample: &6
shortStringExample: &6

APIEntitiesIssuableTimeStats

PropertyTypeDescription
human_time_estimateStringExample: 3h 30m
human_total_time_spentStringExample: 1h
time_estimateIntegerExample: 12600
total_time_spentIntegerExample: 3600

APIEntitiesIssue

PropertyTypeDescription
_linksObject—
_links.award_emojiStringExample: http://example.com/api/v4/projects/1/issues/2/award_emoji
_links.closed_as_duplicate_ofStringExample: http://example.com/api/v4/projects/1/issues/75
_links.notesStringExample: http://example.com/api/v4/projects/1/issues/2/notes
_links.projectStringExample: http://example.com/api/v4/projects/1
_links.selfStringExample: http://example.com/api/v4/projects/1/issues/2
assigneeAPIEntitiesUserBasic—
assigneesAPIEntitiesUserBasic—
authorAPIEntitiesUserBasic—
closed_atString (date-time)Example: 2022-11-15T08:30:55.232Z
closed_byAPIEntitiesUserBasic—
confidentialBoolean—
created_atString (date-time)Example: 2022-08-17T12:46:35.053Z
descriptionStringExample: Repellendus impedit et vel velit dignissimos.
discussion_lockedBoolean—
downvotesInteger—
due_dateString (date)Example: 2022-11-20
has_tasksBooleanExample: true
idInteger (int64)Example: 84
iidIntegerExample: 14
importedBooleanExample: false
imported_fromStringExample: github
issue_typeStringExample: issue
labelsArray of stringsExample: ["bug"]
merge_requests_countInteger—
milestoneAPIEntitiesMilestone—
moved_to_idInteger (int64)Example: 1
project_idInteger (int64)Example: 4
referencesAPIEntitiesIssuableReferences—
service_desk_reply_toStringExample: user@example.com
severityStringOne of [“UNKNOWN”, “LOW”, “MEDIUM”, “HIGH”, “CRITICAL”]
start_dateString (date)Example: 2022-11-18
stateStringExample: closed
subscribedBooleanExample: false
task_completion_statusAPIEntitiesTaskCompletionStatus—
task_statusStringExample: 2 of 4 tasks completed
time_statsAPIEntitiesIssuableTimeStats—
titleStringExample: Impedit et ut et dolores vero provident ullam est
typeStringOne of [“ISSUE”, “INCIDENT”, “TEST_CASE”, “REQUIREMENT”, “TASK”, “TICKET”]
Example: ISSUE
updated_atString (date-time)Example: 2022-11-14T17:22:01.470Z
upvotesInteger—
user_notes_countInteger—
web_urlStringExample: http://example.com/example/example/issues/14

APIEntitiesLicenseBasic

PropertyTypeDescription
html_urlStringExample: http://choosealicense.com/licenses/gpl-3.0
keyStringExample: gpl-3.0
nameStringExample: GNU General Public License v3.0
nicknameStringExample: GNU GPLv3
source_urlString—

APIEntitiesMarkdownUploadAdmin

PropertyTypeDescription
created_atString (date-time)Example: 2012-06-28T10:52:04Z
filenameStringExample: image.png
idInteger (int64)Example: 1
sizeIntegerExample: 1024
uploaded_byAPIEntitiesUserSafe—

APIEntitiesMilestone

PropertyTypeDescription
created_atString—
descriptionString—
due_dateString—
expiredBoolean—
group_idString—
idInteger (int64)—
iidInteger (int64)—
project_idInteger (int64)—
start_dateString—
stateString—
titleString—
updated_atString—
web_urlString—

APIEntitiesNamespaceBasic

PropertyTypeDescription
avatar_urlStringExample: https://example.com/avatar/12345
full_pathStringExample: group/my_project
idInteger (int64)Example: 2
kindStringExample: project
nameStringExample: project
parent_idInteger (int64)Example: 1
pathStringExample: my_project
web_urlStringExample: https://example.com/group/my_project

APIEntitiesNamespaceRootStorageStatistics

PropertyTypeDescription
build_artifacts_sizeIntegerCI artifacts size in bytes
container_registry_sizeIntegercontainer registry size in bytes
container_registry_size_is_estimatedBooleanIndicates whether the deduplicated container registry size for the namespace is an estimated value or not
dependency_proxy_sizeIntegerDependency Proxy sizes in bytes
lfs_objects_sizeIntegerLFS objects size in bytes
packages_sizeIntegerPackages size in bytes
pipeline_artifacts_sizeIntegerCI pipeline artifacts size in bytes
repository_sizeIntegerGit repository size in bytes
snippets_sizeIntegerSnippets size in bytes
storage_sizeIntegerTotal storage in bytes
uploads_sizeIntegerUploads size in bytes
wiki_sizeIntegerWiki size in bytes

APIEntitiesProject

PropertyTypeDescription
_linksObject—
_links.cluster_agentsStringExample: https://gitlab.example.com/api/v4/projects/4/cluster_agents
_links.eventsStringExample: https://gitlab.example.com/api/v4/projects/4/events
_links.issuesStringExample: https://gitlab.example.com/api/v4/projects/4/issues
_links.labelsStringExample: https://gitlab.example.com/api/v4/projects/4/labels
_links.membersStringExample: https://gitlab.example.com/api/v4/projects/4/members
_links.merge_requestsStringExample: https://gitlab.example.com/api/v4/projects/4/merge_requests
_links.repo_branchesStringExample: https://gitlab.example.com/api/v4/projects/4/repository/branches
_links.selfStringExample: https://gitlab.example.com/api/v4/projects/4
allow_merge_on_skipped_pipelineBoolean—
allow_pipeline_trigger_approve_deploymentBoolean—
analytics_access_levelStringExample: enabled
archivedBoolean—
auto_cancel_pending_pipelinesStringExample: enabled
auto_devops_deploy_strategyStringExample: continuous
auto_devops_enabledBoolean—
autoclose_referenced_issuesBoolean—
automatic_rebase_enabledBoolean—
avatar_urlStringExample: http://example.com/uploads/project/avatar/3/uploads/avatar.png
build_git_strategyStringExample: fetch
build_timeoutIntegerExample: 3600
builds_access_levelStringExample: enabled
can_create_merge_request_inBoolean—
ci_allow_fork_pipelines_to_run_in_parent_projectBoolean—
ci_config_pathStringExample: ``
ci_default_git_depthIntegerExample: 20
ci_delete_pipelines_in_secondsIntegerExample: 86400
ci_display_pipeline_variablesBoolean—
ci_forward_deployment_enabledBoolean—
ci_forward_deployment_rollback_allowedBoolean—
ci_id_token_sub_claim_componentsArray of strings—
ci_job_token_scope_enabledBoolean—
ci_pipeline_variables_minimum_override_roleString—
ci_push_repository_for_job_token_allowedBoolean—
ci_separated_cachesBoolean—
ci_skip_branch_pipelines_for_mrsBoolean—
container_expiration_policyAPIEntitiesContainerExpirationPolicy—
container_registry_access_levelStringExample: enabled
container_registry_enabledBoolean—
container_registry_image_prefixStringExample: registry.gitlab.example.com/gitlab/gitlab-client
created_atString (date-time)Example: 2020-05-07T04:27:17.016Z
creator_idInteger (int64)Example: 1
custom_attributesAPIEntitiesCustomAttribute—
default_branchStringExample: main
descriptionStringExample: desc
description_htmlString—
emails_disabledBoolean—
emails_enabledBoolean—
empty_repoBoolean—
enforce_auth_checks_on_uploadsBoolean—
environments_access_levelStringExample: enabled
fe_project_setting_attributesObject—
feature_flags_access_levelStringExample: enabled
forked_from_projectAPIEntitiesBasicProjectDetails—
forking_access_levelStringExample: enabled
forks_countIntegerExample: 1
group_runners_enabledBoolean—
http_url_to_repoStringExample: https://gitlab.example.com/gitlab/gitlab.git
idInteger (int64)Example: 1
import_errorStringExample: Import error
import_statusStringExample: none
import_typeStringExample: git
import_urlStringExample: https://gitlab.com/gitlab/gitlab.git
infrastructure_access_levelStringExample: enabled
issue_branch_templateStringExample: %(title)
issues_access_levelStringExample: enabled
issues_enabledBoolean—
jobs_enabledBoolean—
keep_latest_artifactBoolean—
last_activity_atString (date-time)Example: 2013-09-30T13:46:02Z
lfs_enabledBoolean—
licenseAPIEntitiesLicenseBasic—
license_urlStringExample: https://gitlab.example.com/gitlab/gitlab/blob/master/LICENCE
marked_for_deletion_atString (date-time)Example: 2020-05-07T04:27:17.016Z
marked_for_deletion_onString (date-time)Example: 2020-05-07T04:27:17.016Z
max_artifacts_sizeInteger—
max_pipelines_per_merge_trainInteger—
merge_commit_templateStringExample: %(title)
merge_methodStringExample: merge
merge_pipelines_enabledBoolean—
merge_request_title_regexString—
merge_request_title_regex_descriptionString—
merge_requests_access_levelStringExample: enabled
merge_requests_enabledBoolean—
merge_train_enforcedBoolean—
merge_trains_enabledBoolean—
merge_trains_skip_train_allowedBoolean—
model_experiments_access_levelStringExample: enabled
model_registry_access_levelStringExample: enabled
monitor_access_levelStringExample: enabled
mr_default_target_selfBoolean—
mr_default_title_templateStringExample: %(source_branch)
nameStringExample: project1
name_with_namespaceStringExample: John Doe / project1
namespaceAPIEntitiesNamespaceBasic—
only_allow_merge_if_all_discussions_are_resolvedBoolean—
only_allow_merge_if_pipeline_succeedsBoolean—
open_issues_countIntegerExample: 1
ownerAPIEntitiesUserBasic—
package_registry_access_levelStringExample: enabled
packages_enabledBoolean—
pages_access_levelStringExample: enabled
pathStringExample: project1
path_with_namespaceStringExample: namespace1/project1
printing_merge_request_link_enabledBoolean—
protect_merge_request_pipelinesBoolean—
public_jobsBoolean—
readme_urlStringExample: https://gitlab.example.com/gitlab/gitlab/blob/master/README.md
releases_access_levelStringExample: enabled
remove_source_branch_after_mergeBoolean—
repository_access_levelStringExample: enabled
repository_object_formatStringExample: sha1
repository_storageStringExample: default
request_access_enabledBoolean—
resolve_outdated_diff_discussionsBoolean—
resource_group_default_process_modeStringExample: unordered
restrict_user_defined_variablesBoolean—
runner_token_expiration_intervalIntegerExample: 3600
runners_tokenStringExample: b8547b1dc37721d05889db52fa2f02
security_and_compliance_access_levelStringExample: enabled
service_desk_addressStringExample: address@example.com
service_desk_enabledBoolean—
shared_runners_enabledBoolean—
shared_with_groupsArray of objects—
show_diff_preview_in_emailBoolean—
snippets_access_levelStringExample: enabled
snippets_enabledBoolean—
squash_commit_templateStringExample: %(source_branch)
squash_optionStringExample: default_off
ssh_url_to_repoStringExample: git@gitlab.example.com:gitlab/gitlab.git
star_countIntegerExample: 1
statisticsAPIEntitiesProjectStatistics—
suggestion_commit_messageStringExample: Suggestion message
tag_listArray of stringsExample: ["tag"]
topicsArray of stringsExample: ["topic"]
updated_atString (date-time)Example: 2020-05-07T04:27:17.016Z
visibilityStringExample: public
warn_about_potentially_unwanted_charactersBoolean—
web_urlStringExample: https://gitlab.example.com/gitlab/gitlab
wiki_access_levelStringExample: enabled
wiki_enabledBoolean—

APIEntitiesProjectStatistics

PropertyTypeDescription
commit_countIntegerExample: 37
container_registry_sizeIntegerExample: 0
job_artifacts_sizeIntegerExample: 0
lfs_objects_sizeIntegerExample: 0
packages_sizeIntegerExample: 0
pipeline_artifacts_sizeIntegerExample: 0
repository_sizeIntegerExample: 1.03809e+06
snippets_sizeIntegerExample: 0
storage_sizeIntegerExample: 1.03809e+06
uploads_sizeIntegerExample: 0
wiki_sizeIntegerExample: 0

APIEntitiesTaskCompletionStatus

PropertyTypeDescription
completed_countIntegerExample: 3
countIntegerExample: 5

APIEntitiesUserBasic

PropertyTypeDescription
avatar_pathStringExample: /user/avatar/28/The-Big-Lebowski-400-400.png
avatar_urlStringExample: https://gravatar.com/avatar/1
custom_attributesArray of APIEntitiesCustomAttribute—
idInteger (int64)Example: 1
lockedBoolean—
nameStringExample: Administrator
public_emailStringExample: john@example.com
stateStringExample: active
usernameStringExample: admin
web_urlStringExample: https://gitlab.example.com/root

APIEntitiesUserSafe

PropertyTypeDescription
idInteger (int64)Example: 1
nameStringExample: Administrator
public_emailStringExample: john@example.com
usernameStringExample: admin