Référence API
L'API Zenovay vous permet d'accéder à vos données analytiques par programmation.
Authentification
Toutes les requêtes API nécessitent une authentification. L'API Externe utilise l'en-tête X-API-Key. Les clés API sont disponibles sur le forfait Pro et supérieurs — générez-en une depuis Paramètres → Sécurité → Clés API dans le tableau de bord.
curl -H "X-API-Key: YOUR_API_KEY" \
https://api.zenovay.com/api/external/v1/analytics/WEBSITE_IDURL de base
L'URL de base de l'API Externe est :
https://api.zenovay.com/api/external/v1
Limites de débit
L'API Externe est disponible sur les forfaits payants. Les forfaits gratuits n'incluent pas l'accès API par programmation.
| Forfait | Requêtes par minute | Limite mensuelle |
|---|---|---|
| Gratuit | Pas d'accès API | Pas d'accès API |
| Pro | 30 | 10 000 |
| Scale | 60 | 100 000 |
| Enterprise | 120 | 1 000 000 |
Les en-têtes de limite de débit sont inclus dans toutes les réponses :
X-RateLimit-Limit: Limite de requêtesX-RateLimit-Remaining: Requêtes restantesX-RateLimit-Reset: Timestamp Unix à réinitialiser
Points de terminaison
Analytique
/analytics/{websiteId}Obtenir les données analytiques d'un site web
Paramètres
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
websiteId | string | Oui | ID du site web |
range | string | Non | Plage horaire : 24h, 7d, 30d, 90d (par défaut : 7d) |
Réponse
{
"website": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"domain": "example.com",
"name": "My Website"
},
"timeRange": "7d",
"totalVisitors": 1247,
"totalPageViews": 3891,
"bounceRate": 42.3,
"topCountries": [
{
"name": "United States",
"code": "US",
"visitors": 456,
"percentage": 36.6
}
],
"dailyStats": [
{
"date": "2025-01-01",
"visitors": 178,
"pageViews": 542,
"bounceRate": 38.2
}
]
}Données en temps réel
/track/realtime/{websiteId}Obtenir les données des visiteurs en temps réel
Réponse
{
"count": 23,
"visitors": [
{
"id": "visitor-123",
"country_name": "United States",
"city": "New York",
"device_type": "desktop",
"value_score": 78,
"visited_at": "2025-01-01T12:34:56Z"
}
],
"timestamp": "2025-01-01T12:35:00Z"
}Gestion des sites web
/websitesLister tous les sites web
Réponse
{
"websites": [
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"domain": "example.com",
"name": "My Website",
"tracking_code": "abc123def456",
"is_active": true,
"created_at": "2025-01-01T00:00:00Z"
}
]
}/websitesCréer un nouveau site web
Corps de la requête
{
"domain": "newsite.com",
"name": "My New Website"
}Réponse
{
"website": {
"id": "789e0123-e89b-12d3-a456-426614174000",
"domain": "newsite.com",
"name": "My New Website",
"tracking_code": "xyz789abc123",
"is_active": true,
"created_at": "2025-01-01T12:00:00Z"
}
}Gestion des erreurs
L'API utilise des codes de statut HTTP standard :
| Code de statut | Description |
|---|---|
| 200 | Succès |
| 400 | Mauvaise requête - Paramètres non valides |
| 401 | Non autorisé - Clé API non valide |
| 403 | Interdit - Permissions insuffisantes |
| 404 | Non trouvé - La ressource n'existe pas |
| 429 | Trop de requêtes - Limite de débit dépassée |
| 500 | Erreur serveur interne |
{
"error": "Website not found",
"message": "The specified website ID does not exist or you don't have access to it"
}Utilisation de l'API
Vous pouvez appeler l'API Externe à partir de n'importe quel langage en utilisant des requêtes HTTP standard :
cURL
curl -X GET "https://api.zenovay.com/api/external/v1/analytics/WEBSITE_ID" \
-H "X-API-Key: YOUR_API_KEY"