Skip to content
OS Domains
Documentation

From zero to first message in five minutes.

Below is the documentation hub: the quickstart for engineers in a hurry, the complete REST API reference, SMTP integration guides for applications that prefer SMTP, webhook setup, SDKs in six languages, deliverability fundamentals, migration guides from every major competitor, and an exhaustive error-code reference. Everything is versioned in our public git repository — pull requests welcome from customers who spot improvements.

Base URLs
REST API
https://api.osdomains.com/v2
SMTP relay
smtp.osdomains.com:587
Customer portal
app.osdomains.com
5-minute quickstart

Send your first message in four steps.

  1. 1. Sign in to app.osdomains.com with your provisioned credentials.
  2. 2. Settings → API Keys → create a key with "send" scope. Copy it.
  3. 3. Add your sending domain in Domains and publish the SPF/DKIM/DMARC records we generate.
  4. 4. Run one of the code blocks below from your terminal or application. Done.
Copy-pasteable
curl https://api.osdomains.com/v2/send \
  -H "Authorization: Bearer $OSD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "from": "[email protected]",
    "to": "[email protected]",
    "subject": "Welcome",
    "html": "<p>Hello.</p>",
    "text": "Hello."
  }'

Expected response: { "id": "msg_...", "status": "queued" } within 80ms. The message lands in the recipient inbox within 1-3 seconds for major providers. If you do not get a response, check authentication (401) and DNS (domain not verified) before assuming a bug.

All documentation

Eight sections, 45 pages.

Each section has its own URL and a sidebar of subpages. Search across all docs is at the top of the navigation. We aim for short, code-heavy pages rather than long narrative essays — if a page is taking more than 5 minutes to read, we probably need to split it.

🚀 01 · 4 pages

Quickstart

Get sending in 5 minutes.

02 · 8 pages

REST API

Complete reference for v1 and v2 endpoints.

  • Send endpoint (POST /v2/send)

    Single message and batch requests, idempotency keys, scheduling, custom headers.

  • Templates endpoint

    Create, list, update, delete email templates with Mustache and Handlebars syntax.

  • Domains endpoint

    Verify, list, manage sending domains. SPF/DKIM/DMARC status checks.

  • IPs endpoint

    List allocated IPs, warm-up status, rDNS hostname, pool assignment, request additional.

  • Suppressions endpoint

    Read, append, remove from suppression lists. Bulk operations, CSV import/export.

  • Stats endpoint

    Send/deliver/bounce/complaint counts. By domain, IP, time window, or template.

  • Webhooks endpoint

    Create, list, update webhook subscriptions. Event types, signing keys, retry policy.

  • Pagination, rate limits, errors

    Cursor-based pagination. 60K req/min default. Standardized error envelopes with retry hints.

03 · 5 pages

SMTP integration

For applications that prefer SMTP over REST.

🔔 04 · 4 pages

Webhooks

Real-time event delivery to your endpoint.

📦 05 · 6 pages

SDKs

Official client libraries in 6 languages.

📊 06 · 6 pages

Deliverability

Authentication, reputation, and inbox placement.

07 · 6 pages

Migration guides

Coming from another provider.

08 · 6 pages

Errors and troubleshooting

Common errors with concrete fixes.

Still missing something

The docs are a living artifact. If you find a gap, tell us.

Documentation is one of those things that is never finished. If you spent 10 minutes hunting for an answer that we should have made obvious, write to [email protected] with the URL you wish existed and what it should say. We treat doc requests with the same priority as bug reports.

Phone +43 1 205 11 80 Mon–Fri · 9–18 CET
Email [email protected] Avg response 4h business
Office Fleischmarkt 1, 1010 Wien By appointment