Postmark Messages API

The Messages API from Postmark — 11 operation(s) for messages.

Operations 4

GET /messages/outbound/clicks Postmark Clicks for a all messages
GET /messages/outbound/opens Postmark Opens for all messages
GET /messages/outbound/{messageid}/details Postmark Outbound message details
GET /messages/outbound Postmark Outbound message search

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/postmark-messages-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

postmark-messages-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Postmark Messages API
  description: 'Postmark helps deliver and track application email. In a nutshell, the

    service replaces SMTP (or Sendmail) with a far more reliable, scalable and

    care-free environment. In addition, you can track statistics such as

    number of emails sent or processed, opens, bounces and spam complaints.'
  version: 1.0.0
servers:
- url: http://{{baseurl}}
tags:
- name: Messages
paths:
  /messages/outbound/clicks:
    get:
      tags:
      - Messages
      summary: Postmark Clicks for a all messages
      parameters:
      - name: count
        in: query
        schema:
          type: string
        description: Number of bounces to return per request. Max 500.
        example: <integer>
      - name: offset
        in: query
        schema:
          type: string
        description: Number of bounces to skip.
        example: <integer>
      - name: recipient
        in: query
        schema:
          type: string
        description: Filter by the user who was receiving the email
        example: <string>
      - name: tag
        in: query
        schema:
          type: string
        description: Filter by tag
        example: <string>
      - name: client_name
        in: query
        schema:
          type: string
        description: Filter by client name, i.e. Outlook, Gmail
        example: <string>
      - name: client_company
        in: query
        schema:
          type: string
        description: Filter by company, i.e. Microsoft, Apple, Google
        example: <string>
      - name: client_family
        in: query
        schema:
          type: string
        description: Filter by client family, i.e. OS X, Chrome
        example: <string>
      - name: os_name
        in: query
        schema:
          type: string
        description: Filter by full OS name and specific version, i.e. OS X 10.9 Mavericks, Windows 7
        example: <string>
      - name: os_family
        in: query
        schema:
          type: string
        description: Filter by kind of OS used without specific version, i.e. OS X, Windows
        example: <string>
      - name: os_company
        in: query
        schema:
          type: string
        description: Filter by company which produced the OS, i.e. Apple Computer, Inc., Microsoft Corporation
        example: <string>
      - name: platform
        in: query
        schema:
          type: string
        description: Filter by platform, i.e. webmail, desktop, mobile
        example: <string>
      - name: country
        in: query
        schema:
          type: string
        description: Filter by country messages were opened in, i.e. Denmark, Russia
        example: <string>
      - name: region
        in: query
        schema:
          type: string
        description: Filter by full name of region messages were opened in, i.e. Moscow, New York
        example: <string>
      - name: city
        in: query
        schema:
          type: string
        description: Filter by full name of region messages were opened in, i.e. Moscow, New York
        example: <string>
      responses:
        '200':
          description: Successful response
          content:
            application/json: {}
  /messages/outbound/opens:
    get:
      tags:
      - Messages
      summary: Postmark Opens for all messages
      parameters:
      - name: count
        in: query
        schema:
          type: string
        description: Number of bounces to return per request. Max 500.
        example: <integer>
      - name: offset
        in: query
        schema:
          type: string
        description: Number of bounces to skip.
        example: <integer>
      - name: recipient
        in: query
        schema:
          type: string
        description: Filter by the user who was receiving the email
        example: <string>
      - name: tag
        in: query
        schema:
          type: string
        description: Filter by tag
        example: <string>
      - name: client_name
        in: query
        schema:
          type: string
        description: Filter by client name, i.e. Outlook, Gmail
        example: <string>
      - name: client_company
        in: query
        schema:
          type: string
        description: Filter by company, i.e. Microsoft, Apple, Google
        example: <string>
      - name: client_family
        in: query
        schema:
          type: string
        description: Filter by client family, i.e. OS X, Chrome
        example: <string>
      - name: os_name
        in: query
        schema:
          type: string
        description: Filter by full OS name and specific version, i.e. OS X 10.9 Mavericks, Windows 7
        example: <string>
      - name: os_family
        in: query
        schema:
          type: string
        description: Filter by kind of OS used without specific version, i.e. OS X, Windows
        example: <string>
      - name: os_company
        in: query
        schema:
          type: string
        description: Filter by company which produced the OS, i.e. Apple Computer, Inc., Microsoft Corporation
        example: <string>
      - name: platform
        in: query
        schema:
          type: string
        description: Filter by platform, i.e. webmail, desktop, mobile
        example: <string>
      - name: country
        in: query
        schema:
          type: string
        description: Filter by country messages were opened in, i.e. Denmark, Russia
        example: <string>
      - name: region
        in: query
        schema:
          type: string
        description: Filter by full name of region messages were opened in, i.e. Moscow, New York
        example: <string>
      - name: city
        in: query
        schema:
          type: string
        description: Filter by full name of region messages were opened in, i.e. Moscow, New York
        example: <string>
      responses:
        '200':
          description: Successful response
          content:
            application/json: {}
  /messages/outbound/{messageid}/details:
    get:
      tags:
      - Messages
      summary: Postmark Outbound message details
      parameters:
      - name: messageid
        in: path
        schema:
          type: string
        required: true
        description: The ID of the message which should bypass inbound rules.
        example: <string>
      responses:
        '200':
          description: Successful response
          content:
            application/json: {}
  /messages/outbound:
    get:
      tags:
      - Messages
      summary: Postmark Outbound message search
      parameters:
      - name: count
        in: query
        schema:
          type: string
        description: Number of bounces to return per request. Max 500.
        example: <integer>
      - name: offset
        in: query
        schema:
          type: string
        description: Number of bounces to skip.
        example: <integer>
      - name: recipient
        in: query
        schema:
          type: string
        description: Filter by the user who was receiving the email
        example: <string>
      - name: fromemail
        in: query
        schema:
          type: string
        description: Filter by the sender email address
        example: <string>
      - name: tag
        in: query
        schema:
          type: string
        description: Filter by tag
        example: <string>
      - name: status
        in: query
        schema:
          type: string
        description: Filter by status (`blocked`, `processed`, `queued`, `failed`, `scheduled`)
        example: <string>
      - name: todate
        in: query
        schema:
          type: string
        description: Filter messages up to the date specified. e.g. `2014-02-01`
        example: <string>
      - name: fromdate
        in: query
        schema:
          type: string
        description: Filter messages starting from the date specified. e.g. `2014-02-01`
        example: <string>
      responses:
        '200':
          description: Successful response
          content:
            application/json: {}