---
title: "Get a plugin"
method: GET
path: "/v1/orgs/{org_id}/plugins/{plugin_id}"
tags: ["Plugins"]
---

# Get a plugin

`GET /v1/orgs/{org_id}/plugins/{plugin_id}`

## Request

- Base URL: `https://api.arcade.dev`
- URL: `https://api.arcade.dev/v1/orgs/{org_id}/plugins/{plugin_id}`
- Auth: API key in header `Authorization`

Returns a single plugin by ID

## Path parameters

- `org_id` string, required
- `plugin_id` string, required

## Response `200`

OK

- SchemasPluginResponse
  - `binding` SchemasBindingResponse
    - `id` string
    - `type` 'static' | 'tenant' | 'project' | 'account'
  - `created_at` string
  - `created_by` string
  - `description` string
  - `group_access_config` SchemasGroupAccessConfigResponse
    - `backend` string
    - `entra` SchemasEntraBackendResponse
      - `client_id` string
      - `client_secret` SchemasSecretResponse
        - `binding` 'static' | 'tenant' | 'project' | 'account'
        - `editable` boolean
        - `exists` boolean
        - `value` string
      - `tenant_id` string
    - `okta` SchemasOktaBackendResponse
      - `api_token` SchemasSecretResponse
        - `binding` 'static' | 'tenant' | 'project' | 'account'
        - `editable` boolean
        - `exists` boolean
        - `value` string
      - `org_url` string
    - `rules` SchemasGroupAccessRuleResponse[]
      - `allow_on_unavailable` boolean
      - `match` string
      - `required_groups` string[]
    - `sailpoint` SchemasSailPointBackendResponse
      - `client_id` string
      - `client_secret` SchemasSecretResponse
        - `binding` 'static' | 'tenant' | 'project' | 'account'
        - `editable` boolean
        - `exists` boolean
        - `value` string
      - `tenant_url` string
  - `health_status` string
  - `id` string
  - `name` string
  - `plugin_type` string
  - `rate_limit_config` SchemasRateLimitConfigResponse
    - `rules` SchemasRateLimitRuleResponse[]
      - `allow_on_unavailable` boolean
      - `limit` integer
      - `match` string
      - `time_unit` string
  - `retry` SchemasRetryConfigResponse
    - `backoff` string
    - `base_delay_ms` integer
    - `enabled` boolean
    - `max_attempts` integer
    - `retry_on` string[]
  - `status` 'inactive' | 'active'
  - `updated_at` string
  - `updated_by` string
  - `version` integer
  - `webhook_config` SchemasWebhookConfigResponse
    - `auth` SchemasWebhookAuthResponse
      - `ca_cert` string
      - `client_cert_configured` boolean
      - `client_key_configured` boolean
      - `token` SchemasSecretResponse
        - `binding` 'static' | 'tenant' | 'project' | 'account'
        - `editable` boolean
        - `exists` boolean
        - `value` string
      - `type` string
    - `endpoints` SchemasWebhookEndpointsResponse
      - `access` SchemasWebhookEndpointResponse
        - `cache_enabled` boolean
        - `cache_ttl_ms` integer
        - `timeout_ms` integer
        - `url` string
      - `post` SchemasWebhookEndpointResponse
        - `cache_enabled` boolean
        - `cache_ttl_ms` integer
        - `timeout_ms` integer
        - `url` string
      - `pre` SchemasWebhookEndpointResponse
        - `cache_enabled` boolean
        - `cache_ttl_ms` integer
        - `timeout_ms` integer
        - `url` string
    - `health_check_path` string

## Other responses

- `400`: Bad Request
- `404`: Not Found
- `500`: Internal Server Error

## Changes

- **2026-10-16** `4c694686f453`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/arcadeai/apis/arcade-api/changes/v1/orgs/:org_id/plugins/:plugin_id/get.md)

---

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