Différences entre versions de « RESTful API »

De WIKI-BOKEH
Aller à : navigation, rechercher
(2 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
 +
= API =
 +
 +
== Compte utilisateur ==
 +
Bokeh offre une API pour récupérer les données utilisateurs, renvoyées au format JSON.
 +
 +
=== Authentification ===
 +
 
Un utilisateur peut autoriser Bokeh à fournir ses informations à une application tierce via [https://fr.wikipedia.org/wiki/OAuth OAuth]. Bokeh générera une clé unique pour chaque application de l'utilisateur.
 
Un utilisateur peut autoriser Bokeh à fournir ses informations à une application tierce via [https://fr.wikipedia.org/wiki/OAuth OAuth]. Bokeh générera une clé unique pour chaque application de l'utilisateur.
  
= Sécurité =
+
==== Sécurité ====
  
 
Par défaut, l'API OAuth force l'utilisation de HTTPS. Vous pouvez configurer Bokeh pour désactiver cette vérification via la variable '''OAUTH_ACCEPT_HTTP'''. Toutefois, nous recommandons vivement de mettre en place un certificat HTTPS plutôt que de s'appuyer sur cette variable.
 
Par défaut, l'API OAuth force l'utilisation de HTTPS. Vous pouvez configurer Bokeh pour désactiver cette vérification via la variable '''OAUTH_ACCEPT_HTTP'''. Toutefois, nous recommandons vivement de mettre en place un certificat HTTPS plutôt que de s'appuyer sur cette variable.
  
= API =
+
=== Informations du compte ===
 
 
Bokeh offre une API pour récupérer les données utilisateurs, renvoyées au format JSON.
 
 
 
== Informations du compte ==  
 
  
 
URL: http://monbokeh.fr/api/user/account
 
URL: http://monbokeh.fr/api/user/account
Ligne 26 : Ligne 29 :
 
   }
 
   }
  
== Liste des prêts ==  
+
=== Liste des prêts ===  
  
 
URL: http://monbokeh.fr/api/user/loans
 
URL: http://monbokeh.fr/api/user/loans
Ligne 55 : Ligne 58 :
  
  
== Prolonger un prêt ==
+
=== Prolonger un prêt ===
  
 
URL: http://monbokeh.fr/api/user/renew-loan/id/345_22
 
URL: http://monbokeh.fr/api/user/renew-loan/id/345_22
Ligne 74 : Ligne 77 :
  
  
== Liste des réservations ==
+
=== Liste des réservations ===
  
 
URL: http://monbokeh.fr/api/user/holds
 
URL: http://monbokeh.fr/api/user/holds
Ligne 95 : Ligne 98 :
 
   }
 
   }
  
== Annuler une réservation ==
+
=== Annuler une réservation ===
  
 
URL: http://monbokeh.fr/api/user/cancel-hold/id/345_22
 
URL: http://monbokeh.fr/api/user/cancel-hold/id/345_22
Ligne 110 : Ligne 113 :
 
     "status":"error",
 
     "status":"error",
 
     "error":"Réservation introuvable"
 
     "error":"Réservation introuvable"
 +
  }
 +
 +
 +
== Catalogue ==
 +
 +
=== Récupérer un exemplaire ===
 +
 +
URL: http://monbokeh.fr/api/catalog/item/barcode/L-234
 +
 +
Exemple de réponse:
 +
 +
  {
 +
    "id": 2613096,
 +
    "barcode": "L-234",
 +
    "title": "Scribblenauts unlimited",
 +
    "author": "5th cell",
 +
    "record": {
 +
      "id": 2267224,
 +
      "thumbnail" => "http://img.com/scribblenauts.jpg"
 +
    }
 
   }
 
   }
  
 
[[Catégorie:Compte_lecteur]]
 
[[Catégorie:Compte_lecteur]]
 
[[Catégorie:Documentation_technique]]
 
[[Catégorie:Documentation_technique]]

Version du 23 juin 2018 à 11:03

API[ ]

Compte utilisateur[ ]

Bokeh offre une API pour récupérer les données utilisateurs, renvoyées au format JSON.

Authentification[ ]

Un utilisateur peut autoriser Bokeh à fournir ses informations à une application tierce via OAuth. Bokeh générera une clé unique pour chaque application de l'utilisateur.

Sécurité[ ]

Par défaut, l'API OAuth force l'utilisation de HTTPS. Vous pouvez configurer Bokeh pour désactiver cette vérification via la variable OAUTH_ACCEPT_HTTP. Toutefois, nous recommandons vivement de mettre en place un certificat HTTPS plutôt que de s'appuyer sur cette variable.

Informations du compte[ ]

URL: http://monbokeh.fr/api/user/account

Exemple de réponse:

 {
   "account": {
      "label": "Charline Dupuis",
      "login": "puppy",
      "card": {
         "id": "E345x00",
         "expire_at": "2018-04-25"
      }
   }
 }

Liste des prêts[ ]

URL: http://monbokeh.fr/api/user/loans

Exemple de réponse:

 {  "loans":[
   {
     "id" => "345_18",
     "title":"Potter",
     "author":"J.K.R",
     "date_due":"1974-01-01",
     "loaned_by":"puppy",
     "library":"Annecy",
     "record": {
          "id" => "34",
          "thumbnail" => "http://img.com/potter.jpg" 
      }
   },
   {
     "id" => "345_22",
     "title":"Alice",
     "author":"",
     "date_due":"2017-05-06",
     "loaned_by":"puppy",
     "library":""
   }
 ] }


Prolonger un prêt[ ]

URL: http://monbokeh.fr/api/user/renew-loan/id/345_22

Exemple de réponse avec succès:

 { 
   "status":"renewed",
   "date_due":"2018-02-17"
 }

Exemple de réponse avec erreur:

 {
   "status":"error",
   "error":"Nombre maximum  de prolongations atteint"
 }


Liste des réservations[ ]

URL: http://monbokeh.fr/api/user/holds

Exemple de réponse:

 {
  "holds":[
   {
     "id" => "345_22",
     "title":"Afrodeezia",
     "author":"Marcus Miller",
     "status":"En attente",
     "held_by":"puppy",
     "library":"Annecy",
     "record": {
          "id" => "34",
          "thumbnail" => "http://img.com/afrodeezia.jpg" 
      }
  ]
 }

Annuler une réservation[ ]

URL: http://monbokeh.fr/api/user/cancel-hold/id/345_22

Exemple de réponse avec succès:

 { 
   "status":"canceled"
 }

Exemple de réponse avec erreur:

 {
   "status":"error",
   "error":"Réservation introuvable"
 }


Catalogue[ ]

Récupérer un exemplaire[ ]

URL: http://monbokeh.fr/api/catalog/item/barcode/L-234

Exemple de réponse:

 {
   "id": 2613096,
   "barcode": "L-234",
   "title": "Scribblenauts unlimited",
   "author": "5th cell",
   "record": {
     "id": 2267224,
     "thumbnail" => "http://img.com/scribblenauts.jpg" 
   }
 }