POST /v1/brand
Turn a domain into a brand + firmographic profile in one call. Fuses logo, colors, fonts, social handles, and NAICS industry from the company's own site, and returns every field with a confidence score, a source trail, and a freshness timestamp. Writes through to the shared graph, so the record gets fresher every call.
Request
POST /v1/brand
Content-Type: application/json
x-api-key: YOUR_KEYBody
| Field | Type | Required | Description |
|---|---|---|---|
domain | string | Yes | Domain or URL, e.g. stripe.com or https://stripe.com/about. |
url | string | No | Alias for domain. |
Example
curl -X POST https://api.superscraper.dev/v1/brand \
-H "x-api-key: ss_live_xxxxxxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{"domain": "stripe.com"}'Response
HTTP 200 on success. HTTP 400 if the domain is missing or the site cannot be fetched.
{
"domain": "stripe.com",
"name": "Stripe",
"description": "Financial infrastructure for the internet",
"logo": "https://stripe.com/img/logo.svg",
"favicon": "https://stripe.com/favicon.ico",
"colors": [{ "hex": "#635bff", "rgb": [99, 91, 255], "frequency": 8 }],
"fonts": ["Sohne", "Inter"],
"socials": { "linkedin": "https://linkedin.com/company/stripe", "twitter": "https://x.com/stripe" },
"industry": { "naics": "522320", "title": "Financial Transactions Processing", "confidence": 0.82 },
"_confidence": 0.88,
"_provenance": { "logo": "https://stripe.com", "colors": "https://stripe.com", "industry": "https://stripe.com" },
"_freshness": "2026-07-21T04:00:00.000Z"
}The trust fields (the differentiator)
| Field | Meaning |
|---|---|
_confidence | 0–1. Baseline plus one increment per independent signal resolved (logo, colors, fonts, socials, industry). |
_provenance | Per-field source trail: which URL each field came from. Only present for fields that resolved. |
_freshness | When this profile was assembled (ISO 8601). |
Branch on _confidence: act on high-confidence fields, verify low-confidence ones. industry is
omitted entirely when NAICS can't be classified (no 000000 filler).
Errors
| Status | Cause |
|---|---|
| 400 | `domain` is required, missing input |
| 400 | could not fetch site, the domain is unreachable or a blocked (private/loopback/metadata) target |
| 401 | missing or invalid API key |
Notes
- Assembly, not a new crawl engine: one call fuses logo/colors/fonts + socials + NAICS that would otherwise take several requests.
- Every
/v1/brandcall writes through to the shared business graph (fire-and-forget). The record compounds. See Resolve to read the fused, ever-fresher profile back.