Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.letmepost.dev/llms.txt

Use this file to discover all available pages before exploring further.

Pinterest v5 API. The connect flow doubles as the cheapest integration in v1 — the API is well-documented, OAuth is standard, and the publish surface is small.

Connect

POST /v1/accounts/connect/pinterest. OAuth 2.0. After complete we call GET /v5/user_account to pin the platform_account_id to the real Pinterest user.

Scopes

boards:read       — read the caller's boards
boards:write      — create boards from the dashboard
pins:read         — required alongside pins:write because some endpoints echo the pin back
pins:write        — create pins
user_accounts:read — required to mint the platform_account_id at connect
Extended: pins:read_secret (off by default) for callers that publish to secret boards.

Token lifecycle

30-day access tokens, refreshable. We refresh ~24 h before expiry; subscribe to token.expiring.

Posting

pin.json
{
  "account": { "platform": "pinterest", "id": "..." },
  "text": "Pin description",
  "media": [{ "kind": "image", "mediaId": "med_…" }],
  "pinterest": {
    "boardId": "<board id>",
    "destinationUrl": "https://example.com/blog-post",
    "title": "Pin title"
  }
}
The pinterest extension is optional. If you set a default board on the account, pinterest.boardId can be omitted; if you don’t supply destinationUrl we fall back to the image’s letmepost URL.

Constraints

Preflight rules