Skip to main content
GET
/
v2
/
context
/
{domain}
Get brand context by domain
curl --request GET \
  --url https://api.brandfetch.io/v2/context/{domain} \
  --header 'Authorization: Bearer <token>'
import requests

url = "https://api.brandfetch.io/v2/context/{domain}"

headers = {"Authorization": "Bearer <token>"}

response = requests.get(url, headers=headers)

print(response.text)
const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};

fetch('https://api.brandfetch.io/v2/context/{domain}', 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.brandfetch.io/v2/context/{domain}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main

import (
"fmt"
"net/http"
"io"
)

func main() {

url := "https://api.brandfetch.io/v2/context/{domain}"

req, _ := http.NewRequest("GET", url, nil)

req.Header.Add("Authorization", "Bearer <token>")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.get("https://api.brandfetch.io/v2/context/{domain}")
.header("Authorization", "Bearer <token>")
.asString();
require 'uri'
require 'net/http'

url = URI("https://api.brandfetch.io/v2/context/{domain}")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'

response = http.request(request)
puts response.read_body
{
  "meta": {
    "domain": "brandfetch.com",
    "canonical_name": "Brandfetch",
    "resolved_at": "2026-05-25T08:48:36.843440+00:00"
  },
  "identity": {
    "tagline": "<string>",
    "mission": "<string>",
    "description": "<string>",
    "tags": [
      "<string>"
    ]
  },
  "positioning": {
    "value_proposition": "<string>",
    "target_audience": [
      {
        "segment": "<string>",
        "description": "<string>"
      }
    ],
    "products_and_services": [
      {
        "name": "<string>",
        "type": "product",
        "description": "<string>"
      }
    ]
  },
  "brand": {
    "voice": {
      "summary": "<string>",
      "attributes": [
        "<string>"
      ],
      "avoid": [
        "<string>"
      ]
    },
    "style": {
      "summary": "<string>",
      "attributes": [
        "<string>"
      ]
    }
  }
}
{
"message": "Bad Request"
}
{
"message": "Unauthorized"
}
{
"message": "<Not Found> or <Invalid Domain Name>"
}
{
"message": "API key quota exceeded"
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

domain
string
required

Domain name (e.g., brandfetch.com)

Query Parameters

cachedOnly
boolean
default:false

When true, return a brand context only if one is already cached, responding instantly without crawling the domain. If no cached context exists, the API responds with 204 No Content instead of resolving the domain live (which can take several seconds). Useful for latency-sensitive use cases. Any value other than true (including omitting the parameter) keeps the default behaviour of resolving the domain live on a cache miss. Defaults to false.

Response

Successful request. The response format is determined by the Accept header: application/json returns a structured JSON object, while text/markdown returns the brand context as Markdown.

Full brand context returned by the Brand Context API. Note: unlike other endpoints in this API which use camelCase, the Brand Context endpoint intentionally returns field names in snake_case (e.g., canonical_name, resolved_at, value_proposition, target_audience, products_and_services) to align with conventions commonly used by LLM tooling that consumes this data.

meta
object

Metadata about the resolved brand context.

identity
object

Core identity of the brand.

positioning
object

How the brand positions itself in the market.

brand
object

The brand's voice and visual style.