> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.vapi.ai/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.vapi.ai/_mcp/server.

# Get guardrail rule

GET https://api.vapi.ai/guardrail/rules/{id}

Reference: https://docs.vapi.ai/api-reference/guardrail-rules/guardrail-rules-controller-find

## Authentication

- `Authorization` header (bearer token, required) — Authenticate server-side requests with a private Vapi API key. Create or copy a key from the [Vapi Dashboard](https://dashboard.vapi.ai) and send it in the `Authorization` header as `Bearer <token>`. Keep private API keys out of client-side code and public repositories.

## Request

### Path parameters

- `id` (string, required) — The unique identifier for the resource.

## Response

### 200

- `id` (string, required)
- `orgId` (string, required)
- `createdAt` (datetime, required)
- `updatedAt` (datetime, required)
- `name` (string, required)
- `sensitivity` (enum, required) — Evaluation sensitivity; numeric cutoffs are internal and provisional.
  - Allowed values: `low`, `medium`, `aggressive`
- `action` (GuardrailRuleAction, required) — Supplied PATCH actions replace the complete variant.
- `authoring` (GuardrailAuthoring, optional, nullable) — Structured editor input. Supplied PATCH authoring replaces the complete object; advanced text writes clear it to null.
- `instructions` (string, optional) — Evaluated instructions, generated from authoring or supplied in advanced mode.

## Types

### GuardrailRuleAction

Supplied PATCH actions replace the complete variant.

- GuardrailRuleAction0
- GuardrailEscalateAction: GuardrailEscalateAction

### GuardrailAuthoring

- `mode` (enum, required)
  - Allowed values: `always`, `never`
- `behavior` (string, required)
- `condition` (string, optional) — Natural-language condition evaluated using the candidate and call history.

### GuardrailRuleAction0

- GuardrailFixedResponseAction: GuardrailFixedResponseAction
- GuardrailRedirectAction: GuardrailRedirectAction

### GuardrailEscalateAction

- `type` (enum, required)
  - Allowed values: `escalate`
- `toolId` (string, required) — Existing same-organization tool; attachment is checked at assignment. Tool edits/deletion can invalidate the action: activation must revalidate the current tool and arguments, and use failurePolicy on failure.
- `arguments` (map from string to any, required) — Parameter names follow the normalized tool schema (SMS uses body/to).

### GuardrailFixedResponseAction

- `type` (enum, required)
  - Allowed values: `auto-response`
- `text` (string, required) — Replacement speech; it must pass its own guardrail evaluation.
- `mode` (enum, optional, default: fixed) — Omitted legacy modes normalize to fixed when transformed.
  - Allowed values: `fixed`

### GuardrailRedirectAction

- `type` (enum, required)
  - Allowed values: `auto-response`
- `mode` (enum, required)
  - Allowed values: `redirect`
- `instructions` (string, required) — Steering instructions for generating a replacement candidate.

## Examples

**Response**

```json
{
  "id": "string",
  "orgId": "string",
  "createdAt": "2024-01-15T09:30:00Z",
  "updatedAt": "2024-01-15T09:30:00Z",
  "name": "string",
  "sensitivity": "low",
  "action": null,
  "authoring": {
    "mode": "always",
    "behavior": "string",
    "condition": "string"
  },
  "instructions": "string"
}
```