Pour prêter une publication, le système de prêt de la bibliothèque doit utiliser l'URL de prêt obtenu lors de l'achat de la publication (cet URL lui a été transmis par le libraire qui a vendu la ressource à la bibliothèque). Un appel à cet URL, avec certains paramètres spécifiques, retournera un second URL qui permet d'accéder à la ressource.
| Adresse | Le [loan_url] obtenu lors de l'achat de la publication. |
|---|
| Méthode | POST |
|---|
| Paramètres | | Nom | Obligatoire | Description |
|---|
| borrower_id | Oui | Permet d'identifier l'utilisateur final (qui bénéficie du prêt). Passer un identifiant alphanumérique unique de moins de 255 caractères. | | transaction_id | Oui | Numéro de référence du prêt. Passer un identifiant alphanumérique unique de moins de 255 caractères. | | expire_at | Oui
| Date de fin du prêt, au format ISO-8601 basic (AAAAMMJJ ou AAAAMMJJTHHMMSS). La date de fin du prêt doit être située à moins de 59 jours après le début du prêt. | | duration | Non | Nombre de jours que la ressource sera accessible, à partir du moment du téléchargement (dans le cas d'un téléchargement chronodégradable). Si expire_at et duration sont omis, le nombre par défaut sera la durée maximale acceptée par l'éditeur. | | medium | Non | Indique quel type d'accès est demandé. Valeurs possibles : - download : Accès par téléchargement - streaming : Accès par consultation en ligne Défaut : download | | localisation | Non | Dans le cas d'un accès par consultation (medium=streaming), ce paramètre devient obligatoire et indique à partir d'où se fait l'accès. Valeurs possibles : - on-site : L'accès se fait à partir de l'intérieur des murs de la bibliothèque - off-site : L'accès se fait hors des murs de la bibliothèque | | ip_address | Non | Ce paramètre est requis lorsque medium=streaming et que localization=on-site. | Si vous souhaitez être informé lorsqu'un utilisateur retourne le livre avant l'expiration du prêt, de façon à rendre le titre de nouveau disponible, ajoutez le paramètre notify_url : | | notify_url | Non | Paramètre que doit fournir l'entité qui opère le prêt. L'URL doit être correctement encodé. Ex.: "http://www.pret.com/api/notify/loan/transaction_id/12345/". | | bill_drm_to | Non | Paramètre que doit fournir l'entité qui opère le prêt. La valeur de ce paramètre doit être l'identifiant alphanumérique du système de prêt obtenu auprès de la plateforme. Permet à la plateforme de générer un rapport de facturation des frais de DRM personnalisé pour chaque source de prêts. |
|
|---|
| Réponses | | Code | Contenu | Description |
|---|
| 201 | URL | URL du fichier chronodégradable à télécharger. Redirigez l'utilisateur vers cette URL. | | 400 | Un tableau avec les codes d'erreur | Les codes d'erreurs sont décrits ci-dessous. |
| invalid_expiration_date | La date d'expiration n'est pas valide. |
| missing_borrower_id | Le paramètre borrower_id n'a pas été spécifié. |
| missing_transaction_id | Le paramètre transaction_id n'a pas été spécifié. |
| no_loan_available | Le lien n'est pas valide ou le livre est déjà prêté. |
| maximum_loans_q ty_reached | La publication ne peut pas être empruntée car la limite du nombre de prêts est atteinte. |
| medium_parameter_required | Le paramètre medium n'a pas été spécifié. |
| medium_parameter_invalid | Le paramètre medium n'est pas valide. |
| localisation_parameter_required | Le paramètre localisation n'a pas été spécifié. |
| localisation_parameter_invalid | Le paramètre localisation n'est pas valide. |
| ip_address_parameter_required | Le paramètre ip_address n'a pas été spécifié. |
| ip_address_parameter_invalid | Le paramètre ip_address n'est pas valide. |
| loan_term_limit_reached | Cette ressource ne peut plus être prêtée car sa durée de vie a expiré. |
| loan_duration_over_maximum | La durée du prêt est plus grande que le maximum autorisé. |
| maximum_simultaneous_downloads_reached | Le nombre maximal de prêts simultanés a été atteint. |
| maximum_simultaneous_onsite_streamings_reached | Le nombre maximal de consultations sur site a été atteint. |
| maximum_simultaneous_offsite_streamings_reached | Le nombre maximal de consultations hors site a été atteint. |
|
|---|
Si vous devez générer de nouveau un lien de téléchargement pour un prêt existant (par exemple, pour un utilisateur qui aurait perdu son fichier), il suffit d'utiliser ce service à nouveau, en utilisant les mêmes valeurs pour les paramètres borrower_id et transaction_id et en omettant le paramètres expire_at.
L'URL de notification ([notify_url]) peut être spéficique à chaque prêt, comme ceci : "http://www.pret.com/api/notify/loan/transaction_id/12345/" ou générique (le même lien pour chaque prêt, par exemple http://www.pret.com/api/notify") puisque la plateforme envoie déjà les informations de prêt dans la requête qui est faite à l'URL de notification (voir la prochaine étape).