Commit 81485abf authored by Jean-Baptiste Oellers's avatar Jean-Baptiste Oellers
Browse files

Mise à jour documentation API

parent 7019e0ef
Loading
Loading
Loading
Loading
Loading
+187 −0
Original line number Diff line number Diff line
@@ -25,6 +25,193 @@ Cette interface permet de configurer les niveaux d'accès ainsi que les différe
## Accès

Les données seront accessibles via les URL : 
 - Liste des personnes : https://oscar.votreuniv.fr/api/persons
 - Personne seule : https://oscar.votreuniv.fr/api/persons/IDPERSON
 - Liste des organisations : https://oscar.votreuniv.fr/api/organizations
 - Orgnisation seule : https://oscar.votreuniv.fr/api/organizations/IDORGANIZATION

L'identification se fait par le mécanisme basic access authentication d'HTTP, c'est-à-dire qu'il faut envoyer avec sa requête un HEADER ```Authorization: Basic credentials```, où ```credentials``` est le résultat de l'encodage en Base64 de l'identifiant et du mot de passe séparés par un caractère deux points ```:```.
Exemple :

```bash
CLIENT_ID=MON_IDENTIFIANT CLIENT_SECRET=MON_MOT_DE_PASSE ENCODED="$( echo -n $CLIENT_ID:$CLIENT_SECRET | base64 -w 0 )"; curl --request GET --url 'https://oscar.votreuniv.fr/api/persons' --header "Authorization: Basic $ENCODED"
```

## Champs retournés par défaut

### API persons

Requête
```bash
CLIENT_ID=MON_IDENTIFIANT CLIENT_SECRET=MON_MOT_DE_PASSE ENCODED="$( echo -n $CLIENT_ID:$CLIENT_SECRET | base64 -w 0 )"; curl --request GET --url 'https://oscar.votreuniv.fr/api/persons' --header "Authorization: Basic $ENCODED"
```

Réponse
```json
{
  "version": "v2.16.0 \"Connor\"",
  "datecreated": "2026-02-12T11:59:43+01:00",
  "time": 1.3344779014587402,
  "total": 1,
  "persons": [
    {
      "uid": "123456",
      "login": "",
      "firstname": "Euphrasie",
      "lastname": "ANTHUSE",
      "displayname": "Euphrase ANTHUSE",
      "mail": "euphrasie.anthuse@votreuniv.fr",
      "civilite": "",
      "preferedlanguage": "",
      "status": "",
      "affectation": "LABOSUP",
      "structure": "109 boulevard du Maréchal Juin , 14000 Caen",
      "inm": "",
      "phone": "",
      "birthday": "",
      "datefininscription": "",
      "datecreated": "2023-05-10T18:47:52+02:00",
      "dateupdated": "2023-05-10T18:47:52+02:00",
      "datecached": "2023-05-10T18:47:52+02:00",
      "text": "Euphrase ANTHUSE",
      "mailMd5": "615c6fb49a9eb1d913a8195720f1f9ee",
      "ucbnSiteLocalisation": "109 boulevard du Maréchal Juin , 14000 Caen",
      "groups": null,
      "roles": []
    }
  ]
}
```


### API person

Requête
```bash
CLIENT_ID=MON_IDENTIFIANT CLIENT_SECRET=MON_MOT_DE_PASSE ENCODED="$( echo -n $CLIENT_ID:$CLIENT_SECRET | base64 -w 0 )"; curl --request GET --url 'https://oscar.votreuniv.fr/api/persons/123456' --header "Authorization: Basic $ENCODED"
```

Réponse
```json
{
  "version": "v2.16.0 \"Connor\"",
  "datecreated": "2026-02-12T11:53:48+01:00",
  "time": 0.020016908645629883,
  "uid": "123456",
  "person": {
    "uid": "123456",
    "login": "apollinaris241",
    "firstname": "WILHELM",
    "lastname": "APOLLINARIS",
    "displayname": "WILHELM APOLLINARIS",
    "mail": "wilhelm.apollinaris@votreuniv.fr",
    "civilite": "",
    "preferedlanguage": "",
    "status": "",
    "affectation": "UFR de Sciences Économiques, de Gestion, de Géographie et d'Aménagement des Territoires",
    "structure": "",
    "inm": "",
    "phone": null,
    "birthday": "",
    "datefininscription": "",
    "datecreated": "2024-03-08T07:32:03+01:00",
    "dateupdated": "2024-03-08T07:32:03+01:00",
    "datecached": "2024-03-08T07:32:03+01:00",
    "text": "WILHELM APOLLINARIS",
    "mailMd5": "fa12a139z2b33ca2019z1e3f75ae1c06",
    "ucbnSiteLocalisation": "",
    "groups": [],
    "roles": []
  }
}
```


### API organizations

Requête
```bash
CLIENT_ID=MON_IDENTIFIANT CLIENT_SECRET=MON_MOT_DE_PASSE ENCODED="$( echo -n $CLIENT_ID:$CLIENT_SECRET | base64 -w 0 )"; curl --request GET --url 'https://oscar.votreuniv.fr/api/organizations' --header "Authorization: Basic $ENCODED"
```

Réponse
```json
{
  "version": "v2.16.0 \"Connor\"",
  "datecreated": "2026-02-12T12:21:46+01:00",
  "time": 0.31410717964172363,
  "total": 1,
  "organizations": [
    {
      "uid": "12345",
      "code": "",
      "shortname": "",
      "longname": "Université de Rennes - Campus Beaulieu ",
      "description": "",
      "address": {
        "address1": "263 avenue Général Leclerc - CS 74205",
        "address2": "",
        "address3": "",
        "zipcode": "35042",
        "city": "Rennes",
        "country": "France"
      },
      "datecreated": "2025-05-06T09:18:20+02:00",
      "dateupdated": "2025-05-06T09:18:20+02:00",
      "datecached": "2025-05-06T09:18:20+02:00",
      "phone": "",
      "url": "",
      "email": "",
      "siret": "",
      "type": "Établissement publique"
    }
  ]
}
```


### API organization

Requête
```bash
CLIENT_ID=MON_IDENTIFIANT CLIENT_SECRET=MON_MOT_DE_PASSE ENCODED="$( echo -n $CLIENT_ID:$CLIENT_SECRET | base64 -w 0 )"; curl --request GET --url 'https://oscar.votreuniv.fr/api/organizations/12345' --header "Authorization: Basic $ENCODED"
```

Réponse
```json
{
  "version": "v2.16.0 \"Connor\"",
  "datecreated": "2026-02-12T12:23:28+01:00",
  "time": 0.012481212615966797,
  "uid": "12345",
  "organization": {
    "uid": "12345",
    "code": "",
    "shortname": "",
    "longname": "Université de Rennes - Campus Beaulieu ",
    "description": "",
    "address": {
      "address1": "263 avenue Général Leclerc - CS 74205",
      "address2": "",
      "address3": "",
      "zipcode": "35042",
      "city": "Rennes",
      "country": "France"
    },
    "datecreated": "2025-05-06T09:18:20+02:00",
    "dateupdated": "2025-05-06T09:18:20+02:00",
    "datecached": "2025-05-06T09:18:20+02:00",
    "phone": "",
    "url": "",
    "email": "",
    "siret": "",
    "type": "Établissement publique"
  }
}
```





## Configurer les formatteurs