Aller au contenu

Organisation

Ces entités répondent à deux questions posées avant tout appel : sur quel périmètre porte-t-il, et au nom de qui.

groups

Groupe — le réseau exploité. C'est l'unité d'isolation de l'API : toutes les autres entités appartiennent à un groupe, et une donnée n'existe jamais en dehors du sien. Un exploitant qui gère plusieurs réseaux dispose d'un groupe par réseau.

Identifiant <group_id>, présent dans le chemin de la quasi-totalité des endpoints. Le groupe porte sa configuration — GTFS publiés, options d'exploitation, paramètres de diffusion voyageurs — dont dépendent les entités qu'il contient.

Le groupe se gère depuis les applications Pysae ; ses endpoints ne sont pas publiés dans le spec public, un intégrateur travaillant sur un groupe qui lui est communiqué.

Endpoint Rôle
GET /api/v4/groups Liste les groupes accessibles
GET /api/v4/groups/<group_id> Décrit un groupe et sa configuration

teams

Équipe — une subdivision du groupe, employée pour cloisonner l'exploitation : un dépôt, un secteur géographique, un sous-traitant. Les conducteurs et les véhicules y sont rattachés, et un utilisateur peut n'avoir accès qu'aux données de certaines équipes.

Identifiant <team_id>. Le rattachement est multiple : un conducteur comme un véhicule porte une liste d'équipes.

Endpoint Rôle
GET /api/v4/groups/<group_id>/teams Liste les équipes du groupe

users

Utilisateur — un compte humain accédant au groupe, typiquement un régulateur ou un responsable d'exploitation. À distinguer du conducteur, qui n'est pas un utilisateur : il s'identifie sur l'application Pysae Driver, pas sur l'interface d'exploitation.

Identifiant <user_id>. Un utilisateur peut appartenir à plusieurs groupes, avec un rôle propre à chacun.

Endpoint Rôle
GET /api/v4/groups/<group_id>/users/me Décrit l'utilisateur authentifié dans le groupe

roles

Rôle — le niveau d'accès d'un utilisateur sur un groupe donné. Il conditionne les endpoints appelables et les données visibles ; un rôle restreint à certaines équipes ne voit que leurs conducteurs et véhicules.

Le rôle n'a pas d'identifiant propre : il lie un utilisateur à un groupe, et se manipule donc par <user_id>.

Endpoint Rôle
GET /api/v4/groups/<group_id>/roles Liste les rôles attribués sur le groupe

api-keys

Clé d'API — un identifiant persistant et révocable, destiné aux intégrations automatisées. C'est le mécanisme recommandé pour appeler l'API depuis un système tiers, à la place d'une session ouverte avec un mot de passe.

Identifiant <api_key_id>. Une clé est rattachée à exactement un principal — un utilisateur, un appareil ou un rôle — et peut être restreinte par portée et par date d'expiration. Une clé peut couvrir plusieurs groupes.

Endpoint Rôle
GET /api/v4/groups/<group_id>/api-keys Liste les clés du groupe
POST /api/v4/groups/<group_id>/api-keys Crée une clé sur le groupe
DELETE /api/v4/groups/<group_id>/api-keys/<api_key_id> Révoque une clé

La création d'une clé et son emploi dans une requête sont détaillés sur la page Authentification.