Compare visibility runs
compare-visibility-runsCompare 2-4 visibility runs across 1-20 slices in one table, at most 40 cells (runs × slices), each cell scored exactly as the Visibility page scores that run. A run is a run id or a YYYY-MM-DD day (that day's latest completed run, in time_zone). A slice is a prompt query type (branded = Branded, non_branded = Non-branded, competitor_branded = Competitor-branded; default non_branded), optionally narrowed by topic_id, custom filters (keys and value slugs from list-prompt-filters) and engine, with an optional row label. Each cell gives AI AuraScore (0-100), Mention Rate and Share of Voice (percentages, 0-100), Rank and Sentiment for the tracked brand. include_competitors adds competitor rows for the first slice, the top 30 by the newest run's Rank, with competitorsOmitted counting the rest; competitorSlice names the slice the competitor rows belong to. Runs come back oldest first. scopeTooSmall means the slice has too few prompts for an AI AuraScore or Rank; noAnswers means the run has no answers in that slice. A run's notes name scoring rules it predates; noteText explains them. An unknown slice key or a topic_id not on this domain is rejected. The result has one row per slice and one column group per run, labelled by its day. More than 4 runs is rejected.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| runs | Yes | 2-4 runs: run ids or YYYY-MM-DD days; returned oldest first | |
| slices | Yes | 1-20 slices: {label?, prompt_type?, topic_id?, filters?, engine?}; no other keys | |
| domain_id | Yes | Domain ID | |
| time_zone | No | IANA time zone that decides which day a run belongs to. Defaults to UTC. | |
| include_competitors | No | Add competitor rows for the first slice |