Company Technographics
Get detailed technology stack information for any company by providing their domain.
POST
/
v1
/
companies
/
technographics
Company Technographics
curl --request POST \
--url https://api.leadmagic.io/v1/companies/technographics \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"company_domain": "leadmagic.io"
}
'import requests
url = "https://api.leadmagic.io/v1/companies/technographics"
payload = { "company_domain": "leadmagic.io" }
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({company_domain: 'leadmagic.io'})
};
fetch('https://api.leadmagic.io/v1/companies/technographics', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.leadmagic.io/v1/companies/technographics"
payload := strings.NewReader("{\n \"company_domain\": \"leadmagic.io\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
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))
}<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.leadmagic.io/v1/companies/technographics",
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([
'company_domain' => 'leadmagic.io'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}{
"credits_consumed": 1,
"message": "Technology stack information retrieved successfully",
"data": [
{
"name": "Google Analytics",
"description": "Google Analytics is a web analytics service offered by Google that tracks and reports website traffic.",
"categories": [
"Analytics",
"Marketing"
],
"sub_technologies": [
{
"name": "Google Analytics 4",
"description": "The latest version of Google Analytics with enhanced privacy features",
"categories": [
"Analytics",
"Privacy-focused"
]
}
]
}
]
}{
"success": false,
"errors": [
{
"type": "https://api.leadmagic.io/errors/validation_error",
"title": "Request validation failed. Check your input parameters.",
"status": 400,
"code": "validation_error",
"param": [
"email"
],
"detail": "Email format is invalid. Expected format: user@domain.com",
"action": "Provide a valid email address in the 'email' field.",
"docs": "https://leadmagic.io/docs/api-reference/errors"
}
],
"meta": {
"request_id": "ea6e3248-f4d2-437d-bca3-20881b529129",
"timestamp": "2024-02-01T12:00:00.000Z"
}
}{
"success": false,
"errors": [
{
"type": "https://api.leadmagic.io/errors/missing_authentication",
"title": "Authentication required. Provide a valid API key in the X-API-Key header (case-insensitive).",
"status": 401,
"code": "missing_authentication",
"docs": "https://leadmagic.io/docs/api-reference/authentication"
}
],
"meta": {
"request_id": "ea6e3248-f4d2-437d-bca3-20881b529129",
"timestamp": "2024-02-01T12:00:00.000Z"
}
}{
"success": false,
"errors": [
{
"type": "https://api.leadmagic.io/errors/insufficient_credits",
"title": "Insufficient credits: need 5, have 2.50. Add credits to continue.",
"status": 402,
"code": "insufficient_credits",
"detail": "This request requires 5 credit(s) but your account only has 2.50 credits remaining.",
"action": "Add credits to your account at https://app.leadmagic.io/billing or contact support@leadmagic.io for enterprise plans.",
"docs": "https://leadmagic.io/docs/api-reference/credits",
"context": {
"credits_required": 5,
"credits_available": 2.5,
"credits_needed": 2.5
}
}
],
"meta": {
"request_id": "ea6e3248-f4d2-437d-bca3-20881b529129",
"timestamp": "2024-02-01T12:00:00.000Z"
}
}{
"success": false,
"errors": [
{
"type": "https://api.leadmagic.io/errors/resource_not_found",
"title": "Resource not found.",
"status": 404,
"code": "resource_not_found",
"docs": "https://leadmagic.io/docs/api-reference/errors"
}
],
"meta": {
"request_id": "ea6e3248-f4d2-437d-bca3-20881b529129",
"timestamp": "2024-02-01T12:00:00.000Z"
}
}{
"success": false,
"errors": [
{
"type": "https://api.leadmagic.io/errors/rate_limit_exceeded",
"title": "Rate limit exceeded: 300 requests per 1 minute. Wait and try again.",
"status": 429,
"code": "rate_limit_exceeded",
"detail": "You have exceeded the maximum allowed request rate. Please wait before making additional requests.",
"action": "Wait 42 seconds before retrying. Consider implementing exponential backoff.",
"docs": "https://leadmagic.io/docs/api-reference/rate-limits",
"context": {
"limit": 300,
"window": "1 minute",
"remaining": 0,
"reset_at": 1706745642,
"retry_after_seconds": 42
}
}
],
"meta": {
"request_id": "ea6e3248-f4d2-437d-bca3-20881b529129",
"timestamp": "2024-02-01T12:00:00.000Z"
}
}{
"success": false,
"errors": [
{
"type": "https://api.leadmagic.io/errors/INTERNAL_ERROR",
"title": "Something went wrong on our end. Our team has been notified and is investigating.",
"status": 500,
"code": "INTERNAL_ERROR",
"detail": "This is a temporary server error. The issue has been automatically reported to our team.",
"action": "Wait 30 seconds and retry your request. If the problem persists, contact support@leadmagic.io",
"docs": "https://leadmagic.io/docs/api-reference/errors"
}
],
"meta": {
"request_id": "ea6e3248-f4d2-437d-bca3-20881b529129",
"timestamp": "2024-02-01T12:00:00.000Z"
}
}Tech Stack
Discover the technology stack and tools used by a company. Essential for technology-focused sales and competitive analysis.Endpoint Details
- Pricing
- Rate Limits
| Metric | Value |
|---|---|
| Cost | 1 credit per company |
| No Results | FREE if no tech data found |
Identifies marketing tools, analytics, hosting, CRM, and more from website analysis.
Per-Endpoint Limit
| Metric | Value |
|---|---|
| Requests/Minute | 300 |
| Burst Capacity | ~5 requests/second |
Rate limits are subject to change. Custom rate limits are available on enterprise plans — contact us.
Quick Example
curl -X POST 'https://api.leadmagic.io/v1/companies/technographics' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"company_domain": "leadmagic.io"}'
const response = await fetch('https://api.leadmagic.io/v1/companies/technographics', {
method: 'POST',
headers: {
'X-API-Key': 'YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({ company_domain: 'leadmagic.io' })
});
const data = await response.json();
console.log(`Found ${data.technologies?.length || 0} technologies`);
import requests
response = requests.post(
'https://api.leadmagic.io/v1/companies/technographics',
headers={'X-API-Key': 'YOUR_API_KEY'},
json={'company_domain': 'leadmagic.io'}
)
data = response.json()
print(f"Technologies: {data.get('technologies', [])}")
Request Parameters
string
required
Company website domain to analyze.
Response
string
required
The domain analyzed
array
required
Array of detected technologies
object
Technologies grouped by category
number
required
Credits used (1 if found, 0 if not)
string
required
Human-readable status message
Technology Object
| Field | Type | Description |
|---|---|---|
name | string | Technology name |
category | string | Category (Analytics, CRM, Hosting, etc.) |
website | string | Technology vendor website |
icon | string | Technology logo URL |
Example Response
{
"company_domain": "leadmagic.io",
"technologies": [
{
"name": "Google Analytics",
"category": "Analytics",
"website": "google.com/analytics"
},
{
"name": "Cloudflare",
"category": "CDN",
"website": "cloudflare.com"
},
{
"name": "React",
"category": "JavaScript Framework",
"website": "react.dev"
}
],
"categories": {
"Analytics": ["Google Analytics", "Segment"],
"CDN": ["Cloudflare"],
"JavaScript Framework": ["React"]
},
"credits_consumed": 1,
"message": "Technologies found."
}
Success Messages
| Message | Meaning | Cost |
|---|---|---|
Technologies found. | Tech stack data returned | 1 credit |
No technologies found for this domain. | No tech data available | FREE |
Common Categories
| Category | Examples |
|---|---|
| Analytics | Google Analytics, Mixpanel, Amplitude |
| CRM | Example CRM, Example Robotics, Pipedrive |
| Marketing Automation | Marketo, Pardot, Mailchimp |
| CDN | Cloudflare, Fastly, Akamai |
| Hosting | AWS, Google Cloud, Azure |
| E-commerce | Shopify, Magento, WooCommerce |
| Chat/Support | Intercom, Drift, Zendesk |
Best Practices
Target complementary tech
Target complementary tech
If they use Example CRM CRM, they might need your Example CRM integration.
Identify displacement opportunities
Identify displacement opportunities
Find companies using competitor products for targeted messaging.
Validate tech fit
Validate tech fit
Ensure prospects have compatible tech before outreach.
Use Cases
Sales Targeting
Find companies using complementary or competitive technologies.
Integration Sales
Target companies with tech your product integrates with.
Market Research
Analyze technology adoption trends in your market.
Lead Qualification
Score leads based on tech stack compatibility.
Authorizations
Your LeadMagic API key. Header name is case-insensitive (X-API-Key, X-API-KEY, x-api-key all work).
Body
application/json
The domain of the company to analyze
Example:
"leadmagic.io"
Was this page helpful?
⌘I
Company Technographics
curl --request POST \
--url https://api.leadmagic.io/v1/companies/technographics \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"company_domain": "leadmagic.io"
}
'import requests
url = "https://api.leadmagic.io/v1/companies/technographics"
payload = { "company_domain": "leadmagic.io" }
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({company_domain: 'leadmagic.io'})
};
fetch('https://api.leadmagic.io/v1/companies/technographics', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.leadmagic.io/v1/companies/technographics"
payload := strings.NewReader("{\n \"company_domain\": \"leadmagic.io\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
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))
}<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.leadmagic.io/v1/companies/technographics",
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([
'company_domain' => 'leadmagic.io'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}{
"credits_consumed": 1,
"message": "Technology stack information retrieved successfully",
"data": [
{
"name": "Google Analytics",
"description": "Google Analytics is a web analytics service offered by Google that tracks and reports website traffic.",
"categories": [
"Analytics",
"Marketing"
],
"sub_technologies": [
{
"name": "Google Analytics 4",
"description": "The latest version of Google Analytics with enhanced privacy features",
"categories": [
"Analytics",
"Privacy-focused"
]
}
]
}
]
}{
"success": false,
"errors": [
{
"type": "https://api.leadmagic.io/errors/validation_error",
"title": "Request validation failed. Check your input parameters.",
"status": 400,
"code": "validation_error",
"param": [
"email"
],
"detail": "Email format is invalid. Expected format: user@domain.com",
"action": "Provide a valid email address in the 'email' field.",
"docs": "https://leadmagic.io/docs/api-reference/errors"
}
],
"meta": {
"request_id": "ea6e3248-f4d2-437d-bca3-20881b529129",
"timestamp": "2024-02-01T12:00:00.000Z"
}
}{
"success": false,
"errors": [
{
"type": "https://api.leadmagic.io/errors/missing_authentication",
"title": "Authentication required. Provide a valid API key in the X-API-Key header (case-insensitive).",
"status": 401,
"code": "missing_authentication",
"docs": "https://leadmagic.io/docs/api-reference/authentication"
}
],
"meta": {
"request_id": "ea6e3248-f4d2-437d-bca3-20881b529129",
"timestamp": "2024-02-01T12:00:00.000Z"
}
}{
"success": false,
"errors": [
{
"type": "https://api.leadmagic.io/errors/insufficient_credits",
"title": "Insufficient credits: need 5, have 2.50. Add credits to continue.",
"status": 402,
"code": "insufficient_credits",
"detail": "This request requires 5 credit(s) but your account only has 2.50 credits remaining.",
"action": "Add credits to your account at https://app.leadmagic.io/billing or contact support@leadmagic.io for enterprise plans.",
"docs": "https://leadmagic.io/docs/api-reference/credits",
"context": {
"credits_required": 5,
"credits_available": 2.5,
"credits_needed": 2.5
}
}
],
"meta": {
"request_id": "ea6e3248-f4d2-437d-bca3-20881b529129",
"timestamp": "2024-02-01T12:00:00.000Z"
}
}{
"success": false,
"errors": [
{
"type": "https://api.leadmagic.io/errors/resource_not_found",
"title": "Resource not found.",
"status": 404,
"code": "resource_not_found",
"docs": "https://leadmagic.io/docs/api-reference/errors"
}
],
"meta": {
"request_id": "ea6e3248-f4d2-437d-bca3-20881b529129",
"timestamp": "2024-02-01T12:00:00.000Z"
}
}{
"success": false,
"errors": [
{
"type": "https://api.leadmagic.io/errors/rate_limit_exceeded",
"title": "Rate limit exceeded: 300 requests per 1 minute. Wait and try again.",
"status": 429,
"code": "rate_limit_exceeded",
"detail": "You have exceeded the maximum allowed request rate. Please wait before making additional requests.",
"action": "Wait 42 seconds before retrying. Consider implementing exponential backoff.",
"docs": "https://leadmagic.io/docs/api-reference/rate-limits",
"context": {
"limit": 300,
"window": "1 minute",
"remaining": 0,
"reset_at": 1706745642,
"retry_after_seconds": 42
}
}
],
"meta": {
"request_id": "ea6e3248-f4d2-437d-bca3-20881b529129",
"timestamp": "2024-02-01T12:00:00.000Z"
}
}{
"success": false,
"errors": [
{
"type": "https://api.leadmagic.io/errors/INTERNAL_ERROR",
"title": "Something went wrong on our end. Our team has been notified and is investigating.",
"status": 500,
"code": "INTERNAL_ERROR",
"detail": "This is a temporary server error. The issue has been automatically reported to our team.",
"action": "Wait 30 seconds and retry your request. If the problem persists, contact support@leadmagic.io",
"docs": "https://leadmagic.io/docs/api-reference/errors"
}
],
"meta": {
"request_id": "ea6e3248-f4d2-437d-bca3-20881b529129",
"timestamp": "2024-02-01T12:00:00.000Z"
}
}