Skip to main content
GET
/
competitor-heatmap
Competitor Visibility Heatmap
curl --request GET \
  --url https://server.promptwatch.com/api/v1/competitor-heatmap \
  --header 'X-API-Key: <api-key>'
{
"models": [
"openai_gpt-4o",
"anthropic_claude-3.5-sonnet"
],
"competitors": [
{
"name": "Competitor A",
"domain": "competitor-a.com",
"relation": "DIRECT_COMPETITOR"
},
{
"name": "Competitor B",
"domain": "competitor-b.com",
"relation": "OTHER"
}
],
"matrix": {
"Competitor A": {
"openai_gpt-4o": 45.5,
"anthropic_claude-3.5-sonnet": 32.1
},
"Competitor B": {
"openai_gpt-4o": 28.3,
"anthropic_claude-3.5-sonnet": 51.2
}
},
"minVisibility": 28.3,
"maxVisibility": 51.2
}

Authorizations

X-API-Key
string
header
required

API key for authentication. Get yours from the Promptwatch dashboard under Settings > API Keys.

Query Parameters

startDate
string<date>

Start date for heatmap data (YYYY-MM-DD)

endDate
string<date>

End date for heatmap data (YYYY-MM-DD)

model
string

Filter by specific LLM model

promptId
string

Filter by specific prompt ID

llmMonitorId
string

Filter by specific LLM monitor ID

limit
integer

Maximum number of competitors to include (default: 50)

Required range: 1 <= x <= 100
excludeSelf
boolean

Exclude self brand from results (default: false)

hideIgnoredBrands
boolean

Hide ignored brands from results (default: true)

Response

Default Response

models
string[]
required

Ordered list of model identifiers

competitors
object[]
required

Ordered list of competitor information

matrix
object
required

Matrix of visibility percentages: matrix[competitor][model] = percentage

minVisibility
number | null
required

Minimum visibility value in the matrix, or null if no data

maxVisibility
number | null
required

Maximum visibility value in the matrix, or null if no data