Skip to content
scrapeatlas.Dashboard

Get a user’s boards

Try in Playground

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.

GET/v1/pinterest/user/boardsx-api-key
x-api-keystringrequiredheader

Your ScrapeAtlas customer key. Create one on /account/ and set SCRAPEATLAS_API_KEY.

Query parameters
3
handlestringrequiredquery

Required Pinterest username, 1–60 letters, digits or underscores; normalized to lowercase.

Exampleexample
cursorstringquery

Optional source bookmark returned by the previous response. Reuse with the same query, handle, or board. Null means end of results unless coverage warns pagination_unavailable. Source cursors can expire. Maximum 16,384 characters.

min 1 chars · max 16384 chars

trimenumquery

Optional true or false (default false). True selects the documented compact fields; false preserves the public source record and nested extensions. Missing source fields remain absent.

one of: true, false

Response fields
19
successboolean

True when usable supported data was retrieved.

statusenum

success, partial, failed, or challenged. Partial results carry coverage warnings.

one of: success, partial

requestIdstring

Opaque operation identifier for correlation.

sourceUrlstring

Canonical public source page. This field can contain the requested search query.

absolute HTTPS URL

fetchedAtstring

UTC retrieval time. Every call makes fresh upstream requests; Pinterest may serve its own cached data.

Completeness of the returned page. Warnings: restricted_records, malformed_records, record_limit, pagination_unavailable and missing_pin_counts (pins whose page publishes no share or reaction counts).

coverage.sourceenum

Always included.

one of: public_resource, public_page

coverage.completeboolean

Always included.

coverage.warningsenum[]

Always included.

Upstream attempts, total decoded response bytes, and elapsed milliseconds.

accounting.upstreamRequestsinteger

Always included.

0 – 3

accounting.responseBytesinteger

Always included.

≥ 0

accounting.durationMsnumber

Always included.

≥ 0

Ordered public board records with canonical URLs. Maximum 100 records. Nested source fields are preserved by default.

up to 100 items

boards.idstring

Always included.

boards.namestring

Always included.

boards.urlstring

Always included.

boards.descriptionstringnullable

Always included.

cursorstringnullable

Optional source bookmark returned by the previous response. Reuse with the same query, handle, or board. Null means end of results unless coverage warns pagination_unavailable. Source cursors can expire. Maximum 16,384 characters.

HTTP 200 returns the success variant. Check status: partial means usable data with warnings, and failed or challenged requests carry a failure object described in Errors & responses.

Error codes
12
HTTPfailure.codeMeaning
200partialSome records were restricted, malformed or capped, or pagination was unavailable. Inspect coverage.warnings.
400invalid_requestMissing, duplicate, unsupported or invalid parameters or URL.
401unauthorizedMissing or invalid service key.
403restricted_pageAccess-gated pin/board or no usable public records.
404not_foundPinterest explicitly reported a missing resource, or the route is unknown.
429upstream_rate_limitedPinterest rate limited retrieval.
502upstream_challengedPinterest challenged the request.
502unsupported_page upstream_errorIncomplete, changed or mismatched source data, or retrieval failure.
502response_too_large payload_too_complex request_limitA byte, parsing or request bound was exceeded.
502unsafe_redirectUpstream redirected; redirects are not followed.
503busyAll worker slots are occupied.
504timeoutThe shared deadline expired.