Product Hunt Homepage API
Get today's featured launches from the Product Hunt homepage, with each launch's product and tagline.
- 1 credit per call
- Failed calls are free
- Updated
- producthunt.homepage
{ "date": "2026-10-12", "url": "https://www.producthunt.com/", "launches": [ { "name": "HireKey", "id": "1267423", "scheduled_at": "2026-10-11T00:01:00-07:00", "slug": "hirekey-2", "tagline": "Your recruiter-informed AI copilot for tech job search", "url": "https://www.producthunt.com/posts/hirekey-2", "product": { "name": "HireKey", "id": "1333040", "slug": "hirekey", "tagline": "Your recruiter-informed AI copilot for tech job search", "url": "https://www.producthunt.com/products/hirekey" } }, { "name": "kōdlo", "id": "1272499", "scheduled_at": "2026-10-11T00:01:00-07:00", "slug": "kodlo-2", "tagline": "End-to-end sales workspace with unified context", "url": "https://www.producthunt.com/posts/kodlo-2", "product": { "name": "kōdlo", "id": "1337663", "slug": "kodlo", "tagline": "End-to-end sales workspace with unified context", "url": "https://www.producthunt.com/products/kodlo" } } ], "products": [ { "name": "HireKey", "id": "1333040", "slug": "hirekey", "tagline": "Your recruiter-informed AI copilot for tech job search", "url": "https://www.producthunt.com/products/hirekey" }, { "name": "kōdlo", "id": "1337663", "slug": "kodlo", "tagline": "End-to-end sales workspace with unified context", "url": "https://www.producthunt.com/products/kodlo" } ]}
| # | Launch | Tagline | Launched | Product | Slug | Id | Url |
|---|---|---|---|---|---|---|---|
| 1 | HireKey | Your recruiter-informed AI copilot for tech job search | 2026-10-11T00:01:00-07:00 | HireKey | hirekey-2 | 1267423 | https://www.producthunt.com/posts/hirekey-2 |
| 2 | kōdlo | End-to-end sales workspace with unified context | 2026-10-11T00:01:00-07:00 | kōdlo | kodlo-2 | 1272499 | https://www.producthunt.com/posts/kodlo-2 |
| 3 | Automations in Perplexity Computer | Automations that remember, act, and keep work moving | 2026-10-11T00:01:00-07:00 | Automations in Perplexity Computer | automations-in-perplexity-computer | 1264842 | https://www.producthunt.com/posts/automations-in-perplexity-com… |
| 4 | Ghost Core | A personal AI computer that runs entirely on-device | 2026-10-11T00:01:00-07:00 | Ghost Core | ghost-core | 1270791 | https://www.producthunt.com/posts/ghost-core |
| 5 | OpenScreen 2 | Record your demo and let your AI agent do the edits | 2026-10-11T00:01:00-07:00 | OpenScreen 2 | openscreen-2-3 | 1263181 | https://www.producthunt.com/posts/openscreen-2-3 |
| 6 | MePersona | Answer every fan comment in your voice | 2026-10-11T00:01:00-07:00 | MePersona | mepersona-2 | 1251151 | https://www.producthunt.com/posts/mepersona-2 |
| 7 | Ayven | Carries and drives your team's agenda | 2026-10-11T00:01:00-07:00 | Ayven | ayven | 1246034 | https://www.producthunt.com/posts/ayven |
| 8 | FocusWrite | A local-first writing app with focus modes. | 2026-10-11T00:01:00-07:00 | FocusWrite | focuswrite | 1275628 | https://www.producthunt.com/posts/focuswrite |
| 9 | Foley | A voice to-do list that files, plans and asks first | 2026-10-11T00:01:00-07:00 | Foley | foley | 1270101 | https://www.producthunt.com/posts/foley |
| 10 | Gboard Kurukuru Version | Your fingers stay put. The keys come around | 2026-10-11T00:01:00-07:00 | Gboard Kurukuru Version | gboard-kurukuru-version | 1276371 | https://www.producthunt.com/posts/gboard-kurukuru-version |
Fields it returns
What each record in the response holds, with the values from the sample above.
| Field | Type | What it is | Example |
|---|---|---|---|
| launches[].name | string | The product's name. | HireKey |
| launches[].tagline | string | The product's one-line pitch. | Your recruiter-informed AI copilot for tech job search |
| launches[].scheduled_at | string | When the launch was scheduled to go live. | 2026-10-11T00:01:00-07:00 |
| launches[].product.name | string | The product's name. | HireKey |
| launches[].id | string | Product Hunt's ID for the item. | 1267423 |
| launches[].product | object | The product the launch belongs to. | 5 fields |
| launches[].product.id | string | Product Hunt's ID for the item. | 1333040 |
| launches[].product.slug | string | The name in the product's Product Hunt address. | hirekey |
| launches[].product.tagline | string | The product's one-line pitch. | Your recruiter-informed AI copilot for tech job search |
| launches[].product.url | string | The page on Product Hunt. | https://www.producthunt.com/products/hirekey |
| launches[].slug | string | The name in the product's Product Hunt address. | hirekey-2 |
| launches[].url | string | The page on Product Hunt. | https://www.producthunt.com/posts/hirekey-2 |
| date | string | The day of the leaderboard. | 2026-10-12 |
| launches | array | The launches on that day. | 27 records |
| products | array | The products listed. | 27 records |
| products[].id | string | Product Hunt's ID for the item. | 1333040 |
| products[].name | string | The product's name. | HireKey |
| products[].slug | string | The name in the product's Product Hunt address. | hirekey |
| products[].tagline | string | The product's one-line pitch. | Your recruiter-informed AI copilot for tech job search |
| products[].url | string | The page on Product Hunt. | https://www.producthunt.com/products/hirekey |
| url | string | The page on Product Hunt. | https://www.producthunt.com/ |
Call it from your code, or ask your agent
Set UPSCRAPE_API_KEY to your key and copy a working request.
curl --request POST \ --url https://data.upscrape.com/execute \ --header "Authorization: Bearer $UPSCRAPE_API_KEY" \ --header "Content-Type: application/json" \ --header "Prefer: wait=30" \ --data '{ "capability": "producthunt.homepage", "input": {}}'
import jsonimport osimport requestspayload = json.loads(r'''{ "capability": "producthunt.homepage", "input": {}}''')response = requests.post( "https://data.upscrape.com/execute", headers={ "Authorization": f"Bearer {os.environ['UPSCRAPE_API_KEY']}", "Content-Type": "application/json", "Prefer": "wait=30", }, json=payload,)response.raise_for_status()print(json.dumps(response.json(), indent=2))
const response = await fetch("https://data.upscrape.com/execute", { method: "POST", headers: { "Authorization": `Bearer ${process.env.UPSCRAPE_API_KEY}`, "Content-Type": "application/json", "Prefer": "wait=30", }, body: JSON.stringify({ "capability": "producthunt.homepage", "input": {}}),});if (!response.ok) { throw new Error(`Upscrape request failed: ${response.status}`);}console.log(JSON.stringify(await response.json(), null, 2));
https://data.upscrape.com/mcp
Use Upscrape to get today's featured launches on the Product Hunt homepage and group them by what they do.
More from the Product Hunt API
Product Hunt Homepage API FAQ
The short answers. The docs have the long ones.
How much does the Product Hunt Homepage API cost?
1 credit per successful call, shown before it runs. You buy credits once, and paid credits never expire.
What do I send?
Every input is optional; the input fields below list what each one does.
Do I need a Product Hunt login?
No. It reads public Product Hunt data; nothing runs on your account.
Can my AI agent call it?
Yes, over MCP: the agent finds producthunt.homepage, checks its price and runs it with the same credits as the REST API.
Your first Product Hunt call is free.
Up to 100 free credits to start, no card needed.