Skip to content

List all repository branches

GET
/api/v4/projects/{id}/repository/branches

Lists all repository branches from a specified project, sorted alphabetically by name. Search by name, or use regular expressions to find specific branch patterns. Returns detailed information about the branch, including its protection status, merge status, and commit details.

id
required
One of:
string

The ID or URL-encoded path of the project

page
integer
default: 1 nullable

Current page number

Example
1
per_page
integer
default: 20 nullable

Number of items per page

Example
20
search
string
nullable

Return list of branches matching the search criteria

regex
string
nullable

Return list of branches matching the regex

sort
string
nullable
Allowed values: name_asc updated_asc updated_desc

Return list of branches sorted by the given field

page_token
string
nullable

Name of branch to start the pagination from

OK

Media type application/json
object
name
string
commit
object
id
string
short_id
string
created_at
string format: date-time
parent_ids
Array<string>
title
string
message
string
author_name
string
author_email
string
authored_date
string format: date-time
committer_name
string
committer_email
string
committed_date
string format: date-time
trailers
object
extended_trailers
object
web_url
string
merged
boolean
protected
boolean
developers_can_push
boolean
developers_can_merge
boolean
can_push
boolean
default
boolean
web_url
string
Example
{
"name": "master",
"commit": {
"id": "2695effb5807a22ff3d138d593fd856244e155e7",
"short_id": "2695effb",
"created_at": "2017-07-26T11:08:53.000+02:00",
"parent_ids": [
"2a4b78934375d7f53875269ffd4f45fd83a84ebe"
],
"title": "Initial commit",
"message": "Initial commit",
"author_name": "John Smith",
"author_email": "john@example.com",
"authored_date": "2012-05-28T04:42:42-07:00",
"committer_name": "Jack Smith",
"committer_email": "jack@example.com",
"committed_date": "2012-05-28T04:42:42-07:00",
"trailers": {
"Merged-By": "Jane Doe janedoe@gitlab.com"
},
"extended_trailers": {
"Signed-off-by": [
"John Doe <johndoe@gitlab.com>",
"Jane Doe <janedoe@gitlab.com>"
]
},
"web_url": "https://gitlab.example.com/janedoe/gitlab-foss/-/commit/ed899a2f4b50b4370feeea94676502b42383c746"
},
"merged": true,
"protected": true,
"developers_can_push": true,
"developers_can_merge": true,
"can_push": true,
"default": true,
"web_url": "https://gitlab.example.com/Commit921/the-dude/-/tree/master"
}

Bad Request

404 Project Not Found