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

# Secret keys

> Secure storage for external service API keys. Never write keys directly in code.

If you want your site to do something special (send emails through a specific service, call an external API, work with a payment system), you'll need API keys. Don't write them directly in site code, that's insecure. Use secrets.

## How it works

<Steps>
  <Step title="Open Secrets section">
    In the builder: Features → Secrets.
  </Step>

  <Step title="Add a key-value pair">
    For example, `OPENAI_KEY = sk-...`
  </Step>

  <Step title="Ask AI to use the secret">
    "Use the OPENAI\_KEY secret for the ChatGPT helper on the site."
  </Step>

  <Step title="Done">
    The key stays in protected storage. Nobody except our backend sees it.
  </Step>
</Steps>

## If you need to rotate a key

You can update the value anytime. No site rebuild needed, the key picks up instantly.

<Tip>
  Never put API keys directly in text for the AI or in project rules. Use secrets. They're protected even from you: nobody accidentally sees them while viewing code or history.
</Tip>

## Why this matters

<CardGroup cols={2}>
  <Card title="External APIs" icon="cloud-arrow-up">
    OpenAI, Anthropic, any service with an API key.
  </Card>

  <Card title="Email providers" icon="envelope">
    SendGrid, Mailgun, Brevo for email sending.
  </Card>

  <Card title="Payment gateways" icon="credit-card">
    Additional payment systems beyond built-in.
  </Card>

  <Card title="Webhook endpoints" icon="link">
    Secure URLs for data exchange with external services.
  </Card>
</CardGroup>

## What's next

<CardGroup cols={2}>
  <Card title="Files and DB" icon="database" href="/en/management/storage">
    User data and content storage.
  </Card>

  <Card title="Email and SMTP" icon="envelope" href="/en/integrations/email">
    Most common use case for secrets.
  </Card>
</CardGroup>
