Key takeaways
- Trial access (the default on approval) is sandbox-only — Pins and boards are visible only to their creator and never reach the live profile — capped at 1,000 requests/day (300/day for ads_write and org_write).
- Standard access requires uploading a video demo of your app completing an OAuth flow and the actual API action, reviewed via the "My apps" dashboard with no published turnaround SLA ("reviewed regularly").
- Creating a Pin needs both pins:write AND boards:write scopes, not pins:write alone.
- Standard-tier rate limits are 100 requests/second per user per app universally, plus tighter per-minute caps by category (org_write 100/min, ads_write 400/min) — several third-party summaries state a flat "1,000/hour", which does not match Pinterest's own rate-limits page.
Pinterest API: Trial vs Standard access
Every new Pinterest app starts on Trial access: Pins and boards it creates are sandbox-only, "visible only to their creator," and never appear on the live public profile. Trial is capped at 1,000 requests/day for most categories, dropping to 300/day for ads_write and org_write specifically.
Moving to Standard access — required before anything the app publishes is publicly visible — means clicking Upgrade on the app card in "My apps," confirming the previously submitted app details, and uploading a video demo of the app completing a real OAuth flow and the API action(s) it performs. This applies even to a solo developer's own app; Pinterest's documentation states only that upgrade requests are "reviewed regularly," with no numeric turnaround published.
Scopes and rate limits
Creating a Pin needs pins:write, but also boards:write — a Pin is always attached to a board, and the workflow Pinterest documents for creating boards and Pins lists all four of boards:read, boards:write, pins:read and pins:write together.
On Standard access, the universal ceiling is 100 requests/second per user per app, with additional per-minute caps that vary by category: org_write (ordinary organic Pin/board writes) 100/minute, ads_write 400/minute, ads_read and org_read 1,000/minute, ads_analytics 300/minute, and catalogs_read/catalogs_write 100/minute each — all "subject to change without notice" per Pinterest's own rate-limits page. This differs from some third-party summaries that describe Standard as a flat 1,000 requests/hour; that figure does not match what Pinterest's own documentation states.
The video Pin upload flow
Video Pins go through four steps: first, POST /v5/media with media_type set to "video" returns a media_id along with an upload_url and a set of upload_parameters (a presigned multipart-form upload, rate-limit category org_write). Second, POST the actual video file as multipart/form-data directly to that upload_url with all the returned upload_parameters — this step needs no bearer token. Third, poll GET /v5/media/{media_id} until its status reads succeeded. Fourth, POST /v5/pins with media_source.source_type set to "video_id", the media_id from step one, and a valid cover_image_url — a missing or invalid cover image causes the Pin creation to fail with a 400.
Pitfalls worth knowing before you build against this
Processing normally completes in a few seconds, but a Pin's creative_type field can read incorrectly until processing actually finishes, so polling to succeeded matters even when it feels fast. Personal accounts are capped at up to 2,000 boards and 200,000 Pins total. A Pin created with is_removable: true is automatically routed to a protected "Ad-only Pins" board rather than the board you specified — worth knowing before an automated bulk-create job produces Pins that silently land somewhere unexpected.
FAQ
- What is the difference between Pinterest Trial and Standard API access?
- Trial access is sandbox-only — anything created is visible only to the app's creator and never reaches the live profile — while Standard access makes created Pins and boards publicly visible and raises the rate limits substantially. Standard requires an upgrade request with a video demo of the OAuth flow and API action.
- What OAuth scopes does creating a Pin require?
- Both pins:write and boards:write — a Pin is always attached to a board, so the board-write scope is required alongside the pin-write scope even though it is easy to assume pins:write alone is sufficient.
- How long does Pinterest take to approve Standard access?
- Pinterest's own documentation does not publish a turnaround time — it states only that upgrade requests are reviewed regularly and that a decision arrives by email notification, with no numeric SLA.
- What are Pinterest API v5's rate limits?
- Standard access allows 100 requests per second per user per app universally, with tighter per-minute category limits on top — for example 100/minute for ordinary organic writes and 400/minute for ads writes. Trial access is capped at 1,000 requests per day (300/day for write-heavy categories).
- How do you upload a video Pin through the API?
- Register the media with POST /v5/media, upload the actual video file to the returned presigned upload URL, poll the media status until it reads succeeded, then create the Pin with POST /v5/pins referencing that media id and a valid cover image URL.
- Can a personal Pinterest account create unlimited boards and Pins?
- No — personal accounts are capped at up to 2,000 boards and 200,000 Pins in total, a ceiling worth accounting for before running large automated bulk-create jobs.