{"openapi":"3.1.0","info":{"title":"Biblioth\u00e8que API","description":"API de gestion de biblioth\u00e8que municipale","version":"1.0.0"},"servers":[{"url":"\/","description":""}],"paths":{"\/api\/authors":{"get":{"operationId":"api_authors_get_collection","tags":["Author"],"responses":{"200":{"description":"Author collection","content":{"application\/json":{"schema":{"type":"array","items":{"$ref":"#\/components\/schemas\/Author-author.read"}}}}},"403":{"description":"Forbidden"}},"summary":"Retrieves the collection of Author resources.","description":"Retrieves the collection of Author resources.","parameters":[{"name":"page","in":"query","description":"The collection page number","required":false,"deprecated":false,"allowEmptyValue":true,"schema":{"type":"integer","default":1},"style":"form","explode":false,"allowReserved":false}],"deprecated":false},"post":{"operationId":"api_authors_post","tags":["Author"],"responses":{"201":{"description":"Author resource created","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Author-author.read"}}},"links":{}},"400":{"description":"Invalid input"},"422":{"description":"Unprocessable entity"},"403":{"description":"Forbidden"}},"summary":"Creates a Author resource.","description":"Creates a Author resource.","parameters":[],"requestBody":{"description":"The new Author resource","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Author-author.write"}}},"required":true},"deprecated":false}},"\/api\/authors\/{id}":{"get":{"operationId":"api_authors_id_get","tags":["Author"],"responses":{"200":{"description":"Author resource","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Author-author.read"}}}},"403":{"description":"Forbidden"},"404":{"description":"Resource not found"}},"summary":"Retrieves a Author resource.","description":"Retrieves a Author resource.","parameters":[{"name":"id","in":"path","description":"Author identifier","required":true,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"simple","explode":false,"allowReserved":false}],"deprecated":false},"put":{"operationId":"api_authors_id_put","tags":["Author"],"responses":{"200":{"description":"Author resource updated","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Author-author.read"}}},"links":{}},"400":{"description":"Invalid input"},"422":{"description":"Unprocessable entity"},"403":{"description":"Forbidden"},"404":{"description":"Resource not found"}},"summary":"Replaces the Author resource.","description":"Replaces the Author resource.","parameters":[{"name":"id","in":"path","description":"Author identifier","required":true,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"simple","explode":false,"allowReserved":false}],"requestBody":{"description":"The updated Author resource","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Author-author.write"}}},"required":true},"deprecated":false},"delete":{"operationId":"api_authors_id_delete","tags":["Author"],"responses":{"204":{"description":"Author resource deleted"},"403":{"description":"Forbidden"},"404":{"description":"Resource not found"}},"summary":"Removes the Author resource.","description":"Removes the Author resource.","parameters":[{"name":"id","in":"path","description":"Author identifier","required":true,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"simple","explode":false,"allowReserved":false}],"deprecated":false}},"\/api\/books":{"get":{"operationId":"api_books_get_collection","tags":["Book"],"responses":{"200":{"description":"Book collection","content":{"application\/json":{"schema":{"type":"array","items":{"$ref":"#\/components\/schemas\/Book-book.read"}}}}},"403":{"description":"Forbidden"}},"summary":"Retrieves the collection of Book resources.","description":"Retrieves the collection of Book resources.","parameters":[{"name":"page","in":"query","description":"The collection page number","required":false,"deprecated":false,"allowEmptyValue":true,"schema":{"type":"integer","default":1},"style":"form","explode":false,"allowReserved":false},{"name":"title","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"isbn","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"isbn[]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"array","items":{"type":"string"}},"style":"form","explode":true,"allowReserved":false},{"name":"language","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"language[]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"array","items":{"type":"string"}},"style":"form","explode":true,"allowReserved":false},{"name":"authors.lastName","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"genres.slug","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"genres.slug[]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"array","items":{"type":"string"}},"style":"form","explode":true,"allowReserved":false},{"name":"order[title]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string","default":"asc","enum":["asc","desc"]},"style":"form","explode":false,"allowReserved":false},{"name":"order[publishedYear]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string","default":"asc","enum":["asc","desc"]},"style":"form","explode":false,"allowReserved":false},{"name":"order[createdAt]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string","default":"asc","enum":["asc","desc"]},"style":"form","explode":false,"allowReserved":false}],"deprecated":false},"post":{"operationId":"api_books_post","tags":["Book"],"responses":{"201":{"description":"Book resource created","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Book-book.read"}}},"links":{}},"400":{"description":"Invalid input"},"422":{"description":"Unprocessable entity"},"403":{"description":"Forbidden"}},"summary":"Creates a Book resource.","description":"Creates a Book resource.","parameters":[],"requestBody":{"description":"The new Book resource","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Book-book.write"}}},"required":true},"deprecated":false}},"\/api\/books\/{id}":{"get":{"operationId":"api_books_id_get","tags":["Book"],"responses":{"200":{"description":"Book resource","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Book-book.read"}}}},"403":{"description":"Forbidden"},"404":{"description":"Resource not found"}},"summary":"Retrieves a Book resource.","description":"Retrieves a Book resource.","parameters":[{"name":"id","in":"path","description":"Book identifier","required":true,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"simple","explode":false,"allowReserved":false}],"deprecated":false},"put":{"operationId":"api_books_id_put","tags":["Book"],"responses":{"200":{"description":"Book resource updated","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Book-book.read"}}},"links":{}},"400":{"description":"Invalid input"},"422":{"description":"Unprocessable entity"},"403":{"description":"Forbidden"},"404":{"description":"Resource not found"}},"summary":"Replaces the Book resource.","description":"Replaces the Book resource.","parameters":[{"name":"id","in":"path","description":"Book identifier","required":true,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"simple","explode":false,"allowReserved":false}],"requestBody":{"description":"The updated Book resource","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Book-book.write"}}},"required":true},"deprecated":false},"delete":{"operationId":"api_books_id_delete","tags":["Book"],"responses":{"204":{"description":"Book resource deleted"},"403":{"description":"Forbidden"},"404":{"description":"Resource not found"}},"summary":"Removes the Book resource.","description":"Removes the Book resource.","parameters":[{"name":"id","in":"path","description":"Book identifier","required":true,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"simple","explode":false,"allowReserved":false}],"deprecated":false}},"\/api\/book_copies":{"get":{"operationId":"api_book_copies_get_collection","tags":["BookCopy"],"responses":{"200":{"description":"BookCopy collection","content":{"application\/json":{"schema":{"type":"array","items":{"$ref":"#\/components\/schemas\/BookCopy-book_copy.read"}}}}},"403":{"description":"Forbidden"}},"summary":"Retrieves the collection of BookCopy resources.","description":"Retrieves the collection of BookCopy resources.","parameters":[{"name":"page","in":"query","description":"The collection page number","required":false,"deprecated":false,"allowEmptyValue":true,"schema":{"type":"integer","default":1},"style":"form","explode":false,"allowReserved":false},{"name":"book","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"book[]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"array","items":{"type":"string"}},"style":"form","explode":true,"allowReserved":false},{"name":"status","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"status[]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"array","items":{"type":"string"}},"style":"form","explode":true,"allowReserved":false}],"deprecated":false},"post":{"operationId":"api_book_copies_post","tags":["BookCopy"],"responses":{"201":{"description":"BookCopy resource created","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BookCopy-book_copy.read"}}},"links":{}},"400":{"description":"Invalid input"},"422":{"description":"Unprocessable entity"},"403":{"description":"Forbidden"}},"summary":"Creates a BookCopy resource.","description":"Creates a BookCopy resource.","parameters":[],"requestBody":{"description":"The new BookCopy resource","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BookCopy-book_copy.write"}}},"required":true},"deprecated":false}},"\/api\/book_copies\/{id}":{"get":{"operationId":"api_book_copies_id_get","tags":["BookCopy"],"responses":{"200":{"description":"BookCopy resource","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BookCopy-book_copy.read"}}}},"403":{"description":"Forbidden"},"404":{"description":"Resource not found"}},"summary":"Retrieves a BookCopy resource.","description":"Retrieves a BookCopy resource.","parameters":[{"name":"id","in":"path","description":"BookCopy identifier","required":true,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"simple","explode":false,"allowReserved":false}],"deprecated":false},"put":{"operationId":"api_book_copies_id_put","tags":["BookCopy"],"responses":{"200":{"description":"BookCopy resource updated","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BookCopy-book_copy.read"}}},"links":{}},"400":{"description":"Invalid input"},"422":{"description":"Unprocessable entity"},"403":{"description":"Forbidden"},"404":{"description":"Resource not found"}},"summary":"Replaces the BookCopy resource.","description":"Replaces the BookCopy resource.","parameters":[{"name":"id","in":"path","description":"BookCopy identifier","required":true,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"simple","explode":false,"allowReserved":false}],"requestBody":{"description":"The updated BookCopy resource","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BookCopy-book_copy.write"}}},"required":true},"deprecated":false},"delete":{"operationId":"api_book_copies_id_delete","tags":["BookCopy"],"responses":{"204":{"description":"BookCopy resource deleted"},"403":{"description":"Forbidden"},"404":{"description":"Resource not found"}},"summary":"Removes the BookCopy resource.","description":"Removes the BookCopy resource.","parameters":[{"name":"id","in":"path","description":"BookCopy identifier","required":true,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"simple","explode":false,"allowReserved":false}],"deprecated":false}},"\/api\/configurations":{"get":{"operationId":"api_configurations_get_collection","tags":["Configuration"],"responses":{"200":{"description":"Configuration collection","content":{"application\/json":{"schema":{"type":"array","items":{"$ref":"#\/components\/schemas\/Configuration-config.read"}}}}},"403":{"description":"Forbidden"}},"summary":"Retrieves the collection of Configuration resources.","description":"Retrieves the collection of Configuration resources.","parameters":[{"name":"page","in":"query","description":"The collection page number","required":false,"deprecated":false,"allowEmptyValue":true,"schema":{"type":"integer","default":1},"style":"form","explode":false,"allowReserved":false}],"deprecated":false}},"\/api\/configurations\/{key}":{"get":{"operationId":"api_configurations_key_get","tags":["Configuration"],"responses":{"200":{"description":"Configuration resource","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Configuration-config.read"}}}},"403":{"description":"Forbidden"},"404":{"description":"Resource not found"}},"summary":"Retrieves a Configuration resource.","description":"Retrieves a Configuration resource.","parameters":[{"name":"key","in":"path","description":"Configuration identifier","required":true,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"simple","explode":false,"allowReserved":false}],"deprecated":false},"put":{"operationId":"api_configurations_key_put","tags":["Configuration"],"responses":{"200":{"description":"Configuration resource updated","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Configuration-config.read"}}},"links":{}},"400":{"description":"Invalid input"},"422":{"description":"Unprocessable entity"},"403":{"description":"Forbidden"},"404":{"description":"Resource not found"}},"summary":"Replaces the Configuration resource.","description":"Replaces the Configuration resource.","parameters":[{"name":"key","in":"path","description":"Configuration identifier","required":true,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"simple","explode":false,"allowReserved":false}],"requestBody":{"description":"The updated Configuration resource","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Configuration-config.write"}}},"required":true},"deprecated":false}},"\/api\/stats\/dashboard":{"get":{"operationId":"api_statsdashboard_get","tags":["DashboardStatsOutput"],"responses":{"200":{"description":"DashboardStatsOutput resource","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/DashboardStatsOutput-stats.read"}}}},"403":{"description":"Forbidden"},"404":{"description":"Resource not found"}},"summary":"Retrieves a DashboardStatsOutput resource.","description":"Retrieves a DashboardStatsOutput resource.","parameters":[],"deprecated":false}},"\/api\/genres":{"get":{"operationId":"api_genres_get_collection","tags":["Genre"],"responses":{"200":{"description":"Genre collection","content":{"application\/json":{"schema":{"type":"array","items":{"$ref":"#\/components\/schemas\/Genre-genre.read"}}}}},"403":{"description":"Forbidden"}},"summary":"Retrieves the collection of Genre resources.","description":"Retrieves the collection of Genre resources.","parameters":[{"name":"page","in":"query","description":"The collection page number","required":false,"deprecated":false,"allowEmptyValue":true,"schema":{"type":"integer","default":1},"style":"form","explode":false,"allowReserved":false}],"deprecated":false},"post":{"operationId":"api_genres_post","tags":["Genre"],"responses":{"201":{"description":"Genre resource created","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Genre-genre.read"}}},"links":{}},"400":{"description":"Invalid input"},"422":{"description":"Unprocessable entity"},"403":{"description":"Forbidden"}},"summary":"Creates a Genre resource.","description":"Creates a Genre resource.","parameters":[],"requestBody":{"description":"The new Genre resource","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Genre-genre.write"}}},"required":true},"deprecated":false}},"\/api\/genres\/{id}":{"get":{"operationId":"api_genres_id_get","tags":["Genre"],"responses":{"200":{"description":"Genre resource","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Genre-genre.read"}}}},"403":{"description":"Forbidden"},"404":{"description":"Resource not found"}},"summary":"Retrieves a Genre resource.","description":"Retrieves a Genre resource.","parameters":[{"name":"id","in":"path","description":"Genre identifier","required":true,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"simple","explode":false,"allowReserved":false}],"deprecated":false},"put":{"operationId":"api_genres_id_put","tags":["Genre"],"responses":{"200":{"description":"Genre resource updated","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Genre-genre.read"}}},"links":{}},"400":{"description":"Invalid input"},"422":{"description":"Unprocessable entity"},"403":{"description":"Forbidden"},"404":{"description":"Resource not found"}},"summary":"Replaces the Genre resource.","description":"Replaces the Genre resource.","parameters":[{"name":"id","in":"path","description":"Genre identifier","required":true,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"simple","explode":false,"allowReserved":false}],"requestBody":{"description":"The updated Genre resource","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Genre-genre.write"}}},"required":true},"deprecated":false},"delete":{"operationId":"api_genres_id_delete","tags":["Genre"],"responses":{"204":{"description":"Genre resource deleted"},"403":{"description":"Forbidden"},"404":{"description":"Resource not found"}},"summary":"Removes the Genre resource.","description":"Removes the Genre resource.","parameters":[{"name":"id","in":"path","description":"Genre identifier","required":true,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"simple","explode":false,"allowReserved":false}],"deprecated":false}},"\/api\/loans":{"get":{"operationId":"api_loans_get_collection","tags":["Loan"],"responses":{"200":{"description":"Loan collection","content":{"application\/json":{"schema":{"type":"array","items":{"$ref":"#\/components\/schemas\/Loan-loan.read"}}}}},"403":{"description":"Forbidden"}},"summary":"Retrieves the collection of Loan resources.","description":"Retrieves the collection of Loan resources.","parameters":[{"name":"page","in":"query","description":"The collection page number","required":false,"deprecated":false,"allowEmptyValue":true,"schema":{"type":"integer","default":1},"style":"form","explode":false,"allowReserved":false},{"name":"member","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"member[]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"array","items":{"type":"string"}},"style":"form","explode":true,"allowReserved":false},{"name":"bookCopy.book","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"bookCopy.book[]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"array","items":{"type":"string"}},"style":"form","explode":true,"allowReserved":false},{"name":"dueDate[before]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"dueDate[strictly_before]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"dueDate[after]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"dueDate[strictly_after]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"borrowedAt[before]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"borrowedAt[strictly_before]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"borrowedAt[after]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"borrowedAt[strictly_after]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false}],"deprecated":false},"post":{"operationId":"api_loans_post","tags":["Loan"],"responses":{"201":{"description":"Loan resource created","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Loan-loan.read"}}},"links":{}},"400":{"description":"Invalid input"},"422":{"description":"Unprocessable entity"},"403":{"description":"Forbidden"}},"summary":"Creates a Loan resource.","description":"Creates a Loan resource.","parameters":[],"requestBody":{"description":"The new Loan resource","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Loan.LoanCreateInput"}}},"required":true},"deprecated":false}},"\/api\/loans\/{id}":{"get":{"operationId":"api_loans_id_get","tags":["Loan"],"responses":{"200":{"description":"Loan resource","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Loan-loan.read"}}}},"403":{"description":"Forbidden"},"404":{"description":"Resource not found"}},"summary":"Retrieves a Loan resource.","description":"Retrieves a Loan resource.","parameters":[{"name":"id","in":"path","description":"Loan identifier","required":true,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"simple","explode":false,"allowReserved":false}],"deprecated":false}},"\/api\/loans\/{id}\/renew":{"post":{"operationId":"api_loans_idrenew_post","tags":["Loan"],"responses":{"201":{"description":"Loan resource created","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Loan-loan.read"}}},"links":{}},"400":{"description":"Invalid input"},"422":{"description":"Unprocessable entity"},"403":{"description":"Forbidden"}},"summary":"Creates a Loan resource.","description":"Creates a Loan resource.","parameters":[{"name":"id","in":"path","description":"Loan identifier","required":true,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"simple","explode":false,"allowReserved":false}],"requestBody":{"description":"The new Loan resource","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Loan"}}},"required":true},"deprecated":false}},"\/api\/loans\/{id}\/return":{"post":{"operationId":"api_loans_idreturn_post","tags":["Loan"],"responses":{"201":{"description":"Loan resource created","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Loan-loan.read"}}},"links":{}},"400":{"description":"Invalid input"},"422":{"description":"Unprocessable entity"},"403":{"description":"Forbidden"}},"summary":"Creates a Loan resource.","description":"Creates a Loan resource.","parameters":[{"name":"id","in":"path","description":"Loan identifier","required":true,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"simple","explode":false,"allowReserved":false}],"requestBody":{"description":"The new Loan resource","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Loan.LoanReturnInput"}}},"required":true},"deprecated":false}},"\/api\/my_loans":{"get":{"operationId":"api_my_loans_get_collection","tags":["Loan"],"responses":{"200":{"description":"Loan collection","content":{"application\/json":{"schema":{"type":"array","items":{"$ref":"#\/components\/schemas\/Loan-loan.read"}}}}},"403":{"description":"Forbidden"}},"summary":"Retrieves the collection of Loan resources.","description":"Retrieves the collection of Loan resources.","parameters":[{"name":"page","in":"query","description":"The collection page number","required":false,"deprecated":false,"allowEmptyValue":true,"schema":{"type":"integer","default":1},"style":"form","explode":false,"allowReserved":false},{"name":"member","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"member[]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"array","items":{"type":"string"}},"style":"form","explode":true,"allowReserved":false},{"name":"bookCopy.book","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"bookCopy.book[]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"array","items":{"type":"string"}},"style":"form","explode":true,"allowReserved":false},{"name":"dueDate[before]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"dueDate[strictly_before]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"dueDate[after]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"dueDate[strictly_after]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"borrowedAt[before]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"borrowedAt[strictly_before]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"borrowedAt[after]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"borrowedAt[strictly_after]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false}],"deprecated":false}},"\/api\/auth\/login":{"post":{"operationId":"login_check_post","tags":["Login Check"],"responses":{"200":{"description":"User token created","content":{"application\/json":{"schema":{"type":"object","properties":{"token":{"readOnly":true,"type":"string","nullable":false}},"required":["token"]}}}}},"summary":"Creates a user token.","description":"Creates a user token.","requestBody":{"description":"The login data","content":{"application\/json":{"schema":{"type":"object","properties":{"username":{"type":"string","nullable":false},"password":{"type":"string","nullable":false}},"required":["username","password"]}}},"required":true}}},"\/api\/members":{"get":{"operationId":"api_members_get_collection","tags":["Member"],"responses":{"200":{"description":"Member collection","content":{"application\/json":{"schema":{"type":"array","items":{"$ref":"#\/components\/schemas\/Member-member.read"}}}}},"403":{"description":"Forbidden"}},"summary":"Retrieves the collection of Member resources.","description":"Retrieves the collection of Member resources.","parameters":[{"name":"page","in":"query","description":"The collection page number","required":false,"deprecated":false,"allowEmptyValue":true,"schema":{"type":"integer","default":1},"style":"form","explode":false,"allowReserved":false},{"name":"firstName","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"lastName","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"email","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"memberNumber","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"memberNumber[]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"array","items":{"type":"string"}},"style":"form","explode":true,"allowReserved":false},{"name":"status","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"status[]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"array","items":{"type":"string"}},"style":"form","explode":true,"allowReserved":false}],"deprecated":false},"post":{"operationId":"api_members_post","tags":["Member"],"responses":{"201":{"description":"Member resource created","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Member-member.read"}}},"links":{}},"400":{"description":"Invalid input"},"422":{"description":"Unprocessable entity"},"403":{"description":"Forbidden"}},"summary":"Creates a Member resource.","description":"Creates a Member resource.","parameters":[],"requestBody":{"description":"The new Member resource","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Member-member.write"}}},"required":true},"deprecated":false}},"\/api\/members\/{id}":{"get":{"operationId":"api_members_id_get","tags":["Member"],"responses":{"200":{"description":"Member resource","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Member-member.read"}}}},"403":{"description":"Forbidden"},"404":{"description":"Resource not found"}},"summary":"Retrieves a Member resource.","description":"Retrieves a Member resource.","parameters":[{"name":"id","in":"path","description":"Member identifier","required":true,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"simple","explode":false,"allowReserved":false}],"deprecated":false},"put":{"operationId":"api_members_id_put","tags":["Member"],"responses":{"200":{"description":"Member resource updated","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Member-member.read"}}},"links":{}},"400":{"description":"Invalid input"},"422":{"description":"Unprocessable entity"},"403":{"description":"Forbidden"},"404":{"description":"Resource not found"}},"summary":"Replaces the Member resource.","description":"Replaces the Member resource.","parameters":[{"name":"id","in":"path","description":"Member identifier","required":true,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"simple","explode":false,"allowReserved":false}],"requestBody":{"description":"The updated Member resource","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Member-member.write"}}},"required":true},"deprecated":false},"delete":{"operationId":"api_members_id_delete","tags":["Member"],"responses":{"204":{"description":"Member resource deleted"},"403":{"description":"Forbidden"},"404":{"description":"Resource not found"}},"summary":"Removes the Member resource.","description":"Removes the Member resource.","parameters":[{"name":"id","in":"path","description":"Member identifier","required":true,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"simple","explode":false,"allowReserved":false}],"deprecated":false}},"\/api\/notifications":{"get":{"operationId":"api_notifications_get_collection","tags":["Notification"],"responses":{"200":{"description":"Notification collection","content":{"application\/json":{"schema":{"type":"array","items":{"$ref":"#\/components\/schemas\/Notification-notification.read"}}}}},"403":{"description":"Forbidden"}},"summary":"Retrieves the collection of Notification resources.","description":"Retrieves the collection of Notification resources.","parameters":[{"name":"page","in":"query","description":"The collection page number","required":false,"deprecated":false,"allowEmptyValue":true,"schema":{"type":"integer","default":1},"style":"form","explode":false,"allowReserved":false}],"deprecated":false}},"\/api\/my_reservations":{"get":{"operationId":"api_my_reservations_get_collection","tags":["Reservation"],"responses":{"200":{"description":"Reservation collection","content":{"application\/json":{"schema":{"type":"array","items":{"$ref":"#\/components\/schemas\/Reservation-reservation.read"}}}}},"403":{"description":"Forbidden"}},"summary":"Retrieves the collection of Reservation resources.","description":"Retrieves the collection of Reservation resources.","parameters":[{"name":"page","in":"query","description":"The collection page number","required":false,"deprecated":false,"allowEmptyValue":true,"schema":{"type":"integer","default":1},"style":"form","explode":false,"allowReserved":false},{"name":"book","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"book[]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"array","items":{"type":"string"}},"style":"form","explode":true,"allowReserved":false},{"name":"member","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"member[]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"array","items":{"type":"string"}},"style":"form","explode":true,"allowReserved":false},{"name":"status","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"status[]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"array","items":{"type":"string"}},"style":"form","explode":true,"allowReserved":false}],"deprecated":false}},"\/api\/reservations":{"get":{"operationId":"api_reservations_get_collection","tags":["Reservation"],"responses":{"200":{"description":"Reservation collection","content":{"application\/json":{"schema":{"type":"array","items":{"$ref":"#\/components\/schemas\/Reservation-reservation.read"}}}}},"403":{"description":"Forbidden"}},"summary":"Retrieves the collection of Reservation resources.","description":"Retrieves the collection of Reservation resources.","parameters":[{"name":"page","in":"query","description":"The collection page number","required":false,"deprecated":false,"allowEmptyValue":true,"schema":{"type":"integer","default":1},"style":"form","explode":false,"allowReserved":false},{"name":"book","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"book[]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"array","items":{"type":"string"}},"style":"form","explode":true,"allowReserved":false},{"name":"member","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"member[]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"array","items":{"type":"string"}},"style":"form","explode":true,"allowReserved":false},{"name":"status","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"form","explode":false,"allowReserved":false},{"name":"status[]","in":"query","description":"","required":false,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"array","items":{"type":"string"}},"style":"form","explode":true,"allowReserved":false}],"deprecated":false},"post":{"operationId":"api_reservations_post","tags":["Reservation"],"responses":{"201":{"description":"Reservation resource created","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Reservation-reservation.read"}}},"links":{}},"400":{"description":"Invalid input"},"422":{"description":"Unprocessable entity"},"403":{"description":"Forbidden"}},"summary":"Creates a Reservation resource.","description":"Creates a Reservation resource.","parameters":[],"requestBody":{"description":"The new Reservation resource","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Reservation.ReservationCreateInput"}}},"required":true},"deprecated":false}},"\/api\/reservations\/{id}":{"get":{"operationId":"api_reservations_id_get","tags":["Reservation"],"responses":{"200":{"description":"Reservation resource","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Reservation-reservation.read"}}}},"403":{"description":"Forbidden"},"404":{"description":"Resource not found"}},"summary":"Retrieves a Reservation resource.","description":"Retrieves a Reservation resource.","parameters":[{"name":"id","in":"path","description":"Reservation identifier","required":true,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"simple","explode":false,"allowReserved":false}],"deprecated":false},"delete":{"operationId":"api_reservations_id_delete","tags":["Reservation"],"responses":{"204":{"description":"Reservation resource deleted"},"403":{"description":"Forbidden"},"404":{"description":"Resource not found"}},"summary":"Removes the Reservation resource.","description":"Removes the Reservation resource.","parameters":[{"name":"id","in":"path","description":"Reservation identifier","required":true,"deprecated":false,"allowEmptyValue":false,"schema":{"type":"string"},"style":"simple","explode":false,"allowReserved":false}],"deprecated":false}}},"components":{"schemas":{"Author-author.read":{"type":"object","description":"","deprecated":false,"properties":{"id":{"readOnly":true,"type":["string","null"],"format":"uuid"},"firstName":{"maxLength":100,"type":"string"},"lastName":{"maxLength":100,"type":"string"},"biography":{"type":["string","null"]}},"required":["firstName","lastName"]},"Author-author.write":{"type":"object","description":"","deprecated":false,"required":["firstName","lastName"],"properties":{"firstName":{"maxLength":100,"type":"string"},"lastName":{"maxLength":100,"type":"string"},"biography":{"type":["string","null"]}}},"Author-book.read":{"type":"object","description":"","deprecated":false,"properties":{"id":{"readOnly":true,"type":["string","null"],"format":"uuid"},"firstName":{"maxLength":100,"type":"string"},"lastName":{"maxLength":100,"type":"string"}},"required":["firstName","lastName"]},"Book-book.read":{"type":"object","description":"","deprecated":false,"properties":{"id":{"readOnly":true,"type":["string","null"],"format":"uuid"},"title":{"maxLength":255,"type":"string"},"description":{"type":["string","null"]},"isbn":{"maxLength":13,"type":["string","null"]},"publishedYear":{"type":["integer","null"]},"publisher":{"type":["string","null"]},"language":{"default":"fr","example":"fr","type":"string"},"pageCount":{"type":["integer","null"]},"coverImagePath":{"type":["string","null"]},"createdAt":{"readOnly":true,"type":"string","format":"date-time"},"updatedAt":{"readOnly":true,"type":"string","format":"date-time"},"authors":{"type":"array","items":{"$ref":"#\/components\/schemas\/Author-book.read"}},"genres":{"type":"array","items":{"$ref":"#\/components\/schemas\/Genre-book.read"}},"copies":{"readOnly":true,"type":"array","items":{"$ref":"#\/components\/schemas\/BookCopy-book.read"}},"availableCopiesCount":{"readOnly":true,"type":"integer"},"totalCopiesCount":{"readOnly":true,"type":"integer"}},"required":["title"]},"Book-book.write":{"type":"object","description":"","deprecated":false,"required":["title"],"properties":{"title":{"maxLength":255,"type":"string"},"description":{"type":["string","null"]},"isbn":{"maxLength":13,"type":["string","null"]},"publishedYear":{"type":["integer","null"]},"publisher":{"type":["string","null"]},"language":{"default":"fr","example":"fr","type":"string"},"pageCount":{"type":["integer","null"]},"coverImagePath":{"type":["string","null"]},"authors":{"type":"array","items":{"type":"string","format":"iri-reference","example":"https:\/\/example.com\/"}},"genres":{"type":"array","items":{"type":"string","format":"iri-reference","example":"https:\/\/example.com\/"}}}},"Book-loan.read":{"type":"object","description":"","deprecated":false,"properties":{"id":{"readOnly":true,"type":["string","null"],"format":"uuid"},"title":{"maxLength":255,"type":"string"}},"required":["title"]},"Book-reservation.read":{"type":"object","description":"","deprecated":false,"properties":{"id":{"readOnly":true,"type":["string","null"],"format":"uuid"},"title":{"maxLength":255,"type":"string"}},"required":["title"]},"BookCopy-book.read":{"type":"object","description":"","deprecated":false,"properties":{"id":{"readOnly":true,"type":["string","null"],"format":"uuid"},"status":{"enum":["available","borrowed","reserved","repair","lost","withdrawn"],"default":"available","example":"available","type":"string"}}},"BookCopy-book_copy.read":{"type":"object","description":"","deprecated":false,"properties":{"id":{"readOnly":true,"type":["string","null"],"format":"uuid"},"book":{"type":"string","format":"iri-reference","example":"https:\/\/example.com\/"},"barcode":{"maxLength":50,"type":"string"},"location":{"type":["string","null"]},"status":{"enum":["available","borrowed","reserved","repair","lost","withdrawn"],"default":"available","example":"available","type":"string"},"condition":{"enum":["good","damaged","poor"],"default":"good","example":"good","type":"string"},"acquiredAt":{"type":["string","null"],"format":"date-time"},"notes":{"type":["string","null"]}},"required":["book","barcode"]},"BookCopy-book_copy.write":{"type":"object","description":"","deprecated":false,"required":["book","barcode"],"properties":{"book":{"type":"string","format":"iri-reference","example":"https:\/\/example.com\/"},"barcode":{"maxLength":50,"type":"string"},"location":{"type":["string","null"]},"status":{"enum":["available","borrowed","reserved","repair","lost","withdrawn"],"default":"available","example":"available","type":"string"},"condition":{"enum":["good","damaged","poor"],"default":"good","example":"good","type":"string"},"acquiredAt":{"type":["string","null"],"format":"date-time"},"notes":{"type":["string","null"]}}},"BookCopy-loan.read":{"type":"object","description":"","deprecated":false,"properties":{"id":{"readOnly":true,"type":["string","null"],"format":"uuid"},"book":{"$ref":"#\/components\/schemas\/Book-loan.read"},"barcode":{"maxLength":50,"type":"string"},"status":{"enum":["available","borrowed","reserved","repair","lost","withdrawn"],"default":"available","example":"available","type":"string"}},"required":["book","barcode"]},"Configuration-config.read":{"type":"object","description":"","deprecated":false,"properties":{"key":{"type":"string"},"value":{"type":"string"},"description":{"type":["string","null"]}},"required":["value"]},"Configuration-config.write":{"type":"object","description":"","deprecated":false,"required":["value"],"properties":{"value":{"type":"string"}}},"DashboardStatsOutput-stats.read":{"type":"object","description":"","deprecated":false,"properties":{"activeLoans":{"type":"integer"},"overdueLoans":{"type":"integer"},"pendingReservations":{"type":"integer"},"activeMembers":{"type":"integer"},"expiredMembers":{"type":"integer"},"totalBooks":{"type":"integer"},"topBooks":{"type":"array","items":{"type":"array","items":{"type":"string"}}}}},"Genre-book.read":{"type":"object","description":"","deprecated":false,"properties":{"id":{"readOnly":true,"type":["string","null"],"format":"uuid"},"name":{"maxLength":100,"type":"string"},"slug":{"maxLength":110,"pattern":"^([a-z0-9-]+)$","type":"string"}},"required":["name","slug"]},"Genre-genre.read":{"type":"object","description":"","deprecated":false,"properties":{"id":{"readOnly":true,"type":["string","null"],"format":"uuid"},"name":{"maxLength":100,"type":"string"},"slug":{"maxLength":110,"pattern":"^([a-z0-9-]+)$","type":"string"},"parent":{"anyOf":[{"$ref":"#\/components\/schemas\/Genre-genre.read"},{"type":"null"}]},"children":{"readOnly":true,"type":"array","items":{"$ref":"#\/components\/schemas\/Genre-genre.read"}}},"required":["name","slug"]},"Genre-genre.write":{"type":"object","description":"","deprecated":false,"required":["name","slug"],"properties":{"name":{"maxLength":100,"type":"string"},"slug":{"maxLength":110,"pattern":"^([a-z0-9-]+)$","type":"string"},"parent":{"anyOf":[{"$ref":"#\/components\/schemas\/Genre-genre.write"},{"type":"null"}]}}},"Loan":{"type":"object","description":"","deprecated":false,"properties":{"id":{"readOnly":true,"type":["string","null"],"format":"uuid"},"bookCopy":{"type":"string","format":"iri-reference","example":"https:\/\/example.com\/"},"member":{"type":"string","format":"iri-reference","example":"https:\/\/example.com\/"},"librarian":{"anyOf":[{"$ref":"#\/components\/schemas\/User"},{"type":"null"}]},"borrowedAt":{"type":"string","format":"date-time"},"dueDate":{"type":"string","format":"date-time"},"returnedAt":{"type":["string","null"],"format":"date-time"},"renewedCount":{"type":"integer"},"returnCondition":{"enum":["good","damaged","lost"],"type":["string","null"]},"lateFee":{"default":"0.00","example":"0.00","type":"string"},"notes":{"type":["string","null"]},"returned":{"readOnly":true,"type":"boolean"},"overdue":{"readOnly":true,"type":"boolean"}}},"Loan-loan.read":{"type":"object","description":"","deprecated":false,"properties":{"id":{"readOnly":true,"type":["string","null"],"format":"uuid"},"bookCopy":{"$ref":"#\/components\/schemas\/BookCopy-loan.read"},"member":{"$ref":"#\/components\/schemas\/Member-loan.read"},"librarian":{"anyOf":[{"$ref":"#\/components\/schemas\/User-loan.read"},{"type":"null"}]},"borrowedAt":{"type":"string","format":"date-time"},"dueDate":{"type":"string","format":"date-time"},"returnedAt":{"type":["string","null"],"format":"date-time"},"renewedCount":{"type":"integer"},"returnCondition":{"enum":["good","damaged","lost"],"type":["string","null"]},"lateFee":{"default":"0.00","example":"0.00","type":"string"},"notes":{"type":["string","null"]}}},"Loan.LoanCreateInput":{"type":"object","description":"","deprecated":false,"required":["bookCopyId","memberId"],"properties":{"bookCopyId":{"type":["string","null"]},"memberId":{"type":["string","null"]},"durationDays":{"exclusiveMinimum":0,"type":["integer","null"]}}},"Loan.LoanReturnInput":{"type":"object","description":"","deprecated":false,"required":["condition"],"properties":{"condition":{"enum":["good","damaged","lost"],"default":"good","example":"good","type":"string"},"notes":{"type":["string","null"]}}},"Member-loan.read":{"type":"object","description":"","deprecated":false,"properties":{"id":{"readOnly":true,"type":["string","null"],"format":"uuid"},"firstName":{"maxLength":100,"type":"string"},"lastName":{"maxLength":100,"type":"string"}},"required":["firstName","lastName"]},"Member-member.read":{"type":"object","description":"","deprecated":false,"properties":{"id":{"readOnly":true,"type":["string","null"],"format":"uuid"},"memberNumber":{"type":"string"},"firstName":{"maxLength":100,"type":"string"},"lastName":{"maxLength":100,"type":"string"},"email":{"format":"email","externalDocs":{"url":"https:\/\/schema.org\/email"},"type":"string"},"phone":{"type":["string","null"]},"address":{"type":["string","null"]},"birthDate":{"type":["string","null"],"format":"date-time"},"status":{"enum":["active","suspended","expired","archived"],"default":"active","example":"active","type":"string"},"maxLoans":{"exclusiveMinimum":0,"default":5,"example":5,"type":"integer"},"maxReservations":{"exclusiveMinimum":0,"default":3,"example":3,"type":"integer"},"membershipExpiry":{"type":"string","format":"date-time"},"photoPath":{"type":["string","null"]},"createdAt":{"readOnly":true,"type":"string","format":"date-time"}},"required":["firstName","lastName","email","membershipExpiry"]},"Member-member.write":{"type":"object","description":"","deprecated":false,"required":["firstName","lastName","email","membershipExpiry"],"properties":{"firstName":{"maxLength":100,"type":"string"},"lastName":{"maxLength":100,"type":"string"},"email":{"format":"email","externalDocs":{"url":"https:\/\/schema.org\/email"},"type":"string"},"phone":{"type":["string","null"]},"address":{"type":["string","null"]},"birthDate":{"type":["string","null"],"format":"date-time"},"status":{"enum":["active","suspended","expired","archived"],"default":"active","example":"active","type":"string"},"maxLoans":{"exclusiveMinimum":0,"default":5,"example":5,"type":"integer"},"maxReservations":{"exclusiveMinimum":0,"default":3,"example":3,"type":"integer"},"membershipExpiry":{"type":"string","format":"date-time"},"photoPath":{"type":["string","null"]}}},"Member-reservation.read":{"type":"object","description":"","deprecated":false,"properties":{"id":{"readOnly":true,"type":["string","null"],"format":"uuid"},"firstName":{"maxLength":100,"type":"string"},"lastName":{"maxLength":100,"type":"string"}},"required":["firstName","lastName"]},"Notification-notification.read":{"type":"object","description":"","deprecated":false,"properties":{"id":{"readOnly":true,"type":["string","null"],"format":"uuid"},"member":{"type":"string","format":"iri-reference","example":"https:\/\/example.com\/"},"type":{"default":"welcome","example":"welcome","type":"string"},"subject":{"type":"string"},"body":{"type":"string"},"sentAt":{"type":["string","null"],"format":"date-time"},"status":{"default":"pending","example":"pending","type":"string"},"createdAt":{"readOnly":true,"type":"string","format":"date-time"}}},"Reservation-reservation.read":{"type":"object","description":"","deprecated":false,"properties":{"id":{"readOnly":true,"type":["string","null"],"format":"uuid"},"book":{"$ref":"#\/components\/schemas\/Book-reservation.read"},"member":{"$ref":"#\/components\/schemas\/Member-reservation.read"},"createdAt":{"readOnly":true,"type":"string","format":"date-time"},"notifiedAt":{"type":["string","null"],"format":"date-time"},"expiresAt":{"type":["string","null"],"format":"date-time"},"status":{"default":"pending","example":"pending","type":"string"},"queuePosition":{"type":"integer"}}},"Reservation.ReservationCreateInput":{"type":"object","description":"","deprecated":false,"required":["bookId"],"properties":{"bookId":{"type":["string","null"]}}},"User":{"type":"object","description":"","deprecated":false,"properties":{"id":{"readOnly":true,"type":["string","null"],"format":"uuid"},"member":{"type":["string","null"],"format":"iri-reference","example":"https:\/\/example.com\/"},"email":{"format":"email","externalDocs":{"url":"https:\/\/schema.org\/email"},"type":"string"},"passwordHash":{"type":"string"},"role":{"enum":["ROLE_SUPER_ADMIN","ROLE_ADMIN","ROLE_LIBRARIAN","ROLE_MEMBER"],"default":"ROLE_MEMBER","example":"ROLE_MEMBER","type":"string"},"isActive":{"default":true,"example":true,"type":"boolean"},"lastLoginAt":{"type":["string","null"],"format":"date-time"},"createdAt":{"readOnly":true,"type":"string","format":"date-time"},"userIdentifier":{"readOnly":true,"type":"string"},"roles":{"readOnly":true,"type":"array","items":{"type":"string"}},"password":{"readOnly":true,"type":"string"},"active":{"readOnly":true,"type":"boolean"}},"required":["email"]},"User-loan.read":{"type":"object","description":"","deprecated":false}},"responses":{},"parameters":{},"examples":{},"requestBodies":{},"headers":{},"securitySchemes":{"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}}},"security":[],"tags":[],"webhooks":{}}