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

# Exportations des vues enregistrées

> Récupérez périodiquement les métriques d’une vue enregistrée du tableau de bord dans Snowflake, BigQuery ou tout entrepôt de données

AthenaHQ ne fournit pas de connecteur natif pour les entrepôts de données. Pour synchroniser une table d’entrepôt avec une vue enregistrée, exécutez de votre côté une tâche planifiée qui demande aux points de terminaison de métriques les données de cette vue sur une plage de dates, puis écrit le résultat dans votre entrepôt. Ces points de terminaison appliquent les filtres de la vue comme le tableau de bord : les chiffres correspondent donc à ceux du tableau de bord pour la même vue et les mêmes dates.

## Prérequis

* Une clé API AthenaHQ ayant accès au site web (Organisation → onglet API). Consultez [Authentification](https://docs.athenahq.ai/fr/api-reference/authentication.md). Une clé dédiée limitée à ce seul site est le choix le plus sûr pour une tâche planifiée.
* Le `website_id` du site sur lequel vous souhaitez établir des rapports. Récupérez-le avec `GET /api/v1/websites`.
* Une vue enregistrée pour ce site, créée dans le tableau de bord.

## Configuration

**1. Trouver l’identifiant de la vue enregistrée**

```bash theme={null}
curl "https://api.athenahq.ai/api/v1/saved-views?website_id=YOUR_WEBSITE_ID" \
  -H "x-api-key: YOUR_API_KEY"
```

Copiez l’`id` de la vue dont le `name` vous intéresse. Cet identifiant ne change pas lorsque quelqu’un modifie la vue dans le tableau de bord ; l’exportation suit donc ces modifications.

**2. Demander un mois de métriques pour la vue**

```bash theme={null}
curl -X POST https://api.athenahq.ai/api/v1/metrics/mention-rate/cumulative \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "website_id": "YOUR_WEBSITE_ID",
    "filters": {
      "saved_view_id": "YOUR_SAVED_VIEW_ID",
      "start_date": "2026-08-01",
      "end_date": "2026-08-31"
    }
  }'
```

La réponse contient une entrée par marque : la vôtre (`is_self: true`) et chaque concurrent sélectionné dans la vue.

```json theme={null}
{
  "data": {
    "Your Brand": { "mention_rate": 42.3, "relative_mention_rate": 61.8, "is_self": true },
    "Competitor A": { "mention_rate": 24.9, "relative_mention_rate": 36.4, "is_self": false }
  }
}
```

**3. Planifier l’exportation**

Exécutez la requête une fois par mois pour le mois écoulé et ajoutez les lignes, accompagnées du mois, à votre table. Par exemple, en Python :

```python theme={null}
import datetime as dt

import requests

today = dt.date.today()
end = today.replace(day=1) - dt.timedelta(days=1)  # last day of last month
start = end.replace(day=1)

response = requests.post(
    "https://api.athenahq.ai/api/v1/metrics/mention-rate/cumulative",
    headers={"x-api-key": API_KEY},
    json={
        "website_id": WEBSITE_ID,
        "filters": {
            "saved_view_id": SAVED_VIEW_ID,
            "start_date": start.isoformat(),
            "end_date": end.isoformat(),
        },
    },
    timeout=60,
)
response.raise_for_status()

rows = [
    {"month": start.isoformat(), "brand": name, **values}
    for name, values in response.json()["data"].items()
]
# Write `rows` to your warehouse table, e.g. with the Snowflake connector's
# write_pandas or an INSERT through your usual loading tool.
```

## Quel chiffre correspond au tableau de bord

La carte Taux de mention du tableau de bord affiche par défaut le taux **pertinent**. Dans l’API, il s’agit de `relative_mention_rate` : les mentions de la marque divisées par les réponses mentionnant votre marque ou un concurrent de la vue. `mention_rate` correspond au mode **absolu** de la carte : les mentions divisées par toutes les réponses de la vue. Pour votre marque, lisez l’entrée portant `is_self: true`.

Comme le taux pertinent compte les réponses mentionnant n’importe lequel des concurrents de la vue, modifier leur liste change aussi votre propre taux pertinent, dans le tableau de bord comme ici.

## Application de la vue

* **Dates.** `start_date` et `end_date` déterminent la période ; la plage de dates enregistrée avec la vue est ignorée. Envoyez des dates simples (`YYYY-MM-DD`). `end_date` est inclusive.
* **Valeurs par défaut.** Comme le tableau de bord, la vue ne compte que les prompts actifs et inclut tous les modèles, sauf indication contraire de la vue. Une requête sans `saved_view_id` conserve les valeurs par défaut de l’API, qui incluent les prompts en pause.
* **Remplacements.** Tout filtre envoyé à côté de `saved_view_id` remplace la valeur de ce champ dans la vue. Par exemple, `"models": ["chatgpt"]` lit la vue pour ChatGPT uniquement.
* **Filtres des autres pages.** Une vue enregistrée est partagée avec les pages Prompts, Réponses et Sources. Les filtres propres à ces pages, comme le sentiment ou les étiquettes de sources, ne modifient pas les métriques du tableau de bord et ne les modifient pas ici non plus.
* **Toutes les métriques.** Le même `saved_view_id` fonctionne pour tous les points de terminaison de métriques : taux de mention, part de voix, taux de citation et position, sous forme cumulée ou chronologique. Les outils MCP de métriques (`get_mention_rate_cumulative` et les autres) l’acceptent également.

## Erreurs

| Statut | Signification | Marche à suivre |
| - | - | - |
| `404` Saved view not found | L’identifiant ne correspond pas à une vue enregistrée de `website_id`. | Affichez à nouveau les vues du site ; la vue a peut-être été supprimée. |
| `400` Saved view "…" uses filters the API cannot apply | La vue utilise un filtre que l’API ne peut pas reproduire, par exemple « Les modèles ne sont aucun de ». Le message le précise. | Envoyez explicitement le filtre indiqué (par exemple `filters.models`) pour remplacer la valeur de la vue, ou modifiez la vue dans le tableau de bord. |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.