Guardrail - TypeScript SDK
Guardrail - TypeScript SDK
Guardrail type definition
The TypeScript SDK and docs are currently in beta. Report issues on GitHub.
Example Usage
1 import { Guardrail } from "@openrouter/sdk/models"; 2 3 let value: Guardrail = { 4 createdAt: "2025-08-24T10:30:00Z", 5 id: "550e8400-e29b-41d4-a716-446655440000", 6 name: "Production Guardrail", 7 workspaceId: "0df9e665-d932-5740-b2c7-b52af166bc11", 8 };
Fields
| Field | Type | Required | Description | Example |
|---|---|---|---|---|
allowedModels | string[] | ➖ | Array of model canonical_slugs (immutable identifiers) | [ “openai/gpt-5.2-20251211”, “anthropic/claude-4.5-opus-20251124”, “deepseek/deepseek-r1-0528:free” ] |
allowedProviders | string[] | ➖ | List of allowed provider IDs | [ “openai”, “anthropic”, “google” ] |
contentFilterBuiltins | models.ContentFilterBuiltinEntry[] | ➖ | Builtin content filters applied to requests. Includes PII detectors and the regex-based prompt injection detector. | [{"action": "block","label": "[PROMPT_INJECTION]","slug": "regex-prompt-injection"}] |
contentFilters | models.ContentFilterEntry[] | ➖ | Custom regex content filters applied to request messages | [{"action": "redact","label": "[API_KEY]","pattern": "\\b(sk-[a-zA-Z0-9]{48})\b”} ] |
createdAt | string | ✔️ | ISO 8601 timestamp of when the guardrail was created | 2025-08-24T10:30:00Z |
description | string | ➖ | Description of the guardrail | Guardrail for production environment |
enforceZdr | boolean | ➖ | : 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, 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 | boolean | ➖ | Whether to enforce zero data retention for Anthropic models. Falls back to enforce_zdr when not provided. | false |
enforceZdrGoogle | boolean | ➖ | Whether to enforce zero data retention for Google models. Falls back to enforce_zdr when not provided. | false |
enforceZdrOpenai | boolean | ➖ | Whether to enforce zero data retention for OpenAI models. Falls back to enforce_zdr when not provided. | false |
enforceZdrOther | boolean | ➖ | Whether to enforce zero data retention for models that are not from Anthropic, OpenAI, or Google. Falls back to enforce_zdr when not provided. | false |
id | string | ✔️ | Unique identifier for the guardrail | 550e8400-e29b-41d4-a716-446655440000 |
ignoredModels | string[] | ➖ | Array of model canonical_slugs to exclude from routing | [ “openai/gpt-4o-mini-2024-07-18” ] |
ignoredProviders | string[] | ➖ | List of provider IDs to exclude from routing | [ “azure” ] |
limitUsd | number | ➖ | Spending limit in USD | 100 |
name | string | ✔️ | Name of the guardrail | Production Guardrail |
resetInterval | models.GuardrailInterval | ➖ | Interval at which the limit resets (daily, weekly, monthly) | monthly |
updatedAt | string | ➖ | ISO 8601 timestamp of when the guardrail was last updated | 2025-08-24T15:45:00Z |
workspaceId | string | ✔️ | The workspace ID this guardrail belongs to. | 0df9e665-d932-5740-b2c7-b52af166bc11 |