Browse docs
What do you need before you publish?#
You need one connected account for the platform. Connect it in the SkedCast console. If a client owns the account, create a connect link with POST /v1/clients/{id}/connect-invites and send it to them. They authorize from that page without a SkedCast login.
GET /v1/accounts lists the connected accounts with their ids. Pass that id in targets.accountIds below.
How do you schedule a Pinterest post with the API?#
curl -X POST https://api.skedcast.com/v1/posts \
-H "Authorization: Bearer sked_live_YOUR_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{
"clientId": "<clientId>",
"content": "Launch day is here 🚀",
"mediaIds": ["<mediaAssetId>"],
"targets": { "mode": "selection", "accountIds": ["<pinterestAccountId>"] },
"schedule": { "type": "at", "scheduledAt": "2030-01-15T15:00:00Z" }
}'Which Pinterest fields can you set?#
Put everything platform-specific in one variants entry with "platform": "pinterest" and an overrides object. Send only pinterest keys on a pinterest variant. SkedCast reads the keys in the table below and ignores the rest.
How do you add Pinterest-specific settings?#
{
"clientId": "<clientId>",
"content": "Autumn lookbook, five ways to style it.",
"mediaIds": ["<imageAssetId>"],
"targets": { "mode": "selection", "accountIds": ["<pinterestAccountId>"] },
"variants": [
{ "platform": "pinterest", "overrides": { "boardId": "<boardId>", "title": "Autumn Lookbook", "link": "https://example.com/lookbook" } }
],
"schedule": { "type": "at", "scheduledAt": "2030-01-15T15:00:00Z" }
}How do you check that the post published?#
Publishing creates one post target per account. GET /v1/post-targets/{id} (or GET /v1/posts/{id}) reports status, plus externalId (Pinterest's own post id) and permalink (its public URL) once published. To avoid polling, subscribe to the target.published and target.failed webhooks (see the webhooks guide).
FAQ
- How do I find a board's id?
- Call GET /v1/accounts/{id}/boards (or the MCP tool list_pinterest_boards). It returns each board the account can pin to as { id, name }. POST /v1/accounts/{id}/boards creates a new one. In the SkedCast console the composer shows each Pinterest account's boards by name, with a New board button.
- Can I send the board's name instead of its id?
- Only on a post to exactly one Pinterest account: send the board's exact name (case does not matter) as boardId and SkedCast looks up its id. Otherwise send the numeric id. A name that no board has, that several boards share, or that is used on a post to two or more Pinterest accounts is refused with 422 pinterest_board_unresolved.
- Can I see which Pins perform best, including ones made outside SkedCast?
- Yes. GET /v1/analytics/accounts/{id}/top-pins (or the MCP tool get_pinterest_top_pins) returns the account's best Pins as Pinterest ranks them over the last 7, 30 or 90 days, by impressions, saves, Pin clicks, outbound clicks or engagements. It reads from Pinterest, so Pins made in Pinterest itself are included. A Pin SkedCast published carries its postId.
- Can I publish a multi-image Pinterest carousel?
- Yes. Send 2–5 ids in the base mediaIds array (no extra override needed) and SkedCast publishes a carousel of that many images.