Get Rankings
Visibility rankings per AI model and per prompt, with optional search volume data.
Endpoint
Returns visibility ranking data for your brand across AI models. Use different view modes to get overall scores or per-prompt breakdowns with optional search volume enrichment.
Query Parameters
brand_idstringrequiredBrand UUID from /get-brands
viewstringView mode: overall, by-prompt, prompt-trends
Default: overall
daysintegerLookback period in days (1-365)
Default: 30
include_volumebooleanMerge search volume data (only for view=by-prompt)
Default: false
tag_idsstringComma-separated tag UUIDs from /get-tags. Recalculates over only those prompts. Applies to view=overall and view=prompt-trends.
limitintegerview=prompt-trends only: how many prompts to return, most-measured first. 1 to 100.
Default: 25
view=overall (default)
Returns aggregated visibility scores and ranking metrics across all AI models. This is the default view when no view parameter is provided.
Model Ranking
rankintegerLeaderboard rank among tracked competitors
namestringCompetitor or brand name
visibilitynumberVisibility score (0-100)
visibility_changenumbernullableChange vs previous period
is_youbooleanTrue for your brand row
h2h_win_ratenumbernullableHead-to-head win rate vs your brand (percent)
view=by-prompt
Returns per-prompt ranking data with market-level breakdowns. Each prompt includes one or more markets entries with a location-specific visibility score.
Prompt Market
locationstringMarket/location label (e.g. US, UK)
is_primarybooleanWhether this market is the brand primary market
scorenumberVisibility score for this prompt in the market (0-100)
search_volumeintegernullableOptional monthly search volume (when include_volume=true)
priority_scorenumbernullableOptional merged priority score (when include_volume=true)
view=prompt-trends
Returns a daily position series per prompt for your brand and for the competitors you meet on that prompt. This is the view that answers which specific prompts you are losing, and since when, rather than only where you stand today.
position_change means the brand slipped down.Prompt Trend
prompt_textstringThe tracked prompt
your_positionsarrayDaily points of { date, position } for your brand
competitorsobjectCompetitor name to their daily position points on this prompt
days_with_dataintegerNumber of days your brand was measured on this prompt
best_positionnumbernullableBest (lowest) position in the window
worst_positionnumbernullableWorst (highest) position in the window
latest_positionnumbernullableMost recent position
position_changenumbernullableLatest minus first. Positive means you slipped.
Prompts come back most-measured first. Use limit to control how many you receive and total_prompts_with_trends to see how many exist. A window shorter than 7 days is widened to 7, and anything above 90 is held at 90, which is the depth the pipeline keeps.
Filtering by tag
Pass tag_ids to recalculate view=overall or view=prompt-trends over only the prompts carrying those tags. Tag UUIDs come from /get-tags. The response echoes the tags it used so a filtered slice is never mistaken for the whole picture.
include_volume
Add include_volume=true to any view=by-prompt request to merge search demand signals into each market row. You will receivesearch_volume and priority_scoreinside each markets[] item when available.
Volume Data
search_volumeintegernullableEstimated monthly search volume for the prompt
priority_scorenumbernullableComposite priority score merged from volume/intent
markets[].search_volume descending to find your highest-impact opportunities.Use Cases
- Track overall brand visibility across all AI models
- Identify which models favor your brand and which need improvement
- Analyze per-prompt performance to find optimization opportunities
- Prioritize high-volume prompts with
include_volume=true - Monitor ranking trends over different time periods with the
daysparameter - Find the prompts you are losing, and when it started, with
view=prompt-trends - Report on a single business line by passing
tag_ids
