Initial library endpoints (#3012)

* Fix: extra type in `Author.yaml`

* Fix: formatting

* Initial library schema

* Additional debugging

* Fix: spec relative paths

* Add: ebook file spec

* Fix: response type should be string

* Linting updates

* Add: missing librarySettings

* Temporary fix: Library cron can be null or false

* Author controller updates

* Add: `/api/libraries/{id}` endpoint

* Update library responses

* Add: descriptions

* Fix: queries should be in body

* Fix: `body` should be `requestBody`

* Move: `libraryController` paths, clean up `requestBody`

* Clean up libraryController parameters

* Move: author endpoints to controller

* Add `get` for author images

* Simplify author schema with items

* Remove: unused response type

* Update: formatting

* Update json

* Update requestBody on LibraryController

* LibrarySettings update

* Replace: generic parameter with path specific parameter

* Fix: requestBody descriptions

* Fix: match post operation

* Temporary: nullable Author schemas

* LibraryController items endpoint

* Add: delete library items with issues

* Massive cleanup and violation fixing

* Update bundled spec

* Add: remove library items with issues

* Add: library items endpoint

* Fix: errors

* Fix: base schemas

* Add: series schemas

* Add: library series endpoint

* Fix: oneOf and array issues

* Add: author search region for matching

* Add: series endpoints

* Fix: series issues

* Add library series endpoint and update deprecation

* Fix: series endpoint deprecation

* Fix: `name` in `sortDesc` schema

* Add: workflow for linting spec

* Update OpenAPI readme
This commit is contained in:
Nicholas W 2024-06-13 15:09:02 -07:00 committed by GitHub
parent e6a2555f05
commit baf5f7fbc3
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
15 changed files with 1135 additions and 325 deletions

View file

@ -25,9 +25,38 @@ components:
type: array
items:
type: string
example: ["To Be Read", "Genre: Nonfiction"]
example: ['To Be Read', 'Genre: Nonfiction']
inode:
description: The inode of the item in the file system.
type: string
format: "[0-9]*"
example: '649644248522215260'
format: '[0-9]*'
example: '649644248522215260'
total:
description: The total number of items in the response.
type: integer
example: 100
limit:
description: The number of items to return. If 0, no items are returned.
type: integer
example: 10
default: 0
page:
description: The page number (zero indexed) to return. If no limit is specified, then page will have no effect.
type: integer
example: 1
default: 0
sortDesc:
description: Return items in reversed order if true.
type: boolean
example: true
default: false
minified:
description: Return minified items if true.
type: boolean
example: true
default: false
region:
description: The region used to search.
type: string
example: 'us'
default: 'us'