Pinterest Scraper: Ideas, Pins & Monitoring avatar

Pinterest Scraper: Ideas, Pins & Monitoring

Pricing

from $1.25 / 1,000 pinterest pins

Go to Apify Store
Pinterest Scraper: Ideas, Pins & Monitoring

Pinterest Scraper: Ideas, Pins & Monitoring

Scrape Pinterest pins, Ideas feeds, topics, profiles, boards, sections, comments and product data. Find creators, filter results, and monitor new pins or engagement changes—no login required.

Pricing

from $1.25 / 1,000 pinterest pins

Rating

0.0

(0)

Developer

ScrapingMonkey

ScrapingMonkey

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

8 days ago

Last modified

Share

Pinterest Scraper - Pins, Ideas, Profiles, Boards, Products and Monitoring

Extract public Pinterest search results, the main Ideas feed, Ideas topic pages, pin details, videos, profiles, boards, sections, comments, Tried It responses, product offers, creator leads, and monitored changes into structured datasets ready for analysis or automation.

  • Search pins, videos, boards, or profiles with automatic pagination
  • Scrape both the main /ideas/ feed and individual /ideas/topic/id/ pages
  • Mix Pin, profile, board, search, and Ideas URLs in one Auto run
  • Collect detailed pin media, creator, engagement, annotation, and shopping metadata
  • Extract profile information together with created pins and owned boards
  • Crawl board pins, sections, and the pins inside each section
  • Collect public comments and Pinterest Tried It responses
  • Filter by saves, followers, domain, date, Pin type, price, currency, or merchant verification
  • Generate deduplicated creator-lead rows and a run-level analytics summary
  • Monitor only new pins or new pins plus engagement and commerce changes
  • Process up to 100 search terms, Pin IDs, profiles, boards, Ideas URLs, or mixed start URLs in one run
  • Run up to 20 independent inputs and detail enrichments concurrently
  • Choose a request language and residential-proxy country without supplying credentials
  • Export results to JSON, CSV, Excel, XML, or access them through the Apify API

What can you do with this Pinterest Scraper?

ModeInputOutputBest for
searchSearch terms and searchTypePins, video pins, boards, or profilesDiscovery, content research, market mapping
autoMixed public Pinterest URLsThe correct record type for every recognized URLMulti-source collection in one scheduled run
ideasMain Ideas URL or Ideas topic URLsRoot discovery pins; topic metadata and topic pinsTrend discovery and category research
pinDetailsNumeric Pin IDs or Pin URLsComplete pin records; optional commentsCreative, product, media, and engagement analysis
profileUsernames, @usernames, or profile URLsProfile plus optional created pins and boardsCreator and brand research
boardPublic board URLsBoard, pins, sections, and optional section pinsTopic and collection analysis
commentsNumeric Pin IDs or Pin URLsComments and Tried It responsesAudience feedback research
relatedPinsNumeric Pin IDs or Pin URLsPinterest recommendations related to each source pinContent expansion and similarity research

Choose one specialized mode or use auto to combine supported URL types. Batch inputs run concurrently, while output order remains deterministic. Every content row includes source metadata so results can be traced back to the search term, profile, board, Ideas page, section, or source pin that produced it.

Quick start

  1. Open the Actor and click Try for free.
  2. Keep search selected and enter a keyword such as modern kitchen.
  3. Choose pins, videos, boards, or profiles and set maxResults.
  4. Click Start.
  5. Preview the dataset or download it in your preferred format.

The default input is a small search for public pins and requires no Pinterest account, API key, cookies, or user-supplied proxy configuration.

Input examples

Search pins, videos, boards, or profiles

{
"mode": "search",
"searchTerms": ["modern kitchen", "home office ideas"],
"searchType": "pins",
"maxResults": 20,
"country": "US",
"language": "en",
"includePinDetails": false
}

maxResults applies separately to each search term. One row represents one pin, board, or profile returned for that term.

Combine mixed Pinterest URLs

{
"mode": "auto",
"startUrls": [
"https://www.pinterest.com/ideas/",
"https://www.pinterest.com/pinterest/",
"https://www.pinterest.com/pin/500532946109224497/",
"https://www.pinterest.com/search/pins/?q=summer%20fashion"
],
"maxResults": 25,
"maxItems": 100,
"maxConcurrency": 5,
"includePinDetails": false
}

Scrape the main Ideas feed and a topic

{
"mode": "ideas",
"ideasUrls": [
"https://www.pinterest.com/ideas/",
"https://www.pinterest.com/ideas/beauty/935541271955/"
],
"maxResults": 50,
"includeTopicMetadata": true,
"includePinDetails": false,
"country": "US",
"language": "en"
}

The main Ideas page uses its own cursor-based discovery feed. A topic URL returns one complete ideaTopic row when includeTopicMetadata is enabled, followed by its paginated pins.

Get complete pin details and comments

{
"mode": "pinDetails",
"pinIds": ["1020909809261285009", "https://www.pinterest.com/pin/500532946109224497/"],
"includeComments": true,
"maxComments": 100,
"country": "US",
"language": "en"
}

Collect profiles, created pins, and boards

{
"mode": "profile",
"profiles": ["fitnessmagazine", "https://www.pinterest.com/94nissans/"],
"maxResults": 50,
"includePins": true,
"includeBoards": true,
"includePinDetails": false,
"country": "US",
"language": "en"
}

Collect a board, its sections, and their pins

{
"mode": "board",
"boardUrls": ["https://www.pinterest.com/luizacordery/fits/"],
"maxResults": 50,
"includePins": true,
"includeSections": true,
"includeSectionPins": true,
"includePinDetails": false,
"country": "US",
"language": "en"
}

Collect comments and Tried It responses

{
"mode": "comments",
"pinIds": ["1020909809261285009"],
"maxComments": 100,
"country": "US",
"language": "en"
}
{
"mode": "relatedPins",
"pinIds": ["500532946109224497"],
"maxResults": 100,
"includePinDetails": true,
"country": "US",
"language": "en"
}

Filter product pins and generate creator leads plus analytics

{
"mode": "search",
"searchTerms": ["minimalist furniture"],
"searchType": "pins",
"maxResults": 200,
"maxItems": 100,
"includePinDetails": true,
"pinType": "product",
"minSaves": 10,
"minPrice": 20,
"maxPrice": 500,
"currency": "USD",
"verifiedMerchantsOnly": false,
"includeCreatorLeads": true,
"includeAnalytics": true
}

Emit only new pins and later engagement changes

{
"mode": "board",
"boardUrls": ["https://www.pinterest.com/luizacordery/fits/"],
"maxResults": 500,
"includePins": true,
"monitorMode": "engagementChanges",
"monitorKey": "fashion-board-daily",
"maxConcurrency": 5
}

The first monitoring run emits every discovered Pin as monitorStatus: "new". Later runs suppress unchanged Pins and emit only new Pins or Pins whose engagement or commerce snapshot changed.

Complete output examples

Every row has a stable top-level shape for its recordType. Source fields that Pinterest does not provide are returned as null, false, empty objects, or empty arrays; top-level keys are not omitted. Dynamic image-size objects always contain the ten normalized size keys shown below. A failed primary input produces the documented error row instead of silently disappearing.

Complete pin output - 76 top-level fields

{
"recordType": "pin",
"pinId": "500532946109224497",
"nodeId": "UGluOjUwMDUzMjk0NjEwOTIyNDQ5Nw==",
"url": "https://www.pinterest.com/pin/500532946109224497/",
"type": "pin",
"title": "Modern kitchen inspiration",
"gridTitle": "Kitchen ideas",
"description": "Warm wood kitchen with product links #kitchen",
"descriptionHtml": "<p>Warm wood kitchen with product links</p>",
"altText": "Modern kitchen with wood cabinets",
"autoAltText": "A kitchen with wooden cabinets and white counters",
"seoTitle": "Modern kitchen inspiration",
"seoDescription": "Ideas for a modern wood kitchen",
"createdAt": "2026-07-28T14:20:00+00:00",
"domain": "example.com",
"link": "https://example.com/kitchen",
"trackedLink": "https://example.com/kitchen?ref=pinterest",
"utmLink": "https://example.com/kitchen?utm_source=pinterest",
"dominantColor": "#B8A58F",
"privacy": "public",
"method": "uploaded",
"isVideo": true,
"isStoryPin": true,
"isCarousel": true,
"isProductPin": true,
"isPromoted": false,
"isRepin": false,
"isUploaded": true,
"isNative": true,
"isPlayable": true,
"isOutOfStock": false,
"isStaleProduct": false,
"saveCount": 1240,
"repinCount": 1240,
"commentCount": 37,
"shareCount": 18,
"reactionCount": 12,
"reactionCounts": {
"heart": 9,
"idea": 3
},
"image": {
"url": "https://i.pinimg.com/originals/example.jpg",
"width": 1000,
"height": 1500,
"dominantColor": "#B8A58F"
},
"images": {
"60x60": {"url": "https://i.pinimg.com/60x60/example.jpg", "width": 60, "height": 60, "dominantColor": "#B8A58F"},
"136x136": {"url": "https://i.pinimg.com/136x136/example.jpg", "width": 136, "height": 136, "dominantColor": "#B8A58F"},
"170x": {"url": "https://i.pinimg.com/170x/example.jpg", "width": 170, "height": 255, "dominantColor": "#B8A58F"},
"236x": {"url": "https://i.pinimg.com/236x/example.jpg", "width": 236, "height": 354, "dominantColor": "#B8A58F"},
"474x": {"url": "https://i.pinimg.com/474x/example.jpg", "width": 474, "height": 711, "dominantColor": "#B8A58F"},
"564x": {"url": "https://i.pinimg.com/564x/example.jpg", "width": 564, "height": 846, "dominantColor": "#B8A58F"},
"600x315": {"url": "https://i.pinimg.com/600x315/example.jpg", "width": 600, "height": 315, "dominantColor": "#B8A58F"},
"736x": {"url": "https://i.pinimg.com/736x/example.jpg", "width": 736, "height": 1104, "dominantColor": "#B8A58F"},
"1200x": {"url": "https://i.pinimg.com/1200x/example.jpg", "width": 1000, "height": 1500, "dominantColor": "#B8A58F"},
"orig": {"url": "https://i.pinimg.com/originals/example.jpg", "width": 1000, "height": 1500, "dominantColor": "#B8A58F"}
},
"video": {
"format": "V_720P",
"url": "https://v.pinimg.com/videos/example.mp4",
"width": 720,
"height": 1280,
"durationMs": 11000,
"thumbnail": "https://i.pinimg.com/video-thumbnail.jpg",
"captions": [{"language": "en", "url": "https://v.pinimg.com/captions/en.vtt"}]
},
"videos": [{
"format": "V_720P",
"url": "https://v.pinimg.com/videos/example.mp4",
"width": 720,
"height": 1280,
"durationMs": 11000,
"thumbnail": "https://i.pinimg.com/video-thumbnail.jpg",
"captions": [{"language": "en", "url": "https://v.pinimg.com/captions/en.vtt"}]
}],
"story": {
"id": "story-123",
"pageCount": 1,
"pages": [{
"id": "page-1",
"type": "story_pin_page",
"title": "Choose the cabinets",
"description": "Start with the cabinet finish",
"image": {"url": "https://i.pinimg.com/story-page.jpg", "width": 720, "height": 1280, "dominantColor": "#B8A58F"},
"video": {"format": "V_720P", "url": "https://v.pinimg.com/story-page.mp4", "width": 720, "height": 1280, "durationMs": 8000, "thumbnail": "https://i.pinimg.com/story-video.jpg", "captions": [{"language": "en", "url": "https://v.pinimg.com/captions/story-en.vtt"}]}
}]
},
"carousel": {
"itemCount": 1,
"items": [{
"id": "slot-1",
"title": "Oak cabinet",
"description": "Natural oak finish",
"link": "https://example.com/oak-cabinet",
"image": {"url": "https://i.pinimg.com/carousel.jpg", "width": 736, "height": 1104, "dominantColor": "#B8A58F"},
"video": {"format": "V_720P", "url": "https://v.pinimg.com/carousel.mp4", "width": 720, "height": 1280, "durationMs": 7000, "thumbnail": "https://i.pinimg.com/carousel-video.jpg", "captions": [{"language": "en", "url": "https://v.pinimg.com/captions/carousel-en.vtt"}]}
}]
},
"pinner": {
"id": "241224261199462628",
"nodeId": "VXNlcjoyNDEyMjQyNjExOTk0NjI2Mjg=",
"username": "fitnessmagazine",
"fullName": "Fitness Magazine",
"firstName": "Fitness",
"followerCount": 190000,
"avatarUrl": "https://i.pinimg.com/75x75_RS/avatar.jpg",
"avatarSmallUrl": "https://i.pinimg.com/30x30_RS/avatar.jpg",
"websiteUrl": "https://www.fitnessmagazine.com/",
"domainUrl": "fitnessmagazine.com",
"isVerifiedMerchant": false,
"isPrimaryWebsiteVerified": true,
"domainVerified": true,
"isPartner": false
},
"originalCreator": {
"id": "555",
"nodeId": "VXNlcjo1NTU=",
"username": "designstudio",
"fullName": "Design Studio",
"firstName": "Design",
"followerCount": 45000,
"avatarUrl": "https://i.pinimg.com/75x75_RS/creator.jpg",
"avatarSmallUrl": "https://i.pinimg.com/30x30_RS/creator.jpg",
"websiteUrl": "https://example.com/",
"domainUrl": "example.com",
"isVerifiedMerchant": true,
"isPrimaryWebsiteVerified": true,
"domainVerified": true,
"isPartner": true
},
"board": {
"id": "500533014775145249",
"nodeId": "Qm9hcmQ6NTAwNTMzMDE0Nzc1MTQ1MjQ5",
"name": "Modern kitchens",
"url": "https://www.pinterest.com/designstudio/modern-kitchens/",
"description": "Kitchen inspiration",
"privacy": "public",
"category": "home_decor",
"pinCount": 250,
"followerCount": 3200,
"sectionCount": 4,
"isCollaborative": false,
"collaboratorCount": 0,
"coverImageUrl": "https://i.pinimg.com/board-cover.jpg",
"owner": {"id": "555", "nodeId": "VXNlcjo1NTU=", "username": "designstudio", "fullName": "Design Studio", "avatarUrl": "https://i.pinimg.com/75x75_RS/creator.jpg"}
},
"price": 6.99,
"currency": "USD",
"priceText": "6.99 USD",
"standardPrice": 9.99,
"discountPercent": 30.03,
"availability": "in stock",
"products": [{
"id": "product-1",
"itemId": "sku-123",
"itemSetId": "set-45",
"name": "Oak cabinet sample",
"purchaseUrl": "https://example.com/oak-cabinet",
"price": 6.99,
"standardPrice": 9.99,
"currency": "USD",
"inStock": true,
"availability": "in stock",
"condition": "new",
"minAdPrice": 6.5,
"hasMultipleImages": true,
"additionalImages": [{"url": "https://i.pinimg.com/product-alt.jpg", "width": 800, "height": 800, "dominantColor": "#B8A58F"}],
"shippingInfo": {"price": 4.99, "currency": "USD", "deliveryText": "Delivery in 3-5 days"},
"offers": [{"id": "offer-1", "name": "Standard offer", "price": 6.99, "currency": "USD", "standardPrice": 9.99, "minAdPrice": 6.5, "availability": "in stock", "condition": "new", "inStock": true}]
}],
"merchant": {
"id": "merchant-1",
"username": "designshop",
"fullName": "Design Shop",
"followerCount": 87000,
"isVerifiedMerchant": true,
"avatarUrl": "https://i.pinimg.com/75x75_RS/merchant.jpg",
"websiteUrl": "https://example.com/"
},
"aggregateRating": {"ratingValue": 4.7, "ratingCount": 215, "reviewCount": 84},
"annotations": {
"visual": ["kitchen", "cabinet"],
"withLinks": [{"name": "Kitchen design", "url": "https://www.pinterest.com/ideas/kitchen-design/"}],
"manualInterestTags": ["interior design"],
"visualObjects": [{"label": "cabinet", "score": 0.98, "x": 0.1, "y": 0.2, "width": 0.5, "height": 0.6}]
},
"hashtags": ["kitchen"],
"topics": [{"id": "topic-1", "name": "Kitchen design"}],
"shoppingFlags": ["product_pin"],
"detailsEnriched": true,
"enrichmentError": null,
"sourceType": "relatedPins",
"sourceValue": "500532946109224497",
"sourceUrl": "/pin/500532946109224497/",
"sourceRank": 1,
"searchTerm": null,
"searchType": null,
"country": "US",
"language": "en",
"scrapedAt": "2026-08-08T06:30:00+00:00",
"monitorStatus": "changed",
"monitorKey": "fashion-board-daily",
"previousScrapedAt": "2026-08-07T06:30:00+00:00",
"changedFields": ["saveCount", "reactionCount"],
"previousSnapshot": {
"title": "Modern kitchen inspiration",
"description": "Warm wood kitchen with product links #kitchen",
"url": "https://www.pinterest.com/pin/500532946109224497/",
"link": "https://example.com/kitchen",
"saveCount": 1201,
"repinCount": 1201,
"commentCount": 37,
"shareCount": 18,
"reactionCount": 10,
"price": 6.99,
"currency": "USD",
"availability": "in stock",
"isOutOfStock": false
}
}

Complete board output - 31 top-level fields

{
"recordType": "board",
"boardId": "500533014775145249",
"nodeId": "Qm9hcmQ6NTAwNTMzMDE0Nzc1MTQ1MjQ5",
"url": "https://www.pinterest.com/luizacordery/fits/",
"name": "fits !",
"description": "Outfit inspiration",
"privacy": "public",
"category": "womens_fashion",
"layout": "default",
"pinCount": 175,
"sectionCount": 4,
"sectionlessPinCount": 47,
"followerCount": 25800,
"collaboratorCount": 0,
"isCollaborative": false,
"followedByMe": false,
"collaboratedByMe": false,
"shouldShowCollaborators": false,
"allowHomefeedRecommendations": true,
"owner": {"id": "500533083494204555", "nodeId": "VXNlcjo1MDA1MzMwODM0OTQyMDQ1NTU=", "username": "luizacordery", "fullName": "Luiza Cordery", "avatarUrl": "https://i.pinimg.com/75x75_RS/owner.jpg"},
"coverImage": {"url": "https://i.pinimg.com/board-cover.jpg", "width": 736, "height": 1104, "dominantColor": "#AEA195"},
"images": [{"url": "https://i.pinimg.com/board-preview.jpg", "width": 236, "height": 354, "dominantColor": "#AEA195"}],
"pinThumbnailUrls": ["https://i.pinimg.com/75x75/thumbnail.jpg"],
"eligiblePinTypeFilters": ["all", "videos", "products"],
"sourceType": "board",
"sourceValue": "https://www.pinterest.com/luizacordery/fits/",
"sourceUrl": "/luizacordery/fits/",
"sourceRank": 1,
"country": "US",
"language": "en",
"scrapedAt": "2026-08-08T06:30:00+00:00"
}

Complete boardSection output - 20 top-level fields

{
"recordType": "boardSection",
"sectionId": "5407676776130327804",
"nodeId": "Qm9hcmRTZWN0aW9uOjU0MDc2NzY3NzYxMzAzMjc4MDQ=",
"title": "doll outfit inspo",
"slug": "doll-outfit-inspo",
"url": "https://www.pinterest.com/luizacordery/fits/doll-outfit-inspo/",
"description": "Outfits and accessories",
"pinCount": 48,
"boardId": "500533014775145249",
"boardName": "fits !",
"boardUrl": "https://www.pinterest.com/luizacordery/fits/",
"owner": {"id": "500533083494204555", "nodeId": "VXNlcjo1MDA1MzMwODM0OTQyMDQ1NTU=", "username": "luizacordery", "fullName": "Luiza Cordery", "avatarUrl": "https://i.pinimg.com/75x75_RS/owner.jpg"},
"previewPins": [{"pinId": "500532946109468743", "url": "https://www.pinterest.com/pin/500532946109468743/", "title": "Outfit idea", "image": {"url": "https://i.pinimg.com/236x/outfit.jpg", "width": 236, "height": 419, "dominantColor": "#AEA195"}}],
"sourceType": "boardSection",
"sourceValue": "https://www.pinterest.com/luizacordery/fits/",
"sourceUrl": "/luizacordery/fits/doll-outfit-inspo/",
"sourceRank": 1,
"country": "US",
"language": "en",
"scrapedAt": "2026-08-08T06:30:00+00:00"
}

Complete profile output - 63 top-level fields

{
"recordType": "profile",
"profileId": "241224261199462628",
"nodeId": "VXNlcjoyNDEyMjQyNjExOTk0NjI2Mjg=",
"username": "fitnessmagazine",
"url": "https://www.pinterest.com/fitnessmagazine/",
"fullName": "Fitness Magazine",
"firstName": "Fitness",
"lastName": "Magazine",
"about": "Workout, wellness, and healthy living ideas",
"websiteUrl": "https://www.fitnessmagazine.com/",
"listedWebsiteUrl": "fitnessmagazine.com",
"domainUrl": "fitnessmagazine.com",
"imageSmallUrl": "https://i.pinimg.com/30x30_RS/profile.jpg",
"imageMediumUrl": "https://i.pinimg.com/75x75_RS/profile.jpg",
"imageLargeUrl": "https://i.pinimg.com/140x140_RS/profile.jpg",
"imageXLargeUrl": "https://i.pinimg.com/280x280_RS/profile.jpg",
"profileCoverUrl": "https://i.pinimg.com/profile-cover.jpg",
"followerCount": 190000,
"followingCount": 150,
"explicitFollowingCount": 120,
"interestFollowingCount": 30,
"pinCount": 14200,
"nativePinCount": 3200,
"videoPinCount": 420,
"storyPinCount": 85,
"boardCount": 120,
"groupBoardCount": 4,
"pinsDoneCount": 12,
"profileViews": 2500000,
"profileReach": 1800000,
"isVerifiedMerchant": false,
"isVerifiedIdentity": true,
"verifiedIdentityName": "fitnessmagazine",
"isPartner": true,
"partner": {"nodeId": "UGFydG5lcjoyNDEyMjQyNjExOTk0NjI2Mjg=", "isBoostAPinPartner": false, "enableProfileMessage": false},
"domainVerified": true,
"isPrimaryWebsiteVerified": true,
"isPrivateProfile": false,
"isAdsOnlyProfile": false,
"isDefaultImage": false,
"isInspirationalMerchant": false,
"isTastemaker": true,
"isBusinessAccount": true,
"hasCatalog": false,
"hasShoppingShowcase": false,
"hasShowcase": true,
"hasPublishedPins": true,
"indexed": true,
"instagramUsername": "fitnessmagazine",
"instagramUrl": "https://www.instagram.com/fitnessmagazine/",
"createdAt": "2012-05-10T12:00:00+00:00",
"lastPinSaveTime": "2026-08-07T18:22:00+00:00",
"seoTitle": "Fitness Magazine on Pinterest",
"seoDescription": "Workout and wellness inspiration",
"seoNoindexReason": null,
"recentPinImages": [{"url": "https://i.pinimg.com/222x/recent.jpg", "width": 222, "height": 333, "dominantColor": "#A0815F"}],
"sourceType": "profile",
"sourceValue": "fitnessmagazine",
"sourceUrl": "/fitnessmagazine/",
"sourceRank": 1,
"country": "US",
"language": "en",
"scrapedAt": "2026-08-08T06:30:00+00:00"
}

Complete comment output - 29 top-level fields

{
"recordType": "comment",
"commentId": "comment-123",
"nodeId": "Q29tbWVudDoxMjM=",
"pinId": "1020909809261285009",
"pinUrl": "https://www.pinterest.com/pin/1020909809261285009/",
"aggregatedPinId": "5277747762016869223",
"type": "aggregatedcomment",
"text": "This layout worked well in my kitchen.",
"createdAt": "2026-08-01T11:30:00+00:00",
"helpfulCount": 14,
"likeCount": 8,
"commentCount": 2,
"reactionCount": 5,
"reactionCounts": {"heart": 4, "idea": 1},
"highlightedByPinOwner": true,
"isEdited": false,
"isTranslatable": true,
"markedHelpfulByMe": false,
"likedByMe": false,
"media": {
"type": "video",
"image": {"url": "https://i.pinimg.com/comment-image.jpg", "width": 720, "height": 960, "dominantColor": "#C4B6A4"},
"video": {"format": "V_720P", "url": "https://v.pinimg.com/comment-video.mp4", "width": 720, "height": 1280, "durationMs": 9000, "thumbnail": "https://i.pinimg.com/comment-video.jpg", "captions": [{"language": "en", "url": "https://v.pinimg.com/captions/comment-en.vtt"}]}
},
"images": [{"url": "https://i.pinimg.com/comment-extra.jpg", "width": 720, "height": 960, "dominantColor": "#C4B6A4"}],
"videos": [{"format": "V_720P", "url": "https://v.pinimg.com/comment-extra.mp4", "width": 720, "height": 1280, "durationMs": 9000, "thumbnail": "https://i.pinimg.com/comment-extra-video.jpg", "captions": [{"language": "en", "url": "https://v.pinimg.com/captions/comment-extra-en.vtt"}]}],
"tags": ["helpful"],
"taggedUsers": [{"id": "555", "nodeId": "VXNlcjo1NTU=", "username": "designstudio", "fullName": "Design Studio", "firstName": "Design", "followerCount": 45000, "avatarUrl": "https://i.pinimg.com/75x75_RS/creator.jpg", "avatarSmallUrl": "https://i.pinimg.com/30x30_RS/creator.jpg", "websiteUrl": "https://example.com/", "domainUrl": "example.com", "isVerifiedMerchant": true, "isPrimaryWebsiteVerified": true, "domainVerified": true, "isPartner": true}],
"user": {"id": "777", "nodeId": "VXNlcjo3Nzc=", "username": "homecreator", "fullName": "Home Creator", "firstName": "Home", "followerCount": 1200, "avatarUrl": "https://i.pinimg.com/75x75_RS/commenter.jpg", "avatarSmallUrl": "https://i.pinimg.com/30x30_RS/commenter.jpg", "websiteUrl": "https://home.example/", "domainUrl": "home.example", "isVerifiedMerchant": false, "isPrimaryWebsiteVerified": false, "domainVerified": false, "isPartner": false},
"sourceRank": 1,
"country": "US",
"language": "en",
"scrapedAt": "2026-08-08T06:30:00+00:00"
}

Complete triedIt output - 25 top-level fields

{
"recordType": "triedIt",
"triedItId": "didit-456",
"nodeId": "VXNlckRpZEl0RGF0YTo0NTY=",
"pinId": "1020909809261285009",
"pinUrl": "https://www.pinterest.com/pin/1020909809261285009/",
"aggregatedPinId": "5277747762016869223",
"type": "userdiditdata",
"details": "I tried this with darker cabinets and recommend it.",
"doneAt": "2026-07-20T09:15:00+00:00",
"textTags": ["recommended"],
"helpfulCount": 22,
"likeCount": 11,
"commentCount": 3,
"likedByMe": false,
"markedHelpfulByMe": false,
"images": [{"url": "https://i.pinimg.com/tried-it.jpg", "width": 720, "height": 960, "dominantColor": "#6F6257"}],
"videos": [{"format": "V_720P", "url": "https://v.pinimg.com/tried-it.mp4", "width": 720, "height": 1280, "durationMs": 12000, "thumbnail": "https://i.pinimg.com/tried-it-video.jpg", "captions": [{"language": "en", "url": "https://v.pinimg.com/captions/tried-it-en.vtt"}]}],
"imageSignatures": ["35c65aaa5238fbfa72540eb46090c656"],
"tags": ["kitchen", "renovation"],
"taggedUsers": [{"id": "555", "nodeId": "VXNlcjo1NTU=", "username": "designstudio", "fullName": "Design Studio", "firstName": "Design", "followerCount": 45000, "avatarUrl": "https://i.pinimg.com/75x75_RS/creator.jpg", "avatarSmallUrl": "https://i.pinimg.com/30x30_RS/creator.jpg", "websiteUrl": "https://example.com/", "domainUrl": "example.com", "isVerifiedMerchant": true, "isPrimaryWebsiteVerified": true, "domainVerified": true, "isPartner": true}],
"user": {"id": "888", "nodeId": "VXNlcjo4ODg=", "username": "renovator", "fullName": "Weekend Renovator", "firstName": "Weekend", "followerCount": 680, "avatarUrl": "https://i.pinimg.com/75x75_RS/renovator.jpg", "avatarSmallUrl": "https://i.pinimg.com/30x30_RS/renovator.jpg", "websiteUrl": null, "domainUrl": null, "isVerifiedMerchant": false, "isPrimaryWebsiteVerified": false, "domainVerified": false, "isPartner": false},
"sourceRank": 2,
"country": "US",
"language": "en",
"scrapedAt": "2026-08-08T06:30:00+00:00"
}

Complete ideaTopic output - 38 top-level fields

{
"recordType": "ideaTopic",
"topicId": "935541271955",
"nodeId": null,
"url": "https://www.pinterest.com/ideas/beauty/935541271955/",
"slug": "beauty",
"key": "beauty",
"canonicalTerm": "Beauty",
"name": "Beauty",
"title": "Beauty ideas and inspiration",
"description": "Discover beauty ideas, looks, products, and inspiration.",
"image": {
"url": "https://i.pinimg.com/ideas/beauty.jpg",
"width": 736,
"height": 1104,
"dominantColor": "#D9B7AE"
},
"imageSize": {"width": 736, "height": 1104},
"imageSignature": "6dd7441e84b61ec140dd2b645727ea55",
"imageSource": {"url": "https://i.pinimg.com/ideas/beauty.jpg", "width": 736, "height": 1104},
"backgroundColor": "#D9B7AE",
"followerCount": 2385000,
"searchCount": 18200000,
"isIdeasHub": true,
"isInterest": true,
"isKlpTerm": true,
"relatedBoards": [{"id": "board-1", "name": "Beauty inspiration"}],
"relatedInterests": [{"id": "interest-1", "name": "Makeup"}],
"relatedQuestions": ["What beauty looks are trending?"],
"trendingSearches": ["natural makeup", "summer nails"],
"pivots": [{"title": "Hair", "url": "/ideas/hair/935541270803/"}],
"seoBreadcrumbs": [{"name": "Ideas", "url": "/ideas/"}, {"name": "Beauty", "url": "/ideas/beauty/935541271955/"}],
"holidays": {"name": "Summer", "date": "2026-06-21"},
"articles": [{"title": "Beauty ideas", "url": "https://www.pinterest.com/ideas/beauty/935541271955/"}],
"feedUpdatedAt": "2026-08-08T04:00:00+00:00",
"topicUpdatedAt": "2026-08-07T22:10:00+00:00",
"pageMetadata": {"title": "Beauty ideas", "description": "Beauty inspiration on Pinterest"},
"sourceType": "ideaTopic",
"sourceValue": "https://www.pinterest.com/ideas/beauty/935541271955/",
"sourceUrl": "/ideas/beauty/935541271955/",
"sourceRank": 1,
"country": "US",
"language": "en",
"scrapedAt": "2026-08-08T06:30:00+00:00"
}

Complete creatorLead output - 25 top-level fields

{
"recordType": "creatorLead",
"leadId": "241224261199462628",
"username": "fitnessmagazine",
"url": "https://www.pinterest.com/fitnessmagazine/",
"fullName": "Fitness Magazine",
"followerCount": 190000,
"websiteUrl": "https://www.fitnessmagazine.com/",
"domainUrl": "fitnessmagazine.com",
"instagramUsername": "fitnessmagazine",
"instagramUrl": "https://www.instagram.com/fitnessmagazine/",
"avatarUrl": "https://i.pinimg.com/75x75_RS/avatar.jpg",
"isVerifiedMerchant": false,
"isPrimaryWebsiteVerified": true,
"domainVerified": true,
"isPartner": false,
"isBusinessAccount": true,
"hasCatalog": true,
"hasShoppingShowcase": true,
"leadScore": 70,
"sourceType": "profile",
"sourceValue": "fitnessmagazine",
"sourceUrl": "/fitnessmagazine/",
"country": "US",
"language": "en",
"scrapedAt": "2026-08-08T06:30:00+00:00"
}

Complete analytics output - 24 top-level fields

{
"recordType": "analytics",
"totalPins": 95,
"totalBoards": 4,
"totalBoardSections": 6,
"totalProfiles": 2,
"totalComments": 18,
"totalTriedIt": 3,
"totalIdeaTopics": 1,
"totalCreatorLeads": 12,
"productPins": 31,
"videoPins": 22,
"storyPins": 8,
"totalSaves": 84230,
"totalReactions": 1380,
"averageSaves": 886.6316,
"priceStats": {"count": 31, "minimum": 5.99, "maximum": 499.0, "average": 84.4513},
"currencyCounts": {"USD": 27, "EUR": 4},
"topDomains": [{"domain": "etsy.com", "count": 19}, {"domain": "example.com", "count": 12}],
"topHashtags": [{"hashtag": "homedecor", "count": 17}, {"hashtag": "diy", "count": 11}],
"topCreators": [{"username": "designstudio", "count": 14}, {"username": "fitnessmagazine", "count": 8}],
"sourceTypeCounts": {"search": 40, "ideas": 25, "profilePins": 20, "creatorLead": 12},
"country": "US",
"language": "en",
"scrapedAt": "2026-08-08T06:30:00+00:00"
}

Complete error output - 12 top-level fields

{
"recordType": "error",
"mode": "pinDetails",
"input": "999999999999999999",
"inputType": "pinId",
"url": "https://www.pinterest.com/pin/999999999999999999/",
"errorType": "not_found",
"errorMessage": "Pinterest pin 999999999999999999 was not found",
"httpStatus": 404,
"country": "US",
"language": "en",
"retryable": false,
"scrapedAt": "2026-08-08T06:30:00+00:00"
}

What data can you extract?

RecordComplete field inventory
Pin identity and contentrecordType, pinId, nodeId, url, type, title, gridTitle, description, descriptionHtml, altText, autoAltText, seoTitle, seoDescription, createdAt, domain, link, trackedLink, utmLink, dominantColor, privacy, method
Pin flags and engagementisVideo, isStoryPin, isCarousel, isProductPin, isPromoted, isRepin, isUploaded, isNative, isPlayable, isOutOfStock, isStaleProduct, saveCount, repinCount, commentCount, shareCount, reactionCount, reactionCounts
Pin media, people, and commerceimage, images, video, videos, story, carousel, pinner, originalCreator, board, price, currency, priceText, standardPrice, discountPercent, availability, products, merchant, aggregateRating, annotations, hashtags, topics, shoppingFlags, detailsEnriched, enrichmentError
Shared source traceability and monitoringsourceType, sourceValue, sourceUrl, sourceRank, searchTerm, searchType, country, language, scrapedAt, monitorStatus, monitorKey, previousScrapedAt, changedFields, previousSnapshot
BoardrecordType, boardId, nodeId, url, name, description, privacy, category, layout, pinCount, sectionCount, sectionlessPinCount, followerCount, collaboratorCount, isCollaborative, followedByMe, collaboratedByMe, shouldShowCollaborators, allowHomefeedRecommendations, owner, coverImage, images, pinThumbnailUrls, eligiblePinTypeFilters, sourceType, sourceValue, sourceUrl, sourceRank, country, language, scrapedAt
Board sectionrecordType, sectionId, nodeId, title, slug, url, description, pinCount, boardId, boardName, boardUrl, owner, previewPins, sourceType, sourceValue, sourceUrl, sourceRank, country, language, scrapedAt
ProfilerecordType, profileId, nodeId, username, url, fullName, firstName, lastName, about, websiteUrl, listedWebsiteUrl, domainUrl, imageSmallUrl, imageMediumUrl, imageLargeUrl, imageXLargeUrl, profileCoverUrl, followerCount, followingCount, explicitFollowingCount, interestFollowingCount, pinCount, nativePinCount, videoPinCount, storyPinCount, boardCount, groupBoardCount, pinsDoneCount, profileViews, profileReach, isVerifiedMerchant, isVerifiedIdentity, verifiedIdentityName, isPartner, partner, domainVerified, isPrimaryWebsiteVerified, isPrivateProfile, isAdsOnlyProfile, isDefaultImage, isInspirationalMerchant, isTastemaker, isBusinessAccount, hasCatalog, hasShoppingShowcase, hasShowcase, hasPublishedPins, indexed, instagramUsername, instagramUrl, createdAt, lastPinSaveTime, seoTitle, seoDescription, seoNoindexReason, recentPinImages, sourceType, sourceValue, sourceUrl, sourceRank, country, language, scrapedAt
CommentrecordType, commentId, nodeId, pinId, pinUrl, aggregatedPinId, type, text, createdAt, helpfulCount, likeCount, commentCount, reactionCount, reactionCounts, highlightedByPinOwner, isEdited, isTranslatable, markedHelpfulByMe, likedByMe, media, images, videos, tags, taggedUsers, user, sourceRank, country, language, scrapedAt
Tried It responserecordType, triedItId, nodeId, pinId, pinUrl, aggregatedPinId, type, details, doneAt, textTags, helpfulCount, likeCount, commentCount, likedByMe, markedHelpfulByMe, images, videos, imageSignatures, tags, taggedUsers, user, sourceRank, country, language, scrapedAt
Ideas topicrecordType, topicId, nodeId, url, slug, key, canonicalTerm, name, title, description, image, imageSize, imageSignature, imageSource, backgroundColor, followerCount, searchCount, isIdeasHub, isInterest, isKlpTerm, relatedBoards, relatedInterests, relatedQuestions, trendingSearches, pivots, seoBreadcrumbs, holidays, articles, feedUpdatedAt, topicUpdatedAt, pageMetadata, sourceType, sourceValue, sourceUrl, sourceRank, country, language, scrapedAt
Creator leadrecordType, leadId, username, url, fullName, followerCount, websiteUrl, domainUrl, instagramUsername, instagramUrl, avatarUrl, isVerifiedMerchant, isPrimaryWebsiteVerified, domainVerified, isPartner, isBusinessAccount, hasCatalog, hasShoppingShowcase, leadScore, sourceType, sourceValue, sourceUrl, country, language, scrapedAt
Analytics summaryrecordType, totalPins, totalBoards, totalBoardSections, totalProfiles, totalComments, totalTriedIt, totalIdeaTopics, totalCreatorLeads, productPins, videoPins, storyPins, totalSaves, totalReactions, averageSaves, priceStats, currencyCounts, topDomains, topHashtags, topCreators, sourceTypeCounts, country, language, scrapedAt
ErrorrecordType, mode, input, inputType, url, errorType, errorMessage, httpStatus, country, language, retryable, scrapedAt

Input parameters

ParameterTypeRequiredDefaultDescription
modestringYessearchsearch, auto, ideas, pinDetails, profile, board, comments, or relatedPins
searchTermsstring[]In search mode['modern kitchen']Up to 100 keywords or phrases, processed separately
searchTypestringNopinspins, videos, boards, or profiles
startUrlsstring[]In auto modeTwo example URLsUp to 100 mixed Pin, profile, board, search, main Ideas, or Ideas topic URLs
ideasUrlsstring[]In ideas mode['https://www.pinterest.com/ideas/']Up to 100 main Ideas or /ideas/topic-slug/numeric-id/ URLs
pinIdsstring[]In pinDetails/comments/relatedPins['1020909809261285009']Up to 100 numeric Pin IDs or public Pin URLs
profilesstring[]In profile mode['pinterest']Up to 100 usernames, @usernames, or profile URLs
boardUrlsstring[]In board modeOne example URLUp to 100 public board URLs in /username/board-slug/ format
maxResultsintegerNo501-5,000 results per search term, profile feed, board feed, section, source pin, or Ideas feed
maxItemsintegerNo0Global filtered primary-record limit across all inputs; 0 means unlimited; derived lead and analytics rows are additional
maxConcurrencyintegerNo51-20 independent inputs and pin-detail enrichments processed concurrently
countrystringNoUSISO 3166-1 alpha-2 country used by the managed residential proxy
languagestringNoenLanguage or locale such as en, de, pt-BR, or zh-CN
includePinDetailsbooleanNofalseEnrich feed pins with detailed media, commerce, creator, and annotation data
includeCommentsbooleanNofalseAlso return comments in pinDetails mode
maxCommentsintegerNo1001-5,000 comment and Tried It rows per pin
includePinsbooleanNotrueInclude created profile pins or sectionless board pins
includeBoardsbooleanNotrueInclude boards owned by each requested profile
includeSectionsbooleanNotrueInclude detailed section records for requested boards
includeSectionPinsbooleanNofalsePaginate pins inside every board section
includeTopicMetadatabooleanNotrueAdd a complete ideaTopic row for every Ideas topic URL
includeCreatorLeadsbooleanNofalseAdd deduplicated public creator-lead rows with a 0-100 lead score
includeAnalyticsbooleanNofalseAdd one complete analytics row for the emitted dataset
deduplicatebooleanNotrueKeep one row per entity across overlapping inputs
minSavesnumberNo-Minimum Pin saves
minFollowersnumberNo-Minimum creator, profile, lead, or board followers
domainFilterstringNo-Comma-separated allowed destination domains; matching includes subdomains
createdAfterISO date/timeNo-Keep Pins created on or after this value
createdBeforeISO date/timeNo-Keep Pins created on or before this value
pinTypestringNoallall, image, video, product, or story
minPricenumberNo-Minimum parsed Pin product price
maxPricenumberNo-Maximum parsed Pin product price
currencystringNo-Required product currency code, such as USD
verifiedMerchantsOnlybooleanNofalseKeep only Pins and creator records tied to verified merchants
monitorModestringNooffoff, newPins, or engagementChanges
monitorKeystringWhen monitoringpinterest-monitorStable state identity shared by recurring runs of the same monitor

Use cases

Creative and content research

Search a topic, collect the main Ideas discovery feed or a specific Ideas category, compare descriptions and media formats, and use related-pin mode to expand from promising examples into adjacent visual themes.

Product and merchant intelligence

Enable detail enrichment to collect product offers, price, currency, stock state, merchant identity, destination links, ratings, shopping flags, and image or video assets from public product pins.

Creator and brand analysis

Collect profile identity, verification flags, follower and content counts, recent images, created pins, and owned boards for repeatable comparisons across public accounts. Enable includeCreatorLeads for a deduplicated prospect table with public website, Instagram, verification, audience, and lead-score fields.

Audience feedback research

Collect comments, reactions, attached media, helpful counts, and Tried It responses to understand how people respond to a public Pin or idea.

Scheduled monitoring

Set monitorMode and a stable monitorKey, then use Apify schedules to rerun the same input. The first run emits known Pins; later runs can emit only newly discovered Pins or new Pins plus engagement and commerce changes. Webhooks can send the compact change dataset into a database, Google Sheets, Make, Zapier, n8n, Airbyte, Slack, or a data warehouse.

Performance and cost

This Actor is prepared for pay per event. The current prices are shown on the Actor's Pricing tab; measured runtime figures depend on selected feeds, enrichment options, Pinterest response times, and Apify proxy usage.

EventWhat one event represents
pin-resultOne non-enriched Pin from search, Ideas, profile, board, section, or related Pins
pin-detailOne Pin returned from Pin details or successfully enriched with detailed data
profile-resultOne public profile record
board-resultOne board or board-section record
comment-resultOne public Comment or Tried It response
idea-topicOne complete Ideas topic metadata record
creator-leadOne deduplicated creator-lead record
analytics-summaryOne run-level analytics summary row

Explicit error rows are stored without a custom paid event. includePinDetails, includeComments, includeSectionPins, creator leads, analytics, large batches, and high limits can add requests or chargeable output. maxConcurrency controls 1-20 independent inputs and detail enrichments; pagination remains bounded and stops at Pinterest's terminal cursor.

API usage

The public Actor owner is not assigned yet. Replace YOUR_USERNAME after publication:

curl -X POST \
"https://api.apify.com/v2/acts/YOUR_USERNAME~pinterest-scraper/runs?token=APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"mode": "search",
"searchTerms": ["modern kitchen"],
"searchType": "pins",
"maxResults": 10,
"country": "US",
"language": "en"
}'

The default dataset can be consumed through the Apify API or connected to Google Sheets, Make, Zapier, n8n, Airbyte, webhooks, cloud storage, or a data warehouse.

Best for / not for

Best for: public Pinterest discovery, creative research, creator and brand analysis, product-pin monitoring, collection analysis, public audience feedback, and scheduled exports.

Not for: private boards or profiles, authenticated home feeds, Pinterest Trends, account actions, publishing pins, direct binary media downloads, or real-time event streaming.

Limits and good to know

  • Choose one specialized mode, or use auto to mix recognized public Pinterest URL types in one run. Up to 100 primary inputs are accepted.
  • maxResults is per term or requested feed, maxComments is per Pin, and maxItems is the global filtered primary-row limit across all inputs.
  • Pinterest controls which public records, localized text, metrics, cursors, media variants, comments, and product fields are available.
  • /ideas/ and /ideas/topic/id/ are separate feed implementations: the first returns discovery Pins, while a topic can also return an ideaTopic metadata row.
  • The Actor never embeds dump cookies or account credentials. For the protected main Ideas stream it may establish a fresh anonymous web session and echo that session's short-lived anti-forgery token; it does not access private content.
  • All Pinterest traffic uses Apify Residential Proxy automatically. There is no direct-traffic fallback and no proxy input to configure.
  • A sticky proxy session is used for each logical input. Retryable failures use exponential backoff and rotate the session before retrying.
  • Pin enrichment failures preserve the original feed row and populate enrichmentError.
  • All 219 declared Dataset fields are exposed in the single Results view. A failed primary input creates an error row in that same view; other batch inputs continue. The run fails when every operation ends in a non-terminal infrastructure, network, API, or parsing failure.
  • Empty source feeds return zero content rows. Missing source values are represented with stable null, false, empty-object, or empty-array values.

Frequently asked questions

What input should I provide?

Use search keywords in search, numeric IDs or /pin/ID/ URLs for pin-based modes, usernames or profile URLs for profile, public /username/board-slug/ URLs for board, /ideas/ or /ideas/topic/id/ URLs for ideas, or combine all supported URL types in auto.

How many results can I extract?

The Actor accepts 1-5,000 for maxResults and maxComments, plus a global maxItems of 0-100,000 primary records. The actual number can be lower when filters remove rows or Pinterest ends pagination, returns fewer matches, removes content, or does not expose a feed publicly.

Why are some fields empty?

Pinterest record types differ. A normal image Pin has no video or shopping offer, some profiles do not publish websites, and some metrics are not exposed to unauthenticated visitors. The Actor keeps the documented top-level shape and uses empty normalized values.

Can I process multiple inputs?

Yes. Supply up to 100 entries in a mode-specific array, or use auto for mixed URLs. maxResults applies independently to each source and maxItems caps the filtered primary output across the complete run.

Can I schedule recurring runs?

Yes. Use Apify schedules for recurring jobs and webhooks to notify another system when a run completes.

Do I need a Pinterest account, API key, cookies, or proxy?

No Pinterest account, API key, or authentication cookie is required. The Actor creates and uses Apify Residential Proxy internally; users do not provide a proxy field.

Responsible use

This Actor extracts publicly available Pinterest information. Users are responsible for complying with applicable laws, privacy regulations, contractual obligations, and Pinterest's terms. Avoid collecting personal data without a lawful purpose.

Pinterest is a trademark of Pinterest, Inc. This Actor is an independent product and is not affiliated with, endorsed by, or sponsored by Pinterest.

Support

If you encounter a problem, create an issue in the Actor's Issues tab. Include the run ID, the relevant non-sensitive input, the mode used, and what you expected to receive. Do not post account credentials, tokens, or private data.

Local development

pip install -r requirements.txt
python -m unittest discover -s tests -v
python -m my_actor