API/Pins API

Pins API

Create, list, retrieve and cancel pins.

Create a pin

POST /v1/pins
FieldTypeRequiredNotes
account_idstringyesA connected Pinterest account
board_idstringyesA board of that account
image_urlstringyesPublic https URL; Pinterest downloads it
titlestringno100 characters max
descriptionstringno800 characters max
alt_textstringno500 characters max, accessibility text
linkstringnoDestination link of the pin
publish_atstringnoISO 8601 date; if in the future, the pin is scheduled

Without publish_at the pin is queued right away, subject to the account pacing. With a future publish_at it is scheduled and goes out at that time.

A past publish_at is treated as an immediate publication.

List pins

GET /v1/pins
ParameterTypeDefaultNotes
statusstring—queued, scheduled, publishing, published, failed, cancelled
limitnumber501 to 100
curl "https://pincast.io/v1/pins?status=failed&limit=20" \
  -H "Authorization: Bearer pk_live_YOUR_KEY"

Pins come back newest first, wrapped in { "data": [...] }.

Retrieve a pin

GET /v1/pins/{id}

Answers 404 with not_found when the pin does not exist or belongs to another organization — the API never reveals which of the two it is.

Cancel a pin

DELETE /v1/pins/{id}

Only a queued or scheduled pin can be cancelled. Once publishing has started, the API answers 400 with invalid_request.

Statuses

StatusMeaning
queuedWaiting for its pacing slot
scheduledWaiting for its publish_at
publishingBeing sent to Pinterest
publishedAccepted; pinterest_pin_id is filled
failedGave up after retries; error explains why
cancelledCancelled before publication

A failed pin can be retried from the dashboard. attempts counts how many times Pincast has tried.

Quota

The monthly quota counts published pins. A pin that fails or is cancelled consumes nothing. Once the quota is reached, creation answers 402 with quota_exceeded.