Product Hunt Daily Launches Scraper
Pricing
from $1.99 / 1,000 results
Product Hunt Daily Launches Scraper
Product Hunt scraper without API key or login. A Product Hunt API alternative: export daily launches, votes and topics to CSV/JSON datasets.
Product Hunt Daily Launches Scraper
Pricing
from $1.99 / 1,000 results
Product Hunt scraper without API key or login. A Product Hunt API alternative: export daily launches, votes and topics to CSV/JSON datasets.
You can access the Product Hunt Daily Launches Scraper programmatically from your own applications by using the Apify API. You can also choose the language preference from below. To use the Apify API, you’ll need an Apify account and your API token, found in Integrations settings in Apify Console.
{ "openapi": "3.0.1", "info": { "version": "1.0", "x-build-id": "pFHQeMcke1x0u2Zyd" }, "servers": [ { "url": "https://api.apify.com/v2" } ], "paths": { "/acts/logiover~product-hunt-daily-launches-scraper/run-sync-get-dataset-items": { "post": { "operationId": "run-sync-get-dataset-items-logiover-product-hunt-daily-launches-scraper", "x-openai-isConsequential": false, "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.", "tags": [ "Run Actor" ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/inputSchema" } } } }, "parameters": [ { "name": "token", "in": "query", "required": true, "schema": { "type": "string" }, "description": "Enter your Apify token here" } ], "responses": { "200": { "description": "OK" } } } }, "/acts/logiover~product-hunt-daily-launches-scraper/runs": { "post": { "operationId": "runs-sync-logiover-product-hunt-daily-launches-scraper", "x-openai-isConsequential": false, "summary": "Executes an Actor and returns information about the initiated run in response.", "tags": [ "Run Actor" ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/inputSchema" } } } }, "parameters": [ { "name": "token", "in": "query", "required": true, "schema": { "type": "string" }, "description": "Enter your Apify token here" } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/runsResponseSchema" } } } } } } }, "/acts/logiover~product-hunt-daily-launches-scraper/run-sync": { "post": { "operationId": "run-sync-logiover-product-hunt-daily-launches-scraper", "x-openai-isConsequential": false, "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.", "tags": [ "Run Actor" ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/inputSchema" } } } }, "parameters": [ { "name": "token", "in": "query", "required": true, "schema": { "type": "string" }, "description": "Enter your Apify token here" } ], "responses": { "200": { "description": "OK" } } } } }, "components": { "schemas": { "inputSchema": { "type": "object", "properties": { "mode": { "title": "Scraping Mode", "enum": [ "daily", "dateRange", "topic" ], "type": "string", "description": "daily = a single day's launches, dateRange = multiple days, topic = a topic/category leaderboard", "default": "daily" }, "date": { "title": "Date (for daily mode)", "type": "string", "description": "Specific date to scrape in YYYY-MM-DD format. Leave empty for today." }, "dateFrom": { "title": "Date From (for dateRange mode)", "type": "string", "description": "Start date in YYYY-MM-DD format." }, "dateTo": { "title": "Date To (for dateRange mode)", "type": "string", "description": "End date in YYYY-MM-DD format." }, "topic": { "title": "Topic Slug (for topic mode)", "type": "string", "description": "Topic slug to filter by, e.g. 'artificial-intelligence', 'developer-tools', 'productivity', 'marketing'" }, "sortBy": { "title": "Sort Order", "enum": [ "VOTES", "NEWEST", "FEATURED_AT" ], "type": "string", "description": "How to sort the posts.", "default": "VOTES" }, "maxPosts": { "title": "Max Posts", "minimum": 0, "type": "integer", "description": "Maximum number of posts to scrape. Set 0 for unlimited.", "default": 500 }, "enrichDetails": { "title": "Enrich with makers & full description", "type": "boolean", "description": "No-key mode only. Visit each product page to add makers and the long description. Slower (one extra request per post).", "default": false }, "scrapeComments": { "title": "Scrape Comments (official API only)", "type": "boolean", "description": "Include top comments per post. Only used when API credentials are provided. In no-key mode this also enables product-page enrichment (makers + description).", "default": false }, "maxComments": { "title": "Max Comments per Post (official API only)", "minimum": 1, "type": "integer", "description": "Maximum comments to fetch per post when scrapeComments is enabled and API credentials are provided.", "default": 20 }, "apiKey": { "title": "API Key (OPTIONAL — official API mode)", "type": "string", "description": "Optional. Leave empty to run without any key. If you DO supply Product Hunt API credentials, the actor switches to the official GraphQL API for richer data (makers, description, comments). Get a free key at https://www.producthunt.com/v2/oauth/applications" }, "apiSecret": { "title": "API Secret (OPTIONAL — official API mode)", "type": "string", "description": "Optional. The API Secret from the same Product Hunt OAuth application as your API Key above." }, "accessToken": { "title": "Access Token (OPTIONAL — alternative to Key+Secret)", "type": "string", "description": "Optional. Paste a pre-obtained Product Hunt Bearer / Developer Token to use the official API INSTEAD of apiKey + apiSecret." }, "proxyConfiguration": { "title": "Proxy Configuration", "type": "object", "description": "Proxy used for the no-key web scrape. Defaults to Apify Residential (US), which works reliably. You can override the group/country here." } } }, "runsResponseSchema": { "type": "object", "properties": { "data": { "type": "object", "properties": { "id": { "type": "string" }, "actId": { "type": "string" }, "userId": { "type": "string" }, "startedAt": { "type": "string", "format": "date-time", "example": "2025-01-08T00:00:00.000Z" }, "finishedAt": { "type": "string", "format": "date-time", "example": "2025-01-08T00:00:00.000Z" }, "status": { "type": "string", "example": "READY" }, "meta": { "type": "object", "properties": { "origin": { "type": "string", "example": "API" }, "userAgent": { "type": "string" } } }, "stats": { "type": "object", "properties": { "inputBodyLen": { "type": "integer", "example": 2000 }, "rebootCount": { "type": "integer", "example": 0 }, "restartCount": { "type": "integer", "example": 0 }, "resurrectCount": { "type": "integer", "example": 0 }, "computeUnits": { "type": "integer", "example": 0 } } }, "options": { "type": "object", "properties": { "build": { "type": "string", "example": "latest" }, "timeoutSecs": { "type": "integer", "example": 300 }, "memoryMbytes": { "type": "integer", "example": 1024 }, "diskMbytes": { "type": "integer", "example": 2048 } } }, "buildId": { "type": "string" }, "defaultKeyValueStoreId": { "type": "string" }, "defaultDatasetId": { "type": "string" }, "defaultRequestQueueId": { "type": "string" }, "buildNumber": { "type": "string", "example": "1.0.0" }, "containerUrl": { "type": "string" }, "usage": { "type": "object", "properties": { "ACTOR_COMPUTE_UNITS": { "type": "integer", "example": 0 }, "DATASET_READS": { "type": "integer", "example": 0 }, "DATASET_WRITES": { "type": "integer", "example": 0 }, "KEY_VALUE_STORE_READS": { "type": "integer", "example": 0 }, "KEY_VALUE_STORE_WRITES": { "type": "integer", "example": 1 }, "KEY_VALUE_STORE_LISTS": { "type": "integer", "example": 0 }, "REQUEST_QUEUE_READS": { "type": "integer", "example": 0 }, "REQUEST_QUEUE_WRITES": { "type": "integer", "example": 0 }, "DATA_TRANSFER_INTERNAL_GBYTES": { "type": "integer", "example": 0 }, "DATA_TRANSFER_EXTERNAL_GBYTES": { "type": "integer", "example": 0 }, "PROXY_RESIDENTIAL_TRANSFER_GBYTES": { "type": "integer", "example": 0 }, "PROXY_SERPS": { "type": "integer", "example": 0 } } }, "usageTotalUsd": { "type": "number", "example": 0.00005 }, "usageUsd": { "type": "object", "properties": { "ACTOR_COMPUTE_UNITS": { "type": "integer", "example": 0 }, "DATASET_READS": { "type": "integer", "example": 0 }, "DATASET_WRITES": { "type": "integer", "example": 0 }, "KEY_VALUE_STORE_READS": { "type": "integer", "example": 0 }, "KEY_VALUE_STORE_WRITES": { "type": "number", "example": 0.00005 }, "KEY_VALUE_STORE_LISTS": { "type": "integer", "example": 0 }, "REQUEST_QUEUE_READS": { "type": "integer", "example": 0 }, "REQUEST_QUEUE_WRITES": { "type": "integer", "example": 0 }, "DATA_TRANSFER_INTERNAL_GBYTES": { "type": "integer", "example": 0 }, "DATA_TRANSFER_EXTERNAL_GBYTES": { "type": "integer", "example": 0 }, "PROXY_RESIDENTIAL_TRANSFER_GBYTES": { "type": "integer", "example": 0 }, "PROXY_SERPS": { "type": "integer", "example": 0 } } } } } } } } }}OpenAPI is a standard for designing and describing RESTful APIs, allowing developers to define API structure, endpoints, and data formats in a machine-readable way. It simplifies API development, integration, and documentation.
OpenAPI is effective when used with AI agents and GPTs by standardizing how these systems interact with various APIs, for reliable integrations and efficient communication.
By defining machine-readable API specifications, OpenAPI allows AI models like GPTs to understand and use varied data sources, improving accuracy. This accelerates development, reduces errors, and provides context-aware responses, making OpenAPI a core component for AI applications.
You can download the OpenAPI definitions for Product Hunt Daily Launches Scraper from the options below:
If you’d like to learn more about how OpenAPI powers GPTs, read our blog post.
You can also check out our other API clients: