Floxymail Docs

Quick Start

  1. Create an account and copy the account access token (shown once). Existing accounts can generate or rotate it in Settings.
  2. Use that token as Authorization: Bearer fxa_… to add domains, read DNS, create sending API keys, and register webhooks.
  3. Publish every DNS row (DKIM CNAME, bounce MX/SPF, inbound MX, apex SPF), then check with the same token. One check verifies all record types together.
  4. Send mail with the same account token or a sending API key.

Account access token

Every workspace gets one full-access token. It can do everything the dashboard can except platform admin: domains, DNS, API keys, webhooks, templates, inbound, usage, settings, and sending. Rotate it anytime in Settings.

Authorization: Bearer fxa_xxxxxxxx

Send Email (cURL)

curl -X POST https://mail.85-190-107-150.sslip.io/v1/emails \
  -H "Authorization: Bearer fx_xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "from": "hello@yourdomain.com",
    "to": ["user@example.com"],
    "subject": "Welcome",
    "html": "<p>Hello</p>",
    "text": "Hello"
  }'

Node.js

const res = await fetch("/v1/emails", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.API_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    from: "hello@yourdomain.com",
    to: ["user@example.com"],
    subject: "Welcome",
    html: "<p>Hello</p>",
  }),
});

Python

import requests
requests.post(
  "https://mail.85-190-107-150.sslip.io/v1/emails",
  headers={"Authorization": f"Bearer {API_KEY}"},
  json={
    "from": "hello@yourdomain.com",
    "to": ["user@example.com"],
    "subject": "Welcome",
    "html": "<p>Hello</p>",
  },
)

Add a domain and read DNS

curl -X POST https://mail.85-190-107-150.sslip.io/v1/domains \
  -H "Authorization: Bearer fxa_xxx" \
  -H "Content-Type: application/json" \
  -d '{"domain":"yourdomain.com"}'

curl https://mail.85-190-107-150.sslip.io/v1/domains \
  -H "Authorization: Bearer fxa_xxx"

# Check every DNS record (MX, CNAME, SPF) for one domain — id or name
curl -X POST https://mail.85-190-107-150.sslip.io/v1/domains/verify \
  -H "Authorization: Bearer fxa_xxx" \
  -H "Content-Type: application/json" \
  -d '{"domain":"yourdomain.com"}'

# Or re-check every domain on the account
curl -X POST https://mail.85-190-107-150.sslip.io/v1/domains/check \
  -H "Authorization: Bearer fxa_xxx" \
  -H "Content-Type: application/json" \
  -d '{"all":true}'

The create and list responses include dnsRecords: DKIM CNAMEs, MAIL FROM MX + SPF on bounce.yourdomain.com, inbound MX on inbound.yourdomain.com, and an apex SPF hint. Add them at Cloudflare, Namecheap, GoDaddy, Hostinger, Route53, Vercel, or any DNS host. Merge apex SPF (include:amazonses.com) into an existing record — do not create two SPF TXT records.

Create a sending API key

curl -X POST https://mail.85-190-107-150.sslip.io/v1/api-keys \
  -H "Authorization: Bearer fxa_xxx" \
  -H "Content-Type: application/json" \
  -d '{"name":"Production"}'

Create a webhook

curl -X POST https://mail.85-190-107-150.sslip.io/v1/webhooks \
  -H "Authorization: Bearer fxa_xxx" \
  -H "Content-Type: application/json" \
  -d '{"name":"Production hooks","url":"https://example.com/hooks/floxymail","events":["email.delivered","email.bounced"]}'

Webhooks

Events: email.sent, email.delivered, email.bounced, email.complained, email.failed, email.received. Requests are signed with timestamp + HMAC signature headers.

Errors

{
  "error": {
    "code": "domain_not_verified",
    "message": "The sending domain has not been verified."
  }
}

Support: kodedmag@gmail.com · Back to dashboard