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

# Frequently Asked Questions

> Frequently asked questions about OpenMail — inboxes, pricing, custom domains, sending limits, authentication, and agent integrations answered.

## How do I get started?

Install the CLI with `npm install -g @openmail/cli`, run `openmail setup`, and you're done. Setup prompts for auth and creates your first inbox. See the [Quickstart](/quickstart) for the full walkthrough (CLI or API tabs).

## How does pricing work?

You get 3 inboxes, 3,000 emails/month, and 3 GB storage free forever. No credit card required. Pro is €9/month and includes 10 inboxes, 10,000 emails, and 10 GB storage — past that you pay only for what you use: €1 per extra inbox, €0.001 per extra email, €0.10 per GB. Custom domains are unlimited on Pro. Enterprise is custom pricing for dedicated IPs, SSO, and volume discounts. Cancel anytime. [See full pricing](https://openmail.sh/pricing).

## Can I set a spending limit?

Yes, on Pro. A spending limit is enabled by default, with an email at 80% and 100% of it — just go to Billing in the [Dashboard](https://console.openmail.sh/settings/billing) to change the amount (or turn it off). Auto-pause, which stops sending, inbox creation, and domain creation for the rest of the billing cycle once you hit your limit, stays off by default so nothing is ever blocked unless you turn it on.

## How do I get an API key?

Sign up at [console.openmail.sh](https://console.openmail.sh/login). Complete the setup wizard and your API key is ready immediately. See [Quickstart](/quickstart) for the full setup flow.

## How do I receive inbound email?

Via WebSocket or webhook. WebSocket is recommended for agents — no public URL needed, instant delivery. Connect to `wss://api.openmail.sh/v1/ws` with your API key. For webhooks, set your URL in the [Dashboard](https://console.openmail.sh/login). See [WebSockets](/concepts/websockets) and [Webhooks](/guides/webhooks) for full setup.

## Can an agent have multiple inboxes?

Yes. Create as many inboxes as you need. Each event includes `inbox_id`, so you can map it to the correct user or agent in your app. See [Inboxes](/concepts/inboxes).

## Can I create many inboxes?

Yes. One account, many inboxes. No separate tenant abstraction - create inboxes and route by `inbox_id`.

## How do webhooks work?

Configure a webhook URL in the [Dashboard](https://console.openmail.sh/login). When inbound email arrives, we POST a `message.received` event. See [Overview](/concepts/webhooks) and [Setup](/guides/webhooks).

## What's the Idempotency-Key for?

The send endpoint requires it. Use a unique UUID per send so retries don't create duplicate emails. See [Idempotency](/best-practices/idempotency).

## Can I block or filter inbound senders?

Yes. Use sender rules to block specific email addresses or entire domains. You can also switch to allowlist mode so only approved senders reach your inboxes. Manage rules from **Settings > Allow/Block List** in the [Dashboard](https://console.openmail.sh/login). See [Sender rules](/concepts/sender-rules).

## How do I handle attachments?

Inbound attachments include a signed URL in the payload. Fetch promptly; URLs expire. See [Attachments](/concepts/attachments).
