Visual discovery
Pinterest API
Search public pins, retrieve pin details and metadata, browse user boards, and read board pins.
Discover Pinterest pins and boards, retrieve metadata, follow pagination and choose full or compact records.
API availability: Available
http://localhost:3014Public API: https://api.scrapeatlas.com.Endpoints
/v1/pinterest/searchSearch Pinterest pins
Discover public pins for a keyword. Retrieves one page with a requested page size of 25; Pinterest controls the actual result count and ranking. Pass cursor to continue. Full records retain available image, destination, board, author, counter and media fields. Trimmed pins contain id, url, description, created_at, pinner and images when supplied.
Reference/v1/pinterest/pinGet a Pinterest pin
Read a public pin’s page data without executing page scripts. Full responses expose Pinterest’s camelCase fields at the top level, preserving nested media and author data. imageSpec_orig aliases images_orig when needed. Trimmed fields: entityId, seoAltText, originPinner, pinner, imageSpec_orig, description, shareCount, nativeCreator, createdAt, repinCount and totalReactionCount. Counts are never guessed; missing required pin fields fail explicitly.
Reference/v1/pinterest/pin/metadataGet pin metadata
Retrieve a public pin’s metadata, including its description, images, media, destination, author, board and engagement fields. The pin object preserves Pinterest’s source field names and nested attributes.
Reference/v1/pinterest/user/boardsGet a user’s boards
List a page of public boards with counts, metadata and cursor pagination. Use trim for compact records with identifiers, URLs, descriptions, counts, cover images and timestamps.
Reference/v1/pinterest/boardGet pins from a board
Retrieve a page of pins from a public board, including the board information attached to each pin. Pass cursor and an optional board_id for the next page and use trim for compact pin records.
ReferenceQuick start
Create an API key on your account page, then call the public API. Values below are placeholders.
curl "https://api.scrapeatlas.com/v1/pinterest/search?query=synthetic+recipes" \
-H "x-api-key: YOUR_API_KEY"Coverage & limits
- Four concurrent operations; one 20-second deadline per operation.
- At most three upstream HTTP attempts, including one shared transient retry. Board retrieval uses two ordinary requests on the first page and one when a continuation carries board_id; other operations use one.
- At most 4 MiB of combined decoded successful response data, JSON depth 24 and 40,000 parsed JSON nodes.
- Lists request 25 records per page and return up to 100, one cursor page per request.
- Logged-out HTTPS to www.pinterest.com only. No Pinterest account, cookies, proxy, browser execution, media download or destination visits.
- Dedicated PINTEREST_API_KEY in x-api-key. Process health confirms local readiness, not upstream availability.
- No result retention or shared database; every response is fetched live.
- Collection completeness describes the returned page. Optional source fields Pinterest omits stay absent; source ordering and null values are retained.
| HTTP | failure.code | Meaning |
|---|---|---|
| 200 | partial | Some records were restricted, malformed or capped, or pagination was unavailable. Inspect coverage.warnings. |
| 400 | invalid_request | Missing, duplicate, unsupported or invalid parameters or URL. |
| 401 | unauthorized | Missing or invalid service key. |
| 403 | restricted_page | Access-gated pin/board or no usable public records. |
| 404 | not_found | Pinterest explicitly reported a missing resource, or the route is unknown. |
| 429 | upstream_rate_limited | Pinterest rate limited retrieval. |
| 502 | upstream_challenged | Pinterest challenged the request. |
| 502 | unsupported_page upstream_error | Incomplete, changed or mismatched source data, or retrieval failure. |
| 502 | response_too_large payload_too_complex request_limit | A byte, parsing or request bound was exceeded. |
| 502 | unsafe_redirect | Upstream redirected; redirects are not followed. |
| 503 | busy | All worker slots are occupied. |
| 504 | timeout | The shared deadline expired. |