---
title: "List branches"
method: GET
path: "/groups/{groupId}/artifacts/{artifactId}/branches"
tags: ["Branches"]
---

# List branches

`GET /groups/{groupId}/artifacts/{artifactId}/branches`

## Request

- The document declares no server URL.
- Auth: none declared

Returns a list of all branches in the artifact. Each branch is a list of version identifiers,
ordered from the latest (tip of the branch) to the oldest.

This operation can fail for the following reasons:

* No artifact with this `groupId` and `artifactId` exists (HTTP error `404`)
* A server error occurred (HTTP error `500`)

## Query parameters

- `offset` integer
- `limit` integer

## Response `200`

List of all artifact versions.

- BranchSearchResults: Describes the response received when searching for branches.
  - `branches` SearchedBranch[], required: The branches returned in the result set.
    - `groupId` string, required: An ID of a single artifact group.
    - `artifactId` string, required: The ID of a single artifact.
    - `branchId` string, required: The ID of a single artifact branch.
    - `createdOn` string, date-time, required
    - `owner` string, required
    - `modifiedOn` string, date-time, required
    - `modifiedBy` string, required
    - `description` string
    - `systemDefined` boolean, required
  - `count` integer, required: The total number of branches that matched the query that produced the result set (may be more than the number of branches in the result set).

## Other responses

- `401`: Common response for all operations that can return a `401` error indicating authentication is required.
- `403`: Common response for all operations that can return a `403` error indicating the user is authenticated but not authorized.
- `404`: Common response for all operations that can return a `404` error.
- `500`: Common response for all operations that can fail with an unexpected server error.

## Changes

- **2026-10-31** `ff9684af2aad`: 20 info
  - added the optional property `ruleViolation/causes/items/code` to the response with the `401` status
  - added the optional property `ruleViolation/causes/items/code` to the response with the `403` status
  - added the optional property `ruleViolation/causes/items/code` to the response with the `404` status
  - added the optional property `ruleViolation/causes/items/code` to the response with the `500` status
  - …16 more
- **2026-10-29** `f17f5df4e79c`: 4 info
  - added the optional property `ruleViolation` to the response with the `401` status
  - added the optional property `ruleViolation` to the response with the `403` status
  - added the optional property `ruleViolation` to the response with the `404` status
  - added the optional property `ruleViolation` to the response with the `500` status
- **2025-12-16** `440db8997574`: 2 info
  - added the non-success response with the status `401`
  - added the non-success response with the status `403`
- **2024-09-06** `948bffd5d083`: 4 warning, 8 info
  - removed the optional property `error_code` from the response with the `404` status
  - removed the optional property `error_code` from the response with the `500` status
  - removed the optional property `message` from the response with the `404` status
  - removed the optional property `message` from the response with the `500` status
  - …8 more
- …earlier changes not shown

[Operation history](https://skmtc.dev/apicurio/apis/apicurio-registry-api-v3/changes/groups/:groupId/artifacts/:artifactId/branches/get.md)

---

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