# Product Hunt Launches Feed (`mambalabs/product-hunt-launches-feed`) Actor

Every Product Hunt launch of the days you pick, one row each, with maker names, the product's website and company domain, X and LinkedIn links, votes, rank, and topics. Filter by topic, keyword, or votes, and get only new launches on a schedule. Clay ready.

- **URL**: https://apify.com/mambalabs/product-hunt-launches-feed.md
- **Developed by:** [Mamba Labs](https://apify.com/mambalabs) (community)
- **Categories:** Lead generation, Marketing, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.61 / 1,000 launch rows

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## Product Hunt Launches Feed

Get every Product Hunt launch of the days you pick as one flat row each: the launch name and tagline, its daily rank, votes, comments, and topics, the maker names with their headlines, the product's website and company domain, and its X and LinkedIn links. Filter by topic, keyword, or minimum votes, and turn on Only new launches to get just the launches you have not seen on a daily schedule. Rows export to CSV or drop into a Clay table, a CRM import, or an outbound sequence.

### Features

- **Daily launch lists.** The top featured launches of each day as the public daily page shows them, or every launch of the day with your own Product Hunt token. Yesterday by default, the last 1 to 31 days, or specific dates. Product Hunt's day runs on Pacific time, and so does this actor.
- **Makers and company domain.** Each launch's product page is opened for the website, the company domain, the maker names with the headline each maker set (often their role), their Product Hunt profile links, and the product's X and LinkedIn links.
- **Filters.** Topics by name or slug, keywords in the name, tagline, or topics, and a minimum vote count.
- **Only new launches.** On a schedule, a launch an earlier run returned is skipped and not charged.
- **Your own Product Hunt token, optional.** Give your Product Hunt developer token and the daily lists are read from the official Product Hunt API, which also returns the day's unfeatured launches.
- **One summary row per day.** A free row per day says how many launches matched and why a day returned nothing.
- **Cost guards.** Max launches per run and a max charge per run.

### How Product Hunt is read

By default the actor reads Product Hunt's public pages through the Apify proxy: the daily launch list (`/leaderboard/daily/...`), which shows the day's top featured launches (12 to 17 per day on the 4 days measured), and each launch's product page (`/products/...`). Product Hunt's robots.txt is read first and obeyed: search pages, which it disallows, are never read. Product Hunt sometimes answers with a browser check; the actor then tries again from a new proxy address, up to 6 times per page. A product page that still cannot be read gives a launch row marked `partial`, which is free.

With your own Product Hunt developer token, the daily lists come from the official Product Hunt API (`api.producthunt.com/v2`) on your token, and product pages are read as above. The token is yours, used only on your run, and never stored or logged. No login, no Product Hunt account of ours, and no other developer's actor are used.

Measured on 2026-10-28 from the Apify platform: 4 daily lists (2026-10-24 to 27) and 60 product pages in 251 seconds: 60 of 60 launches read in full, 55 of the 123 page requests met a browser check and passed on a later try, and 0 pages failed. On the 17 launches of 2026-10-27, 16 carried a company domain (the 17th lists an App Store link) and 16 carried maker names.

### Input

| Field | Type | Default | What it does |
|---|---|---|---|
| `days_back` | string (whole number) | `1` | The last N full days, 1 is yesterday, up to 31 |
| `dates` | array | | Specific days as `YYYY-MM-DD`, up to 31; overrides `days_back` |
| `include_today` | string (true or false) | `false` | Also read today's list, still filling |
| `topics` | array | | Product Hunt topics by name or slug, for example `Artificial Intelligence`, `developer-tools` |
| `keywords` | array | | Words to find in the name, tagline, or topics |
| `min_votes` | string (whole number) | `0` | Keep launches with at least this many votes |
| `max_launches` | string (whole number) | `100` | Launch rows per run, up to 2,000 |
| `open_product_pages` | string (true or false) | `true` | Read each product page for website, domain, makers, and socials |
| `only_new` | string (true or false) | `false` | Skip launches an earlier run returned (free) |
| `state_key` | string | | Name for the only new launches memory |
| `product_hunt_token` | string, secret | | Optional. Your Product Hunt developer token, for the official API route |
| `include_unfeatured` | string (true or false) | `false` | With your token, also return unfeatured launches |
| `max_charge_usd` | string | | Stop before a charge that would pass this amount |

### Output

| Field | Type | Example |
|---|---|---|
| `row_type` | string | `launch`, `day_summary`, or `input_refusal` |
| `launch_date` | string | `2026-10-27` |
| `daily_rank` | string (whole number) | `1` |
| `launch_name` | string | `TheySaid 4.0` |
| `tagline` | string | `See how users will react, right where you build.` |
| `product_name` | string | `Theysaid` |
| `company_domain` | string | `theysaid.io` (empty when the website is an app store or profile page) |
| `website_url` | string | `https://theysaid.io` |
| `topics` | array | `["User Experience", "Artificial Intelligence"]` |
| `votes`, `comments_count` | integer | `361`, `98` |
| `featured` | string (true or false) | `true` |
| `makers` | array | `["Chris Hicken (Co-Founder & CEO of TheySaid)"]` |
| `maker_profile_urls` | array | `["https://www.producthunt.com/@chrishicken"]` |
| `maker_count` | string (whole number) | `4` |
| `twitter_url`, `linkedin_url` | string | the product's X and LinkedIn links |
| `product_reviews_count`, `product_rating`, `product_followers` | number | `7`, `5`, `3585` |
| `first_launch`, `no_longer_online` | boolean | `false` |
| `launch_url`, `product_url` | string | links to the launch and product pages |
| `post_id`, `product_slug`, `launched_at` | string | Product Hunt IDs and launch time |
| `source_route` | string | `public_pages` or `api_token` |
| `is_new` | string (true or false) | `true` with Only new launches on |
| `launches_found`, `launches_delivered`, `pages_read` | integer | day summary only |
| `row_status` | string | `ok`, `partial`, `no_results`, `no_change`, `blocked`, or `error` |
| `error_reason` | string | why a row is not `ok` |
| `billable_events_json` | string | `{"launch-row":1}`, or `{}` for a free row |
| `checked_at` | string | when the row was written |

### Pricing

Pay per event. You pay for launch rows and for the run start. Day summary rows, input refusal rows, launch rows marked `partial` (product page not readable), and launches skipped with Only new launches on are free.

| Event | Free plan | Bronze | Silver | Gold |
|---|---|---|---|---|
| `launch-row`, one launch delivered | $0.00425 | $0.004038 | $0.003825 | $0.003613 |
| `apify-actor-start`, once per run (one per GB of memory; the default 256 MB is one) | $0.002 | $0.002 | $0.002 | $0.002 |

Per 1,000 launch rows: $4.25 on the free plan, $3.61 on Gold.

Free plan cap: 1.50 USD of evaluation a month, about 353 launch rows. Any paid Apify plan removes the cap, and it resets on the 1st. The run stops before a charge that passes your maximum charge per run in Apify or your `max_charge_usd`.

Mamba Labs pays the platform costs of your run, Apify proxy traffic included. Your Product Hunt token, if you give one, is used under your own Product Hunt API terms.

### Usage examples

**Yesterday's AI launches.**

```json
{ "days_back": 1, "topics": ["Artificial Intelligence"], "max_launches": 50 }
```

**A daily schedule that returns only new launches about sales tools.**

```json
{ "days_back": 2, "keywords": ["sales", "crm", "outbound"], "only_new": true, "state_key": "sales-launches" }
```

Read the rows with `GET https://api.apify.com/v2/datasets/{datasetId}/items`.

**Clay.** Run the actor from a Clay HTTP column or the Apify integration and map the flat columns. Every input is read as text, the way Clay sends it: numbers as text such as `"3"`, yes or no inputs as `"true"` or `"false"` (yes, no, 1, and 0 also work), and a list as one comma separated string. A value that does not parse gets the free `input_invalid` row, not a failed run.

**MCP.** The Mamba Labs MCP server `@mambalabsdev/mcp-product-hunt-launches-feed` exposes the tool `get_product_hunt_launches` to Claude and other MCP clients.

### Error handling

| Case | What you get |
|---|---|
| Input that cannot run (a bad date, a date in the future, `include_unfeatured` without a token) | One free row, `row_type` `input_refusal`, `row_status` `error`, and `error_reason` starting with `input_invalid:` that says what to fix. The run succeeds and nothing else is charged |
| Product Hunt shows a browser check | The page is tried again from a new proxy address, up to 6 times |
| A daily list that still cannot be read | A free day summary row, `row_status` `blocked` |
| A product page that still cannot be read | The launch row with list fields only, `row_status` `partial`, free |
| A day with no matching launches | A free day summary row, `row_status` `no_results` |
| No new launches with Only new launches on | A free day summary row, `row_status` `no_change` |
| Your Product Hunt token is refused | A free day summary row, `row_status` `error`, naming the 401 |

### Limitations

- The public daily page shows the day's top featured launches, not always all of them: on 2 of 4 days measured it said more existed. When that happens the day summary row says so. Every featured launch, and unfeatured launches with `include_unfeatured`, need your Product Hunt token.
- Votes, comments, and ranks are read at run time. Today's list is still moving.
- Maker names are what Product Hunt shows on the product page. Product Hunt's API hides maker names for most tokens, so on the token route maker names come from the product page.
- The company domain comes from the website the maker listed. A website on an app store, GitHub, or a social profile gives no domain; the link stays in `website_url`.
- Product Hunt can change its pages. A change can drop fields until the actor is updated; the day summary row then says so.

### Mamba Labs actor suite

| Actor | Actor ID |
|---|---|
| [Account Hiring Watch](https://apify.com/mambalabs/account-hiring-watch?fpr=mamba) | `gRAZA5WBi1r6L0gy7` |
| [Agent Accessibility Auditor](https://apify.com/mambalabs/agent-accessibility-auditor?fpr=mamba) | `anxbRv0lKrpQ1pnua` |
| [Agent to Brokerage Resolver](https://apify.com/mambalabs/agent-brokerage-resolver?fpr=mamba) | `ePRRGLxOGyaVHO4dI` |
| [AI Tooling Detector](https://apify.com/mambalabs/ai-tooling-detector?fpr=mamba) | `EwkHhmqiuJgRoVEbE` |
| [B2B Reddit Conversation Monitor](https://apify.com/mambalabs/b2b-reddit-conversation-monitor?fpr=mamba) | `SoDryzzsjmY3SsiyG` |
| [Bluesky Brand Presence Mapper](https://apify.com/mambalabs/bluesky-brand-presence-mapper?fpr=mamba) | `eLpxzP4IuXznlFVND` |
| [Career Change Signal Engine](https://apify.com/mambalabs/career-change-signal-engine?fpr=mamba) | `vX2Yga1a6wGaXaP14` |
| [Company Change Event Feed](https://apify.com/mambalabs/company-change-event-feed?fpr=mamba) | `oX44rS0fkEJ3rXLWe` |
| [Company Contact Details Extractor](https://apify.com/mambalabs/company-contact-details-extractor?fpr=mamba) | `4mMncKaJykiq94grz` |
| [Company Discovery List Builder](https://apify.com/mambalabs/company-discovery-list-builder?fpr=mamba) | `jch0HdaZnpbMqlcGS` |
| [Company Firmographic Enricher](https://apify.com/mambalabs/company-firmographic-enricher?fpr=mamba) | `YlUtLWjfPpqykmB8g` |
| [Company Funding Record](https://apify.com/mambalabs/funding-investor-record?fpr=mamba) | `OFS4Mt1gyYNtGfUbE` |
| [Company Headcount Estimator](https://apify.com/mambalabs/company-headcount-estimator?fpr=mamba) | `aHC4GROnNt6kfZe5r` |
| [Company Identity Resolver](https://apify.com/mambalabs/company-identity-resolver?fpr=mamba) | `lr8fTRAmZCBZmuwwh` |
| [Company Social Presence Mapper](https://apify.com/mambalabs/company-social-presence-mapper?fpr=mamba) | `4k6CCemkgBDz18m2h` |
| [Competitor Price, Stock, and Changelog Monitor](https://apify.com/mambalabs/competitor-price-stock-changelog-monitor?fpr=mamba) | `yxdgCbUQ4PYQWwRNU` |
| [Contact Classifier](https://apify.com/mambalabs/contact-classifier?fpr=mamba) | `0lGSeYJmniXhGANnO` |
| [Contractor License Lookup](https://apify.com/mambalabs/contractor-license-lookup?fpr=mamba) | `WBYK3CPI2kdeq4bP1` |
| [Cookie Consent Audit](https://apify.com/mambalabs/cookie-consent-audit?fpr=mamba) | `TrKyOS0KBoGC35nbr` |
| [Domain Deliverability Checker](https://apify.com/mambalabs/domain-deliverability-checker?fpr=mamba) | `0tVgxI7A6o9jMlxmc` |
| [Domain to LinkedIn URL Resolver](https://apify.com/mambalabs/domain-to-linkedin-url-resolver?fpr=mamba) | `3HtnSaqPHOg1Qg5gx` |
| [Ecommerce Platform Profiler](https://apify.com/mambalabs/ecommerce-platform-profiler?fpr=mamba) | `5G2NeYjBbQTjaTn9L` |
| [Ecommerce Store Discovery](https://apify.com/mambalabs/ecommerce-store-discovery?fpr=mamba) | `PeHu4sLyFvQHXUUrX` |
| [Event Presence Index](https://apify.com/mambalabs/event-presence-index?fpr=mamba) | `WLhMy8fMDgsxdYxv5` |
| [Expert Witness Directory](https://apify.com/mambalabs/expert-witness-directory?fpr=mamba) | `LIpwlgfE3LaQBaXd4` |
| [Funding and Press Signal Scanner](https://apify.com/mambalabs/funding-press-signal-scanner?fpr=mamba) | `FS13X6dhQVgX3XOM6` |
| [GitHub Organization Signal Scanner](https://apify.com/mambalabs/github-organization-signal-scanner?fpr=mamba) | `ahF8RRpv5mzPao5CN` |
| [Google Ads Transparency Monitor](https://apify.com/mambalabs/google-ads-transparency-monitor?fpr=mamba) | `1eOwxhBVxzvOXAm4s` |
| [Government Contract Award Monitor](https://apify.com/mambalabs/public-award-monitor?fpr=mamba) | `zhEtllASykOcx9hJ8` |
| [GTM Hiring Signal Scraper](https://apify.com/mambalabs/gtm-hiring-signal-scraper?fpr=mamba) | `D7O1SA2EqwHGsGr1P` |
| [GTM Signals Aggregator](https://apify.com/mambalabs/b2b-buying-signals-hiring-tech-stack-intent-for-clay?fpr=mamba) | `xKdRfnfFNkdMpFuNs` |
| [ICP Fit Scorer](https://apify.com/mambalabs/icp-account-lead-scoring-fit-scorer-0-100-for-clay?fpr=mamba) | `W161DT8W4kW55dMFh` |
| [Influencer Change Monitor](https://apify.com/mambalabs/creator-change-monitor?fpr=mamba) | `d2VVgahNL6UmcLkhg` |
| [Influencer Finder](https://apify.com/mambalabs/creator-finder?fpr=mamba) | `tpkedmloIIWtXx6sg` |
| [Influencer Lead List Builder](https://apify.com/mambalabs/creator-lead-list-all-in-one?fpr=mamba) | `KnmByszcv135yM30G` |
| [Influencer Profile Scraper](https://apify.com/mambalabs/creator-profile-reader?fpr=mamba) | `EqEnklDVMIcB1V499` |
| [Influencer Talent Agency Lookup](https://apify.com/mambalabs/talent-agency-lookup?fpr=mamba) | `zCuX4Mgyg6JvXgGzd` |
| [Instagram Facebook Brand Presence Mapper](https://apify.com/mambalabs/meta-brand-presence-mapper?fpr=mamba) | `HXh65I0JBjPsunbY8` |
| [Integration and Marketplace Presence Mapper](https://apify.com/mambalabs/integration-marketplace-presence-mapper?fpr=mamba) | `V0guNuvM85Q61f2gj` |
| [Job Board Keyword Signal Scanner](https://apify.com/mambalabs/job-board-keyword-signal-scanner?fpr=mamba) | `4DvqpvhMR74NLcDDY` |
| [Job Change Tracker](https://apify.com/mambalabs/job-change-tracker?fpr=mamba) | `L8UbEmMJC1XYPSZOb` |
| [Job Posting Monitor](https://apify.com/mambalabs/gtm-job-discovery?fpr=mamba) | `QCfICD9kOPiOdj5iI` |
| [Legal Entity Resolver](https://apify.com/mambalabs/legal-entity-resolver?fpr=mamba) | `KHFyPCDIx7CyqULYm` |
| [Link in Bio Scraper and Newsletter Detector](https://apify.com/mambalabs/link-in-bio-newsletter-checker?fpr=mamba) | `OorucdheTIgu7RFzK` |
| [LinkedIn Company Page Mapper](https://apify.com/mambalabs/linkedin-company-presence-mapper?fpr=mamba) | `zOPm6A9JEhUGcIdFW` |
| [LinkedIn Post Tracker](https://apify.com/mambalabs/linkedin-post-engager-capture?fpr=mamba) | `oiGLNPuaf5BRaz9K5` |
| [Local Business Lead Builder](https://apify.com/mambalabs/local-business-lead-builder?fpr=mamba) | `qMN97aoHhsAS5bznV` |
| [Local Rank and Map Pack Tracker](https://apify.com/mambalabs/local-rank-map-pack-tracker?fpr=mamba) | `gv0kyHGDIg8XscclB` |
| [Lookalike Company Finder](https://apify.com/mambalabs/lookalike-company-finder?fpr=mamba) | `e2O426WBAbLLQL4Z2` |
| [Manufacturer and Supplier Finder](https://apify.com/mambalabs/manufacturer-supplier-finder?fpr=mamba) | `Qcsdmd0lUfPzVkonh` |
| [Meta Ad Library Monitor](https://apify.com/mambalabs/meta-ad-library-monitor?fpr=mamba) | `J1GWlSXfSGU3u8Wng` |
| [Mobile Phone Waterfall](https://apify.com/mambalabs/mobile-phone-waterfall-orchestrator?fpr=mamba) | `6OOgPktf7RIa5XCOP` |
| [New Company Registrations Feed](https://apify.com/mambalabs/new-company-registrations-feed?fpr=mamba) | `g2WfZhWvCtc57g2Jo` |
| [New Hire Finder](https://apify.com/mambalabs/new-hire-finder?fpr=mamba) | `cKuc38p4nYHNF3IW8` |
| [Newsletter Sponsor Tracker](https://apify.com/mambalabs/newsletter-sponsor-tracker?fpr=mamba) | `qSwpqxD1TiPZpLQHv` |
| [Open Tender and RFP Finder](https://apify.com/mambalabs/open-tender-rfp-finder?fpr=mamba) | `kPTGz6t6TFoUUyfaO` |
| [Outbound Stack Detector](https://apify.com/mambalabs/outbound-infrastructure-fingerprint?fpr=mamba) | `v43UJC8r7qW7cBSTG` |
| [Page Finder and Extractor](https://apify.com/mambalabs/page-finder-extractor?fpr=mamba) | `TpurgcOZbVnknlaiC` |
| [Partner and Member Directory Extractor](https://apify.com/mambalabs/partner-member-directory-extractor?fpr=mamba) | `ZX0XJPPUvnFJxeC1a` |
| [People Finder & Email Verifier](https://apify.com/mambalabs/people-finder?fpr=mamba) | `LEgloG7tWgQl4o6TD` |
| [Person LinkedIn URL Resolver](https://apify.com/mambalabs/person-linkedin-url-resolver?fpr=mamba) | `ssuyPV8LnEsL8qbnb` |
| [Person Social Footprint Mapper](https://apify.com/mambalabs/person-social-footprint-mapper?fpr=mamba) | `jfQXa2zW9FHCJot9K` |
| [Personal Email to Company Resolver](https://apify.com/mambalabs/personal-email-to-company-resolver?fpr=mamba) | `AefT5Ye6YNPFQwJBf` |
| [Pinterest Brand Presence Mapper](https://apify.com/mambalabs/pinterest-brand-presence-mapper?fpr=mamba) | `d1HvjZfKhgvWsoEwn` |
| [Podcast Guest and Host Finder](https://apify.com/mambalabs/podcast-guest-host-finder?fpr=mamba) | `o2MGSvgbSLeeXOsIo` |
| [Prospect Engine](https://apify.com/mambalabs/b2b-prospect-engine?fpr=mamba) | `q9rT6v64nUJdPexOQ` |
| [Public Feature Board and Roadmap Monitor](https://apify.com/mambalabs/public-feature-board-roadmap-monitor?fpr=mamba) | `rcHF5gj5r2Vqnry35` |
| [Publishing Frequency Tracker](https://apify.com/mambalabs/blog-publishing-frequency?fpr=mamba) | `TbLwaUUATdYb6wp4N` |
| [Reddit Brand Presence Mapper](https://apify.com/mambalabs/reddit-brand-presence-mapper?fpr=mamba) | `pKQZmDaT70SEb54bZ` |
| [Reporting Window Finder](https://apify.com/mambalabs/public-company-reporting-window-finder?fpr=mamba) | `uINxR7a1IW8qUTRUX` |
| [Sequencer Event Poller](https://apify.com/mambalabs/sequencer-event-poller?fpr=mamba) | `S6s8Rjd61tGdrMRk4` |
| [Sequencer Lead Push](https://apify.com/mambalabs/clay-to-instantly-smartlead-push?fpr=mamba) | `0Jv27VeWM5tSZQs9x` |
| [Team Page People Extractor](https://apify.com/mambalabs/team-page-people-extractor?fpr=mamba) | `j8a9zX0k4mNbvDbWK` |
| [Tech Stack Signal Detector](https://apify.com/mambalabs/gtm-tech-stack-signal-scraper?fpr=mamba) | `qyd7nNyqFPelQViBx` |
| [TikTok Brand Presence Mapper](https://apify.com/mambalabs/tiktok-brand-presence-mapper?fpr=mamba) | `fco8FvoJcSafbeyd1` |
| [Trustpilot Reputation Enricher](https://apify.com/mambalabs/review-platform-reputation-enricher?fpr=mamba) | `3lIqfCt61j4hqE1xz` |
| [VC and Accelerator Portfolio List Builder](https://apify.com/mambalabs/vc-accelerator-portfolio-list-builder?fpr=mamba) | `chH8hrfuoqqolW06m` |
| [WCAG Accessibility Audit](https://apify.com/mambalabs/wcag-accessibility-audit?fpr=mamba) | `P3jBj3FRghKEhX52z` |
| [Website Phrase and Business Model Classifier](https://apify.com/mambalabs/website-phrase-business-model-classifier?fpr=mamba) | `CBuZ9k7sRwBeiKiCS` |
| [Website Traffic Rank Estimator](https://apify.com/mambalabs/website-traffic-rank-estimator?fpr=mamba) | `GnOFUzlNVIoXgeJjH` |
| [Work Email Waterfall](https://apify.com/mambalabs/email-waterfall-orchestrator?fpr=mamba) | `OT6xqTFThC0Rjf7Zj` |
| [Workplace Program Detector](https://apify.com/mambalabs/workplace-program-detector?fpr=mamba) | `Li6pPDhqbdzFz3h7G` |
| [X Brand Presence Mapper](https://apify.com/mambalabs/x-brand-presence-mapper?fpr=mamba) | `oLOgadhHUkNAyDA3w` |
| [YouTube Channel Stats Extractor](https://apify.com/mambalabs/youtube-channel-transcript-extractor?fpr=mamba) | `6hSpD3kd2s2IQ4VSs` |

MCP servers for the suite are published under the npm scope [@mambalabsdev](https://www.npmjs.com/org/mambalabsdev).

Built by [Mamba Labs](https://apify.com/mambalabs).

# Actor input Schema

## `days_back` (type: `string`):

Read the daily launch lists of the last N full days, in Product Hunt's day (Pacific time). 1 means yesterday. Up to 31. Ignored when Dates is set. A whole number; text such as "3" is accepted.

## `dates` (type: `array`):

Specific launch days as YYYY-MM-DD, in Product Hunt's day (Pacific time), up to 31. When set, Days back is ignored.

## `include_today` (type: `string`):

Also read today's list, which is still filling. Ranks and votes on today's launches move during the day. true or false; yes, no, 1, and 0 are accepted.

## `topics` (type: `array`):

Keep only launches tagged with any of these Product Hunt topics, by name or slug, for example Artificial Intelligence, developer-tools, SaaS. Empty: every topic.

## `keywords` (type: `array`):

Keep only launches whose name, tagline, or topics contain any of these words, for example sales, crm. Empty: no keyword filter.

## `min_votes` (type: `string`):

Keep only launches with at least this many votes. 0 keeps all. A whole number; text such as "3" is accepted.

## `max_launches` (type: `string`):

At most this many launch rows per run, across all days. Up to 2,000. A whole number; text such as "3" is accepted.

## `open_product_pages` (type: `string`):

On: each launch's Product Hunt product page is read for the website, company domain, maker names with their headlines, maker profile links, X and LinkedIn links, reviews, rating, and followers. Off: the rows carry only what the daily list shows (name, tagline, rank, votes, comments, topics), at the same price. true or false; yes, no, 1, and 0 are accepted.

## `only_new` (type: `string`):

Skip launches an earlier run with the same State key already returned. Skipped launches are free. Use it on a schedule. true or false; yes, no, 1, and 0 are accepted.

## `state_key` (type: `string`):

Name for the only new launches memory, for example ai-launches-daily. Runs with the same key share it.

## `product_hunt_token` (type: `string`):

Optional. Your own Product Hunt API developer token, from https://www.producthunt.com/v2/oauth/applications. With it, the daily lists are read from the official Product Hunt API instead of the public pages, and Include unfeatured launches can be used. It is your token, used only on your run, and never stored or logged.

## `include_unfeatured` (type: `string`):

Needs your Product Hunt token. Also return launches of the day that Product Hunt did not feature. The public daily pages list featured launches only. true or false; yes, no, 1, and 0 are accepted.

## `max_charge_usd` (type: `string`):

Optional. The run stops before a charge that would take it past this amount, and keeps every row already delivered.

## `source_tag` (type: `string`):

Internal attribution tag. Leave empty.

## Actor input object example

```json
{
  "days_back": "1",
  "include_today": "false",
  "min_votes": "0",
  "max_launches": "5",
  "open_product_pages": "true",
  "only_new": "false",
  "include_unfeatured": "false"
}
```

# Actor output Schema

## `results` (type: `string`):

No description

## `run_summary` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "days_back": "1",
    "max_launches": "5"
};

// Run the Actor and wait for it to finish
const run = await client.actor("mambalabs/product-hunt-launches-feed").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "days_back": "1",
    "max_launches": "5",
}

# Run the Actor and wait for it to finish
run = client.actor("mambalabs/product-hunt-launches-feed").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "days_back": "1",
  "max_launches": "5"
}' |
apify call mambalabs/product-hunt-launches-feed --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,mambalabs/product-hunt-launches-feed"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/O4VX63drWK9Y9x641/builds/UaLgwCpdjldnEEtgN/openapi.json
