---
title: "List cluster extensions"
method: GET
path: "/organizations/{organization}/databases/{database}/branches/{branch}/extensions"
tags: ["Cluster extensions"]
---

# List cluster extensions

`GET /organizations/{organization}/databases/{database}/branches/{branch}/extensions`

### Authorization
A service token or OAuth token must have at least one of the following access or scopes in order to use this API endpoint:

**Service Token Accesses**
 `read_branch`, `delete_branch`, `create_branch`, `connect_production_branch`, `connect_branch`

**OAuth Scopes**

 | Resource | Scopes |
| :------- | :---------- |
| Organization | `read_branches` |
| Database | `read_branches` |
| Branch | `read_branch` |

## Path parameters

- `organization` string, required
- `database` string, required
- `branch` string, required

## Response `200`

Returns cluster extensions

- object[]
  - `id` string, required — The ID of the extension
  - `name` string, required — The name of the extension
  - `description` string, required — The description of the extension
  - `internal` boolean, required — The internal state of the extension
  - `loader` 'shared_preload_libraries' | 'session_preload_libraries' | 'create_extension', required — How the extension is loaded
  - `url` string, required — The URL of the extension
  - `available` boolean, required — Whether the extension is available on the current cluster image
  - `unavailable_reason` string, required — The reason the extension is unavailable (e.g., 'container_upgrade_required')
  - `parameters` object[], required
    - `id` string, required — The ID of the parameter
    - `name` string, required — The name of the parameter
    - `display_name` string, required — The display name of the parameter
    - `namespace` 'patroni' | 'pgconf' | 'pgbouncer', required — The namespace of the parameter
    - `category` string, required — The category of the parameter
    - `description` string, required — The description of the parameter
    - `extension` boolean, required — Configures an extension
    - `immutable` boolean, required — Whether the parameter can be changed
    - `parameter_type` 'array' | 'boolean' | 'bytes' | 'float' | 'integer' | 'seconds' | 'select' | 'string' | 'time', required — The type of the parameter
    - `default_value` string, required — The default value of the parameter
    - `value` string, required — The configured value of the parameter
    - `required` boolean, required — Whether the parameter is required
    - `created_at` string, required — When the parameter was created
    - `updated_at` string, required — When the parameter was last updated
    - `restart` boolean, required — True if processes require a server restart on change
    - `max` number, required — The maximum value of the parameter
    - `min` number, required — The minimum value of the parameter
    - `url` string, required — The URL of the parameter
    - `options` string[], required — Valid options for the parameter value
    - `actor` object, required
      - `id` string, required — The ID of the actor
      - `display_name` string, required — The name of the actor
      - `avatar_url` string, required — The URL of the actor's avatar

## Other responses

- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `500` — Internal Server Error

## Changes

- **2026-08-18** `249942995489` — 1 breaking
  - removed the required property `items/parameters/items/step` from the response with the `200` status
- **2026-07-08** `fa19f3305241` — 1 breaking, 1 info
  - removed the required property `items/shared_preload_allowed` from the response with the `200` status
  - added the required property `items/loader` to the response with the `200` status
- **2026-02-24** `3c33e46f8ff2` — 1 breaking, 2 info
  - removed the required property `items/parameters/items/internal` from the response with the `200` status
  - removed the `internal` enum value from the `items/parameters/items/parameter_type` response property for the response status `200`
  - added the required property `items/parameters/items/immutable` to the response with the `200` status
- **2026-02-10** `ed1825db11c6` — 3 info
  - added the required property `items/available` to the response with the `200` status
  - added the required property `items/shared_preload_allowed` to the response with the `200` status
  - added the required property `items/unavailable_reason` to the response with the `200` status
- **2025-11-15** `be036c71496f` — 1 info
  - removed the `milliseconds` enum value from the `items/parameters/items/parameter_type` response property for the response status `200`

[Change history](https://skmtc.dev/planetscale/apis/planetscale-api/changes/organizations/:organization/databases/:database/branches/:branch/extensions/get.md)

---

[API](https://skmtc.dev/planetscale/apis/planetscale-api.md) · [All operations](https://skmtc.dev/planetscale/apis/planetscale-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/planetscale/planetscale-api/revisions/6d28c038c4fd/schema)
