POST /web_tech_stack • Credits: 1 credit per call
Tech Stack Detector reads one website and returns the technologies that the site runs, each with a category and a confidence score. The response also holds Go-To-Market signals, such as company stage, estimated monthly tech spend and buying signals. Each call costs 1 credit.
What does Tech Stack Detector do?
Sales teams and product teams need to know which tools a company runs. Tech Stack Detector answers that question from the public website alone. The endpoint fetches the page HTML and the HTTP response headers, then matches them against more than 200 technology signatures across 39 categories. It groups the matches into categories, such as CMS, Analytics, Framework, CDN, Hosting, E-Commerce and Payments. It then converts the tool list into Go-To-Market signals for a sales team. One call covers one URL.
Which endpoint does Tech Stack Detector use?
Method:
POSTURL:
https://api.richapi.ai/api/v1/web_tech_stackAuthentication:
x-api-keyheaderResponse: Synchronous JSON
Credits: 1 credit per call
How to send a Tech Stack Detector request
Copy your API key from the RichAPI dashboard.
Set the
urlparameter to the full website URL.Set the
cacheparameter totrueto accept a cached result.Send a
POSTrequest tohttps://api.richapi.ai/api/v1/web_tech_stack.Send the API key in the
x-api-keyheader.Read the
data.technologiesarray and thedata.gtm_signalsobject.
CAUTION: Each Tech Stack Detector call costs 1 credit. A cached result also costs 1 credit.
cURL
curl -X POST https://api.richapi.ai/api/v1/web_tech_stack
-H "x-api-key: YOUR_API_KEY"
-H "Content-Type: application/json"
-d '{
"url": "https://hubspot.com",
"cache": true
}'
Python
import requests
response = requests.post(
"https://api.richapi.ai/api/v1/web_tech_stack",
headers={"x-api-key": "YOUR_API_KEY"},
json={
"url": "https://hubspot.com",
"cache": True,
},
timeout=60,
)
response.raise_for_status()
print(response.json())
Node.js
const response = await fetch("https://api.richapi.ai/api/v1/web_tech_stack", {
method: "POST",
headers: {
"x-api-key": "YOUR_API_KEY",
"Content-Type": "application/json",
},
body: JSON.stringify({
url: "https://hubspot.com",
cache: true,
}),
});
const data = await response.json();
console.log(data);
Which parameters does Tech Stack Detector accept?
Parameter | Type | Required | Default | Description |
| string | Yes | None | The full HTTP or HTTPS URL of the website to analyze. |
| boolean | No |
| Set to |
The cache parameter defaults to false. A Tech Stack Detector request reads the live website unless the caller sends cache: true.
What does Tech Stack Detector return?
The block below is an example response for a marketing website. The values change with every site.
{
"data": {
"technologies": [
{ "name": "HubSpot", "category": "Marketing", "confidence": 0.95 },
{ "name": "Google Tag Manager", "category": "Analytics", "confidence": 0.9 },
{ "name": "Google Analytics", "category": "Analytics", "confidence": 0.85 },
{ "name": "React", "category": "Framework", "confidence": 0.8 },
{ "name": "Cloudflare", "category": "CDN", "confidence": 0.75 },
{ "name": "Intercom", "category": "Marketing", "confidence": 0.7 }
],
"summary": "HubSpot + Google Tag Manager + Google Analytics + React",
"categories_count": {
"Marketing": 2,
"Analytics": 2,
"Framework": 1,
"CDN": 1
},
"gtm_signals": {
"company_stage": "growth",
"estimated_monthly_tech_spend": 1300,
"tools_by_function": {
"analytics": ["Google Analytics"],
"marketing": ["Google Tag Manager", "HubSpot"],
"support": ["Intercom"]
},
"buying_signals": [
"Uses CRM - has structured sales process",
"Marketing automation in place - invests in lead gen",
"Live chat - prioritizes customer engagement"
]
}
},
"meta": {
"cache_hit": false,
"execution_time_ms": 1840,
"quality_warning": null
}
}
Which fields does the Tech Stack Detector response hold?
Field | Type | Description |
| array of objects | Every technology detected on the page. |
| string | The technology name, for example |
| string | The category of the technology, for example |
| number | The detection confidence, from |
| string | The first four technology names, joined with a plus sign. |
| object | The count of detected technologies per category. |
| object | The Go-To-Market signals derived from the technology list. The value is |
| string |
|
| integer | The estimated monthly tool spend in US dollars. |
| object | The detected tools grouped by business function. |
| array of strings | The sales signals derived from the tool list. |
| boolean | The value is |
| integer | The time that the call took, in milliseconds. |
| string or null | The reason why the response holds no technologies. |
Which technologies does Tech Stack Detector find?
Tech Stack Detector matches more than 200 technology signatures across 39 categories. The table names the largest categories.
Category | Example technologies |
CMS | WordPress, Shopify, Wix, Squarespace, Webflow, Drupal, Ghost, Contentful |
Framework | React, Next.js, Vue.js, Nuxt.js, Angular, Svelte, Gatsby, Remix, Astro |
Analytics | Google Analytics, Google Tag Manager, Segment, Mixpanel, Amplitude, Heap, Hotjar |
Product Analytics | Pendo, FullStory, LogRocket, PostHog |
CDN | Cloudflare, Fastly, Akamai, AWS CloudFront, Bunny CDN, KeyCDN |
Hosting | Vercel, Netlify, Deno Deploy, Cloudflare Workers, Cloudflare Pages |
Infrastructure | AWS, Google Cloud, Azure, Heroku, DigitalOcean, Render, Railway, Fly.io |
Web Server | Nginx, Apache, LiteSpeed, Express, ASP.NET, PHP |
E-Commerce | BigCommerce, Magento, WooCommerce, PrestaShop, OpenCart, Salesforce Commerce Cloud |
Payments | Stripe, PayPal |
CRM | Salesforce, Pipedrive, Zoho CRM, Freshsales, Monday.com, Close CRM |
Marketing | HubSpot, Intercom, Drift, Zendesk, Crisp |
Marketing Automation | Marketo, Pardot, Eloqua, Iterable |
Email Marketing | Mailchimp, Klaviyo, ActiveCampaign, SendGrid, ConvertKit, Brevo |
Advertising | Google Ads, Facebook Ads, LinkedIn Ads, TikTok Ads, AdRoll, Criteo |
Live Chat | LiveChat, Olark, Tawk.to, Tidio, Chatwoot, Freshdesk |
A/B Testing | Optimizely, VWO, LaunchDarkly, AB Tasty, Convert |
Monitoring | Sentry, Datadog RUM, New Relic |
CDP | Segment, mParticle, Tealium, RudderStack |
Authentication | Auth0, Okta, Firebase Auth, Next-Auth |
How does Tech Stack Detector detect a technology?
Tech Stack Detector runs four detection layers over one fetched page.
Layer | Source of the match |
1 | Patterns in the page HTML, such as a theme path or a framework marker. |
2 | The URLs of the |
3 | The HTTP response headers, such as |
4 | The |
The four layers merge into one list. When more than one layer finds the same technology, the confidence score rises. A strong pattern also raises the score. A technology found by a single weak pattern carries a low score.
What can Tech Stack Detector not detect?
Tech Stack Detector reads the fetched HTML and the response headers. Some technologies leave no trace there.
Limit | Effect on the response |
A tool loaded at runtime by a tag manager | The tool leaves no marker in the fetched HTML, so it does not appear. |
A tool loaded only after a click or a scroll | The fetch runs no user action, so the tool does not appear. |
A server-side tool with no client trace | A data warehouse or an internal service does not appear. |
A site that blocks the fetch | The API returns |
A thin single-page-application shell | The service refetches the page in a real browser. That path returns no original response headers, so layer 3 finds nothing. |
A page with no match |
|
CAUTION: A call that detects no technology still costs 1 credit. Check data.technologies before you store the result.
How do you use Tech Stack Detector for competitive intelligence?
Competitive intelligence starts with the tools that a competitor runs. Send one Tech Stack Detector call for each competitor domain. Then compare the results.
Send one call per competitor domain.
Compare the
data.categories_countobject across the results.Read
data.gtm_signals.tools_by_functionto see which team owns which tool.Store
data.gtm_signals.estimated_monthly_tech_spendper domain and per date.Send the same call every quarter to track a tool change.
A competitor that runs Optimizely and LaunchDarkly tests its product against real traffic. A competitor that runs Marketo and Salesforce sells to enterprise buyers. A shift from WordPress to Webflow marks a website rebuild.
How do you qualify a lead with Tech Stack Detector?
Tech Stack Detector converts a website into a stage and a set of buying signals. A sales team can score a lead from one call.
Send one Tech Stack Detector call for the lead website.
Read
data.gtm_signals.company_stageto pick the sales motion.Read
data.gtm_signals.buying_signalsfor the talk track.When the stack already holds a direct competitor product, reject the lead.
Route the lead to the team that matches the stage.
How does Tech Stack Detector set the company stage?
Stage | Rule |
| The site runs one or more of Salesforce, Marketo, Pardot, Eloqua, Optimizely, LaunchDarkly, Datadog RUM, New Relic, Okta or Pendo. |
| The site is not enterprise and runs two or more of HubSpot, Intercom, Segment, Mixpanel, Stripe, Shopify, ActiveCampaign, Drift, Hotjar, Amplitude, Heap, Klaviyo, PostHog, FullStory or Freshdesk. |
| Neither rule above matches. |
Which buying signals can Tech Stack Detector return?
Signal text | What triggers the signal |
| Salesforce or HubSpot. |
| Marketo, Pardot, Eloqua, ActiveCampaign, Klaviyo or HubSpot. |
| Optimizely, LaunchDarkly or PostHog. |
| Intercom, Drift, Crisp, Tawk.to or Zendesk. |
| Shopify, Stripe or PayPal. |
| Mixpanel, Amplitude, Heap, FullStory, Pendo or PostHog. |
| Sentry, Datadog RUM or New Relic. |
| Segment. |
| An estimated monthly spend of $3,000 or more. |
How long does Tech Stack Detector cache a result?
Tech Stack Detector caches each analyzed URL for 12 hours. If cache is true and a result from the last 12 hours exists, the API returns that result and sets meta.cache_hit to true. The cache parameter defaults to false, so a request without the parameter reads the live website. A cached call and a live call both cost 1 credit.
How much does Tech Stack Detector cost?
Tech Stack Detector costs 1 credit per call. 1 credit costs $0.02 on the 1,000 and 5,000 credit packs, and less on larger packs. The table uses $0.02. The credit count does not change with the number of technologies detected.
Calls | Credits | Cost |
1 | 1 | $0.02 |
100 | 100 | $2.00 |
1,000 | 1,000 | $20.00 |
10,000 | 10,000 | $200.00 |
Which errors can Tech Stack Detector return?
Status | Meaning | What to do |
| The request body failed validation. | Correct the parameter that the message names. Send a full HTTP or HTTPS URL. |
| The API key is missing, wrong or revoked. | Send a valid key in the |
| The organization has no credits left, or the team reached its monthly spend limit. | Buy credits in the RichAPI dashboard. |
|
| Call |
| The request used a method other than | Send the request again with the |
| The service could not process a value, for example a URL that does not start with | Send a full public HTTP or HTTPS URL. |
| The request rate is over the limit. | Wait, then send the request again. For a higher limit, write to [email protected]. |
| The API failed. | Send the request again. If the failure repeats, write to [email protected]. |
| The target website blocked the fetch or returned an error. | Wait a few seconds, then send the request again. |
RichAPI charges no credit for a 400, 401, 402, 403, 405, 422, 429, 500 or 502 response.
Frequently asked questions
Does Tech Stack Detector run JavaScript?
Tech Stack Detector fetches the raw HTML first, with no browser. If that HTML is a thin single-page-application shell, the service refetches the page in a real browser.
Why does a technology that the site really uses not appear?
Tech Stack Detector matches the fetched HTML, the script URLs, the response headers and the meta tags. A tool that a tag manager injects at runtime leaves no marker in that fetched HTML, so it does not appear.
What does the confidence score mean?
The confidence field runs from 0.0 to 1.0 and reports how strong the evidence is. A score near 1.0 means that several detection layers found the technology. A low score means one weak pattern match.
Does a call that finds no technology cost a credit?
Yes. A call that finds no technology returns status 200 with an empty data.technologies array and costs 1 credit. The meta.quality_warning field then holds the reason.
What is the difference between Tech Stack Detector and Tracking Pixel Detector?
Tech Stack Detector returns the full technology list for a site, across 39 categories, plus Go-To-Market signals. Tracking Pixel Detector returns only the advertising and analytics pixels, such as Google Tag Manager, GA4, Facebook Pixel and LinkedIn Insight.
Can Tech Stack Detector analyze a page behind a login?
No. Tech Stack Detector accepts no login credentials and no cookies. Send a URL that a public visitor can open.
How do I analyze many domains at once?
Tech Stack Detector accepts one URL per call. Send one call per domain and run the calls in parallel. Each call costs 1 credit.
