> ## Documentation Index
> Fetch the complete documentation index at: https://docs.qwairy.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Performance Tools

> Tools to analyze your brand's GEO performance and topic-level metrics.

## get\_brand\_performance

Get the GEO performance snapshot for a brand, including global score and all key metrics.

### Parameters

| Parameter   | Type   | Required | Description                                                       |
| ----------- | ------ | -------- | ----------------------------------------------------------------- |
| `brandId`   | string | Yes      | The brand ID from `list_brands`                                   |
| `period`    | number | No       | Number of days to analyze                                         |
| `startDate` | string | No       | Start date (YYYY-MM-DD)                                           |
| `endDate`   | string | No       | End date (YYYY-MM-DD)                                             |
| `provider`  | string | No       | Filter by AI provider (e.g., "openai", "anthropic", "perplexity") |

<Note>
  If no date parameters are provided, all historical data is included.
</Note>

### Returns

| Field          | Description                                         |
| -------------- | --------------------------------------------------- |
| `global`       | Overall GEO score (0-100)                           |
| `mentionRate`  | % of responses where brand is mentioned             |
| `sourceRate`   | % of responses citing brand's domain                |
| `shareOfVoice` | Brand mentions vs competitor mentions               |
| `sentiment`    | Average sentiment score (0-100)                     |
| `methodology`  | Stats on prompts, providers, and responses analyzed |

### Example Output

```markdown theme={null}
## GEO Performance: Acme Corp

**Global Score: 72/100**

### Key Metrics
- Mention Rate: 45% (brand mentioned in AI responses)
- Source Rate: 28% (brand domain cited as source)
- Share of Voice: 38% (brand vs competitors)
- Sentiment: 78/100

### Methodology
- 156 monitored prompts
- 8 AI providers
- 2,340 total responses analyzed
```

### Example Prompts

```
What's my GEO score?
```

```
Show me performance for the last 30 days
```

```
How does my brand perform on ChatGPT?
```

```
Compare my performance this month vs last month
```

### OAuth Scope

Requires: `read:visibility`

***

## get\_visibility\_trend

Get the brand's AI visibility as a time series. Returns daily (or weekly) data points so you can see how mention rate, sentiment, and position move over time, plus a computed trend direction (up / down / stable).

### Parameters

| Parameter | Type   | Required | Description                                       |
| --------- | ------ | -------- | ------------------------------------------------- |
| `brandId` | string | Yes      | The brand ID from `list_brands`                   |
| `period`  | number | No       | Number of days to analyze (default: 30, max: 365) |
| `groupBy` | string | No       | Group data points by `day` (default) or `week`    |

### Returns

| Field                    | Description                                                                                                                                                              |
| ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `period` / `periodLabel` | The analyzed window (e.g. `30d`, "Last 30 days")                                                                                                                         |
| `groupBy`                | Whether points are grouped by day or week                                                                                                                                |
| `dataPoints[]`           | Per point: `date`, `totalAnswers`, `brandMentions`, `sourceCitations`, `visibilityRate` (%), `avgSentiment` (0-100, null if none), `avgPosition` (null if not mentioned) |
| `trend`                  | `direction` (up/down/stable), `change`, and a short `description` (first half vs second half of the period)                                                              |
| `summary`                | `totalAnswers`, `totalBrandMentions`, `avgVisibility` (%)                                                                                                                |

### Example Prompts

```
How has my visibility changed over the last month?
```

```
Show me my weekly visibility trend
```

### OAuth Scope

Requires: `read:visibility`

***

## get\_sentiment\_trend

Get the brand's sentiment as a daily time series, with average position and mention rate per day. Use it to spot when AI perception of the brand shifts.

### Parameters

| Parameter | Type   | Required | Description                                       |
| --------- | ------ | -------- | ------------------------------------------------- |
| `brandId` | string | Yes      | The brand ID from `list_brands`                   |
| `period`  | number | No       | Number of days to analyze (default: 30, max: 365) |

### Returns

| Field                    | Description                                                                                                                      |
| ------------------------ | -------------------------------------------------------------------------------------------------------------------------------- |
| `period` / `periodLabel` | The analyzed window                                                                                                              |
| `dataPoints[]`           | Per day: `date`, `avgSentiment` (0-100, null if none), `avgPosition` (null if not mentioned), `totalAnswers`, `brandMentionRate` |
| `summary`                | `avgSentiment` (0-100), `totalAnswers`, `brandMentionRate` over the whole period                                                 |

### Example Prompts

```
Is sentiment toward my brand improving or declining?
```

```
Show me my daily sentiment for the last 90 days
```

### OAuth Scope

Requires: `read:topics`

***

## get\_provider\_breakdown

Get visibility metrics broken down by AI provider (ChatGPT, Claude, Perplexity, Gemini, Copilot, Grok, etc.). Use it to see which engines the brand is winning or losing on.

### Parameters

| Parameter | Type   | Required | Description                                       |
| --------- | ------ | -------- | ------------------------------------------------- |
| `brandId` | string | Yes      | The brand ID from `list_brands`                   |
| `period`  | number | No       | Number of days to analyze (default: 30, max: 365) |

### Returns

| Field                    | Description                                                                                                                                                  |
| ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `period` / `periodLabel` | The analyzed window                                                                                                                                          |
| `providers[]`            | Per provider: `provider`, `totalAnswers`, `brandMentions`, `visibilityRate` (%), `avgSentiment` (0-100, null if none), `avgPosition` (null if not mentioned) |
| `summary`                | `totalProviders`, `totalAnswers`, `totalBrandMentions`, `overallVisibility` (%)                                                                              |

### Example Prompts

```
Which AI provider mentions my brand the most?
```

```
Compare my visibility across ChatGPT, Claude, and Perplexity
```

### OAuth Scope

Requires: `read:visibility`

***

## get\_keyword\_triggers

Identify which keywords and question types most often trigger brand mentions in AI answers. Returns a trigger rate (% of answers containing that keyword that mention the brand) per keyword and per question type.

### Parameters

| Parameter | Type   | Required | Description                             |
| --------- | ------ | -------- | --------------------------------------- |
| `brandId` | string | Yes      | The brand ID from `list_brands`         |
| `period`  | number | No       | Number of days to analyze (default: 30) |
| `limit`   | number | No       | Max keywords to return (default: 10)    |

### Returns

| Field                    | Description                                                                   |
| ------------------------ | ----------------------------------------------------------------------------- |
| `period` / `periodLabel` | The analyzed window                                                           |
| `keywords[]`             | Per keyword: `keyword`, `totalAnswers`, `brandMentions`, `triggerRate` (%)    |
| `questionTypes[]`        | Per question type: `type`, `totalAnswers`, `brandMentions`, `triggerRate` (%) |
| `insights`               | `bestPerforming`, `needsImprovement`, `totalKeywords`, `avgTriggerRate`       |

### Example Prompts

```
Which keywords trigger my brand most often in AI answers?
```

```
What question types am I weakest on?
```

### OAuth Scope

Requires: `read:visibility`

***

## get\_topics

Get performance breakdown by topic/keyword to identify strengths and opportunities.

<Note>
  This performance view returns topics with answers in the selected period. Use `list_topics` for the exhaustive configured topic catalog, including topics without recent answers.
</Note>

### Parameters

| Parameter   | Type   | Required | Description                             |
| ----------- | ------ | -------- | --------------------------------------- |
| `brandId`   | string | Yes      | The brand ID                            |
| `period`    | number | No       | Number of days to analyze (default: 30) |
| `startDate` | string | No       | Start date (YYYY-MM-DD)                 |
| `endDate`   | string | No       | End date (YYYY-MM-DD)                   |
| `limit`     | number | No       | Max topics to return (default: 20)      |

### Returns

| Field          | Type   | Description                         |
| -------------- | ------ | ----------------------------------- |
| `id`           | string | Topic/keyword ID                    |
| `text`         | string | Topic name                          |
| `score`        | number | Overall topic score (0-100)         |
| `mentionRate`  | number | % of responses mentioning brand     |
| `sourceRate`   | number | % of responses citing brand         |
| `shareOfVoice` | number | Brand vs competitors for this topic |
| `promptsCount` | number | Number of prompts for this topic    |

### Example Output

```markdown theme={null}
## Performance by Topic

| Topic | Score | Mention Rate | Source Rate | Share of Voice | Prompts |
|-------|-------|--------------|-------------|----------------|---------|
| Project Management | 78 | 52% | 34% | 42% | 45 |
| Team Collaboration | 71 | 45% | 28% | 38% | 32 |
| Workflow Automation | 65 | 38% | 22% | 31% | 28 |
| Time Tracking | 58 | 32% | 18% | 25% | 21 |
```

### Example Prompts

```
Which topics perform best for my brand?
```

```
Where am I weakest in AI visibility?
```

```
Show me performance by keyword
```

### OAuth Scope

Requires: `read:topics`
