Product Hunt scraper API

Scrape Product Hunt products, reviews, topics, categories, users, leaderboards, search results, homepage launches, and…

Social & content 9 capabilities stable 25.3% success rate

Capabilities

Every capability is one POST /execute call that returns structured JSON.

Get Category

producthunt.category

Fetch a Product Hunt category with subcategories, parent category, and ranked product listing.

Request

curl -X POST https://data.upscrape.com/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":{"max_products":5,"url":"ai-meeting-notetakers"},"capability":"producthunt.category"}'

Input

Field Type Required Description
max_products integer optional Max products to return (default: 100, max: 500)
url string required Category URL or slug

Output

Field Type Required Description
description string optional
id string optional
name string optional
parent_category object | null optional
path string optional
products array<object> optional
products[].id string optional
products[].logo_url string optional
products[].name string optional
products[].reviews_count integer optional
products[].reviews_rating number optional
products[].slug string required
products[].tagline string optional
products[].url string optional
reviews_count integer optional
slug string required
subcategories array<object> optional
subcategories[].id string optional
subcategories[].name string optional
subcategories[].path string optional
subcategories[].slug string optional
total_count integer optional
url string optional

RSS Feed

producthunt.feed

Stream Product Hunt RSS feed entries of recent launches, optionally filtered by category.

Request

curl -X POST https://data.upscrape.com/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":{"category":"all","limit":5},"capability":"producthunt.feed"}'

Input

Field Type Required Description
category string optional Feed slice - "all" (default), "ai", "design", "developer-tools", etc.
limit integer optional Max records to return (default: unlimited, max: 500)

Output

Field Type Required Description
author_name string optional
description string optional
id string optional
image_url string optional
published_at string optional
tagline string optional
title string required
updated_at string optional
url string required

Get Homepage

producthunt.homepage

Get today's featured launches from the Product Hunt homepage.

Request

curl -X POST https://data.upscrape.com/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":{},"capability":"producthunt.homepage"}'

Output

Field Type Required Description
date string optional
products array<object> optional
products[].id string optional
products[].logo_url string optional
products[].name string optional
products[].reviews_count integer optional
products[].reviews_rating number optional
products[].slug string required
products[].tagline string optional
products[].url string optional
url string optional

Get Leaderboard

producthunt.leaderboard

Get Product Hunt top-ranked products for a daily, weekly, monthly, or yearly period.

Request

curl -X POST https://data.upscrape.com/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":{"period":"daily"},"capability":"producthunt.leaderboard"}'

Input

Field Type Required Description
date string optional YYYY-MM-DD for daily, YYYY-WW for weekly, YYYY-MM for monthly, YYYY for yearly. Omit for current period.
period string required Leaderboard period

Output

Field Type Required Description
date string required
period string required
products array<object> optional
products[].id string optional
products[].logo_url string optional
products[].name string optional
products[].reviews_count integer optional
products[].reviews_rating number optional
products[].slug string required
products[].tagline string optional
products[].url string optional
title string optional
url string optional

Get Product

producthunt.product

Fetch a Product Hunt product with ratings, reviews, categories, topics, awards, alternatives, and maker credits.

Request

curl -X POST https://data.upscrape.com/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":{"url":"chatgpt"},"capability":"producthunt.product"}'

Input

Field Type Required Description
url string required Product URL or slug (e.g. "chatgpt" or "https://www.producthunt.com/products/chatgpt")

Output

Field Type Required Description
alternatives array<object> optional
alternatives[].id string optional
alternatives[].logo_url string optional
alternatives[].name string optional
alternatives[].reviews_count integer optional
alternatives[].reviews_rating number optional
alternatives[].slug string required
alternatives[].tagline string optional
alternatives[].url string optional
android_url string optional
angellist_url string optional
awards array<object> optional
awards[].category string optional
awards[].id string optional
awards[].rank integer optional
awards[].type string required
awards[].year integer optional
categories array<object> optional
categories[].id string optional
categories[].name string optional
categories[].path string optional
categories[].slug string optional
categories_count integer optional
description string optional
employee_size string optional
facebook_url string optional
first_launch object | null optional
followers_count integer optional
founder_reviews_count integer optional
funding_amount string optional
github_url string optional
hunter object | null optional
id string optional
instagram_url string optional
ios_url string optional
is_no_longer_online boolean optional
is_top_product boolean optional
latest_launch object | null optional
linkedin_url string optional
logo_url string optional
makers array<object> optional
makers[].avatar_url string optional
makers[].headline string optional
makers[].id string optional
makers[].name string optional
makers[].url string optional
makers[].username string optional
medium_url string optional
name string optional
other_reviews_count integer optional
posts_count integer optional
pro_con_tags array<object> optional
pro_con_tags[].tag string required
pro_con_tags[].type string optional
rating_distribution array<object> optional
rating_distribution[].count integer required
rating_distribution[].stars integer required
review_summary_ai string optional
reviews_count integer optional
reviews_rating number optional
screenshots array<string> optional
slug string required
tagline string optional
threads_url string optional
top_reviews array<object> optional
top_reviews[].author object optional
top_reviews[].body string optional
top_reviews[].body_html string optional
top_reviews[].created_at string optional
top_reviews[].id string optional
top_reviews[].rating number optional
top_reviews[].url string optional
topics array<object> optional
topics[].id string optional
topics[].name string optional
topics[].slug string optional
twitter_url string optional
url string optional
was_in_y_combinator boolean optional
website_clean_url string optional
website_url string optional
youtube_url string optional

List Product Reviews

producthunt.product.reviews

Stream reviews on a Product Hunt product with sub-ratings, feedback text, and reviewer profiles.

Request

curl -X POST https://data.upscrape.com/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":{"limit":5,"url":"chatgpt"},"capability":"producthunt.product.reviews"}'

Input

Field Type Required Description
limit integer optional Max records to return (default: 200, max: 500)
url string required Product URL or slug

Output

Field Type Required Description
alternatives_feedback string optional
author object optional
author.avatar_url string optional
author.headline string optional
author.id string optional
author.name string optional
author.url string optional
author.username string optional
body string optional
body_html string optional
created_at string optional
customization_rating number optional
ease_of_use_rating number optional
id string optional
negative_feedback string optional
overall_experience string optional
positive_feedback string optional
rating number optional
reliability_rating number optional
reviewer_type string optional
upvotes_count integer optional
url string optional
value_for_money_rating number optional

Search Products

producthunt.search

Search Product Hunt for products by keyword and return matched product listings.

Request

curl -X POST https://data.upscrape.com/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":{"query":"ai writing assistant"},"capability":"producthunt.search"}'

Input

Field Type Required Description
query string required Free-form search query

Output

Field Type Required Description
products array<object> optional
products[].id string optional
products[].logo_url string optional
products[].name string optional
products[].reviews_count integer optional
products[].reviews_rating number optional
products[].slug string required
products[].tagline string optional
products[].url string optional
query string required
total integer optional

Get Topic

producthunt.topic

Fetch a Product Hunt topic with description, follower count, and ranked product listing.

Request

curl -X POST https://data.upscrape.com/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":{"url":"artificial-intelligence"},"capability":"producthunt.topic"}'

Input

Field Type Required Description
url string required Topic URL or slug

Output

Field Type Required Description
description string optional
followers_count integer optional
id string optional
image_url string optional
name string optional
posts_count integer optional
products array<object> optional
products[].id string optional
products[].logo_url string optional
products[].name string optional
products[].reviews_count integer optional
products[].reviews_rating number optional
products[].slug string required
products[].tagline string optional
products[].url string optional
slug string required
url string optional

Get User

producthunt.user

Fetch a Product Hunt user profile with social links, follower counts, and made/hunted/stacked products.

Request

curl -X POST https://data.upscrape.com/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":{"url":"ryan_hoover"},"capability":"producthunt.user"}'

Input

Field Type Required Description
url string required Username, @-handle, or full /@user URL

Output

Field Type Required Description
avatar_url string optional
cover_image_url string optional
followers_count integer optional
following_count integer optional
github_url string optional
headline string optional
hunted array<object> optional
hunted[].id string optional
hunted[].logo_url string optional
hunted[].name string optional
hunted[].reviews_count integer optional
hunted[].reviews_rating number optional
hunted[].slug string required
hunted[].tagline string optional
hunted[].url string optional
hunted_count integer optional
id string optional
linkedin_url string optional
made array<object> optional
made[].id string optional
made[].logo_url string optional
made[].name string optional
made[].reviews_count integer optional
made[].reviews_rating number optional
made[].slug string required
made[].tagline string optional
made[].url string optional
made_count integer optional
name string optional
stack array<object> optional
stack[].id string optional
stack[].logo_url string optional
stack[].name string optional
stack[].reviews_count integer optional
stack[].reviews_rating number optional
stack[].slug string required
stack[].tagline string optional
stack[].url string optional
streak_count integer optional
twitter_url string optional
upvotes_count integer optional
url string optional
username string required
website_url string optional

Run Product Hunt in under a minute

Sign in, create an API key, and try any capability in the playground before you write code.

Get an API key