mailnix / Inbound & IMAP

    Inbound

    Inbound & IMAP

    Two ways to get incoming mail into mailnix: pattern-based inbound routes on the @inbound.mailnix.ch domain, or pointing mailnix at an existing IMAP mailbox you already run.

    Inbound routes

    An inbound route matches a local-part pattern at @inbound.mailnix.ch and delivers each incoming message to your webhook, durably, with retry.

    1. Create a route with a pattern and a webhook URL, in the dashboard or via the MCP tool email_inbound_route_create(local_part_pattern, webhook_url).
    2. Mail to a matching address (say support-*@inbound.mailnix.ch) is parsed and POSTed to your webhook.
    3. Stored messages are also listable: email_inbound_messages_list(route_id, limit) on MCP, or the dashboard's inbound view.

    Webhook authentication

    Every notify POST carries:

    X-Mailnix-Signature: sha256=<hex(hmac_sha256(body, route_secret))>

    Verify the signature before processing. Deliveries are deduplicated via the X-Mailnix-Delivery header (a UUID per delivery attempt chain), so replays are detectable.

    IMAP polling

    If you would rather not change MX records, point mailnix at an existing mailbox: host, port, username, password, mailbox folder, and poll interval. mailnix polls the mailbox and ingests new messages through the same pipeline. Configure it in the dashboard's inbound settings.

    Not the same as virtual inboxes

    Inbound routes handle real incoming mail. Virtual inboxes observe captured outbound test sends from the soft-sandbox path and are best-effort by design. A real email never lands in a virtual inbox, and a captured send never fires an inbound-route webhook. See Virtual inboxes.