Pinterest Boards Scraper — User Board Lists & Pins
Pricing
from $4.00 / 1,000 pin scrapeds
Pinterest Boards Scraper — User Board Lists & Pins
Scrape Pinterest boards by board URL or username. User mode lists every board a profile owns with follower, pin and section counts; board mode returns board details plus its pins with images, links and save counts. No cookies or login.
Pricing
from $4.00 / 1,000 pin scrapeds
Rating
0.0
(0)
Developer
Khadin Akbar
Maintained by CommunityActor stats
0
Bookmarked
5
Total users
3
Monthly active users
4 days ago
Last modified
Categories
Share
What is Pinterest Boards Scraper?
Pinterest Board Scraper returns public Pinterest boards and the pins saved on them as clean dataset rows. Give it a board URL and it extracts the board's name, description, pin count, follower count and cover image, plus one row per pin with the image URL, save count, outbound link, source domain and creator. Give it a username or profile URL and it lists every public board that account owns. Content researchers, brand teams, creative studios and AI agents use it to map how a Pinterest account curates ideas, with no cookies or login.
Why teams choose this Pinterest board scraper
- Two jobs in one Actor.
board-pinsmode collects a board and its pins;user-boardsmode lists a profile's whole board directory. - Auto routing. In the default
automode, board URLs become board targets and usernames or profile URLs become user targets, so mixed lists work in one run. - Pins ready for media work. Each pin carries
image_url,download_image_url,image_width,image_heightanddominant_color, plusvideo_urlfor video pins. - Referral intelligence.
linkandsource_domainshow which websites a board sends traffic to. - Predictable volume.
maxPinsPerBoardandmaxBoardsPerUsercap rows per target, andmaxPinsPerBoard: 0gives board metadata only. - Flat rows for agents. Every row has a
dataTypeofboardorpin, so code and AI agents can route records with one field.
Best fit for this Actor
- Best fit for known public boards and profiles where you want the board structure and the pins inside it.
- Designed for brand and competitor mapping, creative mood-board datasets, and referral-domain research.
- When you start from a keyword instead of an account, start with Pinterest Search Scraper to discover boards, then pass the board URLs into
startUrlshere. - For full detail on individual pins you already have, continue with Pinterest Pins Scraper.
- When a board is full of video pins and you want the MP4 files, then pass the
pin_urlvalues to Pinterest Video Downloader.
What people and AI agents ask this Actor to do
List every public board the Etsy Pinterest account owns, with follower counts. Get the first 100 pins from this Martha Stewart baking board. Which websites do the pins on this board link to?
| Request | Input to send |
|---|---|
| Pins from one board | {"startUrls": ["https://www.pinterest.com/marthastewart/baking-and-dessert-recipes-and-ideas/"], "maxPinsPerBoard": 100} |
| A profile's board directory | {"usernames": ["etsy"], "mode": "user-boards", "maxBoardsPerUser": 50} |
| Every board plus a sample of pins | {"usernames": ["etsy"], "includeBoardPins": true, "maxPinsPerBoard": 20} |
| Board metadata only | {"startUrls": ["https://www.pinterest.com/etsy/etsy-finds/"], "maxPinsPerBoard": 0} |
Example workflow: from a competitor profile to a content brief
A home-goods brand starts with three competitor usernames in usernames and uses user-boards mode. The dataset returns each board's name, pin_count and follower_count, so the team can compare which themes each competitor invests in. They then pass the five largest board_url values back into startUrls with maxPinsPerBoard set to 100, export the pin rows to a spreadsheet, group them by source_domain, and feed the top recurring themes into next quarter's content brief. A monthly schedule repeats the same input so the team can compare board growth over time.
How to scrape Pinterest boards
- Add board or profile URLs in Board or profile URLs, or plain handles in Usernames.
- Keep Mode on
auto, or forceboard-pinsoruser-boards. - Set Max pins per board and Max boards per user, then click Start.
- Export the dataset as JSON, CSV or Excel, or read it through the API.
Input
{"startUrls": ["https://www.pinterest.com/marthastewart/baking-and-dessert-recipes-and-ideas/","https://www.pinterest.com/etsy/"],"usernames": [],"mode": "auto","maxPinsPerBoard": 50,"maxBoardsPerUser": 50,"includeBoardPins": false,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
| Field | Type | What it controls |
|---|---|---|
startUrls | array of strings | Full Pinterest board or profile URLs. |
usernames | array of strings | Pinterest handles without @; each one lists that account's boards. |
mode | string | auto (default), board-pins or user-boards. |
maxPinsPerBoard | integer | Pins per board. Default 50; 0 returns board rows only. |
maxBoardsPerUser | integer | Boards per user. Default 50. |
includeBoardPins | boolean | In user mode, also collect pins for each board found. Default false. |
proxyConfiguration | object | Apify Proxy settings; Residential is the default for profile requests. |
Output
Each row has a dataType of board or pin.
| Field | Row type | What it contains |
|---|---|---|
board_id, name, description, board_url | board | Board identity and public description |
pin_count, follower_count, section_count | board | Board size, audience and sections |
cover_image_url, owner_username | board | Cover image and owning account |
pin_id, pin_url, description | pin | Pin identity and public text |
image_url, download_image_url, image_width, image_height, dominant_color | pin | Image media and visual metadata |
is_video, video_url, download_video_url | pin | Video flag and media links for video pins |
save_count | pin | Public save count |
link, source_domain | pin | Outbound destination and its domain |
board_name, board_url | pin | Parent board context |
pinner_display_name, pinner_follower_count | pin | Creator name and audience size |
title, pinner_username, comment_count, hashtags, price, created_at | pin | Extra fields filled when Pinterest includes them for that pin |
scraped_at, source_url | both | Collection time and the input that produced the row |
Board row:
{"dataType": "board","board_id": "155303955839176079","name": "Etsy Finds","description": "Embrace the best of Etsy from handmade to hand-painted, custom crafts and unique goods you can't get anywhere else.","board_url": "https://www.pinterest.com/etsy/etsy-finds/","pin_count": 3129,"follower_count": 11035364,"section_count": 1,"cover_image_url": "https://i.pinimg.com/custom_covers/200x150/155303955839176079_1701725246.jpg","owner_username": "etsy","scraped_at": "2026-10-01T12:42:44.037Z","source_url": "etsy"}
Pin row:
{"dataType": "pin","pin_id": "32088216098599232","title": null,"description": "Hot cross buns are a delicious Easter tradition. #easylunchrecipes #familydinner #marthastewart #recipes","pin_url": "https://www.pinterest.com/pin/32088216098599232/","image_url": "https://i.pinimg.com/564x/41/98/ec/4198ec6fffd11cfab307355423d6ab8a.jpg","download_image_url": "https://i.pinimg.com/564x/41/98/ec/4198ec6fffd11cfab307355423d6ab8a.jpg","image_width": 564,"image_height": 846,"dominant_color": "#d19462","is_video": false,"video_url": null,"download_video_url": null,"save_count": 16,"comment_count": null,"hashtags": [],"link": "https://www.marthastewart.com/332286/hot-cross-buns","source_domain": "marthastewart.com","price": null,"board_name": "Baking and Dessert Recipes and Ideas","board_url": "https://www.pinterest.com/marthastewart/baking-and-dessert-recipes-and-ideas/","pinner_username": null,"pinner_display_name": "Martha Stewart","pinner_follower_count": 1867977,"created_at": null,"scraped_at": "2026-10-01T12:42:22.779Z","source_url": "https://www.pinterest.com/marthastewart/baking-and-dessert-recipes-and-ideas/"}
Pricing
This Actor uses Pay per event with Apify platform usage included in the event price. The events are Actor Start (once per run), Board scraped (one per board row) and Pin scraped (one per pin row). For example, one board with 100 returned pins is one start event, one board event and 100 pin events; a profile directory of 30 boards with includeBoardPins off is one start event and 30 board events. You pay for rows returned, not rows requested. The live Pricing tab on this page shows the current price of each event.
API example
curl -X POST "https://api.apify.com/v2/acts/khadinakbar~pinterest-boards-scraper/run-sync-get-dataset-items?token=YOUR_API_TOKEN" \-H "Content-Type: application/json" \-d '{"startUrls": ["https://www.pinterest.com/etsy/etsy-finds/"], "maxPinsPerBoard": 25}'
from apify_client import ApifyClientclient = ApifyClient("YOUR_API_TOKEN")run = client.actor("khadinakbar/pinterest-boards-scraper").call(run_input={"usernames": ["etsy"], "mode": "user-boards", "maxBoardsPerUser": 50})boards = [row for row in client.dataset(run["defaultDatasetId"]).iterate_items() if row["dataType"] == "board"]print(len(boards))
Use with AI agents (MCP)
Connect the Actor to Claude, ChatGPT, Cursor or any MCP client through Apify MCP, where it appears as apify--pinterest-boards-scraper. Example prompt:
List the public Pinterest boards owned by etsy with their pin and follower counts, then collect 20 pins from the largest board and tell me the top outbound domains.
The agent starts the Actor, reads the dataset with get-dataset-items, splits rows by dataType, and summarizes source_domain across pin rows. Keep board_url, pin_url and scraped_at for provenance. To keep cost in scope, ask the agent to set maxPinsPerBoard and maxBoardsPerUser before it starts.
Best results
| Starting situation | Helpful action | Expected outcome |
|---|---|---|
| You only need a profile's board list | Use user-boards mode with includeBoardPins off | One quick row per board |
| You want a sample of pins across many boards | Turn on includeBoardPins with a small maxPinsPerBoard | Balanced pin coverage per board |
| You want board stats for comparison | Set maxPinsPerBoard to 0 | Board rows with counts and covers only |
| Mixed URLs and usernames | Keep mode on auto | Each target routed to the right job |
| Recurring tracking | Schedule the same input monthly | Comparable pin_count and follower_count over time |
Works with public boards and profiles; secret boards and logged-in feeds sit outside its public-data scope. Optional pin fields such as title, hashtags and created_at are filled when Pinterest includes them in the public board data, so plan on description as the main text field.
Builder's note
I designed this Actor around the board, because that is how Pinterest accounts organize their thinking and how most research questions start. I found that a profile's board directory alone answers many competitive questions, so user mode returns boards by default and pins only when you ask, which keeps each job quick and spend tied to what you actually need.
FAQ
Do I need a Pinterest account?
No. The Actor reads public board and profile data and needs no cookies or login.
Can I scrape a single pin URL or search by keyword?
This Actor works at the board and profile level. For single pins, use Pinterest Pins Scraper; for keyword discovery, use Pinterest Search Scraper.
How many pins can I collect from a board?
You set the ceiling with maxPinsPerBoard. The dataset holds the public pins Pinterest returns for that board up to your limit.
Responsible use
This Actor collects public Pinterest data. Respect Pinterest's terms, image copyright and applicable privacy laws such as the GDPR and CCPA when you store or reuse creator names and media. Pinterest is a trademark of its owner; this independent Actor is not affiliated with or endorsed by Pinterest. For questions, open a ticket in the Issues tab.