Product Hunt forum thread comments
curl --request POST \
--url https://api.neuralverge.ai/functions/v1/run-producthunt-forums-threads \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"thread": "general/how-do-you-decide-what-features-should-be-free-and-what-should-be-paid",
"max_items": 2
}
'import requests
url = "https://api.neuralverge.ai/functions/v1/run-producthunt-forums-threads"
payload = {
"thread": "general/how-do-you-decide-what-features-should-be-free-and-what-should-be-paid",
"max_items": 2
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
thread: 'general/how-do-you-decide-what-features-should-be-free-and-what-should-be-paid',
max_items: 2
})
};
fetch('https://api.neuralverge.ai/functions/v1/run-producthunt-forums-threads', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.neuralverge.ai/functions/v1/run-producthunt-forums-threads",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'thread' => 'general/how-do-you-decide-what-features-should-be-free-and-what-should-be-paid',
'max_items' => 2
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.neuralverge.ai/functions/v1/run-producthunt-forums-threads"
payload := strings.NewReader("{\n \"thread\": \"general/how-do-you-decide-what-features-should-be-free-and-what-should-be-paid\",\n \"max_items\": 2\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.neuralverge.ai/functions/v1/run-producthunt-forums-threads")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"thread\": \"general/how-do-you-decide-what-features-should-be-free-and-what-should-be-paid\",\n \"max_items\": 2\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.neuralverge.ai/functions/v1/run-producthunt-forums-threads")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"thread\": \"general/how-do-you-decide-what-features-should-be-free-and-what-should-be-paid\",\n \"max_items\": 2\n}"
response = http.request(request)
puts response.read_body{
"session_id": "11111111-1111-1111-1111-111111111111",
"kind": "producthunt_forums_threads",
"thread": "general/how-do-you-decide-what-features-should-be-free-and-what-should-be-paid",
"max_items": 2,
"start_page": 1,
"partial": false,
"human": "# Product Hunt — forum thread comments\n\n- **Thread:** general/how-do-you-decide-what-features-should-be-free-and-what-should-be-paid\n- **Results:** 2 of 259 found\n- **Proxy traffic:** 263.2 KB",
"machine": {
"total_items": 2,
"first_item": {
"id": "5191801",
"name": "Comment by Mario Gomez",
"url": "https://www.producthunt.com/p/general/how-do-you-decide-what-features-should-be-free-and-what-should-be-paid?comment=5191801",
"comment_id": "5191801",
"body": "With my latest app, I only offer paid, because there are costs to run and I'm self-funded. In the past, I've used features to be my funnel and then the more premium features are paid. That's my train ",
"votes_count": 52,
"replies_count": 13,
"is_pinned": false,
"created_at": "2026-03-08T07:56:19-07:00",
"user": {
"id": "mario_gomez0710",
"name": "Mario Gomez",
"username": "mario_gomez0710",
"url": "https://www.producthunt.com/@mario_gomez0710",
"headline": null,
"image": "https://ph-avatars.imgix.net/9521129/f18a27ff-c189-4d84-9a03-c0519689bc3a.jpeg"
}
},
"items": [
{
"id": "5191801",
"name": "Comment by Mario Gomez",
"url": "https://www.producthunt.com/p/general/how-do-you-decide-what-features-should-be-free-and-what-should-be-paid?comment=5191801",
"comment_id": "5191801",
"body": "With my latest app, I only offer paid, because there are costs to run and I'm self-funded. In the past, I've used features to be my funnel and then the more premium features are paid. That's my train ",
"votes_count": 52,
"replies_count": 13,
"is_pinned": false,
"created_at": "2026-03-08T07:56:19-07:00",
"user": {
"id": "mario_gomez0710",
"name": "Mario Gomez",
"username": "mario_gomez0710",
"url": "https://www.producthunt.com/@mario_gomez0710",
"headline": null,
"image": "https://ph-avatars.imgix.net/9521129/f18a27ff-c189-4d84-9a03-c0519689bc3a.jpeg"
}
},
{
"id": "5193190",
"name": "Comment by swati paliwal",
"url": "https://www.producthunt.com/p/general/how-do-you-decide-what-features-should-be-free-and-what-should-be-paid?comment=5193190",
"comment_id": "5193190",
"body": "Free should get the user to the “wow moment” Paid should help them go deeper, faster, with proof of repeat value How I see this basis my experience is free = audit, visibility, limited runs, core unde",
"votes_count": 48,
"replies_count": 7,
"is_pinned": false,
"created_at": "2026-03-09T03:28:07-07:00",
"user": {
"id": "swati_paliwal",
"name": "swati paliwal",
"username": "swati_paliwal",
"url": "https://www.producthunt.com/@swati_paliwal",
"headline": null,
"image": "https://ph-avatars.imgix.net/8518541/bf7ad0dd-a961-471d-bd2c-9cfde10382b2.png"
}
}
],
"total_found": 259,
"page_count": 1,
"blocked": false,
"proxy_traffic_bytes": 269530
},
"total_points": 2
}Startup & Funding Data
Product Hunt forum thread comments
Top-level comments of a Product Hunt forum thread: text, author, votes, reply count and date, all pages. 1 point per returned record.
POST
/
functions
/
v1
/
run-producthunt-forums-threads
Product Hunt forum thread comments
curl --request POST \
--url https://api.neuralverge.ai/functions/v1/run-producthunt-forums-threads \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"thread": "general/how-do-you-decide-what-features-should-be-free-and-what-should-be-paid",
"max_items": 2
}
'import requests
url = "https://api.neuralverge.ai/functions/v1/run-producthunt-forums-threads"
payload = {
"thread": "general/how-do-you-decide-what-features-should-be-free-and-what-should-be-paid",
"max_items": 2
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
thread: 'general/how-do-you-decide-what-features-should-be-free-and-what-should-be-paid',
max_items: 2
})
};
fetch('https://api.neuralverge.ai/functions/v1/run-producthunt-forums-threads', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.neuralverge.ai/functions/v1/run-producthunt-forums-threads",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'thread' => 'general/how-do-you-decide-what-features-should-be-free-and-what-should-be-paid',
'max_items' => 2
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.neuralverge.ai/functions/v1/run-producthunt-forums-threads"
payload := strings.NewReader("{\n \"thread\": \"general/how-do-you-decide-what-features-should-be-free-and-what-should-be-paid\",\n \"max_items\": 2\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.neuralverge.ai/functions/v1/run-producthunt-forums-threads")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"thread\": \"general/how-do-you-decide-what-features-should-be-free-and-what-should-be-paid\",\n \"max_items\": 2\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.neuralverge.ai/functions/v1/run-producthunt-forums-threads")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"thread\": \"general/how-do-you-decide-what-features-should-be-free-and-what-should-be-paid\",\n \"max_items\": 2\n}"
response = http.request(request)
puts response.read_body{
"session_id": "11111111-1111-1111-1111-111111111111",
"kind": "producthunt_forums_threads",
"thread": "general/how-do-you-decide-what-features-should-be-free-and-what-should-be-paid",
"max_items": 2,
"start_page": 1,
"partial": false,
"human": "# Product Hunt — forum thread comments\n\n- **Thread:** general/how-do-you-decide-what-features-should-be-free-and-what-should-be-paid\n- **Results:** 2 of 259 found\n- **Proxy traffic:** 263.2 KB",
"machine": {
"total_items": 2,
"first_item": {
"id": "5191801",
"name": "Comment by Mario Gomez",
"url": "https://www.producthunt.com/p/general/how-do-you-decide-what-features-should-be-free-and-what-should-be-paid?comment=5191801",
"comment_id": "5191801",
"body": "With my latest app, I only offer paid, because there are costs to run and I'm self-funded. In the past, I've used features to be my funnel and then the more premium features are paid. That's my train ",
"votes_count": 52,
"replies_count": 13,
"is_pinned": false,
"created_at": "2026-03-08T07:56:19-07:00",
"user": {
"id": "mario_gomez0710",
"name": "Mario Gomez",
"username": "mario_gomez0710",
"url": "https://www.producthunt.com/@mario_gomez0710",
"headline": null,
"image": "https://ph-avatars.imgix.net/9521129/f18a27ff-c189-4d84-9a03-c0519689bc3a.jpeg"
}
},
"items": [
{
"id": "5191801",
"name": "Comment by Mario Gomez",
"url": "https://www.producthunt.com/p/general/how-do-you-decide-what-features-should-be-free-and-what-should-be-paid?comment=5191801",
"comment_id": "5191801",
"body": "With my latest app, I only offer paid, because there are costs to run and I'm self-funded. In the past, I've used features to be my funnel and then the more premium features are paid. That's my train ",
"votes_count": 52,
"replies_count": 13,
"is_pinned": false,
"created_at": "2026-03-08T07:56:19-07:00",
"user": {
"id": "mario_gomez0710",
"name": "Mario Gomez",
"username": "mario_gomez0710",
"url": "https://www.producthunt.com/@mario_gomez0710",
"headline": null,
"image": "https://ph-avatars.imgix.net/9521129/f18a27ff-c189-4d84-9a03-c0519689bc3a.jpeg"
}
},
{
"id": "5193190",
"name": "Comment by swati paliwal",
"url": "https://www.producthunt.com/p/general/how-do-you-decide-what-features-should-be-free-and-what-should-be-paid?comment=5193190",
"comment_id": "5193190",
"body": "Free should get the user to the “wow moment” Paid should help them go deeper, faster, with proof of repeat value How I see this basis my experience is free = audit, visibility, limited runs, core unde",
"votes_count": 48,
"replies_count": 7,
"is_pinned": false,
"created_at": "2026-03-09T03:28:07-07:00",
"user": {
"id": "swati_paliwal",
"name": "swati paliwal",
"username": "swati_paliwal",
"url": "https://www.producthunt.com/@swati_paliwal",
"headline": null,
"image": "https://ph-avatars.imgix.net/8518541/bf7ad0dd-a961-471d-bd2c-9cfde10382b2.png"
}
}
],
"total_found": 259,
"page_count": 1,
"blocked": false,
"proxy_traffic_bytes": 269530
},
"total_points": 2
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
application/json
Response
Run completed.
Session identifier for this run.
Data source identifier for this endpoint.
True when the scrape stopped early and returned the records collected so far.
Markdown summary of the result, for display.
Structured result payload.
Show child attributes
Show child attributes
Points charged for this run.