Skip to main content

Pinterest

Using hosted SimplePost? See connection requirements. The credential setup below is for your own SDK, local CLI, or self-hosted integration.

Pinterest posting requires an access token and a target board ID. Every pin needs one image or video.

Content support

Current hosted app and core source

CapabilitySimplePost support
Text / caption (characters)500 caption
MediaMedia required; 1 item max; No mixed images/video
Image size20 MiB maximum
Video size2 GiB maximum

These validation limits also match published SDK 1.3.1.

Provider permissions and quotas still apply. SimplePost storage can impose a lower upload limit. MB/GB use decimal bytes; MiB/GiB use binary bytes.

Set up credentials

  1. Create a Pinterest developer app.
  2. Configure redirect URIs for your app or Scheduler deployment.
  3. Request scopes for content publishing (pins:write, boards:read, user_accounts:read).
  4. Complete OAuth authorization for the Pinterest account.
  5. List boards and copy the board ID you want to post to.
  6. Store the access token and board ID.

The CLI does not bundle a Pinterest OAuth app. To use it from the CLI, supply your own client secret through SIMPLE_POST_PINTEREST_CLIENT_SECRET before running simplepost account add pinterest.

Pinterest refresh tokens rotate on every refresh — see token rotation.

Environment variables

PINTEREST_ACCESS_TOKEN=
PINTEREST_BOARD_ID=

Both variables are required for env-only setup. Without PINTEREST_BOARD_ID, the SDK has no target board and rejects the post.

SDK options

await post({
content: {
text: "A short description for the pin",
media: [{ type: "image", path: "./photo.jpg" }],
},
platforms: ["pinterest"],
options: {
pinterest: {
boardId: "1234567890123456789",
title: "Pin title",
link: "https://example.com",
altText: "A descriptive alt text",
},
},
});

REST server account

Add this entry under accounts in the self-hosted REST server's accounts.json:

{
"id": "pinterest-main",
"platform": "pinterest",
"credentials": { "accessToken": "..." },
"options": {
"boardId": "987654321"
}
}