Get a Product Hunt launch
Retrieve one Product Hunt launch: tagline, description, votes, score, comments, daily/weekly/monthly ranks, launch number, pricing, hunter, makers, topics, gallery media, links, the product and its day and Golden Kitty badges.
/v1/producthunt/postx-api-keyHeaders
Get your API keyYour ScrapeAtlas customer key. Create one on /account/ and set SCRAPEATLAS_API_KEY.
Required launch slug, as in producthunt.com/posts/<slug> or the launch parameter of a product page (for example notion-2-0).
solid-9Request correlation identifier.
HTTP attempts, decoded bytes and duration for the operation, including the single shared retry.
Always included.
≥ 0
Always included.
≥ 0
Always included.
≥ 0
True when usable data is returned; inspect status and coverage for omissions.
success, partial, failed, or challenged. HTTP 200 can be partial.
one of: success, partial
Public Product Hunt page for the request.
absolute HTTPS URL
UTC retrieval time.
source is public_api (Product Hunt's public web GraphQL) or public_feed (the Atom launch feed). Complete means this bounded page was returned without known omissions; votes_hidden marks launches whose vote count Product Hunt hides during their first hours (returned as null).
Always included.
one of: public_api, public_feed
Always included.
Always included.
The launch record.
Launch (post) ID as a string.
Launch slug; read it with the post endpoint.
Launch name.
One-line tagline.
Launch description (HTML), or null.
Public launch or product page URL.
Relative short link, or null.
Creation time with the source's Pacific-time offset.
Time the launch was featured, or null.
Scheduled launch time, or null.
Upvote count; null while Product Hunt hides votes (hideVotesCount true).
True during the launch's hidden-vote window.
Product Hunt's current ranking score, or null.
Score at the end of launch day, or null.
Comment count.
Rank on its launch day as a string, or null before ranking.
Rank for its week as a string, or null.
Rank for its month as a string, or null.
Which launch of the product this is, or null.
Launch state such as featured, or null.
Pricing type, or null.
Whether the launch is archived.
Thumbnail image identifier, or null.
Thumbnail image URL derived from thumbnailImageUuid, or null.
The hunter who submitted the launch, or null.
Product Hunt user ID (string).
Display name.
Username, as in producthunt.com/@username.
Profile headline, or null.
Avatar image URL, or null.
Public profile URL.
Makers credited on the launch.
up to 50 items
Product Hunt user ID (string).
Display name.
Username, as in producthunt.com/@username.
Profile headline, or null.
Avatar image URL, or null.
Public profile URL.
Topics: id, slug and name.
up to 50 items
Always included.
Always included.
Always included.
Gallery media with imageUrl.
up to 50 items
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Launch links: id and url.
up to 50 items
Always included.
Always included.
Primary website link, or null.
Always included.
Always included.
The product with its rating and counts, or null.
Product ID as a string.
Product slug, as in producthunt.com/products/<slug>.
Product name.
Product tagline.
Product page URL.
The product's own website, or null.
Logo image identifier, or null.
Logo image URL derived from logoUuid, or null.
Average review rating out of 5, or null.
Review count.
Follower count.
Number of launches.
Whether Product Hunt marks it a top product.
Whether the product is marked as no longer online.
Day/week/month and Golden Kitty badges: type, position, period, date, category, year.
up to 50 items
Always included.
Always included.
Optional.
Optional.
Optional.
Optional.
Optional.
No fields match.
HTTP 200 returns the success variant. Check status: partial means usable data with warnings, and failed or challenged requests carry a failure object described in Errors & responses.
| HTTP | failure.code | Meaning |
|---|---|---|
| 200 | partial | Usable data with votes_hidden warnings. |
| 400 | invalid_request | Missing, duplicate, malformed or unsupported parameters, including incomplete or impossible leaderboard dates. |
| 401 | unauthorized | Missing or invalid worker API key. |
| 404 | not_found | The product, launch, comment, topic, category, forum, discussion or user does not exist. |
| 429 | upstream_rate_limited | Source throttling; no automatic retry. |
| 502 | upstream_challenged | Source rejected or challenged the unauthenticated request. |
| 502 | unsupported_page | Malformed, mismatched or non-JSON source data, or a GraphQL error. |
| 502 | response_too_large payload_too_complex | Response exceeded byte or parsing limits. |
| 502 | unsafe_redirect request_limit upstream_error | Bounded source retrieval could not complete. |
| 503 | busy | All worker slots are occupied. |
| 504 | timeout | Total request deadline expired. |