w.c.s. › API »

Récupération des données d'un utilisateur

Il s'agit ici d'API permettant à un logiciel tiers de récupérer les données associées aux utilisateurs enregistrés.

Profil

Ces accès doivent se faire en passant les informations d'identification appropriées dans la query string.

Les informations associées à un utilisateur sont accessibles à l'URL /api/user/, elles reprennent son nom (user_display_name), son adresse électronique (user_email) ainsi que ses éventuelles autorisations d'accès au backoffice (user_backoffice_access) ou à l'interface d'administration (user_admin_access).

$ curl https://www.example.net/api/user/
{
  "user_display_name": "Fred Cuadrado",
  "user_email": "fred@example.net",
  "user_backoffice_access": true,
  "user_admin_access": false
}

Note de compatibilité : cette information est également disponible à l'adresse /user.

Formulaires

La liste des formulaires transmis par un utilisateur est accessible à l'URL /api/user/forms, elle reprend un ensemble minimal d'informations concernant chacun de ceux-ci.

$ curl https://www.example.net/api/user/forms
[
    {
        "category_id": "1",
        "category_name": "Divers",
        "datetime": "2014-03-28 15:36:52",
        "form_name": "Demande d'inscription",
        "form_slug": "demande-d-inscription",
        "form_number": "123",
        "form_number_raw": "123",
        "form_receipt_date": "28/03/2014",
        "form_receipt_time": "15:36",
        "form_status": "Nouveau",
        "form_status_is_endpoint": false,
        "form_uri": "demande-d-inscription/123/",
        "form_url": "http://www.example.net/demande-d-inscription/123/",
        "form_url_backoffice": "http://www.example.net/backoffice/demande-d-inscription/123/",
        "name": "Demande d'inscription",
        "status": "Nouveau",
        "title": "Demande d'inscription #123 (Nouveau)",
        "url": "http://www.example.net/demande-d-inscription/123/",
    },
    {
        "category_id": "2",
        "category_name": "Prise de rendez-vous",
        "datetime": "2014-03-17 10:39:52",
        "form_name": "Rendez-vous avec le service B",
        "form_slug": "rendez-vous-service-b",
        "form_number": "456",
        "form_number_raw": "456",
        "form_receipt_date": "17/03/2014",
        "form_receipt_time": "10:39",
        "form_status": "En cours",
        "form_status_is_endpoint": false,
        "form_uri": "rendez-vous-service-b/456/",
        "form_url": "http://www.example.net/rendez-vous-service-b/456/",
        "form_url_backoffice": "http://www.example.net/backoffice/rendez-vous-service-b/456/",
        "name": "Rendez-vous avec le service B"",
        "status": "Nouveau",
        "title": "Rendez-vous avec le service B #456 (En cours)",
        "url": "http://www.example.net/rendez-vous-service-b/456/",
    },
    {
        "category_id": "3",
        "category_name": "Modification de vos coordonn\u00e9es",
        "datetime": "2014-03-17 10:42:17",
        "form_name": "Changement d'adresse",
        "form_slug": "changement-d-adresse",
        "form_number": "424",
        "form_number_raw": "424",
        "form_receipt_date": "17/03/2014",
        "form_receipt_time": "10:42",
        "form_status": "Traitement de la demande termin\u00e9",
        "form_status_is_endpoint": true,
        "form_uri": "changement-d-adresse/424/",
        "form_url": "http://www.example.net/changement-d-adresse/424/",
        "form_url_backoffice": "http://www.example.net/backoffice/changement-d-adresse/424/",
        "name": "Changement d'adresse",
        "status": "Traitement de la demande termin\u00e9",
        "title": "Changement d'adresse #424 (Traitement de la demande termin\u00e9)",
        "url": "http://www.example.net/changement-d-adresse/424/",
    }
]

Il est possible de recevoir un ensemble plus complet de données en passant un paramètre full=on à l'adresse.

Note de compatibilité : cette information est également disponible à l'adresse /myspace/forms.

Brouillons

La liste des brouillons de l'utilisateur est accessible à l'adresse /api/user/drafts.

$ curl https://www.example.net/myspace/drafts
[
    {
        "datetime": "2014-07-21 10:15:21",
        "name": "Demande de relecture",
        "title": "Demande de relecture, brouillon enregistré le 21/07/2014 10:15",
        "url": "http://www.example.net/demande-de-relecture/164"
    }
]

Note de compatibilité : cette information est également disponible à l'adresse /myspace/drafts.

Liste des utilisateurs

La liste des utilisateurs est disponible à l'URL /api/users/, il est possible de la filtrer, sur le nom ou l'adresse électronique, en spécifiant un paramètre q et de limiter le nombre de résultats obtenus avec le paramètre limit.

$ curl -H "Accept: application/json" \
       https://www.example.net/api/users/?q=fred

{
  "err": 0,
  "data": [
    {
      "user_display_name": "Fred",
      "user_email": "fred@example.net",
      "user_backoffice_access": true,
      "user_admin_access": false
    }
  }
}