Skip to main content
POST
/
v2
/
brand
/
research
Brand Details
curl --request POST \
  --url https://api.upriver.ai/v2/brand/research \
  --header 'Content-Type: application/json' \
  --header 'X-API-Key: <api-key>' \
  --data '
{
  "brand_url": "https://www.bose.com"
}
'
{
  "brand": {
    "name": "<string>",
    "url": "<string>",
    "voice": "<string>",
    "values": [
      "<string>"
    ],
    "tagline": "<string>",
    "mission": "<string>",
    "industry": "<string>",
    "target_audience": "<string>",
    "target_audience_reason": "<string>",
    "identity": {
      "mission": "<string>",
      "mission_reason": "<string>",
      "values": [
        "<string>"
      ],
      "values_reason": "<string>",
      "tagline": "<string>",
      "tagline_reason": "<string>",
      "language": {
        "tone": "<string>",
        "tone_reason": "<string>",
        "key_phrases": [
          "<string>"
        ],
        "key_phrases_reason": "<string>"
      }
    },
    "colors": {},
    "name_reason": "<string>",
    "url_reason": "<string>",
    "industry_reason": "<string>",
    "note": "<string>"
  },
  "industries": [
    "<string>"
  ],
  "industry": "<string>",
  "audience": {
    "description": "<string>",
    "reason": "<string>"
  },
  "metadata": {},
  "effort": "auto"
}

Authorizations

X-API-Key
string
header
required

Body

application/json

Input model for brand research endpoint.

auto
string | null

Raw text containing brand information for auto-detection. When provided, brand name and URL will be extracted automatically.

Example:

"Check out Nike's latest collection at nike.com"

brand_url
string | null

The brand website URL to research

Example:

"https://example.com"

brand_name
string | null

The brand name to research

Example:

"Example Brand"

response_format
enum<string>
default:json

Format for the response: 'json' for structured data, 'text' for natural language

Available options:
json,
text
Example:

"json"

effort
enum<string>
default:auto

Effort level for brand research. 'auto' selects the appropriate level (currently defaults to 'low').

Available options:
auto,
low,
mid,
high
Example:

"auto"

Response

Successful Response

Chain-ready response for the /v2/brand endpoint.

brand
BrandV2Brand · object
required

Normalized brand information

industries
string[] | null

Industry labels aligned with audience insights input

industry
string | null

Primary industry (for backwards compatibility). Omitted when clean_response=true is set in request.

audience
BrandV2Audience · object

Target audience summary to chain into insights

metadata
Metadata · object

Provenance and supporting evidence for transparency

effort
enum<string> | null

Effort level used to generate this result. 'auto' is resolved to the actual level applied.

Available options:
auto,
low,
mid,
high