REST API reference
60 endpoints for talking to planpo.st without MCP. Everything the agent tools do is available here too, because the MCP server is a client of this API.
Base URL and auth
Send your key as a bearer token, or in an X-API-Key header. Every response uses the envelope { success, data, message? }.
curl https://api.planpo.st/api/public/v1/posts \
-H "Authorization: Bearer pk_live_xxx"Permissions
Keys are scoped. A request whose endpoint needs a permission the key does not carry is rejected, so grant the narrowest set that works.
approvals:readapprovals:writebrand-kits:readcarousels:readcarousels:writecontent-sources:readcontent-sources:writegroups:readgroups:writemedia:writeposts:readposts:writetrack:writevideos:readvideos:writeEndpoints
Paths are relative to https://api.planpo.st/api/public/v1.
Account groups
GET
/account-groupsgroups:readPOST
/account-groupsgroups:writeDELETE
/account-groups/:groupIdgroups:writePATCH
/account-groups/:groupIdgroups:writeDELETE
/account-groups/:groupId/connectionsgroups:writePOST
/account-groups/:groupId/connectionsgroups:writeGET
/account-groups/:idOrNamegroups:readGET
/account-groups/defaultgroups:readAnalytics
GET
/analytics Approvals
GET
/approvalsapprovals:readPOST
/approvalsapprovals:writeGET
/approvals/:approvalIdapprovals:readBrand kits
GET
/brand-kitsbrand-kits:readGET
/brand-kits/:idbrand-kits:readBrand voice
GET
/brand-voice GET
/brand-voice/:id GET
/brand-voice/:id/prompt Carousels
POST
/carousels/generatecarousels:writeGET
/carousels/optionscarousels:readPOST
/carousels/rendercarousels:writeGET
/carousels/render/:idcarousels:readConnections
GET
/connections GET
/connections/connect-link Content sources
GET
/content-sourcescontent-sources:readPOST
/content-sourcescontent-sources:writeDELETE
/content-sources/:idcontent-sources:writeGET
/content-sources/:id/contentcontent-sources:readPOST
/content-sources/:id/fetchcontent-sources:writeImages
POST
/images/generate POST
/images/generate-from-content Media
GET
/media POST
/media/upload-urlmedia:writePosts and publishing
GET
/postsposts:readPOST
/postsposts:writeDELETE
/posts/:idposts:writeGET
/posts/:idposts:readPUT
/posts/:idposts:writeGET
/posts/:id/previewposts:readPOST
/posts/:id/publishposts:writePOST
/posts/bulkposts:writePOST
/posts/bulk-deleteposts:writeGET
/posts/campaignsposts:readRepurposing
POST
/repurpose Revenue
GET
/revenue/by-platform GET
/revenue/connections GET
/revenue/overview GET
/revenue/rc-metrics GET
/revenue/stripe-metrics GET
/revenue/timeseries GET
/revenue/top GET
/revenue/transactions Smart schedule
GET
/smart-schedule/best-times POST
/smart-schedule/suggest GET
/posting-queue/queuesschedule:readGET
/posting-queue/next-slotschedule:readPUT
/posting-queue/queues/:groupIdschedule:writeVideo
POST
/videos/rendervideos:writeGET
/videos/render/:idvideos:readGET
/videos/rendersvideos:readGET
/videos/templatesvideos:read