> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sendpost.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Setting Up Postmark Integration

> Configure Postmark as a Third-Party Sending Provider in SendPost with Server API Token and Message Stream selection.

## Prerequisites

Before setting up the Postmark integration, ensure you have:

### 1. Postmark Account

* An active Postmark account
* A **Server API Token** (single credential; no domain required for TPSP setup)

### 2. Postmark Server API Token

To get your Server API Token in Postmark:

<Steps>
  <Step title="Log in to Postmark">
    Log in to your [Postmark Dashboard](https://account.postmarkapp.com)
  </Step>

  <Step title="Select Server">
    Select the server you want to use for sending
  </Step>

  <Step title="Get API Token">
    Go to **API Tokens** (or Server → API Tokens) and copy your **Server API token**
  </Step>

  <Step title="Save Your Token">
    **Copy your Server API token** and keep it secure (you may use it only for this SendPost provider)
  </Step>
</Steps>

### 3. SendPost Account

* A SendPost account with admin access
* At least one sub-account created

***

## Setting Up Postmark Integration

### Step 1: Navigate to Providers

1. Log in to your [SendPost Dashboard](https://app.sendpost.io)
2. Go to **Settings** → **Providers** (or navigate to the Providers page)
3. Click the **NEW** button

### Step 2: Configure Postmark Provider

1. **Name**: Enter a descriptive name (e.g., "Production Postmark", "Transactional Postmark")
2. **Type**: Select **Postmark** from the dropdown (provider type 4)
3. **Key**: Paste your Postmark **Server API Token**
4. Click **Fetch message streams** to load your Postmark message streams (SendPost calls the Postmark API with your token)
5. **Message Stream**: Select one message stream from the dropdown (e.g. "outbound", or a custom stream). The value is the stream ID; the display shows the stream name and type.
6. Submit is disabled until a message stream is selected.
7. Click **Save**

<Warning>
  **Required**: You must select a **Message Stream** before saving. Postmark requires a stream for both sending and webhook registration. Without it, the provider cannot be created.
</Warning>

<Note>
  No domain is required at the provider level for Postmark. Your sending domain is still whitelisted in SendPost for deliverability; the Postmark side uses the From address you supply when sending.
</Note>

### Step 3: Automatic Webhook Configuration

When you save the provider, SendPost automatically:

<Check>Registers one webhook with Postmark for the selected Message Stream</Check>
<Check>Configures triggers: Open, Click, Delivery, Bounce, Spam Complaint</Check>

**Webhook URL Format**: `https://api.sendpost.io/tpsp/postmark/account/{your-account-id}`

**Events Configured**:

* Open (first and subsequent)
* Click
* Delivery
* Bounce (hard and soft)
* Spam Complaint

Postmark allows one webhook per stream with multiple triggers; SendPost uses that single webhook for all supported events.

### Step 4: Use the Auto-Created IP Pool

When you save the Postmark provider, SendPost **automatically creates** an IP pool for that provider. This pool is configured to route **100% of its volume** to Postmark—no manual setup needed.

**Finding your IP pool**: Click the **profile icon** (top right) → **IP Pools**. The pool created for your Postmark provider appears there. Use its name as the `ippool` parameter in your API calls when sending via Postmark.

### Step 5: Whitelist Your Sending Domain (Optional)

Whitelisting your sending domain in SendPost is **optional**. If the IP pool you use only sends volume to Postmark, you can skip this step and start sending.

<Warning>
  **If you skip this step**: SendPost will not be able to show you **domain-level stats** for Postmark (e.g. per-domain opens, bounces, clicks). Subaccount and provider-level stats will still be available.
</Warning>

To enable domain-level stats for Postmark:

1. Go to **Settings** → **Domains** in your SendPost dashboard
2. Click **Add Domain**
3. Enter the domain you use in your From address (e.g., `yourdomain.com`)
4. Complete the domain verification process

***

## Next Steps

Once your Postmark integration is set up, you can:

* [Send emails via Postmark](/guides/postmark/sending-emails) using the SendPost API (with `ippool` and `tpspTemplate`)
* [View event types](/guides/postmark/event-types) for Postmark (PM\* events)
* [View analytics](/guides/postmark/analytics) for your Postmark emails
