Pinterest Search API
Search Pinterest by keyword and get pin, video, board, or profile results with titles, images, and links.
$0.80/1k req, pay per request, no subscription.
{"id": "998271640023841902","url": "https://www.pinterest.com/pin/998271640023841902/","title": "Warm mid-century living room with walnut credenza","description": "A sunlit living room mixing walnut furniture, a boucle sofa, and brass accents for a warm mid-century look.","image": "https://i.pinimg.com/736x/4a/2b/9c/midcentury-living-room.jpg","pinner": {...},"boardName": "Living Room Ideas","domain": "havenandhearth.com",... 4 more fields}
Pricing and providers
Pinterest Search API pricing: one API, 2 interchangeable providers
The cheapest provider serves first. If it fails, the next one takes over in the same call.
Try it
Get Pinterest search in one request
This sample shows 9 of 13 fields. See every field
{
"found": true,
"data": {
"items": [
{
"id": "998271640023841902",
"url": "https://www.pinterest.com/pin/998271640023841902/",
"title": "Warm mid-century living room with walnut credenza",
"description": "A sunlit living room mixing walnut furniture, a boucle sofa, and brass accents for a warm mid-century look.",
"image": "https://i.pinimg.com/736x/4a/2b/9c/midcentury-living-room.jpg",
"pinner": {
"username": "havenandhearth",
"displayName": "Haven & Hearth Design"
},
"boardName": "Living Room Ideas",
"domain": "havenandhearth.com",
"saveCount": 4820
},
{
"id": "672190384710025612",
"url": "https://www.pinterest.com/pin/672190384710025612/",
"title": "Sunken living room, 1962 case study house",
"description": "Archival photo of a sunken conversation pit living room from a 1962 case study house.",
"image": "https://i.pinimg.com/736x/7f/1e/33/case-study-house.jpg",
"pinner": {
"username": "modernarchive",
"displayName": "Modern Archive"
},
"boardName": "Retro Interiors",
"domain": "modernarchive.com",
"saveCount": 12300
},
{
"id": "554098271640023841",
"url": "https://www.pinterest.com/pin/554098271640023841/",
"title": "DIY mid-century TV console makeover",
"description": "Step by step refinish of a thrifted teak console with new hairpin legs.",
"image": "https://i.pinimg.com/736x/9b/44/12/tv-console-diy.jpg",
"pinner": {
"username": "thriftandtinker",
"displayName": "Thrift & Tinker"
},
"boardName": "Furniture Flips",
"domain": "thriftandtinker.com",
"saveCount": 2190
}
],
"nextCursor": "QVFEc2ZncnRlaHRjS3ZaWA=="
}
}Full parameter and response reference - every field, type, and example for this endpoint.
Reference
One request, one response shape.
Every field you send and every field you get back, each with a real example.
Last verified 2026-10-31 · uptime and latency measured over 30d
Request body
JSON, posted to this endpoint.
- querystring
mid-century living room
Keyword, topic, brand, or theme to search Pinterest for (e.g. mid-century living room).
- cursorstring
Opaque pagination cursor from a previous response's nextCursor. Omit for the first page.
- limitinteger
3
Page size to ask for (1-20). Some sources return their whole page of about 20 pins whatever limit says: a page is never trimmed after the call, so nextCursor continues exactly where this response ended.
- requireFieldsarray
Optional; omit it and routing is unchanged, with the cheapest source serving. Name the output fields this request must be able to return, for example `description` or `videoUrl`, and it is served only by a source that returns every one of them. Fields you do not name are still returned whenever the serving source has them. This can raise your price: when the cheapest source cannot return a named field, a dearer source serves, and you are quoted and charged its price. A named field can still be null on a pin that genuinely lacks it. Naming a combination that no single source returns together is refused as invalid input, with no charge.
- typeenum
Kind of results to return: all pins, only video pins, boards, or profiles (e.g. videos).
Response
JSON, one example value per field.
Matching Pinterest records: pin or board title, description, image/video URL, creator, and link. Populated whenever the provider has data for the entity.
- authorstring
Username (handle) of the account that saved the pin.
- authorNamestring
Display name of the account that saved the pin.
- descriptionstringcan require
A sunlit living room mixing walnut furniture, a boucle sofa, and brass accents for a warm mid-century look.
The pin's full description text, or null when the source does not provide it.
- idstring
998271640023841902
- imagestring
https://i.pinimg.com/736x/4a/2b/9c/midcentury-living-room.jpg
URL of the pin's full-size image; for a video pin, its cover image.
- titlestring
Warm mid-century living room with walnut credenza
Pin title, or the pin's description when the pin has no title.
- urlstring
https://www.pinterest.com/pin/998271640023841902/
Populated whenever the provider has data for the entity.
- videoUrlstringcan require
Streaming (HLS) URL of the pin's video, or null when the pin is not a video or the source does not provide it.
- nextCursorstring
QVFEc2ZncnRlaHRjS3ZaWA==
Opaque cursor for the next page of results, or null/empty when there are no more. Pass it back as cursor to continue.
- foundboolean
true
- reason"not_found"
Present only when `found` is false, and says why there is no result. `not_found`: the source states the target does not exist, or returned nothing for it. A `found: false` answer is a successful call, not an error, and `costUsd` is what it actually cost.
FAQ
About the Pinterest Search API
The AnyAPI Pinterest Search API returns Pinterest search data as normalized JSON from one POST call to /v1/run/pinterest.search. Search Pinterest by keyword and get pin, video, board, or profile results with titles, images, and links. AnyAPI routes each request across 2 sources and falls back automatically when one fails. It costs from $0.80 per 1,000 requests, in US dollars with no subscription and no monthly minimum. Over the last 30 days, 99.9% of Pinterest search calls through AnyAPI succeeded, with a median response time of 2.3 seconds across 2,093 measured calls.