API reference
API overview
One base URL, Bearer-token auth, and plain JSON. If your language can make an HTTP request, it can publish everywhere.
https://postmyish.com/api/v1v1 · stableAuthentication
Every request carries your API key as a Bearer token. Create one in Settings → API keys and send it in the Authorization header:
Authorization: Bearer pmi_live_9f2c8b1e4a7d…Full details, including how keys are stored and revoked, live in Authentication.
Response conventions
- Single resources return the object directly — for example, Get a post returns the post object at the top level.
- Collections are wrapped in a
dataarray:{ "data": [ … ] }. - Errors return
{ "error": "message" }with a matching HTTP status code. See Errors & responses. - Timestamps are Unix milliseconds. Request bodies also accept ISO 8601 for
schedule_at.
Field casing
snake_case (has_media, scheduled_at). The one exception is Get analytics, whose summary object is camelCase (totalReach, perPlatform). Plan around it.The endpoints
Seven endpoints cover the whole surface. Paths below are relative to the base URL.
/meVerify an API key and read the account, plan, limits, and usage.
POST/postsPublish now, or schedule with schedule_at, across every selected network.
GET/postsList your posts with per-network delivery status. Filter by status.
GET/posts/{id}Fetch a single post with its status and metrics.
DELETE/posts/{id}Cancel a scheduled post or remove a draft before it ships.
GET/accountsList connected profiles and the handles you publish as.
GET/analyticsPull reach, engagement, and follower totals per network.
Versioning & stability
The API is versioned in the path (/api/v1) and is stable. Changes are additive — new fields may appear, but existing fields keep their names and meaning. When a breaking change is unavoidable, it ships under a new version prefix, never in place.