---
title: "List plugins"
method: GET
path: "/api/plugin"
tags: ["plugin"]
---

# List plugins

`GET /api/plugin`

## Request

- Base URL: `https://opencode.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://opencode.ai/api/plugin`
- Auth: none required

Retrieve enabled server plugins and their current status.

## Query parameters

- `location` object, nullable
  - `directory` string, nullable

## Response `200`

Success

- object
  - `location` LocationPublicRef, required
    - `directory` string, required
  - `data` PluginInfo[], required
    - `id` string
    - `source` union, required
      - object
        - `type` 'builtin', required
      - object
        - `type` 'package', required
        - `target` string, required
        - `version` string
        - `outdated` true
        - `updating` true
      - object
        - `type` 'local', required
        - `path` string, required
      - object
        - `type` 'sdk', required
    - `features` PluginFeatures, required
      - `server` true
      - `tui` true
      - `rpc` true
      - `gui` true
    - `state` union, required
      - object
        - `status` 'active', required
      - object
        - `status` 'failed', required
        - `error` string, required
        - `ref` string

## Other responses

- `400`: InvalidRequestError
- `401`: UnauthorizedError
- `404`: LocationNotFoundError

## Changes

> 50 revisions in range; 1 not diffed.

- **2026-10-27** `d149ea008d28`: 1 info
  - added the optional property `data/items/features/gui` to the response with the `200` status

[Operation history](https://skmtc.dev/kaaass/apis/opencode/changes/api/plugin/get.md)

---

[API](https://skmtc.dev/kaaass/apis/opencode.md) - [All operations](https://skmtc.dev/kaaass/apis/opencode/llms.txt) - [OpenAPI document](https://skmtc.dev/kaaass/apis/opencode/revisions/4e083d954707?raw)
