audiobookshelf/docs/root.yaml
Nicholas W baf5f7fbc3
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
2024-06-13 17:09:02 -05:00

47 lines
1.7 KiB
YAML

openapi: 3.0.0
info:
title: Audiobookshelf API
version: 0.1.0
description: Audiobookshelf API with autogenerated OpenAPI doc
servers:
- url: http://localhost:3000
description: Development server
components:
securitySchemes:
BearerAuth:
description: Bearer authentication
type: http
scheme: bearer
security:
- BearerAuth: []
paths:
/api/authors/{id}:
$ref: './controllers/AuthorController.yaml#/paths/~1api~1authors~1{id}'
/api/authors/{id}/image:
$ref: './controllers/AuthorController.yaml#/paths/~1api~1authors~1{id}~1image'
/api/authors/{id}/match:
$ref: './controllers/AuthorController.yaml#/paths/~1api~1authors~1{id}~1match'
/api/libraries:
$ref: './controllers/LibraryController.yaml#/paths/~1api~1libraries'
/api/libraries/{id}:
$ref: './controllers/LibraryController.yaml#/paths/~1api~1libraries~1{id}'
/api/libraries/{id}/authors:
$ref: './controllers/LibraryController.yaml#/paths/~1api~1libraries~1{id}~1authors'
/api/libraries/{id}/items:
$ref: './controllers/LibraryController.yaml#/paths/~1api~1libraries~1{id}~1items'
/api/libraries/{id}/issues:
$ref: './controllers/LibraryController.yaml#/paths/~1api~1libraries~1{id}~1issues'
/api/libraries/{id}/series:
$ref: './controllers/LibraryController.yaml#/paths/~1api~1libraries~1{id}~1series'
/api/libraries/{id}/series/{seriesId}:
$ref: './controllers/LibraryController.yaml#/paths/~1api~1libraries~1{id}~1series~1{seriesId}'
/api/series/{id}:
$ref: './controllers/SeriesController.yaml#/paths/~1api~1series~1{id}'
tags:
- name: Authors
description: Author endpoints
- name: Libraries
description: Library endpoints
- name: Series
description: Series endpoints