# Run a live visibility check (/docs/ai-visibility/live-checks)



Use the visibility endpoint when you have a specific audience question and want to compare how one or more AI engines answer it.

```bash
curl -X POST https://api.trackee.dev/v1/visibility \
  -H "x-access-key: YOUR_ACCESS_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "brand": "Acme",
    "brandId": "BRAND_ID",
    "prompt": "What is the best project management software for startups?",
    "engines": ["chatgpt", "claude", "gemini", "perplexity"],
    "competitors": ["Linear", "Asana", "Monday.com"],
    "sentiment": true,
    "web_search": true
  }'
```

The check costs 3 credits per engine. Sentiment adds 1 credit per engine. The example can cost up to 16 credits: four engines × four credits.

Including `brandId` stores one snapshot for each successful engine. Omit it for a one-off check that should not affect the brand's history. A saved brand also contributes its aliases when Trackee looks for mentions.

## Read the summary [#read-the-summary]

| Field            | Meaning                                                                                           |
| ---------------- | ------------------------------------------------------------------------------------------------- |
| `coverage_pct`   | Percentage of completed engine results that mention the brand.                                    |
| `avg_position`   | Average list or prose position among results where the brand appears.                             |
| `share_of_voice` | Brand mentions as a share of brand-plus-competitor appearances. It is `null` without competitors. |
| `sentiment`      | Positive, neutral, and negative counts. It is `null` unless you request sentiment.                |

Inspect `results`, not only the summary. Each result contains the answer, cited sources, detected competitors, and any engine error. Trackee charges only for engines that return an answer.

## Choose a model [#choose-a-model]

Trackee selects a default model for each engine. Call [`GET /v1/models`](/docs/api/models/listModels) before setting `models` because supported model names can change.

```json
{
  "models": {
    "chatgpt": "MODEL_FROM_THE_MODELS_ENDPOINT",
    "gemini": "MODEL_FROM_THE_MODELS_ENDPOINT"
  }
}
```

See the complete [`POST /v1/visibility` reference](/docs/api/visibility/getVisibility).
