Developers

One endpoint. Every network.

Add multi-platform publishing to your product with a single API call. One request fans out to twelve social networks — natively formatted and scheduled. No twelve OAuth flows, no twelve rate limiters, no twelve sets of docs.

networks
12
endpoints
7
API key
1
in & out
JSON
curl https://postmyish.com/api/v1/posts \
  -H "Authorization: Bearer pmi_live_9f2c…" \
  -H "Content-Type: application/json" \
  -d '{
    "caption": "We just shipped v2 🚀",
    "platforms": ["tiktok","instagram","x","linkedin"]
  }'
201 · { id: "9f2c8b1e…", status: "published", reach: 0 }JSON
Quickstart

Live in three steps, not three days

Create a key, connect a profile, publish. Every snippet below is real — copy it, add your key, and it runs.

Step 01

Create an API key

In the dashboard, open Settings → API keys and create one. The secret is shown once — drop it into your environment.

export POSTMYISH_KEY="pmi_live_9f2c…"

# Verify it works
curl https://postmyish.com/api/v1/me \
  -H "Authorization: Bearer $POSTMYISH_KEY"
Step 02

Connect a profile

Link the networks you want to publish to from the Accounts page — each through its official OAuth. Then list them over the API.

curl https://postmyish.com/api/v1/accounts \
  -H "Authorization: Bearer $POSTMYISH_KEY"
Step 03

Publish everywhere

One POST fans your content out to every connected network — captions and crops adapted per platform. Add schedule_at to queue it instead.

await fetch("https://postmyish.com/api/v1/posts", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.POSTMYISH_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    caption: "Hello, every feed 👋",
    platforms: ["x", "linkedin", "threads", "bluesky"],
    schedule_at: "2026-08-01T09:00:00Z",
  }),
});
How you call it

A REST API you already know how to use

One base URL, Bearer-token auth, and plain JSON. If your language can make an HTTP request, it can publish everywhere — no SDK required.

REST API

Resource-oriented endpoints, predictable JSON, and real HTTP status codes. Bearer-token auth over HTTPS — that’s the whole contract.

  • Authorization: Bearer pmi_live_…
  • Lists return { data: [...] }
  • Errors return { error } + a status code

Any language

No SDK to install and no lock-in. Reach for fetch, requests, or plain curl — the request is the same everywhere.

curl https://postmyish.com/api/v1/me \
  -H "Authorization: Bearer $POSTMYISH_KEY"
API reference

A small, predictable surface

Everything is a resource, and every response is boringly consistent JSON. Bearer-token auth over HTTPS — that's the whole contract.

Base URLhttps://postmyish.com/api/v1v1 · stable
GET/me

Verify your key and read your plan, limits, and usage.

POST/posts

Publish now, or schedule with schedule_at, across every selected network.

GET/posts

List your posts with per-network delivery status. Filter by ?status=.

GET/posts/:id

Fetch one post with its status and metrics.

DELETE/posts/:id

Cancel a scheduled post or remove a draft before it ships.

GET/accounts

List connected profiles and the handles you publish as.

GET/analytics

Pull reach, engagement, and follower totals per network.

Reach and engagement populate as each network reports back on what it delivered.Get started
Roadmap & security

Real today, honest about tomorrow

The REST API above is live and stable. These are the pieces we’re building next — listed as plans, not promises.

Official SDKs

Planned

Typed Node and Python libraries that wrap this REST API. Until they land, call it directly — the examples above are the whole integration.

AI agent (MCP)

Planned

An MCP server so Claude, GPT, or Gemini can publish through PostMyIsh from plain-language instructions.

Webhooks

Planned

Signed events for post.published, post.failed, and account changes — so your app can react the moment something ships.

Security by default

Official OAuth 2.0

Every network connects through its own OAuth flow. We never see or store a social password.

Hashed secrets

Passwords use salted scrypt; API keys are stored only as SHA-256 hashes. A database leak exposes no usable credential.

HTTPS & revocable keys

All API traffic is encrypted in transit. Keys are scoped to your account and revocable in one click.

Formal certifications (like SOC 2) aren’t in place yet — when they are, you’ll read about it here, not before.

Ready to post your ish everywhere?

Connect your accounts, write one caption, and be live on every feed in minutes. The free plan is genuinely free.