Saut

Créer une nouvelle session de traitement vidéo

post

Ce point de terminaison permet à un administrateur (ou sous-admin) d'uploader un fichier vidéo pour traitement et de créer une nouvelle ressource "session" au nom d'un autre utilisateur. Le serveur renverra un session_id qui peut être utilisé pour interroger ou récupérer les détails/résultats de la session.

Corps de la requête (Multipart/Form-Data)

Vous devez fournir les champs suivants :

  • user_id (string, obligatoire) : L'ID de l'utilisateur pour lequel cette session est créée. - video (file, obligatoire) : Le fichier vidéo brut à traiter. - session_name (string, optionnel) : Un nom/lisible pour la session. - exercise (string, obligatoire) : Le nom de l'exercice. Choisissez parmi : 'Saut avec contre-mouvement' ou 'Saut en contrebas'. - body_joint_angles (array[string], optionnel) : Une liste séparée par des virgules de noms d'articulations (ex. 'coude, genou, cheville'). Par défaut ['all'] si non fourni.

Structure de la réponse

En cas de succès (HTTP 200), la réponse est un objet JSON avec : - session_id (string) : Un identifiant unique pour la session créée. - title (string) : Le titre de la session (par défaut une valeur de repli si session_name n'est pas fourni).

Workflow

  1. POST une requête multipart/form-data contenant les champs obligatoires user_id et video, plus les champs optionnels. 2. Fournir un token API-KEY valide dans l'en-tête Authorization. 3. L'appelant doit avoir des privilèges admin pour créer une session pour un autre utilisateur. 4. Si réussi, le serveur répond avec session_id et title. 5. En cas d'erreur (champs manquants, permissions insuffisantes), un objet JSON avec une clé error est retourné.

Exemple cURL (authentification Firebase) :

     -H 'Content-Type: multipart/form-data' \
     -H 'Authorization: API-KEY <VOTRE_TOKEN_ADMIN>' \
     -F 'user_id=someUserId123' \
     -F 'video=@/chemin/vers/video.mp4' \
     -F 'session_name=Session Personnalisée' \
     -F 'exercise=Saut avec contre-mouvement' \
     -F 'body_joint_angles=genou, cheville' \
     https://<backend-link>/jumping/management/sessions/

Exemple cURL (API KEY) :

Autorisations
AuthorizationstringRequis

Entrez votre token Bearer (authentification Firebase) au format : Bearer

Corps
user_idstringRequis

Obligatoire. L'ID de l'utilisateur pour qui cette session est créée (champ texte).

videostringRequis

Obligatoire. Le fichier vidéo brut à traiter (type de champ : fichier).

session_namestringOptionnel

Optionnel. Un nom descriptif pour la session (champ texte).

exercisestringRequis

Obligatoire. Le nom de l'exercice. Choisissez parmi : 'Saut avec contre-mouvement' ou 'Saut en contrebas'.

body_joint_anglesarrayOptionnel

Optionnel. Une liste séparée par des virgules de noms d'articulations. Valeurs disponibles : 'cheville', 'genou', 'coude', 'hanche', 'épaule'. Exemple : cheville,genou,hanche

Réponses
200

Session de traitement vidéo créée avec succès (HTTP 200).

application/json
session_idstringRequis

L'identifiant unique de la session créée.

titlestringRequis

Le titre de la session (valeur par défaut si non fourni).

post
/jumping/sessions/

Obtenir les données d'une session de saut

get

Récupère des informations détaillées sur une session de saut spécifique en utilisant son identifiant unique session_id. Optionnellement, définissez ?demo=true pour récupérer la session de démonstration prédéfinie pour l'activité de saut. Exemple d'utilisation : Envoyez une requête GET avec le session_id comme paramètre de chemin pour obtenir les détails de la session. Paramètres : - session_id (string, obligatoire) : L'identifiant unique de la session dont les données sont demandées. - demo (booléen, optionnel) : Définissez à true pour retourner la session de démonstration pour le saut. Type de données de réponse : - 200 OK : Un objet JSON avec la structure suivante :

  • angles (object) : Contient des tableaux de différentes mesures d'angles.

  • whole_report_metrics (object) : Contient des tableaux de différentes métriques.

  • all_timestamps (array of numbers) : Tableau des horodatages pour chaque frame.

  • analyzed_video_url (string, URI) : URL de la vidéo analysée.

  • video_url (string, URI) : URL de la vidéo originale.

  • created_at (object) : Contient la date et l'heure de création de la session.

  • exercise (string) : Type d'exercice analysé dans la session.

  • user_name (string) : Nom de l'utilisateur associé à la session.

  • activity (string) : Type d'activité analysée dans la session.

  • title (string) : Titre de la session.

  • end_frames (array of integers) : Tableau des numéros de frame où chaque segment se termine.

  • metrics (object) : Contient diverses métriques de performance comme des tableaux de nombres.

Autorisations
AuthorizationstringRequis

Entrez votre token Bearer (authentification Firebase) au format : Bearer

Paramètres de chemin
session_idanyRequis
Paramètres de requête
demobooleanOptionnel

Définissez à true pour récupérer la session de démonstration au lieu de la réelle.

Réponses
200

Données de session récupérées avec succès.

application/json
all_timestampsnumber[]Requis

Tableau des horodatages pour chaque frame.

analyzed_video_urlstring · uriRequis

URL de la vidéo analysée.

video_urlstring · uriRequis

URL de la vidéo originale.

exercisestringRequis

Type d'exercice analysé dans la session.

user_namestringRequis

Nom de l'utilisateur associé à la session.

activitystringRequis

Type d'activité analysée dans la session.

titlestringRequis

Titre de la session.

end_framesinteger[]Requis

Tableau des numéros de frame où chaque segment se termine.

all_end_framesinteger[]Requis

Tableau de tous les numéros de frame où les segments se terminent.

get
/jumping/sessions/{session_id}/

Exporter les données d'une session de saut

get

Récupère des informations détaillées sur une session de saut spécifique en utilisant son identifiant unique session_id. Optionnellement, définissez ?demo=true pour récupérer la session de démonstration prédéfinie pour l'activité de saut. Note : Ce point de terminaison inclut les points de repère dans la réponse. Structure de la réponse : - 200 OK : Un objet JSON avec la structure suivante :

  • keypoints (object) : Contient des tableaux de points de repère.

  • angles (object) : Contient des tableaux de différentes mesures d'angles.

  • all_timestamps (array of numbers) : Tableau des horodatages pour chaque frame.

  • analyzed_video_url (string, URI) : URL de la vidéo analysée.

  • video_url (string, URI) : URL de la vidéo originale.

  • created_at (object) : Contient la date et l'heure de création de la session.

  • user_name (string) : Nom de l'utilisateur associé à la session.

  • activity (string) : Type d'activité analysée.

  • title (string) : Titre de la session.

  • end_frames (array of integers) : Tableau des numéros de frame où chaque segment se termine.

  • metrics (object) : Contient diverses métriques de performance comme des tableaux de nombres.

Autorisations
AuthorizationstringRequis

Entrez votre token Bearer (authentification Firebase) au format : Bearer

Paramètres de chemin
session_idanyRequis
Paramètres de requête
demobooleanOptionnel

Définissez à true pour récupérer la session de démonstration au lieu de la réelle.

Réponses
200

Données de session récupérées avec succès.

application/json
all_timestampsnumber[]Requis

Tableau des horodatages pour chaque frame.

analyzed_video_urlstring · uriRequis

URL de la vidéo analysée.

video_urlstring · uriRequis

URL de la vidéo originale.

user_namestringRequis

Nom de l'utilisateur associé à la session.

activitystringRequis

Type d'activité analysée dans la session.

titlestringRequis

Titre de la session.

end_framesinteger[]Requis

Tableau des numéros de frame où chaque segment se termine.

get
/jumping/sessions/{session_id}/export/

Obtenir le rapport d'analyse de saut

post

Récupérer le rapport d'analyse de saut vertical

Ce point de terminaison permet aux utilisateurs de récupérer un rapport d'analyse complet pour une session de saut vertical spécifique. Le rapport inclut des données graphiques, des détails sur les phases, des informations sur l'utilisateur et des commentaires supplémentaires pour fournir une compréhension approfondie de la performance de l'utilisateur pendant la session. Exemple d'utilisation : Envoyez une requête POST à /jumping/{session_id}/jump-analysis/{session_id} est l'identifiant unique de la session. Paramètres : - session_id (string, obligatoire) : L'identifiant unique de la session pour laquelle le rapport est demandé. - demo (booléen, optionnel) : Définissez à true pour récupérer le rapport de démonstration prédéfini au lieu de la session réelle. Structure de la réponse : Lors d'une requête réussie, le point de terminaison retourne un objet JSON contenant les sections suivantes : 1. Exercise : Le nom de l'exercice effectué pendant la session. 2. Graph Data : Représentations visuelles de diverses métriques collectées pendant la session. 3. Frame Information : Détails sur les frames vidéo impliquées dans la session. 4. Phase Data : Informations sur les différentes phases de l'activité de saut vertical. 5. User Information : Détails personnels de l'utilisateur. 6. Session Date : La date à laquelle la session a eu lieu. 7. Comments : Retours et commentaires basés sur la performance de la session.

Autorisations
AuthorizationstringRequis

Entrez votre token Bearer (authentification Firebase) au format : Bearer

Paramètres de chemin
session_idanyRequis
Paramètres de requête
demobooleanOptionnel

Définissez à true pour récupérer le rapport de démonstration.

Réponses
200

Rapport d'analyse de saut récupéré avec succès.

application/json
exercisestring · enumRequis

Quel exercice ce rapport concerne.

Valeurs possibles:
min_frameintegerRequis

Numéro de frame minimum dans la vidéo.

max_frameintegerRequis

Numéro de frame maximum dans la vidéo.

session_datestring · dateRequis

Date de la session (JJ/MM/AAAA).

post
/jumping/sessions/{session_id}/jump-analysis/

Créer des threads de recommandations

post

Créer des threads de recommandations

Ce point de terminaison génère des threads de recommandations personnalisés basés sur le rapport d'analyse de saut vertical de l'utilisateur pour une session spécifique. Ces threads peuvent être utilisés pour fournir des conseils personnalisés, des suggestions d'entraînement ou des insights de performance à l'utilisateur. Exemple d'utilisation : Envoyez une requête POST à /jumping/sessions/{session_id}/recommendation/{session_id} est l'identifiant unique de la session. Paramètres : - session_id (string, obligatoire) : L'identifiant unique de la session pour laquelle les threads de recommandations doivent être créés. Structure de la réponse : Lors d'une requête réussie, le point de terminaison retourne un objet JSON contenant les IDs de thread mappés à leurs métriques respectives. Exemple de réponse pour Saut avec contre-mouvement : json { "hip_height": "thread_ybIdbAtHLSnHM4BnH551X4fT", "hip_speed": "thread_MLGE8nAmLYyW3adwIViKiVpL", "grf": "thread_rBIUL25oD3VLtBaPRDLunFsu", "power": "thread_UGCg6dZzsRI1YCpSgCf0dgT4", "kne_angle": "thread_rEiSblZuq3bzPHRBNXd2etJ6", "ank_angle": "thread_QLrCfbBuBBKpmPFFnBkJfcln", "hip_angle": "thread_CMWV9HCt85XlpVSORSk4MmCG" } Exemple de réponse pour Saut en contrebas : json { "hip_trajectory": "thread_ABC123", "hip_velocity": "thread_DEF456", "toe_trajectory": "thread_GHI789" "grf": "thread_JKL012", "power": "thread_MNO345", "kne_angle": "thread_PQR678", "ank_angle": "thread_STU901", "hip_angle": "thread_VWX234" } Note : - Assurez-vous que le session_id fourni est valide et correspond à une session existante dans le système. - L'utilisateur doit avoir un plan de paiement actif pour accéder à cette fonctionnalité.

Autorisations
AuthorizationstringRequis

Entrez votre token Bearer (authentification Firebase) au format : Bearer

Paramètres de chemin
session_idanyRequis
Réponses
200

Threads créés avec succès.

application/json

Mapping des noms de métriques aux IDs de thread de recommandation.

hip_heightstringOptionnel

ID de thread pour les recommandations de hauteur de hanche.

hip_speedstringOptionnel

ID de thread pour les recommandations de vitesse de hanche.

hip_trajectorystringOptionnel

ID de thread pour les recommandations de trajectoire de hanche.

hip_velocitystringOptionnel

ID de thread pour les recommandations de vitesse de hanche.

toe_trajectorystringOptionnel

ID de thread pour les recommandations de trajectoire d'orteil.

grfstringRequis

ID de thread pour les recommandations de force de réaction au sol (GRF).

powerstringRequis

ID de thread pour les recommandations de puissance.

kne_anglestringRequis

ID de thread pour les recommandations d'angle de genou.

ank_anglestringRequis

ID de thread pour les recommandations d'angle de cheville.

hip_anglestringRequis

ID de thread pour les recommandations d'angle de hanche.

post
/jumping/sessions/{session_id}/recommendation/

Obtenir le résumé d'une session

get

Récupérer le résumé d'une session

Ce point de terminaison fournit un résumé d'une session spécifique, incluant des métriques clés de performance, des données utilisateur et des détails de création de session. Exemple d'utilisation : Envoyez une requête GET à /jumping/{session_id}/summary/{session_id} est l'identifiant unique de la session. Paramètres de requête : - demo (booléen, optionnel) : Définissez à true pour récupérer un résumé de démonstration pré-généré au lieu d'une session réelle. Structure de la réponse : - exercise : Type d'exercice résumé. - metrics : Contient diverses mesures de la session. - summary : Aperçu descriptif de la performance. - user_info : Informations basiques sur l'utilisateur. - session_date : Date d'enregistrement de la session. Note : Assurez-vous que le session_id existe. Si demo=true est utilisé, le système retourne le résumé de session de démonstration pré-enregistré.

Autorisations
AuthorizationstringRequis

Entrez votre token Bearer (authentification Firebase) au format : Bearer

Paramètres de chemin
session_idanyRequis
Paramètres de requête
demobooleanOptionnel

Définissez à true pour récupérer le résumé de session de démonstration au lieu d'un réel.

Réponses
200

Résumé de session récupéré avec succès.

application/json

Objet contenant les détails du résumé de session.

exercisestringOptionnel

Type d'exercice résumé.

get
/jumping/sessions/{session_id}/summary/

Générer des threads de résumé pour une session

post

Générer des threads de résumé

Ce point de terminaison génère des threads de résumé pour une session donnée basés sur des blocs de résumé prédéfinis et des métriques. Exemple d'utilisation : Envoyez une requête POST à /jumping/sessions/{session_id}/summary/{session_id} est l'identifiant unique de la session. Paramètres : - session_id (string, obligatoire) : L'identifiant unique de la session pour laquelle les threads de résumé doivent être générés. - measurement_system (string, optionnel) : Système de mesure : 'metric' ou 'imperial'. Par défaut 'metric'. Structure de la réponse : Lors d'une requête réussie, le point de terminaison retourne un objet JSON mappant chaque nom de bloc à son ID de thread correspondant. Exemple de réponse pour Saut avec contre-mouvement : json { "jump_flight": "thread_thread_id", "jump_forces": "thread_thread_id", "control_and_stability": "thread_thread_id", "efficiency": "thread_thread_id", "final_summary": "thread_thread_id", } Exemple de réponse pour Saut en contrebas : json { "contact_and_jump_structure": "thread_thread_id", "performance_and_efficiency": "thread_thread_id", "force_metrics": "thread_thread_id", "final_summary": "thread_thread_id", } Notes : - Assurez-vous que le session_id fourni est valide et correspond à une session existante dans le système. - L'utilisateur doit avoir les permissions nécessaires pour générer des threads de résumé.

Autorisations
AuthorizationstringRequis

Entrez votre token Bearer (authentification Firebase) au format : Bearer

Paramètres de chemin
session_idanyRequis
Paramètres de requête
measurement_systemstring · enumOptionnel

Système de mesure : 'metric' ou 'imperial'

Valeurs possibles:
Réponses
post
/jumping/sessions/{session_id}/summary/

Mis à jour

Ce contenu vous a-t-il été utile ?