Get a single post
Returns full post state including media processing status and per-provider delivery outcomes. Omitted fields mean no value. Use this to poll delivery status after creation.
Returns full post state including media processing status and per-provider delivery outcomes. Omitted fields mean no value. Use this to poll delivery status after creation.
Authorization
BearerAuth PostMantis API key from the dashboard. Include as Authorization: Bearer <key>.
In: header
Path Parameters
Post UUID
uuidResponse Body
application/json
application/problem+json
application/problem+json
application/problem+json
curl -X GET "https://loading/api/v1/posts/497f6eca-6276-4993-bfeb-53cbbbba6f08"{ "data": { "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "body": "Ship small. Learn fast.", "status": "settled", "createdAt": "2026-05-05T10:00:00.000Z", "updatedAt": "2026-05-05T10:00:00.000Z", "media": [], "deliveries": [ { "profileId": "4339a6bc-9cd3-455e-8f91-df8bc63f12d7", "provider": "x", "profileName": "PostMantis on X", "status": "published", "publishedAt": "2026-05-05T10:01:00.000Z", "providerPostId": "1234567890", "url": "https://x.com/postmantis/status/1234567890", "providerOptions": {} } ] }}{ "type": "https://postmantis.com/problems/unauthorized", "title": "Unauthorized", "status": 401, "detail": "Authentication required.", "code": "unauthorized"}{ "type": "https://postmantis.com/problems/not-found", "title": "Not found", "status": 404, "detail": "Resource not found.", "code": "notFound"}{ "type": "https://postmantis.com/problems/rate-limited", "title": "Too many requests", "status": 429, "detail": "Too many requests.", "code": "rateLimited"}Create a post POST
Creates a publish-now post when `post.scheduledAt` is omitted, or a scheduled post when `post.scheduledAt` is a future ISO-8601 datetime. Accepts JSON or multipart/form-data (for direct file uploads). Posts must have a body, media, or both. Use `/uploads` first if you want server-verified artifacts.
Update a scheduled post PATCH
Edits a future scheduled post before delivery starts. Only `scheduled` posts with a future `scheduledAt` can be updated. Set `post.scheduledAt: null` to publish immediately. Requires write permission.