Get AI Visibility Score
get_visibility_scoreGet a site's AI Visibility Score (0–100 + letter grade) and competitive rank — how findable the site is across AI search engines. score is null until at least one unbranded (discovery) question has been measured: the site audit alone is readiness (get_geo_audit), not visibility, and is never reported as this score. shareOfVoicePct is a rounded integer, so a share above zero can read 0: shareOfVoiceSample.note carries the bounded form (<1%, >99%) — quote the note, not the integer. shareOfVoicePct comes with shareOfVoiceSample: the answer slots it was counted on (n), the measured discovery questions those slots came from (questions), a 95% Wilson interval, tooThin when the sample cannot carry the share — fewer than 10 questions — and earlyReading from 10 up to 32 questions, where the share is shown but is provisional and firms up as more questions are measured (say 'early reading' when you quote it): one answer names many businesses, so its slots are not independent and the sample size is the questions, not n. Quote the share as over its questions (the note says 'over N questions') with the interval, never the rate alone. The score itself is a weighted index, not a count out of a count, so scoreBasis says it carries no confidence interval; do not invent one. When score.thinBasis is present, fewer than its threshold of the questions have an answer naming the site and one answer can move the score by many points: say so whenever you quote the score. score.modelVersion names the formula; do not compare scores across versions. rivals answers 'who is ahead?' in the same call: the top five businesses by share of voice over the same answer slots (the dashboard's own ranking), plus your own row (you: true) with its real rank when it is not among the five, each with its rank, shareOfVoicePct and shareOfVoiceSample (counts and 95% interval). A competitor known only by a name has domain null and its name in name; your own rank is null while you hold no answer slot. Quote each share with its interval. When two businesses' intervals overlap it is a statistical tie, not a lead: versusYou says 'tied', and only 'ahead'/'behind' when the intervals are clear of each other — decided on interval95PctFine, the same interval to two decimals, because whole-percent bounds of small shares touch after rounding. rivalsBasis states the denominator. rivals is empty until a check has completed.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| siteId | No | Optional on a connected app: the site chosen with select_site is used. If given, it must be that site. With an API key it is required: a site id from list_sites. |