ClickSend Post Letter API

Print and mail physical letters.

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/clicksend-post-letter-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

clicksend-post-letter-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: ClickSend v3 Account Post Letter API
  description: Representative OpenAPI 3.x description of the ClickSend v3 REST API, a single cloud communications API for SMS, MMS, voice / text-to-speech, transactional email, and physical post (letters and postcards), plus contacts and lists, delivery receipts, inbound handling, and account/balance. All requests use HTTP Basic authentication with your ClickSend username and API key. This document models a representative subset of the documented endpoints; see the official reference for the complete surface.
  termsOfService: https://www.clicksend.com/au/legal/terms-of-service/
  contact:
    name: ClickSend Support
    email: support@clicksend.com
    url: https://developers.clicksend.com/
  version: '3.1'
servers:
- url: https://rest.clicksend.com/v3
  description: ClickSend v3 production API
security:
- basicAuth: []
tags:
- name: Post Letter
  description: Print and mail physical letters.
paths:
  /post/letters/send:
    post:
      tags:
      - Post Letter
      operationId: postLettersSendPost
      summary: Print and mail one or more letters from an uploaded PDF.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostLetter'
      responses:
        '200':
          description: Letters queued for print and mail.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResponse'
  /post/letters/price:
    post:
      tags:
      - Post Letter
      operationId: postLettersPricePost
      summary: Calculate the price of a letter before sending.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostLetter'
      responses:
        '200':
          description: Price calculated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResponse'
  /post/letters/history:
    get:
      tags:
      - Post Letter
      operationId: postLettersHistoryGet
      summary: Get a paginated list of sent letters.
      parameters:
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/limit'
      responses:
        '200':
          description: A paginated list of letters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResponse'
  /post/letters/detect-address:
    post:
      tags:
      - Post Letter
      operationId: postLettersDetectAddressPost
      summary: Detect and validate a delivery address on an uploaded letter PDF.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                file_url:
                  type: string
      responses:
        '200':
          description: Address detection result.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResponse'
  /uploads:
    post:
      tags:
      - Post Letter
      operationId: uploadsPost
      summary: Upload a media file (PDF, image) to reference in post, MMS, or campaigns.
      parameters:
      - name: convert
        in: query
        required: true
        schema:
          type: string
          enum:
          - mms
          - post
          - campaign
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Upload'
      responses:
        '200':
          description: File uploaded; returns a referenceable URL.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResponse'
components:
  parameters:
    page:
      name: page
      in: query
      required: false
      schema:
        type: integer
        default: 1
      description: Page number for paginated results.
    limit:
      name: limit
      in: query
      required: false
      schema:
        type: integer
        default: 10
      description: Number of results per page.
  schemas:
    ApiResponse:
      type: object
      properties:
        http_code:
          type: integer
          example: 200
        response_code:
          type: string
          example: SUCCESS
        response_msg:
          type: string
        data:
          type: object
    PostLetter:
      type: object
      properties:
        file_url:
          type: string
          description: URL of the uploaded PDF to print and mail.
        template_used:
          type: integer
        colour:
          type: integer
          description: 1 for colour, 0 for black and white.
        duplex:
          type: integer
          description: 1 for double-sided, 0 for single-sided.
        priority_post:
          type: integer
        recipients:
          type: array
          items:
            $ref: '#/components/schemas/PostRecipient'
      required:
      - file_url
      - recipients
    Upload:
      type: object
      properties:
        content:
          type: string
          description: Base64-encoded or hosted file content reference.
      required:
      - content
    PostRecipient:
      type: object
      properties:
        address_name:
          type: string
        address_line_1:
          type: string
        address_line_2:
          type: string
        address_city:
          type: string
        address_state:
          type: string
        address_postal_code:
          type: string
        address_country:
          type: string
        return_address_id:
          type: integer
        schedule:
          type: integer
      required:
      - address_name
      - address_line_1
      - address_city
      - address_postal_code
      - address_country
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: HTTP Basic authentication using your ClickSend username and API key. The username is your ClickSend account username; the password is your API key from the ClickSend dashboard.