# Mails.now — Full Reference for AI Systems > Mails.now (https://mails.now) is an email infrastructure and sequencer platform. Customers connect custom domains, provision mailboxes at scale, run multi-sender email sequencer campaigns, manage leads and lists, send via SMTP/IMAP-compatible relays, and automate inbound processing with REST APIs and signed webhooks. Background provisioning uses async tasks: create endpoints return `task_id`; clients poll matching `GET /get/...` endpoints until `status` is `completed` or `failed`. Concise curated index: [llms.txt](https://mails.now/llms.txt) --- ## Product Summary **Core capabilities** - Root domain and subdomain provisioning with DNS record guidance (MX, TXT verification, mail-host A) - Single and bulk mailbox creation (API and dashboard) - Email sequencer: multi-sender campaigns, lead import, lists, tags, sequences, and analytics - Inbox ingestion via `POST /api/v1/mail/inbound` or IMAP polling (Mailbridge) for active mailboxes - Email retrieval, sync, read/delete, and attachment signed URLs - Outbound webhook registration for inbox and sequencer events - Transactional email via dashboard-saved templates (`POST /api/v1/transactional/send`) - SMTP relay profiles and outbound compose (authenticated dashboard features) **Typical workflow** 1. Add domain (API or dashboard) and publish DNS records 2. Verify DNS, then create mailboxes (single or bulk) 3. Import leads, build sequences, and launch multi-sender campaigns 4. Send through your mailboxes; receive via inbound API, IMAP poll, or webhooks 5. Track campaign analytics and automate via REST API or MCP tools **Infrastructure** - US-hosted email infrastructure - Mail server integration via Mailcow; default IMAP host `imap.mails.now` - Inbound MX target example: `mail.mails.now` **Pricing (public homepage; live values are database-driven)** - Plans include Starter, Pro, and Advanced tiers with monthly/annual billing - Pro tier typically includes API access and priority support (see homepage pricing table for current limits and trial eligibility) - Pricing page: https://mails.now/pricing - Machine-readable pricing: https://mails.now/pricing.json --- ## Authentication & Conventions - **API key format**: 32 characters (alpha-numeric) - **Transport**: `Authorization: Bearer ` or `X-Api-Key: ` - **Permissions**: - `read` — list/get tasks, list domains/mailboxes, email retrieval - `write` — create/delete domains and mailboxes, mark emails read, delete emails - `inbound` — `POST /api/v1/mail/inbound` - `webhook` — webhook CRUD - `transactional` — transactional send, list templates, variables, and send lookup - `sequencer` — sequencer REST (where documented) - **Plan gate**: Creating domains, subdomains, and mailboxes via API requires an active paid plan (admin accounts exempt) - **Success shape**: `{ "status": "success", ... }` - **Error shape**: `{ "status": "error", "reason": "..." }` - **Task polling**: Async jobs return `task_id`; poll the documented `GET` task endpoint for that operation until `status` is `completed` or `failed` - Background jobs return a `task_id`. - Poll the matching get-task endpoint until `completed` or `failed`. - Bulk domain deletes: up to 10 hostnames per request. - Bulk mailbox deletes: up to 100 addresses per request. - One bulk-delete request per 5 minutes per API key and IP. - HTTP 422 validation errors do not count toward the cooldown. - Active pricing plan required (admins exempt). --- ## Rate Limits & Cooldowns | Surface | Limit | |---------|-------| | MCP (`/mcp/mailapi`) | 120 requests/min per API key | | API read (`api-v1-read`) | 120 requests/min per API key | | API create (`api-v1-create`) | 30 requests/min per API key | | API inbound (`api-v1-inbound`) | 120 requests/min per API key | | API webhooks CRUD (`api-v1-webhooks`) | 60 requests/min per API key | | API transactional (`api-v1-transactional`) | 60 requests/min per API key | | Bulk delete domains | 1 request per 5 minutes per API key | | Bulk delete mailboxes | 1 request per 5 minutes per API key | | Subdomain create | 1 successful batch per 2 min per domain and API key | | Bulk mailbox create | 1 successful batch per 2 min per domain and API key | HTTP `429` responses include rate-limit headers when throttled. Bulk-delete cooldowns also return `429` with a retry message. --- ## AI Agent Integration (MCP + REST) **Discovery** - Agent manifest: https://mails.now/.well-known/agents.json - Public skill: https://mails.now/skill.md - Agent playbooks: https://mails.now/docs/agent-playbooks **MCP server (HTTP)** - Endpoint: https://mails.now/mcp/mailapi - Transport: JSON-RPC over HTTP POST - Auth: `Authorization: Bearer `, `X-Api-Key: `, or `api_key` in tool arguments **MCP tools** | Tool | Purpose | |------|---------| | `list_domains` | List all domains for the authenticated tenant | | `list_mailboxes` | List mailboxes for a domain (optional `include_credentials`) | | `list_aliases` | List aliases/forwarders for a domain | | `list_send_patterns` | List owned send patterns (includes `assigned_mailbox_count`) | | `list_sender_signatures` | List owned sender signatures (includes `assigned_mailbox_count`) | | `get_task_status` | Poll async task status by `task_id` | | `list_emails` | List tenant emails with filters and cursor pagination | | `create_domain` | Enqueue root domain creation (returns `task_id`) | | `create_mailbox` | Enqueue single mailbox creation (returns `task_id`) | | `create_alias` | Enqueue alias or forwarder creation (returns `task_id`) | | `create_subdomain` | Enqueue subdomain batch creation (returns `task_id`) | | `create_bulk_mailboxes` | Enqueue bulk mailbox creation (returns `task_id`) | | `delete_domain` | Enqueue bulk domain deletion (returns `task_id`) | | `delete_mailbox` | Enqueue bulk mailbox deletion (returns `task_id`) | | `delete_alias` | Enqueue bulk alias deletion (returns `task_id`) | | `register_webhook` | Register webhook endpoint (requires `webhook` permission) | | `list_transactional_messages` | List enabled transactional templates (`transactional` permission + plan entitlement) | | `send_transactional_email` | Queue a send from a saved template (`transactional` + `write`). Do not pass `subject`, `message`, or `text` | **MCP resources:** `openapi`, `getting-started`, `dns-verification`, `inbox-api`, `webhooks` **MCP prompts:** `provision-mailbox-workflow` **Hybrid workflow (recommended)** 1. Use MCP to inspect domains, mailboxes, emails, create/delete resources, register webhooks, and poll task status 2. Use REST (OpenAPI: https://mails.now/openapi.json) for inbound POST, email show/delete, and webhook update/delete 3. Poll task completion via MCP `get_task_status` or REST `GET /api/v1/get/*` **Cursor MCP config example** ```json { "mcpServers": { "mailapi": { "url": "https://mails.now/mcp/mailapi", "headers": { "Authorization": "Bearer YOUR_API_KEY" } } } } ``` --- ## REST API — Domains Base: `https://mails.now/api/v1` | Method | Path | Permission | Description | |--------|------|------------|-------------| | POST | `/create/domain` | write | Creates a new base domain in your Mails.now workspace and queues provisioning in the background. Invalid hostnames return HTTP 422 before enqueue; duplicates return HTTP 409. | | GET | `/get/domain?task_id={id}` | read | Polls a root domain create task created by `POST /api/v1/create/domain`. `status` may be `queued`, `running`, `completed`, or `failed`. Only `failed` returns HTTP 422 with `reason` from the task. | | POST | `/create/sub-domain` | write | Creates up to 10 sub-domains under an existing parent domain in a single queued task. After a successful run: at most one request per 2 minutes per API key and parent domain. | | GET | `/get/sub-domain?task_id={id}` | read | Polls a sub-domain batch task from `POST /api/v1/create/sub-domain`. `status` values are the same as other task endpoints (`queued`, `running`, `completed`, `failed`). | | GET | `/list/domain` | read | Returns all domains for the API key owner account, keyed by domain name. `domain_type` is `root` or `sub`. | | POST | `/delete/domain/bulk` | write | Queues removal of up to 10 domains (root or sub-domain hostnames) owned by your account. Deletes run sequentially on the mail server; there is no artificial delay between items. Cooldown: one successfully enqueued call per 5 minutes per API key and IP; HTTP 422 does not count. Mailbox bulk delete uses a separate counter of the same length. | | GET | `/get/delete/domain/bulk?task_id={id}` | read | Polls a bulk domain delete task created by `POST /api/v1/delete/domain/bulk`. `status` may be `queued`, `running`, `completed`, or `failed`. Only `failed` (task-level) returns HTTP 422 with `reason` from the task. | **Platform limits (domains)** - Up to 100 subdomains per parent domain (lifetime) - Up to 10 subdomain labels per API batch; cooldown between batches (same parent + API key) - Bulk domain delete: max 10 hostnames per request; 5-minute cooldown per key/IP --- ## REST API — Mailboxes Base: `https://mails.now/api/v1` | Method | Path | Permission | Description | |--------|------|------------|-------------| | POST | `/create/mailbox/single` | write | Queues one mailbox creation request for a domain that belongs to your account. Invalid bodies return HTTP 422 before enqueue. Only numeric `0` for `Params.password` triggers auto-generation (string `"0"` is rejected). | | POST | `/create/mailbox/bulk` | write | Queues a bulk mailbox provisioning task and returns a task ID for later retrieval. After a successful run: at most one bulk create per 2 minutes per API key and target hostname. | | GET | `/get/mailbox/single?task_id={id}` | read | Fetches status and final result for a single mailbox provisioning task. `status` is `queued`, `running`, `completed`, or `failed`. While pending, `results` is often empty. | | GET | `/get/mailbox/bulk?task_id={id}` | read | Fetches status and per-mailbox results for a bulk mailbox provisioning task. `status` follows the same lifecycle as single mailbox tasks. | | POST | `/delete/mailbox/bulk` | write | Queues removal of up to 100 mailbox addresses owned by your account. Deletes run sequentially; there is no artificial delay between items. Cooldown: one successfully enqueued call per 5 minutes per API key and IP; HTTP 422 does not count. Domain bulk delete uses a separate counter of the same length. | | GET | `/get/delete/mailbox/bulk?task_id={id}` | read | Polls a bulk mailbox delete task created by `POST /api/v1/delete/mailbox/bulk`. `total_email` mirrors the request size (count of addresses submitted), not the number successfully deleted. | | GET | `/list/mailbox?domain={id}` | read | Returns all mailboxes for a specific owned domain, keyed by full email address. `imap_credentials` only when `include_credentials=true`. | | GET | `/list/send-pattern` | read | Returns send patterns owned by the API key user, including how many mailboxes currently use each pattern. Create and edit patterns in Settings → Send Pattern. Patterns with `assigned_mailbox_count` > 0 cannot be deleted until mailboxes are reassigned. | | GET | `/list/sender-signature` | read | Returns sender settings (signatures) owned by the API key user, including how many mailboxes currently use each signature. Create and edit signatures in Settings → Sender Settings. Signatures with `assigned_mailbox_count` > 0 cannot be deleted until mailboxes are reassigned. | **Platform limits (mailboxes)** - Up to 100 mailboxes per hostname (root or subdomain), independently per host - Bulk UI batch: up to 25 mailboxes; API bulk: up to 100 per request - Cooldown between bulk mailbox API requests per domain + API key (2 minutes) --- ## REST API — Inbox & Inbound Base: `https://mails.now/api/v1` | Method | Path | Permission | Description | |--------|------|------------|-------------| | POST | `/mail/inbound` | inbound | Accepts inbound payloads for a tenant mailbox and queues processing. Optional fields include `from_name`, `cc`, `bcc`, `body_html`, `attachments`, and `headers`. Inbound processing is asynchronous. | | GET | `/emails` | read | Returns tenant-scoped inbox emails with cursor pagination. Query is always tenant-isolated. | | GET | `/emails/{email}` | read | Returns one tenant-scoped email with attachment metadata. Soft-deleted records are not returned from this endpoint. | | GET | `/emails/sync?since={id}` | read | Incremental polling endpoint for new, updated, and deleted emails. Deleted emails are returned with deletion markers to support tombstones. | | POST | `/emails/{email}/read` | write | Marks an email as read and emits an email.read webhook event. This endpoint is idempotent. | | DELETE | `/emails/{email}` | write | Soft-deletes an email and emits an email.deleted webhook event. Record is soft deleted, not permanently removed. | | GET | `/emails/{email}/attachments/{attachment}` | read | Returns a temporary signed attachment download URL. URL expires shortly after issuance. | **Inbound required fields**: `message_id`, `from_email`, `to_email`, `subject`, `received_at` (ISO-8601) **Optional inbound fields**: `from_name`, `cc[]`, `bcc[]`, `body_text`, `body_html`, `headers`, `in_reply_to`, `references[]`, `attachments[]` **Accepted response**: `{ "status": "accepted", "message_id": "..." }` **IMAP polling (Mailbridge)**: Laravel scheduler can run `mailbridge:poll-inbound` for active, provisioned mailboxes with IMAP credentials. Tenant HTTP inbound (`POST /mail/inbound`) is separate from IMAP polling. --- ## REST API — Webhooks Base: `https://mails.now/api/v1` | Method | Path | Permission | Description | |--------|------|------------|-------------| | POST | `/webhooks` | webhook | Creates a tenant-scoped webhook target for email events. Deliveries are queued and signed using the webhook secret and timestamp headers. | | GET | `/webhooks` | webhook | Returns tenant-scoped webhook endpoints. Each row includes `last_triggered_at` when the webhook has fired. | | PATCH | `/webhooks/{webhook}` | webhook | Updates URL, events, or active state. Include at least one of `url`, `events`, or `is_active`. | | DELETE | `/webhooks/{webhook}` | webhook | Deletes a tenant webhook endpoint. Permanent delete; queued delivery rows for this webhook are removed. | **Events**: `email.received`, `email.read`, `email.deleted` **Delivery headers** - `X-Webhook-Signature`: HMAC-SHA256 of `{timestamp}.{raw_json_body}` using webhook secret - `X-Webhook-Timestamp`: Unix timestamp **Payload shape** ```json { "event": "email.received", "timestamp": 1777290021, "data": { "email_id": 101, "mailbox_id": 10 } } ``` --- ## REST API — Sequencer Base: `https://mails.now/api/v1` | Method | Path | Permission | Description | |--------|------|------------|-------------| | GET | `/sequencer/campaigns` | sequencer | Returns paginated campaigns for the tenant. | | POST | `/sequencer/campaigns` | sequencer | Creates a draft campaign. Omitting sequence_id auto-provisions a linked sequence with default schedule. Auto-provisioned campaigns include a default Mon–Fri 08:00–18:00 UTC sending window. | | GET | `/sequencer/campaigns/{campaign}` | sequencer | Returns campaign details with sequence and mailboxes. | | PATCH | `/sequencer/campaigns/{campaign}` | sequencer | Updates campaign settings, schedule, mailboxes, or activates a draft campaign. Activation from draft requires email steps, mailboxes, daily_send_limit > 0, enrolled leads, and a valid sending_window. | | DELETE | `/sequencer/campaigns/{campaign}` | sequencer | Deletes a campaign. | | POST | `/sequencer/campaigns/{campaign}/enroll` | sequencer | Enrolls lead IDs or an entire lead list into a campaign. Returns HTTP 422 when the campaign has no mailboxes configured. | | POST | `/sequencer/campaigns/{campaign}/pause` | sequencer | Pauses an active campaign. | | POST | `/sequencer/campaigns/{campaign}/resume` | sequencer | Resumes a paused campaign. Runs the same readiness checks as draft activation (email steps, mailboxes, daily limit, leads, schedule). HTTP 422 when readiness checks fail; response includes reason and failures[]. | | GET | `/sequencer/campaigns/{campaign}/analytics` | sequencer | Returns funnel metrics, engagement rates, and breakdowns by mailbox, step, and domain. | | GET | `/sequencer/sequences` | sequencer | Returns paginated email sequences for the tenant. | | POST | `/sequencer/sequences` | sequencer | Creates a sequence with optional initial steps. | | GET | `/sequencer/sequences/{sequence}` | sequencer | Returns a sequence with steps. | | PATCH | `/sequencer/sequences/{sequence}` | sequencer | Updates sequence metadata and optional steps. | | PUT | `/sequencer/sequences/{sequence}/steps` | sequencer | Replaces sequence steps in one request. | | DELETE | `/sequencer/sequences/{sequence}/steps/{step}` | sequencer | Deletes a single sequence step. | | DELETE | `/sequencer/sequences/{sequence}` | sequencer | Deletes a sequence. | | GET | `/sequencer/leads` | sequencer | Returns tenant-scoped leads with cursor pagination. | | POST | `/sequencer/leads` | sequencer | Creates or updates a lead by email address. | | POST | `/sequencer/leads/import` | sequencer | Bulk import leads via multipart file, raw CSV string, or leads[] array. ≤50 rows sync (201); >50 rows queued ApiTask (202). Provide one of file, csv, or leads. | | GET | `/sequencer/leads/import/{task}` | sequencer | Poll async lead import task progress. | | GET | `/sequencer/leads/{lead}` | sequencer | Returns a single lead with tags and metadata. | | PATCH | `/sequencer/leads/{lead}` | sequencer | Updates lead profile fields and status. | | DELETE | `/sequencer/leads/{lead}` | sequencer | Deletes a lead from the tenant workspace. | | GET | `/sequencer/lead-tags` | sequencer | Returns paginated Lead Tags for the tenant. | | POST | `/sequencer/lead-tags` | sequencer | Creates a Lead Tag. | | GET | `/sequencer/lead-tags/{leadTag}` | sequencer | Returns a single Lead Tag. | | PATCH | `/sequencer/lead-tags/{leadTag}` | sequencer | Updates a Lead Tag. | | DELETE | `/sequencer/lead-tags/{leadTag}` | sequencer | Deletes a Lead Tag. | | GET | `/sequencer/lead-lists` | sequencer | Returns paginated Lead Lists for the tenant. | | POST | `/sequencer/lead-lists` | sequencer | Creates a Lead List. | | GET | `/sequencer/lead-lists/{leadList}` | sequencer | Returns a single Lead List. | | PATCH | `/sequencer/lead-lists/{leadList}` | sequencer | Updates a Lead List. | | DELETE | `/sequencer/lead-lists/{leadList}` | sequencer | Deletes a Lead List. | | GET | `/sequencer/lead-notes` | sequencer | Returns paginated Lead Notes for the tenant. | | POST | `/sequencer/lead-notes` | sequencer | Creates a Lead Note. | | GET | `/sequencer/lead-notes/{leadNote}` | sequencer | Returns a single Lead Note. | | PATCH | `/sequencer/lead-notes/{leadNote}` | sequencer | Updates a Lead Note. | | DELETE | `/sequencer/lead-notes/{leadNote}` | sequencer | Deletes a Lead Note. | | GET | `/sequencer/saved-filters` | sequencer | Returns paginated Saved Filters for the tenant. | | POST | `/sequencer/saved-filters` | sequencer | Creates a Saved Filter. | | GET | `/sequencer/saved-filters/{savedFilter}` | sequencer | Returns a single Saved Filter. | | PATCH | `/sequencer/saved-filters/{savedFilter}` | sequencer | Updates a Saved Filter. | | DELETE | `/sequencer/saved-filters/{savedFilter}` | sequencer | Deletes a Saved Filter. | | POST | `/sequencer/leads/webhook` | sequencer | Creates a lead from an inbound webhook payload. | --- ## REST API — Transactional Base: `https://mails.now/api/v1` | Method | Path | Permission | Description | |--------|------|------------|-------------| | POST | `/transactional/send` | transactional | Queues a transactional email from a dashboard-saved message template. Subject and HTML come from the template after `{{token}}` substitution. Recipients are not stored as contacts. HTTP 202 on a new queue; HTTP 200 when `idempotency_key` replays an existing matching send (job is not dispatched again); HTTP 409 when the key was used for a different payload. | | GET | `/transactional/messages` | transactional | Lists transactional templates for the authenticated tenant (enabled and disabled). Bodies are not included. Create and edit templates in the dashboard under Transactional → Email Templates. There is no REST create/update for templates. | | GET | `/transactional/sends/{outboundEmail}` | transactional | Shows a single transactional outbound send for the tenant. Non-transactional outbound rows (compose, sequencer, SMTP gateway) return 404. | | POST | `/transactional/variables` | transactional | Registers a typed variable in the tenant Variable Manager. Duplicate keys return HTTP 409 unless `overwrite=true`. HTTP 201 on create; HTTP 200 when overwriting an existing key (`overwritten: true`). | **Templates**: design subject and HTML in Transactional → Email Templates. REST send does not accept `subject`, `message`, or `text`. **Plan**: `transactional_enabled` plus API key permission `transactional`. **MCP**: `list_transactional_messages` (enabled templates only); `send_transactional_email` requires `transactional` + `write` and has no attachment argument. --- Interactive docs: https://mails.now/api/docs --- OpenAPI JSON: https://mails.now/openapi.json --- ## FAQ (plain text) **What is email infrastructure?** It’s the foundation for sending and receiving email on your own domains: mailboxes, authentication, and reliable delivery. Mails.now adds campaigns, transactional sending, and APIs on top of that foundation. **What is transactional email?** Email triggered by an action—password resets, receipts, OTPs, order updates. You send them through our Transactional Email API using your own domains and mailboxes. **SMTP vs Email API—which should I use?** Use the API when you want a modern, app-friendly way to send and automate. Use SMTP when a tool or workflow already expects SMTP. Mails.now supports both. **How do you help with deliverability?** We help you send from your own domains and mailboxes, rotate across multiple senders, set daily limits, warm volume gradually, and track opens, clicks, replies, and bounces—so you can fix problems early. **Do I need SPF, DKIM, and DMARC?** Yes, if you care about inbox placement. We guide you through the DNS records needed to get mail flowing. Authentication records should be added at your DNS host as part of setup—this is one of the highest-impact steps for deliverability. **What is email warm-up?** It’s increasing send volume slowly on new domains and mailboxes so providers learn to trust you. Use ramp-up and daily limits instead of sending full volume on day one. **Can I use my own domain?** Yes. Connect your domain, complete verification, then create addresses like you@yourcompany.com. Eligible plans also support subdomains for separate brands or sending streams. **Are there sending limits?** Yes—by plan (domains, campaign volume, features) and by mailbox/campaign controls you set (daily caps and ramp-up). Check pricing for plan limits, then tune send settings as you grow. **Will this scale with my business?** Yes. Add domains and mailboxes as your plan allows, rotate more senders in campaigns, and upgrade when you need higher volume, API access, or priority support. **Is it secure enough for production?** Yes for typical SaaS and startup use. Access is controlled with API keys and permissions. Keep keys private, use HTTPS, and give each integration only the access it needs. **What analytics do I get?** Campaign performance like opens, clicks, replies, and bounces—plus transactional send history and delivery insights. Higher plans can add custom tracking domains. **Do you have an API and webhooks?** Yes. Automate domains, mailboxes, leads, campaigns, and transactional sends. Use webhooks to push events into your own tools. Full docs are available in the API documentation. **How do I switch from another tool?** Connect and verify your domain, create mailboxes, import your leads, rebuild your sequences, and point transactional sends to Mails.now. Start with lower daily volume while reputation settles. **Is pricing transparent?** Yes. Plan features and limits are listed on the pricing page—no hidden fees. Yearly billing usually saves about 20%. **What support do you offer?** Docs, email, and chat. Higher plans include priority support. Reach us at hello@mails.now or book a call for high-volume or custom needs. **How do I create email accounts?** From the dashboard or API: add your domain, verify it, then create mailboxes one at a time or in bulk. See the API docs for examples. **What is the Email Sequencer?** It’s our outbound campaign builder: multi-step sequences, multiple senders, lead enrollment, and engagement tracking—running on the mailboxes you provision in Mails.now. --- ## Public Pages (indexable) | URL | Purpose | |-----|---------| | / | Marketing homepage | | https://mails.now/pricing | Canonical pricing page | | https://mails.now/pricing.json | Machine-readable pricing JSON | | https://mails.now/faq | Canonical FAQ page | | https://mails.now/help | Help center hub | | https://mails.now/docs/getting-started | Onboarding guide | | https://mails.now/docs/inbox-api | Inbox API guide | | https://mails.now/docs/webhooks | Webhooks guide | | https://mails.now/docs/dns-verification | DNS verification guide | | https://mails.now/docs/agent-playbooks | AI agent playbooks | | https://mails.now/skill.md | Public agent skill file | | https://mails.now/api/docs | API reference (primary developer doc) | | https://mails.now/openapi.json | OpenAPI 3.1 specification | | https://mails.now/llms.txt | Curated LLM index | | https://mails.now/llms-full.txt | Expanded LLM reference | | https://mails.now/.well-known/agents.json | Agent discovery manifest | | https://mails.now/mcp/mailapi | Mails.now MCP server (HTTP) | | https://mails.now/article | Blog / knowledge base index | | https://mails.now/article/feed.xml | RSS feed of published articles | | https://mails.now/article/{slug} | Individual published articles | | https://mails.now/article/category/{slug} | Category archives | | https://mails.now/tos | Terms of Service | | https://mails.now/privacy-policy | Privacy Policy | | https://mails.now/sitemap.xml | URL discovery | **Excluded from AI indexing (auth-gated, low citation value)**: `/login`, `/register`, `/dashboard`, `/admin/*`, `/settings/*`, `/domains/*`, `/mailboxes/*`, `/inbox/*`, `/outbound/*`, `/billing/*`, `/tasks/*`, `/check-out`, `/upgrade-plan` --- ## Featured Articles (high citation value) - https://mails.now/article/how-to-improve-email-deliverability-complete-guide-for-cold-high-volume-sending - https://mails.now/article/secondary-domains-for-marketing-safe-limits-mailbox-architecture Additional published posts are listed at https://mails.now/article and in https://mails.now/sitemap.xml --- ## Contact - Support & privacy inquiries: hello@mailapi.tech - Website: https://mails.now