> ## Documentation Index
> Fetch the complete documentation index at: https://openrouter.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Guardrail

## Fields

| Field                           | Type                                                                                       | Required             | Description                                                                                                                                                                                                                                                                                                                                                                                                | Example                                                                                                                     |
| ------------------------------- | ------------------------------------------------------------------------------------------ | -------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
| `allowed_models`                | List\[*str*]                                                                               | :heavy\_minus\_sign: | Array of model canonical\_slugs (immutable identifiers)                                                                                                                                                                                                                                                                                                                                                    | \[<br />"openai/gpt-5.2-20251211",<br />"anthropic/claude-4.5-opus-20251124",<br />"deepseek/deepseek-r1-0528:free"<br />]  |
| `allowed_providers`             | List\[*str*]                                                                               | :heavy\_minus\_sign: | List of allowed provider IDs                                                                                                                                                                                                                                                                                                                                                                               | \[<br />"openai",<br />"anthropic",<br />"google"<br />]                                                                    |
| `content_filter_builtins`       | List\[[components.ContentFilterBuiltinEntry](../components/contentfilterbuiltinentry.mdx)] | :heavy\_minus\_sign: | Builtin content filters applied to requests. Includes PII detectors and the regex-based prompt injection detector.                                                                                                                                                                                                                                                                                         | \[<br />\{<br />"action": "redact",<br />"label": "\[EMAIL]",<br />"slug": "email"<br />}<br />]                            |
| `content_filters`               | List\[[components.ContentFilterEntry](../components/contentfilterentry.mdx)]               | :heavy\_minus\_sign: | Custom regex content filters applied to request messages                                                                                                                                                                                                                                                                                                                                                   | \[<br />\{<br />"action": "redact",<br />"label": "\[API\_KEY]",<br />"pattern": "\b(sk-\[a-zA-Z0-9]\{48})\b"<br />}<br />] |
| `created_at`                    | *str*                                                                                      | :heavy\_check\_mark: | ISO 8601 timestamp of when the guardrail was created                                                                                                                                                                                                                                                                                                                                                       | 2025-08-24T10:30:00Z                                                                                                        |
| `description`                   | *OptionalNullable\[str]*                                                                   | :heavy\_minus\_sign: | Description of the guardrail                                                                                                                                                                                                                                                                                                                                                                               | Guardrail for production environment                                                                                        |
| `enable_free_model_publication` | *OptionalNullable\[bool]*                                                                  | :heavy\_minus\_sign: | Whether this guardrail allows free endpoints that publish prompts.                                                                                                                                                                                                                                                                                                                                         | false                                                                                                                       |
| `enable_free_model_training`    | *OptionalNullable\[bool]*                                                                  | :heavy\_minus\_sign: | Whether this guardrail allows free endpoints that train on request data.                                                                                                                                                                                                                                                                                                                                   | true                                                                                                                        |
| `enable_paid_model_training`    | *OptionalNullable\[bool]*                                                                  | :heavy\_minus\_sign: | Whether this guardrail allows paid endpoints that train on request data.                                                                                                                                                                                                                                                                                                                                   | true                                                                                                                        |
| ~~`enforce_zdr`~~               | *OptionalNullable\[bool]*                                                                  | :heavy\_minus\_sign: | : warning: \*\* DEPRECATED \*\*: This will be removed in a future release, please migrate away from it as soon as possible.<br /><br />Deprecated. Use enforce\_zdr\_anthropic, enforce\_zdr\_openai, enforce\_zdr\_google, enforce\_zdr\_xai, and enforce\_zdr\_other instead. When provided, its value is copied into any of those per-provider fields that are not explicitly specified on the request. | false                                                                                                                       |
| `enforce_zdr_anthropic`         | *OptionalNullable\[bool]*                                                                  | :heavy\_minus\_sign: | Whether to enforce zero data retention for Anthropic models. Falls back to enforce\_zdr when not provided.                                                                                                                                                                                                                                                                                                 | false                                                                                                                       |
| `enforce_zdr_google`            | *OptionalNullable\[bool]*                                                                  | :heavy\_minus\_sign: | Whether to enforce zero data retention for Google models. Falls back to enforce\_zdr when not provided.                                                                                                                                                                                                                                                                                                    | false                                                                                                                       |
| `enforce_zdr_openai`            | *OptionalNullable\[bool]*                                                                  | :heavy\_minus\_sign: | Whether to enforce zero data retention for OpenAI models. Falls back to enforce\_zdr when not provided.                                                                                                                                                                                                                                                                                                    | false                                                                                                                       |
| `enforce_zdr_other`             | *OptionalNullable\[bool]*                                                                  | :heavy\_minus\_sign: | Whether to enforce zero data retention for models that are not from Anthropic, OpenAI, Google, or xAI. Falls back to enforce\_zdr when not provided.                                                                                                                                                                                                                                                       | false                                                                                                                       |
| `enforce_zdr_xai`               | *OptionalNullable\[bool]*                                                                  | :heavy\_minus\_sign: | Whether to enforce zero data retention for xAI models. Falls back to enforce\_zdr when not provided.                                                                                                                                                                                                                                                                                                       | false                                                                                                                       |
| `id`                            | *str*                                                                                      | :heavy\_check\_mark: | Unique identifier for the guardrail                                                                                                                                                                                                                                                                                                                                                                        | 550e8400-e29b-41d4-a716-446655440000                                                                                        |
| `ignored_models`                | List\[*str*]                                                                               | :heavy\_minus\_sign: | Array of model canonical\_slugs to exclude from routing                                                                                                                                                                                                                                                                                                                                                    | \[<br />"openai/gpt-4o-mini-2024-07-18"<br />]                                                                              |
| `ignored_providers`             | List\[*str*]                                                                               | :heavy\_minus\_sign: | List of provider IDs to exclude from routing                                                                                                                                                                                                                                                                                                                                                               | \[<br />"azure"<br />]                                                                                                      |
| `include_byok_in_budgets`       | *bool*                                                                                     | :heavy\_check\_mark: | Whether BYOK (bring-your-own-key) inference spend counts toward this guardrail's limit\_usd, in addition to OpenRouter credit spend.                                                                                                                                                                                                                                                                       | false                                                                                                                       |
| `limit_usd`                     | *OptionalNullable\[float]*                                                                 | :heavy\_minus\_sign: | Spending limit in USD                                                                                                                                                                                                                                                                                                                                                                                      | 100                                                                                                                         |
| `name`                          | *str*                                                                                      | :heavy\_check\_mark: | Name of the guardrail                                                                                                                                                                                                                                                                                                                                                                                      | Production Guardrail                                                                                                        |
| `reset_interval`                | [OptionalNullable\[components.GuardrailInterval\]](../components/guardrailinterval.mdx)    | :heavy\_minus\_sign: | Interval at which the limit resets (daily, weekly, monthly)                                                                                                                                                                                                                                                                                                                                                | monthly                                                                                                                     |
| `updated_at`                    | *OptionalNullable\[str]*                                                                   | :heavy\_minus\_sign: | ISO 8601 timestamp of when the guardrail was last updated                                                                                                                                                                                                                                                                                                                                                  | 2025-08-24T15:45:00Z                                                                                                        |
| `workspace_id`                  | *str*                                                                                      | :heavy\_check\_mark: | The workspace ID this guardrail belongs to.                                                                                                                                                                                                                                                                                                                                                                | 0df9e665-d932-5740-b2c7-b52af166bc11                                                                                        |
