Run Capterra Product Reviews
curl --request POST \
--url https://api.neuralverge.ai/functions/v1/run-capterra-products-reviews \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"product": "176586",
"max_items": 25
}
'import requests
url = "https://api.neuralverge.ai/functions/v1/run-capterra-products-reviews"
payload = {
"product": "176586",
"max_items": 25
}
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({product: '176586', max_items: 25})
};
fetch('https://api.neuralverge.ai/functions/v1/run-capterra-products-reviews', 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-capterra-products-reviews",
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([
'product' => '176586',
'max_items' => 25
]),
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-capterra-products-reviews"
payload := strings.NewReader("{\n \"product\": \"176586\",\n \"max_items\": 25\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-capterra-products-reviews")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"product\": \"176586\",\n \"max_items\": 25\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.neuralverge.ai/functions/v1/run-capterra-products-reviews")
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 \"product\": \"176586\",\n \"max_items\": 25\n}"
response = http.request(request)
puts response.read_body{
"session_id": "11111111-1111-1111-1111-111111111111",
"kind": "capterra_product_reviews",
"product": "135757",
"max_items": 2,
"partial": false,
"human": "# Capterra product reviews\n\n- **Product:** 135757\n- **Max items:** 2\n- **Records returned:** 2\n- **Response size:** 690.5 KB",
"machine": {
"total_items": 2,
"reviews": [
{
"id": "0c6b777137a38821",
"global_id": null,
"text": "Very positive. Netsuite has been the best accounting system I have seen across multiple industry types",
"pros": "Very customizable system that fits every business I've worked in. \nGreat for accounting professionals. Very easy to use",
"cons": "That you need a administrator to run the system long term\nAdditional licenses are very costly. It would be helpful if they had tiers of licenses\nSome companies over customize",
"advice": null,
"rating": 5,
"ratings": {
"ease_of_use": 5,
"customer_support": 3,
"functionality": 4,
"value_for_money": 3
},
"recommendation_rating": 10,
"written_date": "January 21, 2026",
"incentive": "non-incentivized",
"is_anonymous": false,
"source_site": "Capterra",
"source_code": null,
"source_tooltip": null,
"chosen_reason": null,
"switching_reason": null,
"switched_from": [],
"alternatives": [
{
"name": "Workday HCM",
"url": "https://www.capterra.com/p/66908/Workday-HCM/"
}
],
"vendor_response": null,
"author": {
"name": "Anna H.",
"job_title": "CFO",
"company_size": null,
"industry": "Logistics and Supply Chain",
"used_for": "2+ years",
"image": "https://reviews.capterra.com/cdn/profile-images/linkedin/befee7fc4b2d8c7e9a5f1f7f6c0869afe4c394b8de7a35407433485fa279ed85.jpeg",
"is_linkedin_verified": true,
"is_validated": false,
"validations": [],
"is_anonymous": false
}
},
{
"id": "94cd2374c8292978",
"global_id": null,
"text": "NetSuite gives solid visibility across finance and operations once it's set up right, which makes it useful for tracking job costs and reconciling data across departments. The setup and customization overhead is real, and you'll want dedicated admin support to get full value out of it. Worth it for a growing company that's outgrown smaller accounting tools, but budget time and money for implementa",
"pros": "Solid all-in-one ERP for pulling financials, job costing, and project data into one place instead of juggling separate systems. Real-time visibility across accounting, inventory, and operations makes it easier to validate numbers before they go into estimates or reports. Dashboards and saved searches are flexible once you know how to build them, and the platform scales well as a company adds locat",
"cons": "Steep learning curve, especially for saved searches and custom reports a lot of the useful stuff isn't obvious out of the box and often needs a consultant or admin to configure properly. Performance can lag on larger data pulls. Support tickets sometimes take longer than expected to resolve, and customizations can get expensive to maintain over time.",
"advice": null,
"rating": 4,
"ratings": {
"ease_of_use": 4,
"customer_support": 4,
"functionality": 4,
"value_for_money": 4
},
"recommendation_rating": 7,
"written_date": "September 22, 2026",
"incentive": "non-incentivized",
"is_anonymous": false,
"source_site": "Capterra",
"source_code": null,
"source_tooltip": null,
"chosen_reason": null,
"switching_reason": null,
"switched_from": [],
"alternatives": [],
"vendor_response": null,
"author": {
"name": "Verified Reviewer",
"job_title": "Manager",
"company_size": null,
"industry": "Construction",
"used_for": "2+ years",
"image": null,
"is_linkedin_verified": false,
"is_validated": false,
"validations": [],
"is_anonymous": false
}
}
],
"response_bytes": 707063
},
"total_points": 2
}Product reviews
Run Capterra Product Reviews
Returns user reviews for a Capterra product by product ID or URL: ratings, pros/cons, text, and author. List endpoint: 1 point per returned record.
POST
/
functions
/
v1
/
run-capterra-products-reviews
Run Capterra Product Reviews
curl --request POST \
--url https://api.neuralverge.ai/functions/v1/run-capterra-products-reviews \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"product": "176586",
"max_items": 25
}
'import requests
url = "https://api.neuralverge.ai/functions/v1/run-capterra-products-reviews"
payload = {
"product": "176586",
"max_items": 25
}
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({product: '176586', max_items: 25})
};
fetch('https://api.neuralverge.ai/functions/v1/run-capterra-products-reviews', 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-capterra-products-reviews",
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([
'product' => '176586',
'max_items' => 25
]),
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-capterra-products-reviews"
payload := strings.NewReader("{\n \"product\": \"176586\",\n \"max_items\": 25\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-capterra-products-reviews")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"product\": \"176586\",\n \"max_items\": 25\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.neuralverge.ai/functions/v1/run-capterra-products-reviews")
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 \"product\": \"176586\",\n \"max_items\": 25\n}"
response = http.request(request)
puts response.read_body{
"session_id": "11111111-1111-1111-1111-111111111111",
"kind": "capterra_product_reviews",
"product": "135757",
"max_items": 2,
"partial": false,
"human": "# Capterra product reviews\n\n- **Product:** 135757\n- **Max items:** 2\n- **Records returned:** 2\n- **Response size:** 690.5 KB",
"machine": {
"total_items": 2,
"reviews": [
{
"id": "0c6b777137a38821",
"global_id": null,
"text": "Very positive. Netsuite has been the best accounting system I have seen across multiple industry types",
"pros": "Very customizable system that fits every business I've worked in. \nGreat for accounting professionals. Very easy to use",
"cons": "That you need a administrator to run the system long term\nAdditional licenses are very costly. It would be helpful if they had tiers of licenses\nSome companies over customize",
"advice": null,
"rating": 5,
"ratings": {
"ease_of_use": 5,
"customer_support": 3,
"functionality": 4,
"value_for_money": 3
},
"recommendation_rating": 10,
"written_date": "January 21, 2026",
"incentive": "non-incentivized",
"is_anonymous": false,
"source_site": "Capterra",
"source_code": null,
"source_tooltip": null,
"chosen_reason": null,
"switching_reason": null,
"switched_from": [],
"alternatives": [
{
"name": "Workday HCM",
"url": "https://www.capterra.com/p/66908/Workday-HCM/"
}
],
"vendor_response": null,
"author": {
"name": "Anna H.",
"job_title": "CFO",
"company_size": null,
"industry": "Logistics and Supply Chain",
"used_for": "2+ years",
"image": "https://reviews.capterra.com/cdn/profile-images/linkedin/befee7fc4b2d8c7e9a5f1f7f6c0869afe4c394b8de7a35407433485fa279ed85.jpeg",
"is_linkedin_verified": true,
"is_validated": false,
"validations": [],
"is_anonymous": false
}
},
{
"id": "94cd2374c8292978",
"global_id": null,
"text": "NetSuite gives solid visibility across finance and operations once it's set up right, which makes it useful for tracking job costs and reconciling data across departments. The setup and customization overhead is real, and you'll want dedicated admin support to get full value out of it. Worth it for a growing company that's outgrown smaller accounting tools, but budget time and money for implementa",
"pros": "Solid all-in-one ERP for pulling financials, job costing, and project data into one place instead of juggling separate systems. Real-time visibility across accounting, inventory, and operations makes it easier to validate numbers before they go into estimates or reports. Dashboards and saved searches are flexible once you know how to build them, and the platform scales well as a company adds locat",
"cons": "Steep learning curve, especially for saved searches and custom reports a lot of the useful stuff isn't obvious out of the box and often needs a consultant or admin to configure properly. Performance can lag on larger data pulls. Support tickets sometimes take longer than expected to resolve, and customizations can get expensive to maintain over time.",
"advice": null,
"rating": 4,
"ratings": {
"ease_of_use": 4,
"customer_support": 4,
"functionality": 4,
"value_for_money": 4
},
"recommendation_rating": 7,
"written_date": "September 22, 2026",
"incentive": "non-incentivized",
"is_anonymous": false,
"source_site": "Capterra",
"source_code": null,
"source_tooltip": null,
"chosen_reason": null,
"switching_reason": null,
"switched_from": [],
"alternatives": [],
"vendor_response": null,
"author": {
"name": "Verified Reviewer",
"job_title": "Manager",
"company_size": null,
"industry": "Construction",
"used_for": "2+ years",
"image": null,
"is_linkedin_verified": false,
"is_validated": false,
"validations": [],
"is_anonymous": false
}
}
],
"response_bytes": 707063
},
"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.