Authenticate, connect a Pinterest account, and publish — with retries and webhooks handled for you.
https://api.pinbridge.io/v1X-API-Key header on every request.idempotency_key to make publishes safe to retry.Create an API key in your dashboard, then send it as X-API-Key on every call. Each key is scoped to one workspace.
# Verify your key against the rate-meter curl https://api.pinbridge.io/v1/rate-meter \ -H "X-API-Key: $PINBRIDGE_KEY"
Send the user through managed OAuth. PinBridge stores and refreshes their tokens — you never handle Pinterest credentials.
# Returns a Pinterest consent URL to redirect the user to curl https://api.pinbridge.io/v1/pinterest/oauth/start \ -H "X-API-Key: $PINBRIDGE_KEY"
POST a Pin and PinBridge publishes it asynchronously — with per-account rate handling and automatic retries.
curl -X POST https://api.pinbridge.io/v1/pins \ -H "X-API-Key: $PINBRIDGE_KEY" \ -H "Content-Type: application/json" \ -d '{ "board_id": "b_78f2a9", "image_url": "https://cdn.shop/img/1.jpg", "title": "Summer styles 2026", "idempotency_key": "launch-123" }'
from pinbridge import PinBridge pb = PinBridge(api_key=PINBRIDGE_KEY) pin = pb.pins.create( board_id='b_78f2a9', image_url='https://cdn.shop/img/1.jpg', title='Summer styles 2026', ) print(pin.status) # queued
Register a webhook once. PinBridge sends signed pin.published and pin.failed events and retries delivery with exponential backoff until you 200.
{
"event": "pin.published",
"pin_id": "pin_8fa2",
"board_id": "b_78f2a9",
"status": "published"
}An official, typed client: pip install pinbridge
Drag-and-drop PinBridge into any n8n automation — no code required.
Let an AI agent publish Pins directly through the Model Context Protocol.
The Playground plan is free forever — enough to wire up publishing end to end before you pay a cent.