Postmark Integration
Postmark API Operations
Browse all 84 operations available for Postmark workflow automation.
Bounces
5 operations/bounces/{bounceid}Get a single bounce
Retrieve complete details for a specific bounce record, including the bounce type, recipient address, timestamp, and error description. Use this to investigate why a particular email failed to deliver and determine whether the address can be reactivated.
/bounces/{bounceid}/dumpGet bounce SMTP dump
Retrieve the raw SMTP conversation for a specific bounce. Contains the full server response that caused the delivery failure. Available for 30 days after the bounce occurs. Use this for advanced troubleshooting when the bounce description alone is not enough to diagnose the issue.
/deliverystatsGet delivery statistics overview
Retrieve a high-level summary of your email delivery health, including the count of deactivated addresses and a breakdown of bounce types. Use this to monitor sender reputation and spot deliverability issues before they become critical.
/bounces/{bounceid}/activateReactivate a bounced email address
Reactivate a bounced email address for sending
/bouncesSearch bounces
Search bounced emails by type, date, or recipient
Bulk Email
2 operations/email/bulk/{bulkRequestId}Get bulk email request status
Check the processing status of a previously submitted bulk email request. Use this to monitor delivery progress, verify completion percentage, and confirm all messages in the batch have been processed before triggering follow-up actions.
/email/bulkSend bulk email to multiple recipients
Send bulk email broadcasts to many recipients
Data Removal
2 operations/data-removalsCreate a data removal request
Submit a request to remove all stored data for a specific recipient's email address in compliance with GDPR, CCPA, or other data privacy regulations. This feature is available by request only. Use this to fulfill right-to-erasure requests from your customers.
/data-removals/{id}Get data removal request status
Check the progress of a previously submitted data removal request. Returns whether the removal is still pending or has been completed. Use this to confirm compliance actions have been fulfilled and report status back to the requesting party.
Domains
9 operations/domainsAdd a sending domain
Register a new sending domain with your Postmark account. After adding the domain, you will need to configure DKIM and Return-Path DNS records to authenticate it. Proper domain authentication improves deliverability and protects against spoofing.
/domains/{domainid}Delete a sending domain
Remove a sending domain from your account. Any emails sent from this domain will no longer be authenticated through Postmark. Make sure no active senders or workflows depend on this domain before removing it.
/domains/{domainid}Get domain details
Retrieve complete details for a sending domain, including DKIM keys, SPF records, Return-Path configuration, and verification status. Use this to check which DNS records need to be configured or to verify that authentication is set up correctly.
/domainsList sending domains
Retrieve all sending domains configured in your account with their authentication status. Use this to audit which domains have verified DKIM and Return-Path records, ensuring optimal deliverability across all your sending domains.
/domains/{domainid}/rotatedkimRotate domain DKIM key
Generate a new DKIM key pair to replace the current key. After rotation, update the DNS TXT record with the new key value and verify it. Use this as a security best practice to periodically rotate cryptographic keys.
/domains/{domainid}Update domain configuration
Modify a domain's configuration, specifically the custom Return-Path domain. Use this to set up a branded bounce address (e.g., bounces.yourdomain.com) for improved deliverability and professional appearance.
/domains/{domainid}/verifyDkimVerify domain DKIM records
Trigger a DNS lookup to verify that your DKIM records are correctly configured. Run this after adding the required TXT records to your DNS. Verified DKIM authentication significantly improves email deliverability and inbox placement.
/domains/{domainid}/verifyReturnPathVerify domain Return-Path DNS
Trigger a DNS lookup to verify that your Return-Path CNAME record is correctly configured. A verified Return-Path improves deliverability by aligning the bounce address with your sending domain.
/domains/{domainid}/verifyspfVerify domain SPF records (deprecated)
Query DNS to verify SPF record configuration for the domain. This endpoint is deprecated. Use DKIM verification instead, which provides stronger authentication and is the recommended approach for domain verification.
/email/batchSend a batch of emails
Send up to 500 emails in a single API call
/emailSend a single email
Send a transactional email to one or more recipients
/email/withTemplateSend an email using a template
Send a templated email with dynamic variables
/email/batchWithTemplatesSend batch emails using templates
Send up to 500 template-based emails in a single batch request. Each message can use a different template and model data for full personalization at scale. Perfect for sending personalized notifications, digests, or reports to many users at once.
Inbound Rules
3 operations/triggers/inboundrulesCreate an inbound blocking rule
Create a rule to block inbound messages from a specific email address or entire domain. Use this to automatically filter out unwanted senders, reduce spam processing, or block known problematic addresses.
/triggers/inboundrules/{triggerid}Delete an inbound blocking rule
Remove an inbound rule trigger to stop blocking messages from the specified sender or domain. Use this when you want to start receiving emails from a previously blocked address.
/triggers/inboundrulesList inbound rule triggers
Retrieve all inbound rule triggers that block messages from specific senders. Use this to review your current block list, audit filtering rules, or build a management interface for inbound email filtering.
Message Streams
6 operations/message-streams/{streamId}/archiveArchive a message stream
Archive an active message stream to stop all sending through it. Archived streams are retained for 45 days before permanent deletion. Use this when decommissioning a stream while preserving the option to restore it.
/message-streamsCreate a message stream
Create a new message stream to separate different types of email traffic. Servers support up to 10 streams. Use separate streams for transactional emails and marketing broadcasts to maintain clean sending reputation and comply with email regulations.
/message-streams/{streamId}Get a message stream
Retrieve the full details of a specific message stream, including its type, description, and subscription management settings. Use this to check stream configuration or verify unsubscribe handling is set up correctly.
/message-streamsList message streams
Retrieve all message streams configured for your server. Message streams organize your email traffic into categories like transactional, broadcast, and inbound. Use this to review your stream setup or build a stream selector in your application.
/message-streams/{streamId}/unarchiveRestore an archived message stream
Restore a previously archived message stream within the 45-day retention window. Use this to reactivate a stream that was archived by mistake or is needed again for a new campaign.
/message-streams/{streamId}Update a message stream
Modify a message stream's name, description, or subscription management configuration. Use this to update unsubscribe handling settings or rename streams as your email program evolves.
Messages
11 operations/messages/inbound/{messageid}/bypassBypass rules for a blocked inbound message
Allow a blocked inbound message to bypass your filtering rules and be processed normally. Use this when a legitimate email was incorrectly blocked by an inbound rule and needs to be delivered to your webhook endpoint.
/messages/outbound/clicks/{messageid}Get clicks for a specific message
Retrieve all click events for links in a single outbound message. Use this to see which links were clicked, how many times, and from what devices and locations.
/messages/inbound/{messageid}/detailsGet inbound message details
Retrieve the complete details of an inbound email, including headers, HTML and text body content, attachments, and blocking reasons. Use this to inspect received emails, debug inbound processing issues, or extract content from specific messages.
/messages/outbound/opens/{messageid}Get opens for a specific message
Retrieve all open events for a single outbound message. Use this to see exactly when and how many times a specific email was opened, along with client and location details for each open event.
/messages/outbound/{messageid}/dumpGet outbound message SMTP dump
Retrieve the raw SMTP conversation for a specific outbound message. Use this for advanced debugging when you need to inspect the exact headers and content that were transmitted to the receiving mail server.
/messages/outbound/{messageid}/detailsGet outbound message details
Retrieve the full details of a sent email, including the HTML/text body, attachments, and complete event history (delivery, opens, clicks, bounces). Use this to inspect exactly what was sent and track the full lifecycle of a specific message.
/messages/inbound/{messageid}/retryRetry a failed inbound message
Reschedule a failed inbound message for reprocessing. Use this when your inbound webhook was temporarily unavailable and you need Postmark to re-deliver the message to your endpoint.
/messages/outbound/opensSearch email open events
Retrieve open tracking events across all outbound messages with filters for recipient, tag, date range, client, platform, and geographic location. Use this to analyze email engagement patterns, identify which recipients are reading your emails, and understand device and location trends.
/messages/inboundSearch inbound messages
Search through received inbound emails with filters for sender, recipient, subject, tag, status, and date range. Returns up to 10,000 results. Use this to find specific incoming messages, monitor inbound processing status, or audit blocked messages.
/messages/outbound/clicksSearch link click events
Retrieve click tracking events across all outbound messages with filters for recipient, tag, client, platform, and geographic location. Use this to measure link engagement, identify popular content, and understand how recipients interact with your emails.
/messages/outboundSearch outbound messages
Search sent emails by recipient, tag, or status
Sender Signatures
8 operations/sendersCreate a sender signature
Register a new sender email address with Postmark. A confirmation email will be sent to the address for verification. Once confirmed, this address can be used as the From address when sending emails.
/senders/{signatureid}Delete a sender signature
Remove a sender signature from your account. Emails can no longer be sent from this address after deletion. Make sure no active workflows use this sender address before removing it.
/senders/{signatureid}Get sender signature details
Retrieve complete details for a sender signature, including DKIM status, SPF verification, Return-Path configuration, and confirmation status. Use this to check whether a sender address is fully authenticated and ready to use.
/sendersList sender signatures
Retrieve all sender signatures configured in your account. Sender signatures authorize specific email addresses to send through Postmark. Use this to audit which sender addresses are available and their confirmation status.
/senders/{signatureid}/requestnewdkimRequest new DKIM for sender (deprecated)
Request generation of a new DKIM key for a sender signature. This endpoint is deprecated. Use the Domains API to manage DKIM keys at the domain level instead, which provides centralized key management.
/senders/{signatureid}/resendResend sender confirmation email
Resend the confirmation email for an unconfirmed sender signature. Use this when the original confirmation email was lost, expired, or not received by the address owner.
/senders/{signatureid}Update a sender signature
Modify properties of a sender signature, including the display name, reply-to address, Return-Path domain, and confirmation note. Use this to update sender details without creating a new signature.
/senders/{signatureid}/verifyspfVerify sender SPF records (deprecated)
Verify SPF record configuration for a sender signature. This endpoint is deprecated. Use the Domains API for domain-level DKIM verification instead, which provides stronger authentication.
Server
2 operations/serverGet current server configuration
Retrieve the full configuration of your current Postmark server, including tracking settings, inbound configuration, webhook URLs, and delivery preferences. Use this to audit server settings or display configuration details in your admin interface.
/serverUpdate server configuration
Modify your current server's settings including tracking preferences, webhook URLs, inbound spam threshold, and delivery options. Use this to enable open/click tracking, configure inbound email processing, or update webhook endpoints.
Servers
5 operations/serversCreate a new server
Provision a new Postmark server for sending and receiving email. Each server gets its own API token, tracking settings, and message streams. Use this to set up isolated environments for different projects or clients. Requires account-level authentication.
/servers/{serverid}Delete a server
Permanently remove a server and all its associated data. This action cannot be undone and is not available for all accounts. Use with extreme caution, as all message history, templates, and configuration will be lost.
/servers/{serverid}Get a server by ID
Retrieve the full configuration of a specific server by its numeric ID. Requires account-level authentication. Use this to inspect settings for any server in your account without needing its server token.
/serversList all servers in the account
Retrieve a paginated list of all Postmark servers configured under your account. Optionally filter by server name. Use this to manage multiple environments or projects that each have their own sending server. Requires account-level authentication.
/servers/{serverid}Update a server by ID
Modify settings for a specific server using account-level authentication. Use this for centralized server management when administering multiple servers from a single integration.
Stats
12 operations/stats/outbound/bouncesGet bounce counts by type
Retrieve bounce statistics broken down by type (hard bounce, soft bounce, transient, SMTP API error) with daily granularity. Use this to monitor deliverability trends, detect list quality issues, and identify when bounce rates exceed acceptable thresholds.
/stats/outbound/clicks/browserfamiliesGet clicks by browser family
Retrieve click statistics broken down by browser type. Use this to understand which browsers your recipients use when clicking links, helping you optimize landing pages for the most common browsers.
/stats/outbound/clicks/locationGet clicks by content location
Retrieve click statistics showing whether clicks came from HTML or plain text email content. Use this to understand how many recipients rely on the text version of your emails and ensure both versions contain proper links.
/stats/outbound/clicks/platformsGet clicks by platform
Retrieve click statistics broken down by device platform (desktop, mobile). Use this to understand whether recipients engage with links more on mobile or desktop, informing your landing page design decisions.
/stats/outbound/sendsGet daily sent email counts
Retrieve day-by-day counts of sent emails over a date range. Use this to track sending volume trends, identify spikes or drops, and correlate email activity with business events.
/stats/outbound/opensGet email open counts
Retrieve daily total and unique email open counts over a date range. Use this to measure email engagement, calculate open rates, and track how engagement trends change over time.
/stats/outbound/opens/emailclientsGet email opens by email client
Retrieve open statistics broken down by email client (Gmail, Outlook, Apple Mail, etc.). Use this to identify which email clients your recipients use and prioritize compatibility testing for the most popular ones.
/stats/outbound/opens/platformsGet email opens by platform
Retrieve open statistics broken down by device platform (desktop, mobile, webmail). Use this to understand how your audience reads email and optimize your templates for the most common platforms.
/stats/outbound/clicksGet link click counts
Retrieve daily total and unique click counts over a date range. Use this to measure link engagement, calculate click-through rates, and identify which campaigns drive the most recipient interaction.
/stats/outboundGet outbound statistics overview
Get delivery statistics overview for your server
/stats/outbound/spamGet spam complaint counts
Retrieve daily spam complaint statistics over a date range. Use this to monitor complaint rates, which directly impact your sender reputation. High complaint rates can lead to deliverability issues and should be addressed promptly.
/stats/outbound/trackedGet tracked email counts
Retrieve daily counts of emails sent with open or link tracking enabled. Use this to verify that tracking is being applied consistently and to understand what portion of your email volume is being tracked.
Suppressions
3 operations/message-streams/{streamId}/suppressionsAdd addresses to suppression list
Suppress email addresses to stop sending
/message-streams/{streamId}/suppressions/dumpList suppressed email addresses
Retrieve email addresses that are suppressed (blocked from sending) for a specific message stream. Filter by suppression reason, origin, date range, or specific address. Use this to audit your suppression list, comply with deliverability best practices, or investigate why a specific recipient is not receiving emails.
/message-streams/{streamId}/suppressions/deleteRemove addresses from suppression list
Remove up to 50 email addresses from the suppression list for a specific message stream. Note that spam complaint suppressions cannot be deleted. Use this to re-enable sending to addresses that were manually suppressed or had temporary bounce issues that have been resolved.
Templates
7 operations/templatesCreate an email template
Create a reusable email template
/templates/{templateIdOrAlias}Delete an email template
Permanently remove a template from your server. This action cannot be undone. Make sure no active workflows depend on this template before deleting it.
/templates/{templateIdOrAlias}Get a template by ID or alias
Fetch the full details of a specific template, including its subject, HTML body, text body, and layout assignment. Look up templates by numeric ID or string alias. Use this to review template content or populate an editing interface.
/templatesList email templates
Retrieve a paginated list of your email templates with optional filtering by type and layout. Use this to browse available templates, audit your template library, or build a template picker in your application.
/templates/pushPush templates between servers
Transfer all templates from one server to another, syncing changes across environments. Supports a dry-run mode to preview what would change before committing. Requires account-level authentication. Use this to promote templates from staging to production.
/templates/{templateIdOrAlias}Update an email template
Modify an existing template's subject, HTML body, text body, alias, or layout assignment. Use this to update email designs, fix content issues, or adjust template variables without creating a new template.
/templates/validateValidate template content
Test a template's syntax and preview its rendered output using sample model data. Catches Mustache parsing errors before you save the template. Use this to validate templates during development or before deploying content changes.
Webhooks
5 operations/webhooksCreate a webhook configuration
Set up a new webhook to receive real-time notifications for email events like deliveries, bounces, opens, clicks, and spam complaints. Supports HTTP Basic Auth and custom headers for secure webhook delivery. Each webhook can be scoped to a specific message stream.
/webhooks/{webhookid}Delete a webhook configuration
Remove a webhook from your server. Postmark will immediately stop sending events to the webhook URL. Use this when decommissioning an endpoint or replacing it with a new webhook configuration.
/webhooks/{webhookid}Get webhook configuration details
Retrieve the full configuration of a specific webhook, including its URL, authentication settings, enabled triggers, and associated message stream. Use this to verify webhook setup or debug event delivery issues.
/webhooksList webhook configurations
Retrieve all webhook configurations for your server, optionally filtered by message stream. Use this to audit which events are being forwarded to your endpoints and verify webhook URLs are correctly configured.
/webhooks/{webhookid}Update a webhook configuration
Modify an existing webhook's URL, authentication, headers, or trigger settings. Only the fields you provide will be updated. Use this to change webhook endpoints, enable additional event types, or update authentication credentials.