# Paubox API Docs - [Introduction](https://docs.paubox.com/welcome.md): HIPAA compliant, HITRUST certified email infrastructure. Send transactional email, run marketing campaigns, and collect patient data with forms. - [Quickstart guide](https://docs.paubox.com/email-api/quickstart.md): In this Quickstart, send your first HIPAA compliant email via Paubox Email API in under 5 minutes. - [General information](https://docs.paubox.com/email-api.md): Base URL, authentication, date formats, and response codes for the Paubox Email API. - [Email API authentication](https://docs.paubox.com/email-api/authentication.md): Find your Paubox Email API key and pass it in requests with the Bearer or legacy Token authorization header, plus best practices for key rotation. - [Receiving email](https://docs.paubox.com/email-api/receiving.md): Receive inbound email through the Paubox Email API: provision domains and retrieve messages programmatically. - [SMTP API](https://docs.paubox.com/email-api/smtp.md): Send email through the Paubox Email API over SMTP: connect to smtp.paubox.com on port 587, 465, or 25, with TLS options and rate limits. - [Attachments](https://docs.paubox.com/email-api/attachments.md): Attach files to emails sent with the Paubox Email API: attachment fields and Base64 content, with REST API, SDK, and CLI examples. - [Webhooks](https://docs.paubox.com/email-api/webhooks.md): Receive real-time Paubox Email API events for delivery, opens, failures, and inbound mail, with payloads, retry behavior, and signature verification. - [Limits and overage rates](https://docs.paubox.com/email-api/limits.md): Sending limits, rate limits, and overage pricing for the Paubox Email API. - [Errors](https://docs.paubox.com/email-api/errors.md): HTTP error codes returned by the Paubox Email API, with common causes and fixes. - [Dynamic templates](https://docs.paubox.com/email-api/dynamic-templates-guide.md): Create reusable Handlebars email templates and send personalized messages through the Paubox Email API. - [Migrate from Mailgun](https://docs.paubox.com/email-api/migrate-from-mailgun.md): Switch from Mailgun to the Paubox Email API for HIPAA compliant transactional email. - [Migrate from Postmark](https://docs.paubox.com/email-api/migrate-from-postmark.md): Switch from Postmark to the Paubox Email API for HIPAA compliant transactional email. - [Migrate from Resend](https://docs.paubox.com/email-api/migrate-from-resend.md): Switch from Resend to the Paubox Email API for HIPAA compliant transactional email. - [Migrate from SendGrid](https://docs.paubox.com/email-api/migrate-from-sendgrid.md): Switch from SendGrid v3 to the Paubox Email API for HIPAA compliant transactional email. - [Migrate from Amazon SES](https://docs.paubox.com/email-api/migrate-from-ses.md): Switch from Amazon SES to the Paubox Email API for HIPAA compliant transactional email. - [Overview](https://docs.paubox.com/marketing.md): Base URL, authentication, core concepts, and conventions for the Paubox Marketing API. - [Locating parameter values](https://docs.paubox.com/marketing/parameter-values.md): How to find parameter values like campaign_mailing_id, subscription_list_id, and campaign_mailing_send_id in the Paubox Marketing web dashboard. - [MCP Server quickstart](https://docs.paubox.com/mcp-server/quickstart.md): Connect the Paubox MCP Server to Claude, Claude Desktop, Claude Code, or any MCP-compatible client. - [Paubox MCP Server](https://docs.paubox.com/mcp-server/index.md): The Paubox MCP Server gives AI assistants HIPAA compliant email and secure form tools through the Model Context Protocol. - [MCP tools](https://docs.paubox.com/mcp-server/tools.md): Reference for every tool the Paubox MCP Server exposes for sending and scheduling email, receiving inbound mail, Forms, and Email Marketing. - [MCP Server authentication](https://docs.paubox.com/mcp-server/authentication.md): Get a Paubox API key and pass it to the Paubox MCP Server with the OAuth connector, request headers, environment variables, or per-call tool parameters. - [SDKs](https://docs.paubox.com/sdks.md): Official Paubox client libraries for the Email API and Forms API in C#, Go, Java, Node.js, Perl, PHP, Python, Rails, Ruby, and Rust. - [Paubox C# SDK](https://docs.paubox.com/csharp-sdk/index.md): Send HIPAA compliant email and submit Paubox Forms from .NET applications using the official Paubox C# SDK. - [C# SDK quickstart](https://docs.paubox.com/csharp-sdk/quickstart.md): Add the Paubox C# SDK and send your first HIPAA compliant email in minutes. - [C# SDK authentication](https://docs.paubox.com/csharp-sdk/authentication.md): Configure Paubox API credentials for the C# SDK with a constructor parameter or IConfiguration in ASP.NET Core, plus Forms client setup and security notes. - [C# SDK email client](https://docs.paubox.com/csharp-sdk/email-client.md): Full reference for the Paubox C# SDK Email API client: sending messages, bulk sending, delivery tracking, dynamic templates, and error handling. - [C# SDK receiving client](https://docs.paubox.com/csharp-sdk/receiving-client.md): Full reference for the Paubox C# SDK receiving API: managing domains, mailboxes, and retrieving inbound email. - [C# SDK webhook client](https://docs.paubox.com/csharp-sdk/webhook-client.md): Create, list, get, update, and delete Paubox webhook endpoints with the C# SDK to receive delivery, open, failure, and inbound mail events. - [C# SDK forms client](https://docs.paubox.com/csharp-sdk/forms-client.md): Retrieve Paubox Form schemas and submit form responses using the C# SDK. - [Paubox Go SDK](https://docs.paubox.com/go-sdk/index.md): Send HIPAA compliant email and submit Paubox Forms from Go applications using the official Paubox Go SDK. - [Go SDK quickstart](https://docs.paubox.com/go-sdk/quickstart.md): Install the Paubox Go SDK and send your first HIPAA compliant email in minutes. - [Go SDK authentication](https://docs.paubox.com/go-sdk/authentication.md): Configure Paubox API credentials for the Go SDK with your API key or environment variables, plus Forms client setup and security notes for handling keys. - [Go SDK email client](https://docs.paubox.com/go-sdk/email-client.md): Full reference for the Paubox Go SDK Email API client: sending messages, batch sending, delivery tracking, dynamic templates, and error handling. - [Go SDK receiving client](https://docs.paubox.com/go-sdk/receiving-client.md): Full reference for the Paubox Go SDK receiving API: managing domains, mailboxes, and retrieving inbound email. - [Go SDK webhook client](https://docs.paubox.com/go-sdk/webhook-client.md): Create, list, get, update, and delete Paubox webhook endpoints with the Go SDK to receive delivery, open, failure, and inbound mail events. - [Go SDK forms client](https://docs.paubox.com/go-sdk/forms-client.md): Retrieve Paubox Form schemas and submit form responses using the Go SDK. - [Paubox Java SDK](https://docs.paubox.com/java-sdk/index.md): Send HIPAA compliant email and submit Paubox Forms from Java applications using the official Paubox Java SDK. - [Java SDK quickstart](https://docs.paubox.com/java-sdk/quickstart.md): Add the Paubox Java SDK and send your first HIPAA compliant email in minutes. - [Java SDK authentication](https://docs.paubox.com/java-sdk/authentication.md): Configure Paubox API credentials for the Java SDK with a config.properties file loaded at startup, plus FormsService setup and key security notes. - [Java SDK email client](https://docs.paubox.com/java-sdk/email-client.md): Full reference for the Paubox Java SDK email client: building messages, sending email, tracking delivery, and error handling. - [Java SDK receiving client](https://docs.paubox.com/java-sdk/receiving-client.md): Full reference for the Paubox Java SDK receiving API: managing domains, mailboxes, and retrieving inbound email. - [Java SDK webhook client](https://docs.paubox.com/java-sdk/webhook-client.md): Create, list, get, update, and delete Paubox webhook endpoints with the Java SDK to receive delivery, open, failure, and inbound mail events. - [Java SDK forms client](https://docs.paubox.com/java-sdk/forms-client.md): Retrieve Paubox Form schemas and submit form responses using the Java SDK. - [Paubox Node.js SDK](https://docs.paubox.com/node-sdk/index.md): Send HIPAA compliant email and submit Paubox Forms from Node.js applications using the official Paubox Node.js SDK. - [Node.js SDK quickstart](https://docs.paubox.com/node-sdk/quickstart.md): Install the Paubox Node.js SDK and send your first HIPAA compliant email in minutes. - [Node.js SDK authentication](https://docs.paubox.com/node-sdk/authentication.md): Configure Paubox API credentials for the Node.js SDK with environment variables or direct configuration, plus Forms service setup and key security notes. - [Node.js SDK email client](https://docs.paubox.com/node-sdk/email-client.md): Full reference for the Paubox Node.js SDK email service: building messages, sending email, tracking delivery, dynamic templates, and error handling. - [Node.js SDK receiving client](https://docs.paubox.com/node-sdk/receiving-client.md): Full reference for the Paubox Node.js SDK receiving API: managing domains, mailboxes, and retrieving inbound email. - [Node.js SDK webhook client](https://docs.paubox.com/node-sdk/webhook-client.md): Create, list, get, update, and delete Paubox webhook endpoints with the Node.js SDK to receive delivery, open, failure, and inbound mail events. - [Node.js SDK forms client](https://docs.paubox.com/node-sdk/forms-client.md): Retrieve Paubox Form schemas and submit form responses using the Node.js SDK. - [Paubox Perl SDK](https://docs.paubox.com/perl-sdk/index.md): Send HIPAA compliant email and submit Paubox Forms from Perl applications using the official Paubox Perl SDK. - [Perl SDK quickstart](https://docs.paubox.com/perl-sdk/quickstart.md): Install the Paubox Perl SDK and send your first HIPAA compliant email in minutes. - [Perl SDK authentication](https://docs.paubox.com/perl-sdk/authentication.md): Configure Paubox API credentials for the Perl SDK with a config.cfg file, plus Forms client setup and security notes for handling your API key. - [Perl SDK email client](https://docs.paubox.com/perl-sdk/email-client.md): Full reference for the Paubox Perl SDK Email API client: building messages, sending email, tracking delivery, and error handling. - [Perl SDK receiving client](https://docs.paubox.com/perl-sdk/receiving-client.md): Full reference for the Paubox Perl SDK receiving API: managing domains, mailboxes, and retrieving inbound email. - [Perl SDK webhook client](https://docs.paubox.com/perl-sdk/webhook-client.md): Create, list, get, update, and delete Paubox webhook endpoints with the Perl SDK to receive delivery, open, failure, and inbound mail events. - [Perl SDK forms client](https://docs.paubox.com/perl-sdk/forms-client.md): Retrieve Paubox Form schemas and submit form responses using the Perl SDK. - [Paubox PHP SDK](https://docs.paubox.com/php-sdk/index.md): Send HIPAA compliant email and submit Paubox Forms from PHP applications using the official Paubox PHP SDK. - [PHP SDK quickstart](https://docs.paubox.com/php-sdk/quickstart.md): Install the Paubox PHP SDK and send your first HIPAA compliant email in minutes. - [PHP SDK authentication](https://docs.paubox.com/php-sdk/authentication.md): Configure your Paubox API key for the PHP SDK with a .env file, plus Forms client setup and security notes for handling the key. - [PHP SDK email client](https://docs.paubox.com/php-sdk/email-client.md): Full reference for the Paubox PHP SDK Email API client: building messages, sending email, tracking delivery, and error handling. - [PHP SDK receiving client](https://docs.paubox.com/php-sdk/receiving-client.md): Full reference for the Paubox PHP SDK receiving API: managing domains, mailboxes, and retrieving inbound email. - [PHP SDK webhook client](https://docs.paubox.com/php-sdk/webhook-client.md): Create, list, get, update, and delete Paubox webhook endpoints with the PHP SDK to receive delivery, open, failure, and inbound mail events. - [PHP SDK forms client](https://docs.paubox.com/php-sdk/forms-client.md): Retrieve Paubox Form schemas and submit form responses using the PHP SDK. - [Paubox Python SDK](https://docs.paubox.com/python-sdk/index.md): Send HIPAA compliant email and submit Paubox Forms from Python 3 applications using the official Paubox Python SDK. - [Python SDK quickstart](https://docs.paubox.com/python-sdk/quickstart.md): Install the Paubox Python SDK and send your first HIPAA compliant email in minutes. - [Python SDK authentication](https://docs.paubox.com/python-sdk/authentication.md): Configure Paubox API credentials for the Python SDK with environment variables or constructor parameters, plus Forms client setup and key security notes. - [Python SDK email client](https://docs.paubox.com/python-sdk/email-client.md): Full reference for the Paubox Python SDK email client: composing messages, sending email, tracking delivery, and error handling. - [Python SDK receiving client](https://docs.paubox.com/python-sdk/receiving-client.md): Full reference for the Paubox Python SDK receiving API: managing domains, mailboxes, and retrieving inbound email. - [Python SDK webhook client](https://docs.paubox.com/python-sdk/webhook-client.md): Create, list, get, update, and delete Paubox webhook endpoints with the Python SDK to receive delivery, open, failure, and inbound mail events. - [Python SDK forms client](https://docs.paubox.com/python-sdk/forms-client.md): Retrieve Paubox Form schemas and submit form responses using the Python SDK. - [Paubox Rails SDK](https://docs.paubox.com/rails-sdk/index.md): Send HIPAA compliant email from Rails applications using ActionMailer and the official Paubox Rails gem. - [Rails SDK quickstart](https://docs.paubox.com/rails-sdk/quickstart.md): Add the Paubox Rails gem, configure credentials, and send your first HIPAA compliant email in minutes. - [Rails SDK authentication](https://docs.paubox.com/rails-sdk/authentication.md): Configure Paubox API credentials for the Rails SDK in an initializer backed by environment variables, plus Forms client setup and key security notes. - [Email delivery](https://docs.paubox.com/rails-sdk/email-delivery.md): Send HIPAA compliant email through ActionMailer using the Paubox Rails gem. - [Rails SDK receiving client](https://docs.paubox.com/rails-sdk/receiving-client.md): Full reference for the Paubox Rails SDK receiving API: managing domains, mailboxes, and retrieving inbound email. - [Rails SDK webhook client](https://docs.paubox.com/rails-sdk/webhook-client.md): Create, list, get, update, and delete Paubox webhook endpoints with the Rails SDK to receive delivery, open, failure, and inbound mail events. - [Rails SDK forms client](https://docs.paubox.com/rails-sdk/forms-client.md): Retrieve Paubox Form schemas and submit form responses using the Rails SDK. - [Paubox Ruby SDK](https://docs.paubox.com/ruby-sdk/index.md): Send HIPAA compliant email and submit Paubox Forms from Ruby applications using the official Paubox Ruby gem. - [Ruby SDK quickstart](https://docs.paubox.com/ruby-sdk/quickstart.md): Install the Paubox Ruby gem and send your first HIPAA compliant email in minutes. - [Ruby SDK authentication](https://docs.paubox.com/ruby-sdk/authentication.md): Configure Paubox API credentials for the Ruby SDK with global or per-client configuration, plus Forms client setup and key security notes. - [Ruby SDK email client](https://docs.paubox.com/ruby-sdk/email-client.md): Full reference for the Paubox Ruby SDK email client: building messages, sending email, tracking delivery, dynamic templates, and error handling. - [Ruby SDK receiving client](https://docs.paubox.com/ruby-sdk/receiving-client.md): Full reference for the Paubox Ruby SDK receiving API: managing domains, mailboxes, and retrieving inbound email. - [Ruby SDK webhook client](https://docs.paubox.com/ruby-sdk/webhook-client.md): Create, list, get, update, and delete Paubox webhook endpoints with the Ruby SDK to receive delivery, open, failure, and inbound mail events. - [Ruby SDK forms client](https://docs.paubox.com/ruby-sdk/forms-client.md): Retrieve Paubox Form schemas and submit form responses using the Ruby SDK. - [Paubox Rust SDK](https://docs.paubox.com/rust-sdk/index.md): Send HIPAA compliant email and submit Paubox Forms from Rust applications using the official Paubox Rust SDK. - [Rust SDK quickstart](https://docs.paubox.com/rust-sdk/quickstart.md): Install the Paubox Rust SDK and send your first HIPAA compliant email in minutes. - [Rust SDK authentication](https://docs.paubox.com/rust-sdk/authentication.md): Configure Paubox API credentials for the Rust SDK with environment variables, a direct constructor, or a builder with custom timeout and base URL. - [Rust SDK email client](https://docs.paubox.com/rust-sdk/email-client.md): Full reference for the Paubox Rust SDK email client: building messages, sending email, tracking delivery, and error handling. - [Rust SDK receiving client](https://docs.paubox.com/rust-sdk/receiving-client.md): Full reference for the Paubox Rust SDK receiving API: managing domains, mailboxes, and retrieving inbound email. - [Rust SDK webhook client](https://docs.paubox.com/rust-sdk/webhook-client.md): Create, list, get, update, and delete Paubox webhook endpoints with the Rust SDK to receive delivery, open, failure, and inbound mail events. - [Rust SDK forms client](https://docs.paubox.com/rust-sdk/forms-client.md): Retrieve Paubox Form schemas and submit form responses using the Rust SDK. - [Paubox CLI](https://docs.paubox.com/cli/index.md): Send HIPAA compliant email and drive Paubox Forms from the terminal or CI pipelines using the Paubox CLI. - [Paubox CLI quickstart](https://docs.paubox.com/cli/quickstart.md): Install the Paubox CLI, authenticate, and send your first email in under five minutes. - [Installation](https://docs.paubox.com/cli/installation.md): Install the Paubox CLI with npm, Homebrew on macOS, or winget on Windows, then verify the install and enable keychain support on Linux. - [Paubox CLI authentication](https://docs.paubox.com/cli/authentication.md): Log in, log out, and check credential status with the Paubox CLI. Keys are stored in your OS keychain, or read from PAUBOX_API_KEY in CI. - [Commands](https://docs.paubox.com/cli/commands.md): Reference for every Paubox CLI command and global option, including send, schedule, status, config, receiving, and forms, with flags, examples, and exit codes. - [Paubox Forms API](https://docs.paubox.com/forms/index.md): Build, host, and process HIPAA compliant forms directly inside your application. - [Forms API authentication](https://docs.paubox.com/forms/authentication.md): Authenticate to the Paubox Forms API with an API key that has the forms scope: find your credentials, pass them in requests, and handle auth errors. - [Send a message with the Email API](https://docs.paubox.com/email-api/messages.md): Send a single HIPAA compliant email with the Paubox Email API. Supports cc, bcc, custom headers, attachments, and open and link tracking overrides. - [Send bulk messages with the Email API](https://docs.paubox.com/email-api/bulk-messages.md): Sends multiple messages in one request. Paubox recommends batches of 50 or fewer. Source tracking IDs are returned in the same order as the messages array. - [Get a message receipt with the Email API](https://docs.paubox.com/email-api/message-receipt.md): Retrieve delivery status, open tracking, and click tracking information for a sent message - [Schedule a message with the Email API](https://docs.paubox.com/email-api/scheduled-send/schedule.md): Schedule an email for delivery at a future UTC time, up to 30 days ahead. Returns a sourceTrackingId you can use to check, reschedule, or cancel the send. - [Get scheduled message status with the Email API](https://docs.paubox.com/email-api/scheduled-send/get.md): Check a scheduled message's state (pending, processing, sent, cancelled, or failed) along with its scheduled, sent, and cancelled times. - [Reschedule a message with the Email API](https://docs.paubox.com/email-api/scheduled-send/reschedule.md): Move a pending scheduled message to a new send time. The new time must be in the future and within 30 days; only pending messages can be rescheduled. - [Cancel a scheduled message with the Email API](https://docs.paubox.com/email-api/scheduled-send/cancel.md): Cancel a scheduled message before it is sent. Only messages still in the pending state can be cancelled. - [List receiving domains with the Email API](https://docs.paubox.com/email-api/receiving/list-domains.md): Returns all receiving domains for the authenticated account. - [Create a receiving domain with the Email API](https://docs.paubox.com/email-api/receiving/create-domain.md): Provisions a new receiving domain under `inbound.paubox.email`. DNS records are configured automatically. - [Get a receiving domain with the Email API](https://docs.paubox.com/email-api/receiving/get-domain.md): Retrieve a receiving domain by ID, including its state (active or pending) and the DNS records configured for it. - [Delete a receiving domain with the Email API](https://docs.paubox.com/email-api/receiving/delete-domain.md): Delete a receiving domain by ID. Look up domain IDs with the List receiving domains endpoint. - [List mailboxes with the Email API](https://docs.paubox.com/email-api/receiving/list-mailboxes.md): Returns all mailboxes for a receiving domain. - [Create a mailbox with the Email API](https://docs.paubox.com/email-api/receiving/create-mailbox.md): Creates a new mailbox on a receiving domain. - [Get a mailbox with the Email API](https://docs.paubox.com/email-api/receiving/get-mailbox.md): Retrieve a mailbox on a receiving domain by ID, including its email address, storage quota, and creation time. - [Delete a mailbox with the Email API](https://docs.paubox.com/email-api/receiving/delete-mailbox.md): Delete a mailbox from a receiving domain. Requires both the receiving domain ID and the mailbox ID. - [List received emails with the Email API](https://docs.paubox.com/email-api/receiving/list-emails.md): Returns received emails across all active receiving domains, sorted by most recent. Supports cursor-based pagination. - [Get a received email with the Email API](https://docs.paubox.com/email-api/receiving/get-email.md): Returns the full content of a single received email, including headers, body, and attachment metadata. - [List email attachments with the Email API](https://docs.paubox.com/email-api/receiving/list-attachments.md): Returns attachment metadata for a received email. - [Download an attachment with the Email API](https://docs.paubox.com/email-api/receiving/download-attachment.md): Downloads a received email attachment as raw bytes. - [List webhook endpoints with the Email API](https://docs.paubox.com/email-api/webhooks/list.md): Returns all webhook endpoints for the authenticated account. - [Create a webhook endpoint with the Email API](https://docs.paubox.com/email-api/webhooks/create.md): Creates a new webhook endpoint that receives event notifications at the specified URL. - [Get a webhook endpoint with the Email API](https://docs.paubox.com/email-api/webhooks/get.md): Retrieve a webhook endpoint by ID, including its target URL, subscribed events, active status, and signing key. - [Update a webhook endpoint with the Email API](https://docs.paubox.com/email-api/webhooks/update.md): Update a webhook endpoint's target URL or subscribed events, or disable it by setting active to false. Only the fields you send are changed. - [Delete a webhook endpoint with the Email API](https://docs.paubox.com/email-api/webhooks/delete.md): Delete a webhook endpoint by ID. Paubox stops sending event notifications to its target URL. - [List dynamic templates with the Email API](https://docs.paubox.com/email-api/dynamic-templates.md): Retrieve all dynamic templates for your organization - [Create a dynamic template with the Email API](https://docs.paubox.com/email-api/dynamic-templates/create.md): Upload a new Handlebars template for dynamic content generation - [Get a dynamic template with the Email API](https://docs.paubox.com/email-api/dynamic-templates/get.md): Retrieve a specific dynamic template by ID - [Update a dynamic template with the Email API](https://docs.paubox.com/email-api/dynamic-templates/update.md): Update an existing Handlebars template - [Delete a dynamic template with the Email API](https://docs.paubox.com/email-api/dynamic-templates/delete.md): Delete a specific dynamic template by ID - [Send a templated message with the Email API](https://docs.paubox.com/email-api/templated-messages.md): Send an email using a dynamic template with variable substitution - [List campaign mailings with the Marketing API](https://docs.paubox.com/marketing/campaigns.md): Return json data about Paubox Marketing Campaign Emails - [Create a campaign with the Marketing API](https://docs.paubox.com/marketing/campaigns/create.md): Creates a campaign mailing (a marketing email) for the authenticated customer. Creating a mailing only stores the content; use [send a campaign](/marketing/campaigns/send) or [schedule a campaign](/marketing/campaigns/schedule) to deliver it. - [Get a campaign with the Marketing API](https://docs.paubox.com/marketing/campaigns/get.md): Returns a single campaign mailing, including its content. Unlike the list endpoint, this response carries `html_part`, `text_part` and `form_data`, and omits the aggregate delivery counts. - [Update a campaign with the Marketing API](https://docs.paubox.com/marketing/campaigns/update.md): Updates a campaign mailing. Only the fields you send are changed. `PUT` is accepted as an equivalent to `PATCH`. - [Send a campaign mailing with the Marketing API](https://docs.paubox.com/marketing/campaigns/send.md): Send campaign email to recipients. The email message must be created within the Paubox Marketing web interface in order to use this to trigger a send. - [Schedule a campaign mailing with the Marketing API](https://docs.paubox.com/marketing/campaigns/schedule.md): Schedules a new email campaign mailing with specified details for delivery at a future time - [Send a test email with the Marketing API](https://docs.paubox.com/marketing/campaigns/send-test-email.md): Sends a one-off preview of the campaign mailing to a single address, so you can check rendering before sending to a list. The subject is prefixed with `[Test]`, and the message is sent from your account's default brand `from_email` and `from_name`. - [Bulk delete campaigns with the Marketing API](https://docs.paubox.com/marketing/campaigns/bulk-delete.md): Permanently deletes the campaign mailings identified by `campaign_mailing_ids`. There is no single-delete endpoint; delete one mailing by passing an array of one ID. - [List drip campaigns with the Marketing API](https://docs.paubox.com/marketing/drip-campaigns.md): Return json data about Drip Campaigns - [Get a drip campaign with the Marketing API](https://docs.paubox.com/marketing/drip-campaigns/get.md): Returns json data about a drip campaign - [Update a drip campaign with the Marketing API](https://docs.paubox.com/marketing/drip-campaigns/update.md): Updates drip campaign attributes - [Start a drip campaign with the Marketing API](https://docs.paubox.com/marketing/drip-campaigns/start.md): Starts a drip campaign - [Pause a drip campaign with the Marketing API](https://docs.paubox.com/marketing/drip-campaigns/pause.md): Pauses a drip campaign - [List subscribers with the Marketing API](https://docs.paubox.com/marketing/subscribers.md): Return json data about subscribers - [Create a subscriber with the Marketing API](https://docs.paubox.com/marketing/subscribers/create.md): Creates a subscriber record. Adds record to subscription list if specified otherwise adds to all contacts. - [Get a subscriber with the Marketing API](https://docs.paubox.com/marketing/subscribers/get.md): Return json data about subscriber - [Update a subscriber with the Marketing API](https://docs.paubox.com/marketing/subscribers/update.md): Updates a subscriber record - [Bulk create subscribers with the Marketing API](https://docs.paubox.com/marketing/subscribers/bulk-create.md): Creates one or more subscriber records. Adds to subscription list if specified, otherwise adds to all contacts. - [Bulk delete subscribers with the Marketing API](https://docs.paubox.com/marketing/subscribers/bulk-delete.md): Deletes one or more subscriber records. Removes from subscription list if specified, otherwise removed from all contacts. - [List subscriptions with the Marketing API](https://docs.paubox.com/marketing/subscriptions.md): Returns every subscription belonging to the authenticated customer. A subscription is the join between a subscriber and a subscription list (or a dynamic list), and it carries the `unsubscribed_at` timestamp that marks a list-level opt-out. - [Create a subscription with the Marketing API](https://docs.paubox.com/marketing/subscriptions/create.md): Subscribes an existing subscriber to an existing subscription list. - [Get a subscription with the Marketing API](https://docs.paubox.com/marketing/subscriptions/get.md): Returns a single subscription by its UUID. - [Unsubscribe a subscription with the Marketing API](https://docs.paubox.com/marketing/subscriptions/delete.md): Unsubscribes the subscriber from the list this subscription belongs to by stamping `unsubscribed_at`. The subscription record itself is kept, and the subscriber stays subscribed to every other list and is not globally opted out. - [Subscribe subscribers with the Marketing API](https://docs.paubox.com/marketing/subscriptions/subscribe.md): Re-subscribes one or more subscribers, identified by their UUIDs. - [Unsubscribe subscribers with the Marketing API](https://docs.paubox.com/marketing/subscriptions/unsubscribe.md): Unsubscribes one or more subscribers, identified by their UUIDs. - [Bulk globally subscribe a list with the Marketing API](https://docs.paubox.com/marketing/subscriptions/bulk-global-subscribe.md): Clears the global opt-out for a whole subscription list without having to enumerate every subscriber. - [Bulk globally unsubscribe a list with the Marketing API](https://docs.paubox.com/marketing/subscriptions/bulk-global-unsubscribe.md): Globally opts out every subscriber in a subscription list without having to enumerate them. - [Bulk subscribe a dynamic list with the Marketing API](https://docs.paubox.com/marketing/subscriptions/dynamic-bulk-subscribe.md): The dynamic list counterpart to [bulk global subscribe](/marketing/subscriptions/bulk-global-subscribe). - [Bulk unsubscribe a dynamic list with the Marketing API](https://docs.paubox.com/marketing/subscriptions/dynamic-bulk-unsubscribe.md): The dynamic list counterpart to [bulk global unsubscribe](/marketing/subscriptions/bulk-global-unsubscribe). - [List subscription lists with the Marketing API](https://docs.paubox.com/marketing/lists.md): Return json data about subscription lists - [Create a subscription list with the Marketing API](https://docs.paubox.com/marketing/lists/create.md): Creates a subscription list record - [Update a subscription list with the Marketing API](https://docs.paubox.com/marketing/lists/update.md): Updates a subscription list record - [Delete a subscription list with the Marketing API](https://docs.paubox.com/marketing/lists/delete.md): Deletes subscription list record. - [List tracking links with the Marketing API](https://docs.paubox.com/marketing/tracking-links.md): Return a list of json data for all tracking links associated to a campaign mailing send or campaign mailing delivery. - [Get campaign analytics with the Marketing API](https://docs.paubox.com/marketing/analytics/campaigns.md): Return json data statistics about campaigns sent - [Get campaign sends with the Marketing API](https://docs.paubox.com/marketing/analytics/campaign-sends.md): Return json data information about campaigns sent - [Get campaign deliveries with the Marketing API](https://docs.paubox.com/marketing/analytics/deliveries.md): Returns json data about campaign deliveries sent - [Get tracking link interactions with the Marketing API](https://docs.paubox.com/marketing/analytics/tracking-links.md): Returns json data about interactions with tracking links - [Get subscribers by tracking link with the Marketing API](https://docs.paubox.com/marketing/analytics/subscribers-by-link.md): Returns json data about subscribers for a specific tracking link - [Get a public form with the Forms API](https://docs.paubox.com/forms/get-form.md): Returns the full form definition (HTML, JSON schema, CSS) for a given form. Called by the form embed before rendering a form to a respondent. No authentication required. - [Submit a form response with the Forms API](https://docs.paubox.com/forms/submit-form.md): Submits a respondent's answers for a form. No authentication required. On success, the service stores the submission, increments the form's submission count, emails recipients (if configured), and returns 201 with no body. - [List forms with the Forms API](https://docs.paubox.com/forms/list-forms.md): Returns a paginated list of forms belonging to a customer. Supports filtering by form ID, title/description search, and archived/active state, plus ordering and pagination. - [Create a form with the Forms API](https://docs.paubox.com/forms/create-form.md): Creates a new form. Returns the UUID of the created form. - [Get a form with the Forms API](https://docs.paubox.com/forms/get-form-details.md): Returns the full form definition by ID, including inactive and archived forms (unlike the public endpoint, which only serves renderable forms to respondents). - [Update a form with the Forms API](https://docs.paubox.com/forms/update-form.md): Updates a form. This is a partial update: any fields omitted from the request body are left unchanged. - [Copy a form with the Forms API](https://docs.paubox.com/forms/copy-form.md): Creates a copy of an existing form with a new title. The copy starts with a submission count of 0 and no vanity URL. Returns the full new form object. - [Archive a form with the Forms API](https://docs.paubox.com/forms/archive-form.md): Archives a form. Archiving also deactivates the form (sets `active` to false), so it stops accepting submissions. The endpoint does not verify that the form exists: an unknown form ID still returns a 200 success response. - [Unarchive a form with the Forms API](https://docs.paubox.com/forms/unarchive-form.md): Unarchives a form. This does not re-activate it: `active` stays false until the form is updated with `active: true`. The endpoint does not verify that the form exists: an unknown form ID still returns a 200 success response. - [Get form statistics with the Forms API](https://docs.paubox.com/forms/form-stats.md): Returns aggregate form statistics for a customer: the number of active forms, the total submission count, and the number of submissions received in the last 7 days. - [List form submissions with the Forms API](https://docs.paubox.com/forms/list-submissions.md): Returns a paginated list of submissions for a form. Each submission's `form_data` field is a JSON-encoded string of the respondent's answers. - [Export submissions as CSV with the Forms API](https://docs.paubox.com/forms/export-submissions-csv.md): Exports all submissions of a form as a CSV attachment. The `Content-Disposition` filename is derived from the form's title plus the export date in Pacific time, e.g. `New-Patient-Intake-submissions-2026-08-27.csv`. The first column is "Created At", followed by one column per form field, using the fi… - [Export a submission as CSV with the Forms API](https://docs.paubox.com/forms/export-submission-csv.md): Exports a single submission as a CSV attachment. The `Content-Disposition` filename is derived from the form's title plus the submission date in Pacific time, e.g. `New-Patient-Intake-2026-08-27.csv`. Uses the same column layout as the full export (a "Created At" column followed by one column per fo… - [Export a submission as PDF with the Forms API](https://docs.paubox.com/forms/export-submission-pdf.md): Exports a single submission as a PDF attachment. The `Content-Disposition` filename is derived from the form's title plus the submission date in Pacific time, e.g. `New-Patient-Intake-2026-08-27.pdf`; titles are reduced to alphanumerics, `-` and `_`. For signable forms, the PDF includes the responde… ## OpenAPI Specs - [openapi-forms](/openapi-forms.yaml) - [openapi1](/openapi1.yaml) - [openapi2](/openapi2.yaml) This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.