Statistiques#
- GET /api/stats/(user_name)/by_time#
Obtenir des statistiques sur les séances d’entraînement pour un utilisateur par durée.
Scope :
workouts:read
Exemple de requêtes :
sans paramètres :
GET /api/stats/admin/by_time HTTP/1.1
avec des paramètres :
GET /api/stats/admin/by_time?from=2018-01-01&to=2018-06-30&time=week HTTP/1.1
Exemple de réponses :
succès :
HTTP/1.1 200 OK Content-Type: application/json { "data": { "statistics": { "2017": { "3": { "average_speed": 4.48, "nb_workouts": 2, "total_ascent": 203.0, "total_ascent": 156.0, "total_distance": 15.282, "total_duration": 12341 } }, "2019": { "1": { "average_speed": 16.99, "nb_workouts": 3, "total_ascent": 150.0, "total_ascent": 178.0, "total_distance": 47, "total_duration": 9960 }, "2": { "average_speed": 15.95, "nb_workouts": 1, "total_ascent": 46.0, "total_ascent": 78.0, "total_distance": 5.613, "total_duration": 1267 } } } }, "status": "success" }
pas de séances :
HTTP/1.1 200 OK Content-Type: application/json { "data": { "statistics": {} }, "status": "success" }
- Paramètres:
user_name (integer) – nom d’utilisateur
- Paramètres de requête:
from (string) – date de début (format :
%Y-%m-%d
)to (string) – date de fin (format :
%Y-%m-%d
)time (string) – période de temps : -
week
: semaine commençant le dimanche -weekm
: semaine commençant le lundi -month
: mois -year
: année (default)
- En-têtes de requête:
Authorization – Jeton “OAuth 2.0 Bearer”
- Codes d’état:
200 OK –
success
provide a valid auth token
signature expired, please log in again
invalid token, please log in again
404 Not Found –
user does not exist
- GET /api/stats/(user_name)/by_sport#
Obtenir les statistiques des séances pour un utilisateur par sport.
Scope :
workouts:read
Exemple de requêtes :
sans paramètres (obtenir les statistiques pour tous les sports ayant des séances) :
GET /api/stats/admin/by_sport HTTP/1.1
avec l’identifiant du sport :
GET /api/stats/admin/by_sport?sport_id=1 HTTP/1.1
Exemple de réponses :
succès :
HTTP/1.1 200 OK Content-Type: application/json { "data": { "statistics": { "1": { "average_speed": 16.99, "nb_workouts": 3, "total_ascent": 150.0, "total_ascent": 178.0, "total_distance": 47, "total_duration": 9960 }, "2": { "average_speed": 15.95, "nb_workouts": 1, "total_ascent": 46.0, "total_ascent": 78.0, "total_distance": 5.613, "total_duration": 1267 }, "3": { "average_speed": 4.46, "nb_workouts": 2, "total_ascent": 203.0, "total_ascent": 156.0, "total_distance": 15.282, "total_duration": 12341 } } }, "status": "success" }
pas de séances :
HTTP/1.1 200 OK Content-Type: application/json { "data": { "statistics": {} }, "status": "success" }
- Paramètres:
user_name (integer) – nom d’utilisateur
- Paramètres de requête:
sport_id (integer) – identifiant du sport
- En-têtes de requête:
Authorization – Jeton “OAuth 2.0 Bearer”
- Codes d’état:
200 OK –
success
provide a valid auth token
signature expired, please log in again
invalid token, please log in again
user does not exist
sport does not exist
- GET /api/stats/all#
Obtenir toutes les statistiques de l’application.
Scope :
workouts:read
Exemple de requêtes :
GET /api/stats/all HTTP/1.1
Exemple de réponses :
HTTP/1.1 200 OK Content-Type: application/json { "data": { "sports": 3, "uploads_dir_size": 1000, "users": 2, "workouts": 3, }, "status": "success" }
- En-têtes de requête:
Authorization – Jeton “OAuth 2.0 Bearer”
- Codes d’état:
200 OK –
success
provide a valid auth token
signature expired, please log in again
invalid token, please log in again
403 Forbidden –
you do not have permissions