Posts
Get post
Reads one post's current content, status, assigned profile, and version number.
GET
/api/public/posts/:idcURLGET /api/public/posts/:id
curl "https://postiv.ai/api/public/posts/ID_ID" \
-H "Authorization: Bearer pk_postiv_..."200Response
{
"success": true,
"post": {
"id": "post1...",
"title": null,
"status": "draft",
"content": "Most founders think...",
"integrationId": 1234,
"profile": {
"id": 1234,
"name": "Jan",
"headline": "Founder",
"picture": "https://..."
},
"latestVersion": 1,
"hasImage": false,
"openInPostivUrl": "https://postiv.ai/app/create?postId=post1..."
}
}Authorization
Requires an organization API key with the posts:read scope, sent as Authorization: Bearer or x-api-key.
Path parameters
idstringrequiredResource id from the corresponding list or create endpoint.
Response
Full post object.
post.id / title / type / status / content / orgId / integrationId / templateId / planItemIdmixedpost.profileobject|null{ id, name, headline, picture }: picture is fully resolved here (S3 signed URL or LinkedIn CDN upload fallback), unlike the list endpoint.
post.scheduledTime / queueStatus / latestVersion / hasImage / tags / author / openInPostivUrl / createdAt / updatedAtmixedErrors
| 404 | post_not_found |
Good to know
- Posts with status scheduled/published are locked against edits (see update-post).