Fields
| Field | Type | Required | Description | Example |
|---|---|---|---|---|
AllowedModels | optionalnullable.OptionalNullable[[]string] | :heavy_minus_sign: | Array of model identifiers (slug or canonical_slug accepted) | [ “openai/gpt-5.2”, “anthropic/claude-4.5-opus-20251124”, “deepseek/deepseek-r1-0528:free” ] |
AllowedProviders | optionalnullable.OptionalNullable[[]string] | :heavy_minus_sign: | List of allowed provider IDs | [ “openai”, “anthropic”, “deepseek” ] |
ContentFilterBuiltins | optionalnullable.OptionalNullable[[]components.ContentFilterBuiltinEntryInput] | :heavy_minus_sign: | Builtin content filters to apply. Every builtin slug supports “block”, “redact”, and the detect-only “flag” action. | [ { “action”: “block”, “slug”: “regex-prompt-injection” } ] |
ContentFilters | optionalnullable.OptionalNullable[[]components.ContentFilterEntry] | :heavy_minus_sign: | Custom regex content filters to apply to request messages | [ { “action”: “redact”, “label”: “[API_KEY]”, “pattern”: “\b(sk-[a-zA-Z0-9]{48})\b” } ] |
Description | optionalnullable.OptionalNullable[string] | :heavy_minus_sign: | Description of the guardrail | A guardrail for limiting API usage |
EnableFreeModelPublication | optionalnullable.OptionalNullable[bool] | :heavy_minus_sign: | Whether this guardrail allows free endpoints that publish prompts. | false |
EnableFreeModelTraining | optionalnullable.OptionalNullable[bool] | :heavy_minus_sign: | Whether this guardrail allows free endpoints that train on request data. | true |
EnablePaidModelTraining | optionalnullable.OptionalNullable[bool] | :heavy_minus_sign: | Whether this guardrail allows paid endpoints that train on request data. | true |
EnforceZdr | optionalnullable.OptionalNullable[bool] | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible. 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 |
EnforceZdrAnthropic | optionalnullable.OptionalNullable[bool] | :heavy_minus_sign: | Whether to enforce zero data retention for Anthropic models. Falls back to enforce_zdr when not provided. | false |
EnforceZdrGoogle | optionalnullable.OptionalNullable[bool] | :heavy_minus_sign: | Whether to enforce zero data retention for Google models. Falls back to enforce_zdr when not provided. | false |
EnforceZdrOpenai | optionalnullable.OptionalNullable[bool] | :heavy_minus_sign: | Whether to enforce zero data retention for OpenAI models. Falls back to enforce_zdr when not provided. | false |
EnforceZdrOther | optionalnullable.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 |
EnforceZdrXai | optionalnullable.OptionalNullable[bool] | :heavy_minus_sign: | Whether to enforce zero data retention for xAI models. Falls back to enforce_zdr when not provided. | false |
IgnoredModels | optionalnullable.OptionalNullable[[]string] | :heavy_minus_sign: | Array of model identifiers to exclude from routing (slug or canonical_slug accepted) | [ “openai/gpt-4o-mini” ] |
IgnoredProviders | optionalnullable.OptionalNullable[[]string] | :heavy_minus_sign: | List of provider IDs to exclude from routing | [ “azure” ] |
IncludeBYOKInBudgets | *bool | :heavy_minus_sign: | Whether BYOK (bring-your-own-key) inference spend counts toward this guardrail’s limit_usd, in addition to OpenRouter credit spend. Defaults to false. | false |
LimitUsd | optionalnullable.OptionalNullable[float64] | :heavy_minus_sign: | Spending limit in USD | 50 |
Name | string | :heavy_check_mark: | Name for the new guardrail | My New Guardrail |
ResetInterval | optionalnullable.OptionalNullable[components.GuardrailInterval] | :heavy_minus_sign: | Interval at which the limit resets (daily, weekly, monthly) | monthly |
WorkspaceID | *string | :heavy_minus_sign: | The workspace to create the guardrail in. Defaults to the default workspace if not provided. | 0df9e665-d932-5740-b2c7-b52af166bc11 |