Mail a letter from any webhook
No native app for your tool yet? paperplane’s REST API has no API-key gate — POST an order directly from a generic webhook (Webhooks by Zapier, Make’s HTTP module, or your own code) and it prints and mails from $1.99.
The universal fallback — works with anything that can POST JSON
Instead of waiting for a native app
There is no separate webhook mode to wait for: the native apps are wrappers over the same POST /v1/orders. If your tool can send JSON over HTTPS, the integration exists today.
How to set it up
- 1Point whatever fires the event (a form on your own site, a CRM without a native trigger, an internal system) at a webhook step — Webhooks by Zapier, Make’s HTTP module, n8n’s HTTP Request node, or a direct server-to-server call.
- 2POST the payload straight to POST /v1/orders, or map it into fields first if the source data needs reshaping.
- 3Set "sandbox": true while testing — the whole pipeline runs free and instantly, and nothing is mailed.
- 4Flip sandbox off to go live; pay from a prepaid credit balance, or handle the returned payment_url for a human to approve.
Direct POST from anywhere
{
"mail_class": "first_class",
"sandbox": true,
"text": "Dear Ms. Alvarez, ...",
"to": { "name": "Maria Alvarez", "line1": "1 Main St",
"city": "Richmond", "state": "VA", "zip": "23220" },
"from": { "name": "Alex Rivera", "line1": "12 Grove Ave",
"city": "Richmond", "state": "VA", "zip": "23221" },
"email": "alex@example.com"
}Same call as curl
curl -X POST https://sendpaperplane.com/v1/orders \
-H 'Content-Type: application/json' \
-d '{
"mail_class": "first_class",
"sandbox": true,
"text": "Dear Ms. Alvarez, ...",
"to": { "name": "Maria Alvarez", "line1": "1 Main St",
"city": "Richmond", "state": "VA", "zip": "23220" },
"from": { "name": "Alex Rivera", "line1": "12 Grove Ave",
"city": "Richmond", "state": "VA", "zip": "23221" },
"email": "alex@example.com"
}'Under the hood
This is the same public REST API every native app and automation platform on this directory calls underneath — there’s no separate "webhook mode." If a system can send an HTTP POST with JSON, it can mail a letter, with the same USPS address verification and free sandbox as every other path.
Supported action fields
Every integration maps into the same fixed set of fields, the ones the REST API and MCP tools take directly.
| Field | What it does |
|---|---|
| mail_class | first_class, certified, certified_return_receipt, or priority |
| text or pdf_url | the letter body as plain text, or a fetchable PDF to print as-is |
| to | recipient name + street/city/state/zip, verified against USPS data |
| from | return address, printed on the envelope and used for undeliverable mail |
| where the receipt and status updates go — no account required |
Popular Webhook (generic) workflows
Or skip the automation tool: ask Claude or ChatGPT
Every integration here sits on the same MCP endpoint agents use directly. Instead of wiring a trigger to an action, ask Claude or ChatGPT to draft and mail the letter. Same three tools (quote_letter, send_letter, get_letter_status), same price, same free sandbox.
Related integrations
Send your first letter from Webhook (generic).
Sandbox runs the whole pipeline for free and mails nothing. Live sends start at $1.99, one all-in price.
curl -X POST https://sendpaperplane.com/v1/orders \
-H 'Content-Type: application/json' \
-d '{
"mail_class": "first_class",
"sandbox": true,
"text": "Dear Ms. Alvarez, ...",
"to": { "name": "Maria Alvarez", "line1": "1 Main St",
"city": "Richmond", "state": "VA", "zip": "23220" },
"from": { "name": "Alex Rivera", "line1": "12 Grove Ave",
"city": "Richmond", "state": "VA", "zip": "23221" },
"email": "alex@example.com"
}'Common questions
Do I need an API key to POST to /v1/orders?
No — the endpoint is open. Each order carries its own payment (a prepaid credit code for hands-off automation, or a Stripe payment_url a human approves). Sandbox orders need nothing.
What if my tool doesn’t have a native Zapier/Make/n8n trigger either?
A raw webhook or a scheduled script polling your own system both work the same way — anything that can construct the JSON body and make an HTTPS POST is a complete integration.
Is this less reliable than a native app?
No — native apps on this directory are thin wrappers over this exact same API. A direct POST just skips the wrapper.