Skip to content

Guardrails API Reference

Complete API reference for the guardrail framework and built-in guardrails.

Guardrail Interface

type Guardrail interface {
    Validate(text string, isInput bool) error
    Name() string
    IsTripwire() bool
}

Built-in Guardrails

PII Detection (security)

func NewPII(opts ...PIIOption) *guardrail.Guardrail

Detects: emails, phones, SSNs, credit cards

URL Filtering (security)

func NewURLFilter(opts ...URLFilterOption) *guardrail.Guardrail

Regex (content)

func NewRegex(pattern string, opts ...RegexOption) *guardrail.Guardrail

Moderation API (moderation - OpenAI)

func NewOpenAI(client *openai.Client, opts ...Option) *guardrail.Guardrail

Content Length (content)

func NewLength(config Config) *guardrail.Guardrail

type CountMode string
const (
    CountModeCharacters CountMode = "characters"
    CountModeWords      CountMode = "words"
    CountModeLines      CountMode = "lines"
)

Rate Limiting (ratelimit)

func New(config Config) *guardrail.Guardrail

type RateLimiter interface {
    Allow(ctx context.Context, key string) (bool, error)
    Reset(ctx context.Context, key string) error
    Close() error
}

Profanity Detection (moderation)

func NewProfanity(config ProfanityConfig) *guardrail.Guardrail

type SeverityLevel string
const (
    SeverityLow    SeverityLevel = "low"
    SeverityMedium SeverityLevel = "medium"
    SeverityHigh   SeverityLevel = "high"
)

Secrets Detection (security)

func NewSecrets(config SecretsConfig) *guardrail.Guardrail

Prompt Injection Detection (moderation)

func NewInjection(config PromptInjectionConfig) *guardrail.Guardrail

See Also