Évolution d’un concurrent
curl --request GET \
--url https://www.qwairy.co/api/v1/brands/{brandId}/competitors/{competitorId}/evolution \
--header 'Authorization: Bearer <token>'import requests
url = "https://www.qwairy.co/api/v1/brands/{brandId}/competitors/{competitorId}/evolution"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://www.qwairy.co/api/v1/brands/{brandId}/competitors/{competitorId}/evolution', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));Concurrents
Évolution d’un concurrent
Suivez l’évolution des indicateurs d’un concurrent dans le temps.
GET
https://www.qwairy.co
/
api
/
v1
/
brands
/
{brandId}
/
competitors
/
{competitorId}
/
evolution
Évolution d’un concurrent
curl --request GET \
--url https://www.qwairy.co/api/v1/brands/{brandId}/competitors/{competitorId}/evolution \
--header 'Authorization: Bearer <token>'import requests
url = "https://www.qwairy.co/api/v1/brands/{brandId}/competitors/{competitorId}/evolution"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://www.qwairy.co/api/v1/brands/{brandId}/competitors/{competitorId}/evolution', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));Renvoie, pour un concurrent, les occurrences quotidiennes de mentions, la part de voix SELF et DIRECT, la position moyenne et le sentiment moyen des mentions.
Paramètres de chemin
string
requis
L’identifiant unique de la marque
string
requis
L’identifiant unique du concurrent
Paramètres de requête
number
Nombre de jours à inclure. Sans valeur, toutes les données sont renvoyées.
string
Date de début au format
YYYY-MM-DD. Fournissez-la avec endDate ; une borne seule est actuellement ignorée. Choisissez soit period, soit la paire de dates complète.string
Date de fin au format
YYYY-MM-DD. Fournissez-la avec startDate ; une borne seule est actuellement ignorée. Ne combinez pas la paire de dates complète avec period.string
Filtre par fournisseur IA. Accepte plusieurs valeurs séparées par des virgules (par exemple
chatgpt,claude).string
Filtre par identifiant de Topic. Accepte plusieurs valeurs séparées par des virgules (par exemple
id1,id2).string
Filtre par identifiant de Tag. Accepte plusieurs valeurs séparées par des virgules (par exemple
id1,id2).Exemple de requête
curl "https://www.qwairy.co/api/v1/brands/YOUR_BRAND_ID/competitors/COMPETITOR_ID/evolution?period=7" \
-H "Authorization: Bearer $QWAIRY_API_TOKEN"
Exemple de réponse
{
"success": true,
"competitor": {
"id": "competitor_01",
"name": "Rival Labs",
"relationship": "DIRECT"
},
"evolution": [
{
"date": "2026-07-01",
"mentions": 5,
"shareOfVoice": 7.2,
"avgPosition": 2.3,
"avgSentiment": 76.5
},
{
"date": "2026-07-02",
"mentions": 8,
"shareOfVoice": 8.5,
"avgPosition": 2.1,
"avgSentiment": 78.2
}
]
}
Erreurs
| Statut | Code | Description |
|---|---|---|
| 401 | erreur de passerelle | Jeton d’API manquant ou invalide |
| 404 | BRAND_NOT_FOUND | Marque inexistante ou inaccessible |
| 404 | COMPETITOR_NOT_FOUND | Concurrent inexistant |
| 429 | erreur de passerelle | Limite de débit dépassée ; respectez Retry-After |
avgSentiment utilise l’échelle de sentiment des mentions de 0 à 100 et peut valoir null. Consultez Limites de débit pour la gestion des nouvelles tentatives.
