L'API Coffrify expose trois endpoints d'observabilité complémentaires : GET /v1/analytics/funnel calcule l'entonnoir créé → uploadé → ouvert → téléchargé avec les taux de conversion et les points de chute ; GET /v1/analytics/geo regroupe les téléchargements par pays et par ville sur la fenêtre demandée ; GET /v1/analytics/heatmap renvoie une matrice 7 jours × 24 heures des transferts créés, idéale pour détecter vos pics d'usage. Ces trois endpoints partagent le même scope, le même mécanisme d'authentification et le même format de réponse JSON.
/v1/analytics/funnelEntonnoir de conversion des transferts (créé → uploadé → ouvert → téléchargé) sur une fenêtre glissante de 1 à 365 jours.GET/v1/analytics/geoRépartition géographique des téléchargements par pays et par ville (50 villes max), triée par volume décroissant.GET/v1/analytics/heatmapMatrice 7 jours × 24 heures du nombre de transferts créés. Le paramètre range accepte les valeurs 7, 30 (défaut) ou 90.Authentification
Ces trois endpoints requièrent le scope analytics:read. Transmettez votre clé API dans l'en-tête Authorization: Bearer <clé>. Les clés de test commencent par cof_test_…, les clés de production par cof_live_…, et les clés sandbox par cof_sandbox_…. Toute requête sans clé valide ou sans le scope adéquat reçoit une réponse 401 avec le code d'erreur missing_api_key ou scope_missing.
Paramètres de requête
Les trois endpoints partagent une fenêtre temporelle (range ou days) avec des bornes propres. Le tableau ci-dessous les détaille par endpoint.
| Endpoint | Paramètre | Type | Défaut | Contrainte | Description |
|---|---|---|---|---|---|
| /funnel | range_days | integer | 30 | 1 – 365 | Fenêtre d'analyse en jours. |
| /geo | range_days | integer | 30 | 1 – 365 | Fenêtre d'analyse en jours. |
| /heatmap | range | integer | 30 | 7, 30 ou 90 | Valeurs acceptées : 7, 30 ou 90. Toute autre valeur est ramenée à 30. |
Les exemples ci-dessous appellent l'entonnoir, la répartition géographique, puis la heatmap. Choisissez votre langage.
Réponses
Chaque endpoint renvoie une structure dédiée : l'entonnoir liste les étapes et leurs taux, la géo classe pays et villes, la heatmap renvoie une matrice 7×24. Les onglets ci-dessous montrent les trois.
Erreurs
Ces endpoints relèvent de la classe expensive (quota dédié). Au-delà de l'authentification, surveillez le 429. Le tableau ci-dessous détaille les cas.
| HTTP | Code d'erreur | Quand | Résolution |
|---|---|---|---|
| 401 | missing_api_key | En-tête Authorization absent ou mal formé. | Ajoutez Authorization: Bearer cof_live_… à chaque requête. |
| 401 | invalid_api_key | Clé API inconnue ou appartenant à un autre workspace. | Vérifiez la valeur de la clé dans la console Coffrify. |
| 401 | expired_api_key | La clé a dépassé sa date d'expiration. | Générez une nouvelle clé dans Paramètres > Clés API. |
| 401 | revoked_api_key | La clé a été révoquée manuellement. | Créez une clé de remplacement et mettez à jour vos variables d'environnement. |
| 403 | scope_missing | La clé ne possède pas le scope analytics:read. | Rééditez la clé pour y inclure le scope analytics:read. |
| 429 | rate_limited | Quota de requêtes par minute dépassé sur la classe expensive. | Respectez l'en-tête Retry-After renvoyé. Espacez vos appels ou passez à un plan supérieur. |
| 500 | internal_error | Erreur Supabase inattendue lors de la requête. | Réessayez après quelques secondes. Contactez le support si l'erreur persiste. |
Voir aussi
- Vue d'ensemble des métriques workspace
- Top transferts par téléchargements
- Top destinataires
- Logs de téléchargement et audit trail
- Webhooks d'événements analytics
- Authentification et scopes de l'API Coffrify