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.

AdresseLe [loan_url] obtenu lors de l'achat de la publication.
MéthodePOST
Paramètres
NomObligatoireDescription
borrower_idOuiPermet 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_idOuiNumé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.

durationNon

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.

mediumNon

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

localisationNon

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_addressNonCe 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_urlNonParamè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_toNonParamè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
CodeContenuDescription
201URLURL du fichier chronodégradable à télécharger. Redirigez l'utilisateur vers cette URL.
400Un tableau avec les codes d'erreurLes codes d'erreurs sont décrits ci-dessous.

invalid_expiration_dateLa date d'expiration n'est pas valide.

missing_borrower_idLe paramètre borrower_id n'a pas été spécifié.

missing_transaction_idLe paramètre transaction_id n'a pas été spécifié.

no_loan_availableLe 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_requiredLe paramètre medium n'a pas été spécifié.

medium_parameter_invalidLe paramètre medium n'est pas valide.

localisation_parameter_requiredLe paramètre localisation n'a pas été spécifié.

localisation_parameter_invalidLe paramètre localisation n'est pas valide.

ip_address_parameter_requiredLe paramètre ip_address n'a pas été spécifié.

ip_address_parameter_invalidLe paramètre ip_address n'est pas valide.

loan_term_limit_reachedCette ressource ne peut plus être prêtée car sa durée de vie a expiré.

loan_duration_over_maximumLa durée du prêt est plus grande que le maximum autorisé.

maximum_simultaneous_downloads_reachedLe nombre maximal de prêts simultanés a été atteint.

maximum_simultaneous_onsite_streamings_reachedLe nombre maximal de consultations sur site a été atteint.

maximum_simultaneous_offsite_streamings_reachedLe 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).