
Instagram Reel Scraper
scrape.ly/store/echofield/instagram-reel-scraperSocial mediaVideos
1 monthly user

Scrape public Pinterest pins, boards, idea pages, comments, and profiles from URLs or a keyword. Full pin details and profile stats for social and ecommerce research. No login.
Collect public Pinterest pins, boards, idea pages, comments, and profiles from a URL or a keyword, with no login. The actor reads Pinterest's public data and saves one clean row per pin or profile. The result fee is $0.07 per 1,000 results, plus platform usage.
Search a keyword, paste a pin, board, idea, or profile URL, and export the rows as JSON, CSV, or Excel.
| Field | Type | Description |
|---|---|---|
startUrls | array | Public pin, idea, board, profile, or pin-search URLs. |
search | string | Keyword to search. Used together with any URLs. |
maxItems | integer | Maximum pins and profiles to save. Default 10. |
endPage | integer | Last page to fetch per list. A page holds about 25 pins or 10 comments. |
minLikes, minRepins | integer | Keep pins with at least this many likes or saves. |
getDetails | boolean | Try to fetch the full record for pins found in lists. Without a login, Pinterest does not open search, idea, and board pins, so those rows keep the list fields. Pin URLs are always full records. |
includeComments | boolean | Attach public comments to pin URLs (and to listed pins that can be opened). |
includeCommentReplies | boolean | Attach replies under comments. Needs comments on. |
includeUserInfoOnly | boolean | For profile URLs, save the profile without pins and boards. |
proxyConfiguration | object | Proxy settings. Datacenter is the default. |
{
"search": "nail art",
"maxItems": 10,
"endPage": 1,
"getDetails": false
}
A pin with comments:
{
"startUrls": ["https://www.pinterest.com/pin/973481275688876750/"],
"maxItems": 1,
"includeComments": true,
"includeCommentReplies": true
}
| Field | Description |
|---|---|
inputSource, type, url, id | Where the row came from, pin or profile, link, and id. |
grid_title, description | Title and description. |
images | Image URLs by size, including orig. |
board, owner, pinner | Board and the people behind the pin. |
like_count, comment_count | Engagement counts. Repin counts appear in full details. |
domain | Source site of the pin. |
follower_count, pin_count, board_count | Profile rows. |
comments | Nested comments when enabled. |
A trimmed pin row (the pinner shown is a fictional example):
{
"inputSource": "https://www.pinterest.com/pin/216313588357254751/",
"type": "pin",
"url": "https://www.pinterest.com/pin/216313588357254751/",
"id": "216313588357254751",
"grid_title": "Ins-inspired Handmade Press On Nails (30pcs) | Cute Acrylic Nails for a Stylish,…",
"description": "Each set features Ins-inspired designs that align with the latest nail art trend…",
"domain": "walmart.com",
"comment_count": 0,
"created_at": "Thu, 01 Oct 2026 22:54:15 +0000",
"board": { "id": "100000000000002", "name": "Hair & Nails", "url": "/janedoe/hair-nails/" },
"closeup_attribution": { "full_name": "Walmart", "username": "Walmart", "follower_count": 2308304 },
"images": {
"236x": { "width": 236, "height": 236, "url": "https://i.pinimg.com/236x/fd/13/82/fd1382b480bf8e177c8615b95bec9141.jpg" },
"orig": { "width": 450, "height": 450, "url": "https://i.pinimg.com/originals/fd/13/82/fd1382b480bf8e177c8615b95bec9141.jpg" }
},
"pinner": { "id": "100000000000001", "username": "janedoe", "full_name": "Jane Doe", "follower_count": 207 }
}
You pay $0.00007 per saved pin or profile, which is $0.07 per 1,000 results. Platform usage (compute and proxy) is billed on top at the usual rates, and on small runs compute is the larger part. Comments, replies, pin URLs, and boards nested inside a row are not charged separately.
Worked example: 1,000 pins cost 1,000 x $0.00007 = $0.07 in result fees, and 10 pins cost $0.0007. Full pin details use the same result charge. Pin URLs need one extra request per pin, and comments one more per page of comments.
No. Private profiles, secret boards, and anything that asks you to sign in are skipped.
It reads public pages. You are responsible for following Pinterest's terms and the laws that apply to your use of the data, including for personal data.
Each pin row and each profile row is one result.
The public search feed often omits saves. For repins, SEO fields, or comments, pass the pin URLs themselves (or a profile URL, whose pin URLs open normally).
Without a login, Pinterest gives pins in search, idea, and board lists a scrambled id (it starts with e1_). Pinterest answers "Pin not found" for those ids, on its API, on the pin page, and in a real browser alike, so their detail record and comment thread cannot be read. These rows keep the list fields (title, description when the pinner wrote one, images, board, pinner, likes, created date), and the run's status message counts them. Pin URLs with a numeric id, such as https://www.pinterest.com/pin/973481275688876750/, and the pin URLs in profile rows open normally with full details and comments.
Yes. Schedule runs, start them through the API, and read the dataset in any export format.
If you are moving from another Pinterest scraper, the same public pin, idea, board, profile, and search URLs apply.
Every field below can be set in the run form, passed through the API, or saved as a task. Unset fields fall back to the defaults shown.
startUrlsarrayOptionalPinterest URLs
Public pin, idea, board, profile, or pin-search URLs. Profile URLs ending in _saved or _created are read as the same profile.
searchstringOptionalSearch keyword
Keyword to search on Pinterest. Used together with any URLs above.
maxItemsintegerOptionaldefault 10Maximum results
Maximum number of pins and profiles to save.
Limit how many pages are fetched and drop pins below an engagement threshold.
endPageintegerOptionaldefault 1Last page
Last page to fetch for each search, board, idea, profile list, and comment thread. A page holds about 25 pins or 10 comments. Pinterest starts repeating pins after roughly 25 search pages, so the run stops a list early when pages bring nothing new.
minLikesintegerOptionalMinimum likes
Keep pins with at least this many likes. Leave empty to keep every pin.
minRepinsintegerOptionalMinimum repins
Keep pins with at least this many saves when a repin count is present. Pins without a count are kept.
Choose full pins, comments, and how much of a profile to collect.
getDetailsbooleanOptionaldefault trueFull pin details
Fetch the full record for listed pins that Pinterest opens without a login. Search, idea, and board pins carry scrambled ids Pinterest does not open, so they keep the list fields. Pin URLs are always full records.
includeCommentsbooleanOptionaldefault falseInclude comments
Attach public comments to pin URLs and to listed pins that can be opened. Search, idea, and board pins have no readable comment thread without a login.
includeCommentRepliesbooleanOptionaldefault falseInclude comment replies
Attach replies under comments that have them. Requires Include comments.
includeUserInfoOnlybooleanOptionaldefault falseProfile only
For profile URLs, save the profile without its pin URLs and boards.
proxyConfigurationobjectOptionaldefault {"useScrapelyProxy":true,"scrapelyProxyGroups":["DATACENTER…Proxy configuration
Datacenter proxies are used unless you choose another pool.
Every run writes its results to a dataset. Preview it in the dashboard, then export it or read it through the API.
| Field | Type | Description |
|---|---|---|
| inputSource | string | |
| type | string | |
| url | string | |
| id | string | |
| grid_title | string | |
| description | string | |
| domain | string | |
| like_count | integer | |
| repin_count | integer | |
| comment_count | integer | |
| username | string | |
| full_name | string | |
| follower_count | integer | |
| pin_count | integer | |
| created_at | string |
You pay for the events the actor reports, such as each result or page it produces. Platform usage is included in the event prices.
| Event | Charged when | Price |
|---|---|---|
| Result | One pin or profile saved to the dataset. | $0.00007 |
Run this actor from your own code. Swap in your API token and the examples work as-is.
import { ScrapelyClient } from 'scrapely-client'
const client = new ScrapelyClient({ token: process.env.SCRAPELY_TOKEN })
// Start the actor and wait for the run to finish.
const run = await client.actor('echofield/pinterest-scraper').call({
"startUrls": [
"https://www.pinterest.com/search/pins/?q=nail%20art"
],
"maxItems": 10,
"endPage": 1,
"proxyConfiguration": {
"useScrapelyProxy": true,
"scrapelyProxyGroups": [
"DATACENTER"
]
}
})
// Read the dataset the run produced.
const { items } = await client.dataset(run.defaultDatasetId).listItems()
console.log(items)Tokens live in your account settings. Keep them server-side: a token carries the full permissions of your account.
Connect the Scrape.ly MCP server once and your agent can run this actor as a tool. Pick your tool:
Fetch scrape.ly/agents.md and run echofield/pinterest-scraperPaste into Claude Code, Codex, Cursor or any AI agent. It signs you in once in the browser.
{
"mcpServers": {
"scrapely": {
"url": "https://api.scrape.ly/mcp?tools=actors,runs,storage,docs&actors=echofield/pinterest-scraper"
}
}
}No key in the file: your client opens the browser to sign you in the first time it connects.
Inputs the developer prepared for common jobs. Open one to see its input, then copy it to your account to run it as-is or adjust it.
Pin search with full details, comments and replies.
Quick pin search without details.
Pins from a Pinterest board URL.
Full data for pin URLs including comments.
Scrape.ly gives you the infrastructure, the tooling, and the team to extract, process, and operationalize web data at any scale. Setup takes minutes. The advantage lasts forever.