# Philosophie de l'API

L'API agrège pour chaque travailleur mobile la succession de ses activités à partir des informations transmises par les applications métier. Ces dernières peuvent en retour demander à accéder à tout ou partie de la série temporelle.

## Activité

Le concept d'activité est central. Il est caractérisé par :

* l'identité du travailleur mobile qui effectue l'activité
* l'horodatage de début
* l'horodatage de fin
* la nature (déplacement, travail en dehors du véhicule)

Ainsi une activité peut être vue comme une période de la journée d'un travailleur mobile associée à un type de travail. Les temps de repos sont déduits comme étant les creux entre les différentes périodes. L'historique des activités pour un travailleur donné est suffisant pour recalculer les temps de travail (et de repos) agrégés à différentes échelles et ainsi vérifier le respect de la réglementation.

## Mission

La mission permet de regrouper des activités d'un même travailleur ou de travailleurs différents. C'est une notion qui n'a pas d'impact sur la mesure du temps de travail et le contrôle de la réglementation, entièrement basés sur l'activité.

Le concept est plutôt orienté vers les besoins des exploitants :

* pour calculer le temps total réel d'un "chantier", et donc le coût réel, et l'opposer au prix facturé
* pour rendre compte de la notion d'équipe
* pour valider d'un bloc le temps de travail plutôt que activité par activité

## Temps réel

Il existe deux manières d'enregistrer les activités :

1. l'approche en temps réel qui repose sur des événements de changement d'activité. La durée d'une activité n'est déterminée qu'a posteriori, au moment du prochain changement d'activité.
2. l'enregistrement en différé où les activités sont renseignées avec leurs durées, à la manière d'un emploi du temps (ex. : j'ai travaillé de 9h à 12h, de 14h à 17h et entre les deux j'étais en pause).

L'API Mobilic permet de faire les deux mais privilégie fortement l'approche temps réel. La seconde approche est pensée principalement comme un outil de corrections ponctuelles. Dans le mode "temps réel" l'API tient soigneusement compte de l'heure de réception par le serveur des événements, tout en permettant à l'appelant de préciser la véritable heure métier (très utile lorsque les événements ne peuvent pas être soumis tout de suite, pour des raisons de connectivité par exemple).

Ce fonctionnement vise à garantir les avantages suivants :

* en enregistrant les changements d'activité dès qu'ils se produisent on réduit fortement l'imprécision dans la mesure du temps de travail par rapport à une déclaration a posteriori
* le risque de falsification est également atténué

Pour comprendre plus en détail le fonctionnement de l'approche en temps réel voir [Enregistrement des activités](/guides/enregistrement-des-activites.md).

## Rattachement des salariés <a href="#rattachement-des-salaries" id="rattachement-des-salaries"></a>

Les comptes utilisateurs sont liés à la personne titulaire du compte, indépendamment de son entreprise ou de son métier (travailleur mobile ou gestionnaire). Ainsi une personne qui change d'entreprise garde quand même un seul et même compte.

L'appartenance (variable dans le temps) d'une personne à une entreprise est représentée par un rattachement. Un compte peut avoir plusieurs rattachements dans le temps, au fur et à mesure que la personne passe d'une entreprise à l'autre.

Un compte peut également être rattaché simultanément à plusieurs entreprises, pour répondre au cas fréquent de sociétés sœurs qui peuvent occasionnellement mutualiser leurs travailleurs.

{% hint style="info" %}
Par défaut le temps de travail enregistré par un compte travailleur mobile sera associé à l'entreprise à laquelle il est rattaché au moment de l'activité. Si il y a plusieurs rattachements simultanés le rattachement principal (unique) prévaut en l'absence de précision supplémentaire.
{% endhint %}

Pour des raisons de sécurité le rattachement d'une personne à une entreprise doit être approuvé à la fois par l'entreprise et par le salarié. Cela se fait dans l'ordre suivant :

1. L'entreprise (c'est-à-dire un utilisateur Mobilic qui a les droits d'administration de cette entreprise) effectue une demande de rattachement du salarié par API, en précisant une date de début du rattachement (et optionnellement une date de fin)
2. La demande de rattachement est enregistrée mais reste inactive tant qu'elle n'a pas été approuvée par le salarié
3. Le compte salarié approuve par API la demande de rattachement. Les anciens rattachements sont éventuellement terminés si besoin.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://developers.mobilic.beta.gouv.fr/philosophie-de-lapi.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
