API reference

Get a post

Fetch a single post with its status and metrics.

GET/api/v1/posts/{id}

Requires a Bearer API key — see authentication.

Returns one post by id, including its current status and any reach and engagement reported so far. Poll this after publishing to watch a scheduled post flip to published.

Path parameters

idstringrequired
The post id.

Request

Send the request to GET /api/v1/posts/{id}. Set your key in the environment as POSTMYISH_KEY to run these as-is.

curl https://postmyish.com/api/v1/posts/post_7d1a9c8b \
  -H "Authorization: Bearer $POSTMYISH_KEY"

Response

{
  "id": "post_7d1a9c8b",
  "caption": "We just shipped v2 🚀",
  "platforms": ["x", "linkedin", "bluesky"],
  "status": "published",
  "has_media": false,
  "scheduled_at": null,
  "published_at": 1752566400000,
  "reach": 0,
  "engagement_rate": 0
}

Response fields

idstring
Unique identifier for the post.
captionstring
The caption text as stored.
platformsarray<string>
The network ids this post targets.
statusstring
One of draft, scheduled, publishing, or published.
has_mediaboolean
Whether media is attached to the post.
scheduled_atinteger | null
Unix milliseconds the post is scheduled to publish, or null.
published_atinteger | null
Unix milliseconds the post was published, or null.
reachinteger
Total reach reported back by the networks. Starts at 0 and only grows once a network reports.
engagement_ratenumber
Blended engagement rate as a percentage, rounded to two decimals. Starts at 0.

Try it

Run this endpoint live with your own key. The key is kept in your browser (local storage) and sent straight to the API — nothing passes through the docs.