Autoscaling Report: Production databases on Neon use 2.4x less compute and 50% less cost than if they were running on a provisioned platform.
/API reference/Branches/List branches
GET/projects/{project_id}/branches

List branches

Retrieves a list of branches for the specified project.

Each Neon project has a root branch named main. A branch_id value has a br- prefix. A project may contain child branches that were branched from main or from another branch. A parent branch is identified by the parent_id value, which is the id of the parent branch. For related information, see Manage branches.

Markdown for AI context

Quick start

REST API - curl
curl "https://console.neon.tech/api/v2/projects/$PROJECT_ID/branches" \
  -H "Authorization: Bearer $NEON_API_KEY"

Every field below is optional. An empty body works too.

Also available in
neon branches list

Parameters

Project ID
project_id
string

The Neon project ID

Search
search
string

Search by branch name or id. You can specify partial name or id values to filter results.

Sort by
sort_by
stringdefault: updated_at

Sort the branches by sort_field. If not provided, branches will be sorted by updated_at descending order

Cursor
cursor
string

A cursor to use in pagination. A cursor defines your place in the data list. Include response.pagination.next in subsequent API calls to fetch next page of the list.

Sort order
sort_order
stringdefault: desc

Defines the sorting order of entities.

Limit
limit
integer

The maximum number of records to be returned in the response

Include deleted
include_deleted
booleandefault: false

If true, return recoverable deleted branches too (soft-deleted within the recovery window). If false or not provided, return only active (non-deleted) branches.

This parameter is part of the Branch Recovery feature, which is in preview and not available to all users.

Response

200

Returned a list of branches for the specified project

Depth
"annotations": (object),req

Errors

default

General error

This endpoint can return the standard Neon API error response.

Response fields

  • message Required. Human-readable error message.
  • code Required. Machine-readable error code.
  • request_id Optional. Request identifier for debugging. You can provide one with the X-Request-ID header.

Retry guidance

If no response is returned, the request may still have reached the server. This is why retry safety depends on the method and status code.

Idempotent methods (GET, HEAD, OPTIONS) are generally safe to retry after a network error or timeout. Non-idempotent methods (POST, PATCH, DELETE, PUT) can change state, so avoid automatic retries unless your workflow can tolerate duplicate effects.

Responses with 423 Locked or 503 Service Unavailable are safe to retry. 423 Locked means the resource is temporarily locked, usually because another operation is in progress.

Was this page helpful?

On this page

Copy neon init command