← Back to docs

Inbound API

Inbound API

Manage incoming emails received via Postscale Receive.

How Inbound Works

  1. Configure MX records to point to Postscale
  2. Emails are received and parsed
  3. Parsed data is delivered to your webhook endpoint
  4. Emails are stored and accessible via the API

See Inbound Webhooks for webhook setup and payload format.


List Inbound Emails

GET /v1/inbound-emails

Retrieve a list of received inbound emails.

Query Parameters

ParameterTypeDescription
limitintegerNumber of results (default: 50, max: 100)
offsetintegerNumber of results to skip

Example Request

curl -X GET "https://api.postscale.io/v1/inbound-emails?limit=50" \
  -H "Authorization: Bearer ps_live_your_api_key"

Response

[
  {
    "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "message_id": "<unique-id@example.com>",
    "from_address": "customer@example.com",
    "to_address": "support@yourapp.com",
    "subject": "Help with my order",
    "status": "processed",
    "alias_id": "f1e2d3c4-b5a6-7890-abcd-ef1234567890",
    "received_at": "2026-01-18T10:30:00Z",
    "processed_at": "2026-01-18T10:30:01Z"
  }
]

Get Inbound Email

GET /v1/inbound-emails/:id

Retrieve the full details of an inbound email including body content.

Example Request

curl -X GET https://api.postscale.io/v1/inbound-emails/a1b2c3d4-e5f6-7890-abcd-ef1234567890 \
  -H "Authorization: Bearer ps_live_your_api_key"

Response

{
  "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "message_id": "<unique-id@example.com>",
  "from": "customer@example.com",
  "to": "support@yourapp.com",
  "subject": "Help with my order",
  "text": "Hi, I need help with my order #12345.",
  "html": "<p>Hi, I need help with my order #12345.</p>",
  "headers": {},
  "attachments": [],
  "status": "processed",
  "received_at": "2026-01-18T10:30:00Z",
  "processed_at": "2026-01-18T10:30:01Z"
}
Webhook delivery

Inbound emails are automatically delivered to configured webhook endpoints. Use the dashboard to set up routing rules and webhook URLs.