---
title: "List all repository commits"
method: GET
path: "/api/v4/projects/{id}/repository/commits"
tags: ["commits"]
---

# List all repository commits

`GET /api/v4/projects/{id}/repository/commits`

## Request

- Base URL: `https://gitlab.com`
- URL: `https://gitlab.com/api/v4/projects/{id}/repository/commits`
- Auth: none declared

Lists all commits for a specified project repository.

## Path parameters

- `id` string, required

## Query parameters

- `ref_name` string
- `since` string, date-time
- `until` string, date-time
- `path` string
- `follow` boolean
- `author` string
- `all` boolean
- `with_stats` boolean
- `first_parent` boolean
- `order` 'default' | 'topo'
- `trailers` boolean
- `page` integer
- `per_page` integer
- `pagination` 'legacy' | 'keyset'
- `page_token` string

## Response `200`

List all repository commits

- APIEntitiesCommit[]
  - `id` string, required
  - `short_id` string, required
  - `created_at` string, date-time, required
  - `parent_ids` string[], required
  - `title` string, required
  - `message` string, required
  - `author_name` string, required
  - `author_email` string, required
  - `authored_date` string, date-time, required
  - `committer_name` string, required
  - `committer_email` string, required
  - `committed_date` string, date-time, required
  - `trailers` object, required
  - `extended_trailers` object, required
  - `web_url` string, required

## Other responses

- `400`: Bad request
- `401`: Unauthorized
- `404`: Not found

---

[API](https://skmtc.dev/gitlab/apis/gitlab-api.md) - [All operations](https://skmtc.dev/gitlab/apis/gitlab-api/llms.txt) - [OpenAPI document](https://skmtc.dev/gitlab/apis/gitlab-api/revisions/b234947ef3f2?raw)
