Get TrustRadius data with one API
The TrustRadius API returns B2B software reviews as clean JSON.
3 active endpoints, on 0 and 1 credit tiers.
- POST/trustradius/v1/product/reviews
- POST/trustradius/v1/product/detail
- POST/trustradius/v1/product/resolve
What TrustRadius endpoints does ReefAPI ship?
3 live read endpoints. Read-only data API: no writes, no account actions, no dashboard access on the target site.
TrustRadius API
3 of 3 endpoints, ready to run
Fetch verified user reviews and ratings for a B2B software product from TrustRadius (up to 63…
// Press "Try it" and this pane shows exactly what the // live site returned this second — including an empty // result, if that is the truth. No key, no account.
How the TrustRadius API works
TrustRadius is a normal ReefAPI surface — the same four rules that hold for every other engine on the key.
No OAuth app, no request signing, no per-site account. One key covers all 185 engines.
Every route is a POST with a JSON body. Parameters are validated against the published schema before anything is charged.
Credits, not seats. Failed and blocked calls are never charged, and cache hits cost nothing.
One envelope everywhere. meta carries latency_ms, record_count and the endpoint that answered.
The rating scale, what a review actually contains, and the company-size buckets
The number one assumption people bring to TrustRadius is that ratings are out of ten, because that is what the site displays. The API does not work that way. Every figure below comes from a live product/reviews call for product_slug slack on 2026-08-27, which returned 63 reviews out of a reported 642.
| Field | Measured on slack, 63 reviews | Note |
|---|---|---|
| rating_overall | 5.0 on 31 reviews, 4.5 on 18, 4.0 on 11, 3.5 on 2, 3.0 on 1 | A five-point scale in half steps. Not the /10 trScore shown on trustradius.com, which is a computed aggregate |
| grade | B on 42, C on 15, A on 6 | A separate letter grade that does not track rating_overall. A 3.0 and a 4.0 both graded B |
| pros / cons | null on all 63 | Structured pros and cons are not exposed. The full verbatim is in text |
| sub_ratings | {} on all 63 | An empty object, not null. Per-criterion scores do not come through |
| id | 5665ad4604981e0d00f5e0f3 | A 24-character hex id |
| slug | slack-2015-12-07-10-01-10 | The product slug plus the timestamp the review was written |
| published_at | 2015-12-08T22:16:32.805Z | ISO 8601 with milliseconds. Reviews in the sample go back to 2015 |
| company_size | 1-10, 11-50, 51-200, 201-500, 501-1000, 1001-5000, 5001-10,000 and 10,001+ employees | Eight fixed buckets, always suffixed " employees", with a comma in the two largest |
| reviewer | {years_experience: 1, current_experience: "current"} | No name and no job title in the measured sample. company_industry sits alongside, e.g. "Computer Software" |
| pagination | total 642, limit 100 returned 63, next_skip 63 | Page with skip. The response sets offset_param_broken true, so do not use offset |
product_slug is a URL segment, and product/resolve turns a URL into one: https://www.trustradius.com/products/slack/reviews resolved to {source: "trustradius", product_slug: "slack"}. It also parses foreign platforms, but only to tell you they are closed. A Capterra URL resolved to product_id 135003 with quarantined true and recommended_source "getapp", and a G2 URL likewise came back quarantined. Capterra and G2 cannot be fetched through this engine; GetApp can, but source=getapp additionally requires category_path and returns a partial page snapshot rather than full pagination.
What people build with TrustRadius
The jobs this data is most often used for.
endpoints
credits per call
B2B teams call product/reviews to monitor their own TrustRadius reviews.
Competitor research pulls a rival product's reviews and rating.
Analysts use product/resolve to map a product name to its TrustRadius profile.
What TrustRadius data costs
The cheapest call here is 0 credits, so $15/mo (Pro) buys 10,000 of them — $1.50 per 1,000 credits. Credits roll over and never expire, and failed or blocked calls are not charged.
Full pricing →- 1,000 free credits on signup, no card
- One key, all 185 APIs, one credit pool
- Failed and blocked calls are never charged
- Credits roll over and never expire
Call it in two lines
Sign up, get 1,000 credits and one key that works on every engine. Then this is the whole protocol.
curl -X POST https://api.reefapi.com/trustradius/v1/product/reviews \
-H "x-api-key: $REEF_KEY" \
-H "content-type: application/json" \
-d '{"source":"trustradius","product_slug":"slack","fetch_all":true}'import requests
r = requests.post(
"https://api.reefapi.com/trustradius/v1/product/reviews",
headers={"x-api-key": REEF_KEY},
json={
"source": "trustradius",
"product_slug": "slack",
"fetch_all": true
},
)
print(r.json()["data"])Have a question? We got answers.
The questions people actually ask before wiring up TrustRadius.
Get a free key →Is the TrustRadius rating out of 10?▾
Not in the API. The trScore you see on trustradius.com is a computed aggregate on a ten-point scale, but the per-review rating this API returns is five-point in half steps. Across 63 live reviews for slack on 2026-08-27 the only values that appeared were 5.0, 4.5, 4.0, 3.5 and 3.0, with 5.0 the most common at 31 reviews. If you are averaging rating_overall, divide by 5, not by 10.
What is the grade field, and does it follow the rating?▾
It is a separate letter grade, and no, it does not follow the rating. In the same 63 reviews, 42 were graded B, 15 C and 6 A, while 31 of those reviews carried a perfect 5.0 rating_overall. A 3.0 review and a 4.0 review both came back graded B. Treat grade as an independent TrustRadius signal rather than a bucketed version of the star score.
Why did limit 100 return only 63 reviews?▾
The upstream page caps below the limit you ask for. A live call with limit 100 returned 63 rows with pagination.total 642 and pagination.next_skip 63, so nothing was lost, the page was just shorter than requested. Keep paging with skip until returned comes back as zero, or set fetch_all true to have the engine walk the whole set in one pass.
Which review fields come back empty?▾
Three, consistently. pros and cons were null on all 63 reviews measured, and sub_ratings was an empty object rather than null on every one. The prose is not lost, it is all in the text field, which carried full multi-sentence verbatims. Do not build a schema that requires pros, cons or a per-criterion breakdown from this source.
What does the reviewer object tell me about the person?▾
Very little about the person and quite a lot about their context. reviewer carried only years_experience and current_experience, for example 1 and "current", meaning they use the product now. What is genuinely useful sits next to it on the review: company_industry, with values like "Staffing and Recruiting" and "Computer Software", and company_size as one of eight employee-count buckets. That pairing is what makes this source usable for B2B segmentation.
Can I pull G2 or Capterra reviews through this API?▾
No. The source enum accepts capterra and g2, but they are not available. product/resolve will parse their URLs and hand back what it can: a Capterra product URL resolved to product_id 135003 with product_slug "Slack", quarantined true and recommended_source "getapp", and a G2 URL came back quarantined as well. trustradius is the full-fidelity source here, and getapp is a partial snapshot that also needs category_path.
Should I page with skip or offset?▾
skip. The response itself flags this: pagination comes back with api_mode "skip_limit" and offset_param_broken true. The offset alias exists on the parameter but does not move the window upstream, so passing it will hand you the same first page over and over. Take next_skip from each response and feed it back as skip.
Does it return non-public reviews?▾
Not by default. include_non_public defaults to false and every row measured came back with is_public true, which the response confirms with public_only true in the data block and public_count in meta. Setting include_non_public true widens the set to reviews TrustRadius has not marked public. The pagination total, 642 for slack, is the upstream count before that filter, which is why the returned public count can be lower.
What is the TrustRadius API?▾
TrustRadius API is a ReefAPI endpoint group for b2b software reviews and ratings. It returns live JSON through POST requests under /trustradius/v1.
Is the TrustRadius API free to try?▾
Yes. ReefAPI starts with 1,000 free credits, no card required. TrustRadius calls use the same shared credit balance as every other ReefAPI engine.
Do I need a TrustRadius login or account?▾
No login to TrustRadius is needed for the API response. You call ReefAPI with your x-api-key header, and the playground can run live examples before you create a production key.
How fresh is the TrustRadius data?▾
The page example is captured from a live product/reviews call, and production requests fetch live data through ReefAPI rather than a static sample.
How many credits does the TrustRadius API use?▾
TrustRadius actions currently cost 1 credit per successful call. Failed or blocked calls are free, and all APIs draw from one credit pool.
Can I call TrustRadius from an AI assistant or MCP client?▾
Yes. Connect ReefAPI once through MCP and your assistant can call trustradius actions with the same key, credit pool and JSON envelope used by normal REST requests.
14 Reputation & Reviews APIs on the same key
One key, one credit pool, one response envelope. If you are pulling TrustRadius, you are one call away from the rest of the category — no second contract, no second integration.
Try it on your own data before you pay anything
The call above is the real endpoint, not a recording. A free key gives you 1,000 credits, the other 184 APIs, and the same envelope everywhere.
Endpoints, parameters and credit costs on this page are read from the live catalog and cannot drift from what the API accepts.