Connect a custom webhook

A custom webhook sends every post to any endpoint you control — a server, an automation tool like n8n, or a relay to somewhere we don't support directly. postme.live makes a signed POST with your caption and media, and you decide what happens next.

Setup
A URL + a signing secret
We send
A multipart POST (caption + media)
Security
HMAC-SHA256 signature
Plan
Community

Set it up

  1. Open Settings → Connected accounts

    Find the Add webhook option and open it.
  2. Enter your endpoint URL

    An HTTPS URL we can reach publicly.
  3. Set a signing secret

    A random string you choose. Keep it safe — you'll use it to verify requests really came from postme.live.
  4. Save and test

    Send a post to confirm your endpoint receives it.

What we send

For each post, postme.live makes a multipart/form-data POST to your URL:

  • a meta part — JSON describing the post
  • one part per media file (media[0], media[1], …) with the raw bytes
POST /your-endpoint HTTP/1.1
Content-Type: multipart/form-data; boundary=…
X-PostMe-Signature: sha256=<hmac of the body, keyed with your secret>
X-PostMe-Timestamp: <unix-ms>
X-PostMe-Delivery-Id: <uuid>
User-Agent: postme.live/1.0
{
  "jobId": "…",
  "caption": "Your post text",
  "scheduledAt": "2026-06-07T10:00:00.000Z",
  "media": [{ "filename": "photo.jpg", "contentType": "image/jpeg", "size": 184320 }]
}

How to respond

  • Return any 2xx status for success. You may include JSON { "ok": true, "remoteId": "…", "url": "…" } — if you send a remoteId or url, we store it with the post.
  • 5xx, a timeout (408), or 429 tells us to retry with backoff.
  • Other 4xx statuses are treated as a permanent failure (no retry).

Limitations

  • No analytics — webhooks are send-only; there are no stats to read back.
  • Your endpoint must be reachable over HTTPS from the public internet.
Connect a custom webhook · postme.live