Pinterest Pins/Videos Search Scraper
Pricing
from $2.99 / 1,000 results
Pinterest Pins/Videos Search Scraper
Collect actionable insights from Pinterest search pins and videos automatically. This scraper fetches pin metadata, video content, engagement stats, and source URLs. Useful for competitive research, trend discovery, and large-scale data extraction.
Pricing
from $2.99 / 1,000 results
Rating
0.0
(0)
Developer
SimpleAPI
Maintained by CommunityActor stats
2
Bookmarked
21
Total users
6
Monthly active users
14 days ago
Last modified
Categories
Share
Pinterest Pins Scraper — Video Search, Boards and Pinner Data
This Pinterest scraper returns pins and videos from any keyword search, board URL, or profile URL, structured as JSON with image and video links, pinner username and follower count, reaction counts, dominant color, dimensions, and a canonical pin URL for every result. It serves content researchers, social media marketers, and e-commerce teams tracking visual trends, monitoring competitor boards, or sourcing on-brand video pins at scale. Mix keywords and URLs in one run, filter to videos only, and export the results as JSON or CSV without touching Pinterest's developer API.
What is Pinterest Pins Videos Search Scraper?
Pinterest Pins Videos Search Scraper searches Pinterest by keyword or fetches the real pins from a specific board or profile URL, returning every matching pin as a structured JSON row — image URL, video URL (when present), pinner details, engagement counts, and board metadata. No Pinterest account, cookie, or API key is required; it only reads pages Pinterest already serves to a logged-out visitor.
- Three discovery modes — plain keywords run a Pinterest search, while full board or profile URLs are opened directly and their actual pins are collected, not converted into a keyword search.
- Pinner identification — full name, username, follower count, and avatar image for whoever posted each pin.
- Video detection — pins with a playable video get a direct
link_to_videoURL, and thefiltreinput can restrict results to videos only. - Board metadata — pins pulled from a board carry the board's
id,name,pin_count, andprivacyso you know which collection they came from. - Automatic proxy escalation — retries through Apify datacenter and then residential proxies if Pinterest blocks a request.
- Standard Apify export — results land in the run's dataset and can be downloaded as JSON, CSV, or Excel, or pulled via the Apify API.
What data can I extract with Pinterest Pins Videos Search Scraper?
Every run returns one row per pin, covering the media itself, who posted it, how it's engaging, and where it was found:
| Field | Example Value | Use Case |
|---|---|---|
node_id | "4362930884162196" | De-dupe or re-fetch the exact pin across runs |
pinUrl | https://www.pinterest.com/pin/4362930884162196/ | Open the pin directly for manual review |
type | "board_pin" | Tell keyword, board, and profile results apart |
created_at | "Wed, 17 Sep 2025 21:05:25 +0000" | Sort or filter pins by original post date |
scrapedAt | "2026-07-25T09:12:44Z" | Track when this row was collected |
url | https://i.pinimg.com/236x/...jpg | Display or download the pin image |
pinner | {"full_name":"Sofia Ortiz","username":"sofiacamposflor","follower_count":4,"image_url":"..."} | Identify the creator and gauge their reach |
domain | "shop.example.com" | See which merchant or blog the pin links to |
reaction_counts | {"1": 1877} | Raw engagement signal per reaction type |
width | 236 | Filter for a minimum usable image resolution |
height | 354 | Pair with width to compute aspect ratio |
image_size | "236x" | Know which CDN size variant was captured |
dominant_color | "#88a549" | Group or theme pins by visual palette |
link | "https://shop.example.com/product/123" | Follow the pin's outbound merchant/blog link |
title | "Modern boho living room" | Read the pin's headline text |
description | "Neutral tones, layered textures..." | Mine pin copy for keywords and themes |
link_to_video | https://v.pinimg.com/videos/...m3u8 | Fetch the playable video asset directly |
is_video | true | Quickly split image pins from video pins |
board | {"id":"...","name":"Home Office Ideas","url":"...","description":"...","pin_count":184,"privacy":"public"} | Know which board/collection a pin came from |
search_term | "home office ideas" | Trace a row back to the exact input entry that produced it |
Video and image metadata
Every pin carries its own media block: url is the captured image, at whatever CDN size Pinterest served (recorded in image_size), with width and height for that variant and dominant_color as a hex value for palette sorting. Video pins add link_to_video, a direct, playable URL to Pinterest's hosted video file, and is_video flags those rows without inspecting the URL. Because filtre can restrict a run to video pins only, this block is what a video-content workflow actually consumes — pulling every link_to_video from a filtre: "Videos" run into a downloader or media pipeline, or grouping dominant_color to see which palettes dominate a topic.
Discovery and creator signals
type marks whether a row came from a keyword search, a board, or a profile, and search_term records the exact entry that produced it — essential when one run mixes several keywords and URLs. pinner (username, full_name, follower_count) lets you segment pins by creator reach instead of just topic. board (non-null only for board-sourced pins) attaches the collection's name, pin_count, and privacy, so you can group results by board rather than treat every pin as an isolated record.
How does Pinterest Pins Videos Search Scraper differ from the official Pinterest API?
Pinterest's own v5 API manages the developer's own authenticated pins, boards, and ads — not public search results, competitor boards, or profile feeds — and even that scope requires Pinterest's own app-review process (access tiers docs).
| Feature | Pinterest API (v5) | Pinterest Pins Videos Search Scraper |
|---|---|---|
| Access requirement | App review for Trial; video-demo review for Standard | Apify account and token only |
| Keyword search across public pins | Not documented at Trial or Standard tier | Any searchTerms entry runs a live search |
| Board/profile pin collection | Scoped to the app's own boards/pins | Fetches real pins from any public board/profile URL |
| Content visibility (Trial tier) | Sandboxed, visible only to the creator | Real, currently public pins |
| Setup | OAuth plus Pinterest's review cycle | Fill in searchTerms and run |
| Output handling | You build pagination and parsing yourself | Consistent JSON schema, exportable to CSV/Excel |
Why can't I just search Pinterest through its official API?
Pinterest's v5 API doesn't expose a general public-search endpoint at Trial or Standard access — the tiers Pinterest actually reviews developers into. Trial access exists to test integrations, and Pinterest explicitly sandboxes anything created under it so pins and boards stay visible only to their creator, not the public feed you'd be researching. Standard access, meant for production apps, requires a video demonstration of the OAuth flow and a manual review before approval, and both tiers stay scoped around the app's own authenticated pins, boards, and ad accounts rather than someone else's board, profile, or a live keyword search. Pinterest Pins Videos Search Scraper covers that specific gap: it reads the same public pages a logged-out visitor sees, so a keyword, board URL, or profile URL returns real, current results without an app-review cycle.
Use Pinterest's API when managing your own pins, boards, or ads under an approved integration. Use this scraper to search, monitor, or collect public pins, boards, and profiles that aren't yours to authenticate as.
How to use data extracted from Pinterest?
Visual and content trend research
Content and social media strategists run a batch of keywords through searchTerms — a product category, a seasonal theme, a competitor's brand name — set filtre to Videos or All, and pull back title, description, dominant_color, and link_to_video for every matching pin. Grouping results by dominant_color surfaces the palettes trending for a topic right now; filtering to is_video: true isolates which formats — video vs. static image — are getting produced most for that theme. Because search_term is stamped on every row, a single run covering ten keywords still lets you compare trend strength keyword-by-keyword afterward, rather than re-running the actor once per term.
Social media and marketing agencies
Agencies managing several client or competitor Pinterest accounts pass each client's profile URL and their competitors' board URLs in the same searchTerms list, since board and profile URLs are fetched for their real pins rather than converted into a keyword search. Re-running the same list on a schedule and comparing pinUrl, reaction_counts, and board.pin_count shows which boards are actively growing and which pins are gaining reactions, without manually opening each board in a browser. The type field (board_pin vs. profile_pin) keeps client and competitor sources separate inside one dataset.
Market research and intelligence
Researchers use domain and link to see which merchants and publishers are actually getting outbound traffic from Pinterest for a given keyword, and reaction_counts alongside pinner.follower_count to gauge whether engagement is coming from small accounts or established creators. Running the same keyword with filtre: "All" versus filtre: "Videos" shows the split between video and image content for a topic. Because every pin keeps its search_term, results from dozens of keywords can be aggregated into a single spreadsheet to map category density and merchant patterns across an entire niche rather than one search at a time.
AI agents and automated pipelines
Because every result is typed JSON with a stable schema, an agent can call this Actor as a tool, pass a keyword or board URL, and consume title, description, link_to_video, and dominant_color directly — no HTML parsing step needed. Typical uses: a content-generation agent pulling reference images and palettes for a moodboard, or a monitoring pipeline that re-runs a profile URL on a schedule and diffs pinUrl values against the previous run's dataset to flag newly posted pins.
🔼 Input sample
searchTerms accepts a mix of plain keywords, board URLs, and profile URLs in the same list — the actor auto-detects each entry's type.
| Parameter | Required | Type | Description | Example Value |
|---|---|---|---|---|
searchTerms | Yes | array | List of Pinterest search keywords (e.g. cat), board URLs (e.g. https://www.pinterest.com/username/board-name/), profile URLs (e.g. https://www.pinterest.com/username/), or plain usernames. Board/profile URLs are scraped for their real pins; keywords run a Pinterest search. Supports bulk input. | ["cat", "book"] |
maxItems | No | integer | Maximum number of pins to scrape per search term. (min 1, max 1000, default 50) | 100 |
filtre | No | string | Filter results: All (pins + videos) or Videos only. (default "Videos") | "Videos" |
proxyConfiguration | No | object | Choose which proxies to use. By default, no proxy is used. If Pinterest blocks the request, it automatically falls back to a datacenter proxy, then a residential proxy, with 3 retries. | {"useApifyProxy": false} |
{"searchTerms": ["minimalist home office","https://www.pinterest.com/pinterest/official-news/","https://www.pinterest.com/pinterest/"],"maxItems": 100,"filtre": "Videos","proxyConfiguration": { "useApifyProxy": false }}
Common pitfall: the input description mentions plain usernames, but the actor only treats an entry as a real board/profile fetch when it starts with http. A bare handle like pinterest (instead of https://www.pinterest.com/pinterest/) is classified as a keyword and runs a text search for that word — it will not fetch that user's actual pins. Always paste the full URL when you want a specific board's or profile's real content.
🔽 Output sample
Results are pushed to the dataset live, one row per pin, and can be exported as JSON, CSV, or Excel from the Apify Console or pulled via the API. Here is a full row for a pin discovered on a board:
{"node_id": "1098234765432198","pinUrl": "https://www.pinterest.com/pin/1098234765432198/","type": "board_pin","created_at": "Mon, 12 Jan 2026 14:22:10 +0000","scrapedAt": "2026-07-25T09:12:44Z","url": "https://i.pinimg.com/236x/8a/3c/1f/8a3c1fbb4a1e9d3c6e2f7a9b0c1d2e3f.jpg","pinner": {"full_name": "Maya Chen","username": "mayachen.design","follower_count": 18420,"image_url": "https://i.pinimg.com/75x75_RS/mayachen_avatar.jpg"},"domain": "mayachendesign.com","reaction_counts": { "1": 342 },"width": 236,"height": 354,"image_size": "236x","dominant_color": "#c9a97e","link": "https://mayachendesign.com/blog/small-space-home-office","title": "Small space home office with warm wood tones","description": "A compact home office setup using warm wood furniture, layered lighting, and a neutral palette to maximize a small room.","link_to_video": "https://v.pinimg.com/videos/mc/hls/8a/3c/1f/8a3c1f.m3u8","is_video": true,"board": {"id": "587234109876543210","name": "Home Office Ideas","url": "/mayachendesign/home-office-ideas/","description": "Small-space and warm-toned home office inspiration.","pin_count": 184,"privacy": "public"},"search_term": "https://www.pinterest.com/mayachendesign/home-office-ideas/"}
How do you filter and target specific pins?
Precision here comes from three independent controls, not a single search box. First, decide keyword vs. URL per entry in searchTerms: a plain keyword runs Pinterest's own search ranking for that term, while a full board or profile URL (must start with http) bypasses search entirely and pulls that exact collection's real pins — use keywords for topic discovery and URLs when you already know the exact board, competitor, or creator you want to track. Second, set content type with filtre: "Videos" (the default) keeps only pins with a playable video, "All" keeps images too — narrow to Videos when you're specifically auditing motion content, or switch to All when you also need still images for a moodboard or trend report. Third, control volume with maxItems (1–1000): it caps pins per entry, not per run, so ten searchTerms entries at maxItems: 100 can return up to 1,000 pins total across the run. For board and profile URLs specifically, the actor over-fetches internally — pulling roughly three times maxItems, or maxItems + 20, whichever is larger — before trimming to the requested count, because some board nodes turn out to be non-pin stubs (Idea Pins, editorial cards) that get discarded once they fail the has-content check. Mix all three per project — different keywords, different competitor board URLs, different filtre/maxItems combinations for each — since every searchTerms entry is classified and processed independently within the same run, so one call can cover discovery and monitoring at once.
Keyword-only video trend scan:
{"searchTerms": ["minimalist home office", "boho living room"],"maxItems": 150,"filtre": "Videos"}
One competitor board, full collection (images + videos):
{"searchTerms": ["https://www.pinterest.com/mayachendesign/home-office-ideas/"],"maxItems": 300,"filtre": "All"}
Mixed bulk run — keywords plus a profile, capped per entry:
{"searchTerms": ["cat","book","https://www.pinterest.com/pinterest/"],"maxItems": 50,"filtre": "All","proxyConfiguration": { "useApifyProxy": false }}
▶️ Want to try other Pinterest scrapers?
| Scraper | What it extracts |
|---|---|
| Pinterest Search & Pin Engagement Scraper | Searched Pinterest pins ranked by save-based engagement rank/percentile, with domain/creator roll-ups and cross-run trend deltas |
| Instagram Single Reels Scraper | Caption, like/comment/play counts, video and thumbnail URLs, and comments for a single Instagram Reel URL |
| Instagram Hashtag Scraper: Content Planner | Posts and reels under a hashtag, plus a best-time-to-post histogram and caption-keyword report |
| TikTok Trending Hashtags With Momentum Analytics Scraper | Trending TikTok hashtags with rank-change labels and run-over-run growth velocity |
| Facebook Posts Search Scraper | Public Facebook posts by keyword with likes, comments, shares, and optional Page contact enrichment |
How to extract Pinterest data programmatically
Every run is a standard Apify Actor call: send input as JSON, get back a dataset of typed pin records through the same Apify API used by every other Actor.
Python
from apify_client import ApifyClientclient = ApifyClient("<APIFY_API_TOKEN>")run = client.actor("SimpleAPI/pinterest-pins-videos-search-scraper").call(run_input={"searchTerms": ["minimalist home office"],"maxItems": 100,"filtre": "Videos",})for pin in client.dataset(run["defaultDatasetId"]).iterate_items():print(pin["title"], pin["link_to_video"], pin["dominant_color"])
MCP for AI agents
Apify's MCP server (mcp.apify.com) exposes Apify Actors — including this one — as callable tools for MCP-compatible clients such as Claude Desktop, Cursor, and Windsurf. Add the Actor's name (pinterest-pins-videos-search-scraper, as shown on its Apify Store page) to the server's actor list to make it callable as an agent tool without writing custom integration code. A content-planning agent can call it with a keyword or board URL and read title, link_to_video, and dominant_color straight from the tool result.
Export to spreadsheets or CRM
Apify's dataset view exports pushed results directly to CSV or Excel, so title, link, domain, pinner.username, and pinUrl map straight into spreadsheet columns for a content or outreach list. In a CRM or BI tool, import that CSV and treat search_term as the campaign/keyword tag, reaction_counts as an engagement column, and link_to_video as a media-asset link for downstream review.
Is it legal to scrape Pinterest pins?
Scraping publicly served Pinterest pages is generally permitted: pins, boards, and profiles collected here are all pages Pinterest already shows a logged-out visitor, and this actor never accesses private boards, login-walled content, or anything behind an account. Because each pin's pinner object includes a real, identifiable username and full name, the output does qualify as personal data under GDPR and CCPA once you store or reuse it — you need a lawful basis (typically legitimate interest) for retaining it, must be able to honor deletion or access requests, and shouldn't use it to build a broader profile of an individual than the public pin itself supports. Board and pin metadata not tied to a person (titles, descriptions, domains, reaction counts) falls under ordinary Pinterest ToS and database-rights considerations rather than GDPR. Consult legal counsel for commercial applications involving bulk storage of personal data.
❓ FAQ
Does the output flag pins that have been deleted or made private since scraping?
No — there's no dedicated isDeleted/isActive field in the output. Each row reflects the pin's public state at the moment of scraping (scrapedAt); a pin later removed or made private simply won't reappear the next time you run the same search or board URL.
Can I get board and pinner details along with the main pin data?
Yes — every row already includes the pinner object (full_name, username, follower_count, image_url) and, for pins sourced from a board, the board object (id, name, pin_count, privacy). Both come inline with each pin; no extra request or separate run is needed.
How accurate is the pinner and engagement data?
The actor returns pinner and reaction_counts exactly as Pinterest's own pages report them at the moment of the request. Accuracy after that depends on how often the pinner or Pinterest updates those numbers, so re-run the search periodically if you're tracking engagement over time rather than relying on a single snapshot.
How many pins can I get per run?
Up to maxItems (maximum 1000, default 50) per entry in searchTerms, and you can list as many keyword/board/profile entries as you want in a single run — each one is scraped and capped independently.
What's the difference between giving it a keyword versus a board or profile URL?
A keyword runs Pinterest's own search ranking for that term, surfacing whatever pins Pinterest's algorithm considers relevant right now. A full board or profile URL (starting with http) skips search entirely and fetches that exact collection's real pins, so use URLs when you already know exactly whose board or profile you want.
Has a court actually ruled that scraping public social platform data like this is legal?
Yes — in hiQ Labs, Inc. v. LinkedIn Corp. (9th Cir., 2019), the court held that accessing data a platform makes publicly viewable, without logging in, does not violate the Computer Fraud and Abuse Act. This actor applies the same logged-out, public-page principle to the pins, boards, and profiles it reads on pinterest.com.
Does Pinterest Pins Videos Search Scraper work with Claude, ChatGPT, and AI agent frameworks?
Yes — it's reachable through Apify's MCP server (mcp.apify.com) for MCP-compatible clients like Claude Desktop, Cursor, and Windsurf, and it's callable as a plain HTTP API endpoint by any other agent framework via the Apify API.
How does Pinterest Pins Videos Search Scraper compare to other Pinterest scrapers?
No independently verified competitor pricing or benchmark figures are cited here. The functional difference verifiable from this actor's own source code is that a board or profile URL is fetched for its real, current pins rather than being silently rewritten into a keyword search of that URL — a common shortcut in general-purpose Pinterest scrapers that this actor's classify_target logic explicitly avoids.
Can I use it without a Pinterest API key or developer account?
Yes — no Pinterest login, cookie, API key, or developer account is required. You only need an Apify account to run the Actor; Pinterest's own pages are read as a logged-out visitor.
Conclusion
Pinterest Pins Videos Search Scraper turns any keyword, board URL, or profile URL into structured pin and video data — image and video links, pinner details, engagement counts, and board metadata — without a Pinterest login or API approval process. It's built for content researchers, agencies, and automated pipelines that need current, public Pinterest data in a consistent JSON schema rather than raw HTML. The one real limitation to plan around: a bare username without a full URL is treated as a keyword, not a profile fetch, so always paste the complete pinterest.com link when you want a specific board or profile's real pins. Open Pinterest Pins Videos Search Scraper in the Apify Console, drop in your search terms or URLs, and start pulling pins into your dataset.