komga/komga/docs/openapi.json
semantic-release-bot 2b2f0272ae chore(release): 0.104.0 [skip ci]
# [0.104.0](https://github.com/gotson/komga/compare/v0.103.0...v0.104.0) (2021-06-29)

### Features

* **api:** get latest activity by user ([b118959](b118959775))
* **sse:** publish event when series is completely marked as read or unread ([11c5802](11c5802255))
* **webui:** display badge if some books are in error or unsupported ([101c6fd](101c6fd92d))
* **webui:** display latest user connection in settings ([58478c2](58478c21ff))
* **webui:** multi-select collections and read lists ([19e3f18](19e3f18cad))
* **webui:** select all option in the selection bar ([8545574](8545574d38))
* **webui:** select multiple items using shift+click ([f69a31e](f69a31eaf1))

### Performance Improvements

* **webui:** throttle reloads, remove legacy reload logic ([e8a7eaf](e8a7eaf999))
2021-06-29 09:33:39 +00:00

7254 lines
No EOL
170 KiB
JSON

{
"components": {
"schemas": {
"Violation": {
"type": "object",
"properties": {
"fieldName": {
"type": "string"
},
"message": {
"type": "string"
}
}
},
"TachiyomiReadProgressUpdateDto": {
"type": "object",
"required": [
"lastBookRead"
],
"properties": {
"lastBookRead": {
"format": "int32",
"type": "integer"
}
}
},
"DirectoryListingDto": {
"type": "object",
"required": [
"directories"
],
"properties": {
"parent": {
"type": "string"
},
"directories": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PathDto"
}
}
}
},
"OpenSearchUrl": {
"type": "object",
"required": [
"template",
"type"
],
"properties": {
"template": {
"type": "string"
},
"type": {
"type": "string"
}
}
},
"StreamingResponseBody": {
"type": "object"
},
"BookDto": {
"type": "object",
"required": [
"created",
"fileLastModified",
"id",
"lastModified",
"libraryId",
"media",
"metadata",
"name",
"number",
"seriesId",
"size",
"sizeBytes",
"url"
],
"properties": {
"metadata": {
"$ref": "#/components/schemas/BookMetadataDto"
},
"created": {
"format": "date-time",
"type": "string"
},
"libraryId": {
"type": "string"
},
"media": {
"$ref": "#/components/schemas/MediaDto"
},
"seriesId": {
"type": "string"
},
"url": {
"type": "string"
},
"sizeBytes": {
"format": "int64",
"type": "integer"
},
"number": {
"format": "int32",
"type": "integer"
},
"size": {
"type": "string"
},
"fileLastModified": {
"format": "date-time",
"type": "string"
},
"readProgress": {
"$ref": "#/components/schemas/ReadProgressDto"
},
"name": {
"type": "string"
},
"id": {
"type": "string"
},
"lastModified": {
"format": "date-time",
"type": "string"
}
}
},
"UserDto": {
"type": "object",
"required": [
"email",
"id",
"roles"
],
"properties": {
"roles": {
"type": "array",
"items": {
"type": "string"
}
},
"id": {
"type": "string"
},
"email": {
"type": "string"
}
}
},
"ReadListUpdateDto": {
"type": "object",
"properties": {
"bookIds": {
"type": "array",
"items": {
"type": "string"
}
},
"name": {
"type": "string"
}
}
},
"OpenSearchDescription": {
"type": "object",
"required": [
"description",
"inputEncoding",
"outputEncoding",
"shortName",
"url"
],
"properties": {
"inputEncoding": {
"type": "string"
},
"outputEncoding": {
"type": "string"
},
"description": {
"minLength": 1,
"type": "string",
"maxLength": 1024
},
"shortName": {
"minLength": 1,
"type": "string",
"maxLength": 16
},
"url": {
"$ref": "#/components/schemas/OpenSearchUrl"
}
}
},
"BookMetadataDto": {
"type": "object",
"required": [
"authors",
"authorsLock",
"created",
"isbn",
"isbnLock",
"lastModified",
"number",
"numberLock",
"numberSort",
"numberSortLock",
"releaseDateLock",
"summary",
"summaryLock",
"tags",
"tagsLock",
"title",
"titleLock"
],
"properties": {
"summary": {
"type": "string"
},
"numberSortLock": {
"type": "boolean"
},
"tagsLock": {
"type": "boolean"
},
"releaseDate": {
"format": "date",
"type": "string"
},
"created": {
"format": "date-time",
"type": "string"
},
"isbn": {
"type": "string"
},
"numberLock": {
"type": "boolean"
},
"releaseDateLock": {
"type": "boolean"
},
"title": {
"type": "string"
},
"titleLock": {
"type": "boolean"
},
"tags": {
"uniqueItems": true,
"type": "array",
"items": {
"type": "string"
}
},
"number": {
"type": "string"
},
"summaryLock": {
"type": "boolean"
},
"isbnLock": {
"type": "boolean"
},
"numberSort": {
"format": "float",
"type": "number"
},
"authorsLock": {
"type": "boolean"
},
"lastModified": {
"format": "date-time",
"type": "string"
},
"authors": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AuthorDto"
}
}
}
},
"UserWithSharedLibrariesDto": {
"type": "object",
"required": [
"email",
"id",
"roles",
"sharedAllLibraries",
"sharedLibraries"
],
"properties": {
"roles": {
"type": "array",
"items": {
"type": "string"
}
},
"sharedAllLibraries": {
"type": "boolean"
},
"id": {
"type": "string"
},
"email": {
"type": "string"
},
"sharedLibraries": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SharedLibraryDto"
}
}
}
},
"TransientBookDto": {
"type": "object",
"required": [
"comment",
"fileLastModified",
"files",
"id",
"mediaType",
"name",
"pages",
"size",
"sizeBytes",
"status",
"url"
],
"properties": {
"pages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PageDto"
}
},
"size": {
"type": "string"
},
"fileLastModified": {
"format": "date-time",
"type": "string"
},
"name": {
"type": "string"
},
"files": {
"type": "array",
"items": {
"type": "string"
}
},
"mediaType": {
"type": "string"
},
"comment": {
"type": "string"
},
"id": {
"type": "string"
},
"url": {
"type": "string"
},
"sizeBytes": {
"format": "int64",
"type": "integer"
},
"status": {
"type": "string"
}
}
},
"Pageable": {
"type": "object",
"properties": {
"size": {
"format": "int32",
"type": "integer",
"minimum": 1
},
"page": {
"format": "int32",
"type": "integer",
"minimum": 0
},
"sort": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"Sort": {
"type": "object",
"properties": {
"unsorted": {
"type": "boolean"
},
"sorted": {
"type": "boolean"
},
"empty": {
"type": "boolean"
}
}
},
"BookMetadataUpdateDto": {
"description": "Metadata fields to update. Set a field to null to unset the metadata. You can omit fields you don\u0027t want to update.",
"type": "object",
"properties": {
"summary": {
"type": "string"
},
"numberSortLock": {
"type": "boolean"
},
"tagsLock": {
"type": "boolean"
},
"releaseDate": {
"format": "date",
"type": "string"
},
"isbn": {
"type": "string"
},
"numberLock": {
"type": "boolean"
},
"releaseDateLock": {
"type": "boolean"
},
"title": {
"type": "string"
},
"titleLock": {
"type": "boolean"
},
"tags": {
"uniqueItems": true,
"type": "array",
"items": {
"type": "string"
}
},
"number": {
"type": "string"
},
"summaryLock": {
"type": "boolean"
},
"isbnLock": {
"type": "boolean"
},
"numberSort": {
"format": "float",
"type": "number"
},
"authorsLock": {
"type": "boolean"
},
"authors": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AuthorUpdateDto"
}
}
}
},
"PasswordUpdateDto": {
"type": "object",
"required": [
"password"
],
"properties": {
"password": {
"type": "string"
}
}
},
"CollectionUpdateDto": {
"type": "object",
"properties": {
"ordered": {
"type": "boolean"
},
"name": {
"type": "string"
},
"seriesIds": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"CollectionCreationDto": {
"type": "object",
"required": [
"name",
"ordered",
"seriesIds"
],
"properties": {
"ordered": {
"type": "boolean"
},
"name": {
"type": "string"
},
"seriesIds": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"ValidationErrorResponse": {
"type": "object",
"required": [
"violations"
],
"properties": {
"violations": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Violation"
}
}
}
},
"ReadProgressUpdateDto": {
"description": "page can be omitted if completed is set to true. completed can be omitted, and will be set accordingly depending on the page passed and the total number of pages in the book.",
"type": "object",
"properties": {
"page": {
"format": "int32",
"type": "integer"
},
"completed": {
"type": "boolean"
}
}
},
"PageReadListDto": {
"type": "object",
"properties": {
"number": {
"format": "int32",
"type": "integer"
},
"numberOfElements": {
"format": "int32",
"type": "integer"
},
"last": {
"type": "boolean"
},
"size": {
"format": "int32",
"type": "integer"
},
"totalPages": {
"format": "int32",
"type": "integer"
},
"pageable": {
"$ref": "#/components/schemas/Pageable"
},
"sort": {
"$ref": "#/components/schemas/Sort"
},
"first": {
"type": "boolean"
},
"content": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReadListDto"
}
},
"totalElements": {
"format": "int64",
"type": "integer"
},
"empty": {
"type": "boolean"
}
}
},
"SeriesDto": {
"type": "object",
"required": [
"booksCount",
"booksInProgressCount",
"booksMetadata",
"booksReadCount",
"booksUnreadCount",
"created",
"fileLastModified",
"id",
"lastModified",
"libraryId",
"metadata",
"name",
"url"
],
"properties": {
"metadata": {
"$ref": "#/components/schemas/SeriesMetadataDto"
},
"created": {
"format": "date-time",
"type": "string"
},
"libraryId": {
"type": "string"
},
"booksMetadata": {
"$ref": "#/components/schemas/BookMetadataAggregationDto"
},
"booksCount": {
"format": "int32",
"type": "integer"
},
"url": {
"type": "string"
},
"booksInProgressCount": {
"format": "int32",
"type": "integer"
},
"fileLastModified": {
"format": "date-time",
"type": "string"
},
"booksReadCount": {
"format": "int32",
"type": "integer"
},
"name": {
"type": "string"
},
"id": {
"type": "string"
},
"lastModified": {
"format": "date-time",
"type": "string"
},
"booksUnreadCount": {
"format": "int32",
"type": "integer"
}
}
},
"SharedLibrariesUpdateDto": {
"type": "object",
"required": [
"all",
"libraryIds"
],
"properties": {
"all": {
"type": "boolean"
},
"libraryIds": {
"uniqueItems": true,
"type": "array",
"items": {
"type": "string"
}
}
}
},
"PageBookDto": {
"type": "object",
"properties": {
"number": {
"format": "int32",
"type": "integer"
},
"numberOfElements": {
"format": "int32",
"type": "integer"
},
"last": {
"type": "boolean"
},
"size": {
"format": "int32",
"type": "integer"
},
"totalPages": {
"format": "int32",
"type": "integer"
},
"pageable": {
"$ref": "#/components/schemas/Pageable"
},
"sort": {
"$ref": "#/components/schemas/Sort"
},
"first": {
"type": "boolean"
},
"content": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BookDto"
}
},
"totalElements": {
"format": "int64",
"type": "integer"
},
"empty": {
"type": "boolean"
}
}
},
"TachiyomiReadProgressDto": {
"type": "object",
"required": [
"booksCount",
"booksInProgressCount",
"booksReadCount",
"booksUnreadCount",
"lastReadContinuousIndex"
],
"properties": {
"lastReadContinuousIndex": {
"format": "int32",
"type": "integer"
},
"booksReadCount": {
"format": "int32",
"type": "integer"
},
"booksCount": {
"format": "int32",
"type": "integer"
},
"booksUnreadCount": {
"format": "int32",
"type": "integer"
},
"booksInProgressCount": {
"format": "int32",
"type": "integer"
}
}
},
"PageCollectionDto": {
"type": "object",
"properties": {
"number": {
"format": "int32",
"type": "integer"
},
"numberOfElements": {
"format": "int32",
"type": "integer"
},
"last": {
"type": "boolean"
},
"size": {
"format": "int32",
"type": "integer"
},
"totalPages": {
"format": "int32",
"type": "integer"
},
"pageable": {
"$ref": "#/components/schemas/Pageable"
},
"sort": {
"$ref": "#/components/schemas/Sort"
},
"first": {
"type": "boolean"
},
"content": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CollectionDto"
}
},
"totalElements": {
"format": "int64",
"type": "integer"
},
"empty": {
"type": "boolean"
}
}
},
"OpdsLink": {
"type": "object",
"required": [
"href",
"rel",
"type"
],
"properties": {
"rel": {
"type": "string"
},
"href": {
"type": "string"
},
"type": {
"type": "string"
}
}
},
"PageAuthenticationActivityDto": {
"type": "object",
"properties": {
"number": {
"format": "int32",
"type": "integer"
},
"numberOfElements": {
"format": "int32",
"type": "integer"
},
"last": {
"type": "boolean"
},
"size": {
"format": "int32",
"type": "integer"
},
"totalPages": {
"format": "int32",
"type": "integer"
},
"pageable": {
"$ref": "#/components/schemas/Pageable"
},
"sort": {
"$ref": "#/components/schemas/Sort"
},
"first": {
"type": "boolean"
},
"content": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AuthenticationActivityDto"
}
},
"totalElements": {
"format": "int64",
"type": "integer"
},
"empty": {
"type": "boolean"
}
}
},
"ReadListRequestBookDto": {
"type": "object",
"required": [
"number",
"series"
],
"properties": {
"number": {
"type": "string"
},
"series": {
"type": "string"
}
}
},
"ReadListRequestResultBookDto": {
"type": "object",
"required": [
"book",
"errorCode"
],
"properties": {
"book": {
"$ref": "#/components/schemas/ReadListRequestBookDto"
},
"errorCode": {
"type": "string"
}
}
},
"PageAuthorDto": {
"type": "object",
"properties": {
"number": {
"format": "int32",
"type": "integer"
},
"numberOfElements": {
"format": "int32",
"type": "integer"
},
"last": {
"type": "boolean"
},
"size": {
"format": "int32",
"type": "integer"
},
"totalPages": {
"format": "int32",
"type": "integer"
},
"pageable": {
"$ref": "#/components/schemas/Pageable"
},
"sort": {
"$ref": "#/components/schemas/Sort"
},
"first": {
"type": "boolean"
},
"content": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AuthorDto"
}
},
"totalElements": {
"format": "int64",
"type": "integer"
},
"empty": {
"type": "boolean"
}
}
},
"PageSeriesDto": {
"type": "object",
"properties": {
"number": {
"format": "int32",
"type": "integer"
},
"numberOfElements": {
"format": "int32",
"type": "integer"
},
"last": {
"type": "boolean"
},
"size": {
"format": "int32",
"type": "integer"
},
"totalPages": {
"format": "int32",
"type": "integer"
},
"pageable": {
"$ref": "#/components/schemas/Pageable"
},
"sort": {
"$ref": "#/components/schemas/Sort"
},
"first": {
"type": "boolean"
},
"content": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SeriesDto"
}
},
"totalElements": {
"format": "int64",
"type": "integer"
},
"empty": {
"type": "boolean"
}
}
},
"BookImportBatchDto": {
"type": "object",
"required": [
"books",
"copyMode"
],
"properties": {
"books": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BookImportDto"
}
},
"copyMode": {
"type": "string",
"enum": [
"MOVE",
"COPY",
"HARDLINK"
]
}
}
},
"OpdsEntry": {
"type": "object",
"required": [
"content",
"id",
"title",
"updated"
],
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"updated": {
"format": "date-time",
"type": "string"
},
"content": {
"type": "string"
}
}
},
"SharedLibraryDto": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string"
}
}
},
"PathDto": {
"type": "object",
"required": [
"name",
"path",
"type"
],
"properties": {
"path": {
"type": "string"
},
"name": {
"type": "string"
},
"type": {
"type": "string"
}
}
},
"AuthorDto": {
"type": "object",
"required": [
"name",
"role"
],
"properties": {
"role": {
"type": "string"
},
"name": {
"type": "string"
}
}
},
"ReadListRequestResultDto": {
"type": "object",
"required": [
"errorCode",
"requestName",
"unmatchedBooks"
],
"properties": {
"requestName": {
"type": "string"
},
"readList": {
"$ref": "#/components/schemas/ReadListDto"
},
"unmatchedBooks": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReadListRequestResultBookDto"
}
},
"errorCode": {
"type": "string"
}
}
},
"MediaDto": {
"type": "object",
"required": [
"comment",
"mediaType",
"pagesCount",
"status"
],
"properties": {
"pagesCount": {
"format": "int32",
"type": "integer"
},
"mediaType": {
"type": "string"
},
"comment": {
"type": "string"
},
"status": {
"type": "string"
}
}
},
"DirectoryRequestDto": {
"type": "object",
"required": [
"path"
],
"properties": {
"path": {
"type": "string"
}
}
},
"AuthorUpdateDto": {
"type": "object",
"required": [
"name",
"role"
],
"properties": {
"role": {
"type": "string"
},
"name": {
"type": "string"
}
}
},
"LibraryUpdateDto": {
"type": "object",
"required": [
"convertToCbz",
"importBarcodeIsbn",
"importComicInfoBook",
"importComicInfoCollection",
"importComicInfoReadList",
"importComicInfoSeries",
"importEpubBook",
"importEpubSeries",
"importLocalArtwork",
"name",
"repairExtensions",
"root",
"scanDeep",
"scanForceModifiedTime"
],
"properties": {
"repairExtensions": {
"type": "boolean"
},
"importComicInfoReadList": {
"type": "boolean"
},
"scanDeep": {
"type": "boolean"
},
"scanForceModifiedTime": {
"type": "boolean"
},
"importEpubSeries": {
"type": "boolean"
},
"importComicInfoSeries": {
"type": "boolean"
},
"importComicInfoBook": {
"type": "boolean"
},
"convertToCbz": {
"type": "boolean"
},
"importEpubBook": {
"type": "boolean"
},
"root": {
"type": "string"
},
"name": {
"type": "string"
},
"importComicInfoCollection": {
"type": "boolean"
},
"importBarcodeIsbn": {
"type": "boolean"
},
"importLocalArtwork": {
"type": "boolean"
}
}
},
"LibraryDto": {
"type": "object",
"required": [
"convertToCbz",
"id",
"importBarcodeIsbn",
"importComicInfoBook",
"importComicInfoCollection",
"importComicInfoReadList",
"importComicInfoSeries",
"importEpubBook",
"importEpubSeries",
"importLocalArtwork",
"name",
"repairExtensions",
"root",
"scanDeep",
"scanForceModifiedTime"
],
"properties": {
"repairExtensions": {
"type": "boolean"
},
"importComicInfoReadList": {
"type": "boolean"
},
"scanDeep": {
"type": "boolean"
},
"scanForceModifiedTime": {
"type": "boolean"
},
"importEpubSeries": {
"type": "boolean"
},
"importComicInfoSeries": {
"type": "boolean"
},
"importComicInfoBook": {
"type": "boolean"
},
"convertToCbz": {
"type": "boolean"
},
"importEpubBook": {
"type": "boolean"
},
"root": {
"type": "string"
},
"name": {
"type": "string"
},
"id": {
"type": "string"
},
"importComicInfoCollection": {
"type": "boolean"
},
"importBarcodeIsbn": {
"type": "boolean"
},
"importLocalArtwork": {
"type": "boolean"
}
}
},
"BookImportDto": {
"type": "object",
"required": [
"seriesId",
"sourceFile"
],
"properties": {
"destinationName": {
"type": "string"
},
"upgradeBookId": {
"type": "string"
},
"sourceFile": {
"type": "string"
},
"seriesId": {
"type": "string"
}
}
},
"OpdsFeed": {
"type": "object",
"required": [
"author",
"entries",
"id",
"links",
"title",
"updated"
],
"properties": {
"entries": {
"type": "array",
"items": {
"$ref": "#/components/schemas/OpdsEntry"
}
},
"author": {
"$ref": "#/components/schemas/OpdsAuthor"
},
"links": {
"type": "array",
"items": {
"$ref": "#/components/schemas/OpdsLink"
}
},
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"updated": {
"format": "date-time",
"type": "string"
}
}
},
"PageDto": {
"type": "object",
"required": [
"fileName",
"mediaType",
"number"
],
"properties": {
"number": {
"format": "int32",
"type": "integer"
},
"fileName": {
"type": "string"
},
"width": {
"format": "int32",
"type": "integer"
},
"mediaType": {
"type": "string"
},
"height": {
"format": "int32",
"type": "integer"
}
}
},
"ReadListDto": {
"type": "object",
"required": [
"bookIds",
"createdDate",
"filtered",
"id",
"lastModifiedDate",
"name"
],
"properties": {
"createdDate": {
"format": "date-time",
"type": "string"
},
"filtered": {
"type": "boolean"
},
"bookIds": {
"type": "array",
"items": {
"type": "string"
}
},
"lastModifiedDate": {
"format": "date-time",
"type": "string"
},
"name": {
"type": "string"
},
"id": {
"type": "string"
}
}
},
"CollectionDto": {
"type": "object",
"required": [
"createdDate",
"filtered",
"id",
"lastModifiedDate",
"name",
"ordered",
"seriesIds"
],
"properties": {
"ordered": {
"type": "boolean"
},
"createdDate": {
"format": "date-time",
"type": "string"
},
"filtered": {
"type": "boolean"
},
"lastModifiedDate": {
"format": "date-time",
"type": "string"
},
"name": {
"type": "string"
},
"id": {
"type": "string"
},
"seriesIds": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"UserCreationDto": {
"type": "object",
"required": [
"email",
"password",
"roles"
],
"properties": {
"password": {
"type": "string"
},
"roles": {
"type": "array",
"items": {
"type": "string"
}
},
"email": {
"type": "string"
}
}
},
"SeriesMetadataDto": {
"type": "object",
"required": [
"ageRatingLock",
"created",
"genres",
"genresLock",
"language",
"languageLock",
"lastModified",
"publisher",
"publisherLock",
"readingDirection",
"readingDirectionLock",
"status",
"statusLock",
"summary",
"summaryLock",
"tags",
"tagsLock",
"title",
"titleLock",
"titleSort",
"titleSortLock"
],
"properties": {
"summary": {
"type": "string"
},
"titleSort": {
"type": "string"
},
"tagsLock": {
"type": "boolean"
},
"created": {
"format": "date-time",
"type": "string"
},
"language": {
"type": "string"
},
"ageRating": {
"format": "int32",
"type": "integer"
},
"title": {
"type": "string"
},
"titleLock": {
"type": "boolean"
},
"readingDirection": {
"type": "string"
},
"ageRatingLock": {
"type": "boolean"
},
"languageLock": {
"type": "boolean"
},
"tags": {
"uniqueItems": true,
"type": "array",
"items": {
"type": "string"
}
},
"summaryLock": {
"type": "boolean"
},
"readingDirectionLock": {
"type": "boolean"
},
"genres": {
"uniqueItems": true,
"type": "array",
"items": {
"type": "string"
}
},
"publisherLock": {
"type": "boolean"
},
"statusLock": {
"type": "boolean"
},
"publisher": {
"type": "string"
},
"lastModified": {
"format": "date-time",
"type": "string"
},
"titleSortLock": {
"type": "boolean"
},
"genresLock": {
"type": "boolean"
},
"status": {
"type": "string"
}
}
},
"ReadProgressDto": {
"type": "object",
"required": [
"completed",
"created",
"lastModified",
"page"
],
"properties": {
"created": {
"format": "date-time",
"type": "string"
},
"page": {
"format": "int32",
"type": "integer"
},
"completed": {
"type": "boolean"
},
"lastModified": {
"format": "date-time",
"type": "string"
}
}
},
"ReadListCreationDto": {
"type": "object",
"required": [
"bookIds",
"name"
],
"properties": {
"bookIds": {
"type": "array",
"items": {
"type": "string"
}
},
"name": {
"type": "string"
}
}
},
"LibraryCreationDto": {
"type": "object",
"required": [
"convertToCbz",
"importBarcodeIsbn",
"importComicInfoBook",
"importComicInfoCollection",
"importComicInfoReadList",
"importComicInfoSeries",
"importEpubBook",
"importEpubSeries",
"importLocalArtwork",
"name",
"repairExtensions",
"root",
"scanDeep",
"scanForceModifiedTime"
],
"properties": {
"repairExtensions": {
"type": "boolean"
},
"importComicInfoReadList": {
"type": "boolean"
},
"scanDeep": {
"type": "boolean"
},
"scanForceModifiedTime": {
"type": "boolean"
},
"importEpubSeries": {
"type": "boolean"
},
"importComicInfoSeries": {
"type": "boolean"
},
"importComicInfoBook": {
"type": "boolean"
},
"convertToCbz": {
"type": "boolean"
},
"importEpubBook": {
"type": "boolean"
},
"root": {
"type": "string"
},
"name": {
"type": "string"
},
"importComicInfoCollection": {
"type": "boolean"
},
"importBarcodeIsbn": {
"type": "boolean"
},
"importLocalArtwork": {
"type": "boolean"
}
}
},
"OpdsAuthor": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
},
"uri": {
"format": "uri",
"type": "string"
}
}
},
"SeriesMetadataUpdateDto": {
"description": "Metadata fields to update. Set a field to null to unset the metadata. You can omit fields you don\u0027t want to update.",
"type": "object",
"properties": {
"summary": {
"type": "string"
},
"titleSort": {
"type": "string"
},
"tagsLock": {
"type": "boolean"
},
"language": {
"type": "string"
},
"ageRating": {
"format": "int32",
"type": "integer"
},
"title": {
"type": "string"
},
"titleLock": {
"type": "boolean"
},
"ageRatingLock": {
"type": "boolean"
},
"languageLock": {
"type": "boolean"
},
"readingDirection": {
"type": "string",
"enum": [
"LEFT_TO_RIGHT",
"RIGHT_TO_LEFT",
"VERTICAL",
"WEBTOON"
]
},
"tags": {
"uniqueItems": true,
"type": "array",
"items": {
"type": "string"
}
},
"summaryLock": {
"type": "boolean"
},
"readingDirectionLock": {
"type": "boolean"
},
"genres": {
"uniqueItems": true,
"type": "array",
"items": {
"type": "string"
}
},
"publisherLock": {
"type": "boolean"
},
"statusLock": {
"type": "boolean"
},
"publisher": {
"type": "string"
},
"titleSortLock": {
"type": "boolean"
},
"genresLock": {
"type": "boolean"
},
"status": {
"type": "string",
"enum": [
"ENDED",
"ONGOING",
"ABANDONED",
"HIATUS"
]
}
}
},
"AuthenticationActivityDto": {
"type": "object",
"required": [
"dateTime",
"success"
],
"properties": {
"dateTime": {
"format": "date-time",
"type": "string"
},
"success": {
"type": "boolean"
},
"ip": {
"type": "string"
},
"userAgent": {
"type": "string"
},
"error": {
"type": "string"
},
"userId": {
"type": "string"
},
"email": {
"type": "string"
}
}
},
"ClaimStatus": {
"type": "object",
"required": [
"isClaimed"
],
"properties": {
"isClaimed": {
"type": "boolean"
}
}
},
"ScanRequestDto": {
"type": "object",
"required": [
"path"
],
"properties": {
"path": {
"type": "string"
}
}
},
"BookMetadataAggregationDto": {
"type": "object",
"required": [
"authors",
"created",
"lastModified",
"summary",
"summaryNumber"
],
"properties": {
"summary": {
"type": "string"
},
"releaseDate": {
"format": "date",
"type": "string"
},
"created": {
"format": "date-time",
"type": "string"
},
"summaryNumber": {
"type": "string"
},
"lastModified": {
"format": "date-time",
"type": "string"
},
"authors": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AuthorDto"
}
}
}
},
"RolesUpdateDto": {
"type": "object",
"required": [
"roles"
],
"properties": {
"roles": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
},
"securitySchemes": {
"basicAuth": {
"scheme": "basic",
"type": "http"
}
}
},
"servers": [
{
"description": "Generated server url",
"url": "http://localhost:8080"
}
],
"openapi": "3.0.1",
"paths": {
"/opds/v1.2/series/latest": {
"get": {
"operationId": "getLatestSeries",
"responses": {
"200": {
"description": "OK",
"content": {
"application/xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
},
"application/atom+xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
},
"text/xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"tags": [
"opds-controller"
]
}
},
"/opds/v1.2/search": {
"get": {
"operationId": "getSearch",
"responses": {
"200": {
"description": "OK",
"content": {
"application/xml": {
"schema": {
"$ref": "#/components/schemas/OpenSearchDescription"
}
},
"application/atom+xml": {
"schema": {
"$ref": "#/components/schemas/OpenSearchDescription"
}
},
"text/xml": {
"schema": {
"$ref": "#/components/schemas/OpenSearchDescription"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"tags": [
"opds-controller"
]
}
},
"/api/v1/books/{bookId}/next": {
"get": {
"operationId": "getBookSiblingNext_1",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BookDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "bookId",
"required": true
}
],
"tags": [
"book-controller"
]
}
},
"/api/v1/libraries": {
"post": {
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/LibraryCreationDto"
}
}
},
"required": true
},
"operationId": "addOne_2",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/LibraryDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"tags": [
"library-controller"
]
},
"get": {
"operationId": "getAll_2",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LibraryDto"
}
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"tags": [
"library-controller"
]
}
},
"/opds/v1.2/collections": {
"get": {
"operationId": "getCollections",
"responses": {
"200": {
"description": "OK",
"content": {
"application/xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
},
"application/atom+xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
},
"text/xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"tags": [
"opds-controller"
]
}
},
"/api/v1/users/me": {
"get": {
"operationId": "getMe",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UserDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"tags": [
"user-controller"
]
}
},
"/api/v1/transient-books/{id}/pages/{pageNumber}": {
"get": {
"operationId": "getSourcePage",
"responses": {
"200": {
"description": "OK",
"content": {
"*/*": {
"schema": {
"type": "array",
"items": {
"format": "byte",
"type": "string"
}
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
},
{
"schema": {
"format": "int32",
"type": "integer"
},
"in": "path",
"name": "pageNumber",
"required": true
}
],
"tags": [
"transient-books-controller"
]
}
},
"/api/v1/users/{id}/authentication-activity/latest": {
"get": {
"operationId": "getLatestAuthenticationActivityForUser",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AuthenticationActivityDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
}
],
"tags": [
"user-controller"
]
}
},
"/api/v1/books/latest": {
"get": {
"description": "Return newly added or updated books.",
"operationId": "getLatestBooks_1",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PageBookDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "boolean"
},
"in": "query",
"name": "unpaged",
"required": false
},
{
"schema": {
"type": "integer"
},
"in": "query",
"name": "page",
"description": "Zero-based page index (0..N)"
},
{
"schema": {
"type": "integer"
},
"in": "query",
"name": "size",
"description": "The size of the page to be returned"
}
],
"tags": [
"book-controller"
]
}
},
"/api/v1/books/{bookId}/thumbnail": {
"get": {
"operationId": "getBookThumbnail",
"responses": {
"default": {
"description": "default response",
"content": {
"image/jpeg": {
"schema": {
"format": "binary",
"type": "string"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "bookId",
"required": true
}
],
"tags": [
"book-controller"
]
}
},
"/api/v1/books/{bookId}/file": {
"get": {
"description": "Download the book file.",
"operationId": "getBookFile",
"responses": {
"200": {
"description": "OK",
"content": {
"application/octet-stream": {
"schema": {
"$ref": "#/components/schemas/StreamingResponseBody"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "bookId",
"required": true
}
],
"tags": [
"book-controller"
]
}
},
"/api/v1/users/authentication-activity": {
"get": {
"operationId": "getAuthenticationActivity",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PageAuthenticationActivityDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "boolean"
},
"in": "query",
"name": "unpaged",
"required": false
},
{
"schema": {
"default": 0,
"type": "integer"
},
"in": "query",
"name": "page",
"description": "Zero-based page index (0..N)"
},
{
"schema": {
"default": 20,
"type": "integer"
},
"in": "query",
"name": "size",
"description": "The size of the page to be returned"
},
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "sort",
"description": "Sorting criteria in the format: property(,asc|desc). Default sort order is ascending. Multiple sort criteria are supported."
}
],
"tags": [
"user-controller"
]
}
},
"/opds/v1.2/readlists": {
"get": {
"operationId": "getReadLists",
"responses": {
"200": {
"description": "OK",
"content": {
"application/xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
},
"application/atom+xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
},
"text/xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"tags": [
"opds-controller"
]
}
},
"/api/v1/series/{seriesId}/thumbnail": {
"get": {
"operationId": "getSeriesThumbnail",
"responses": {
"default": {
"description": "default response",
"content": {
"image/jpeg": {
"schema": {
"format": "binary",
"type": "string"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "seriesId",
"required": true
}
],
"tags": [
"series-controller"
]
}
},
"/api/v1/languages": {
"get": {
"operationId": "getLanguages",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"uniqueItems": true,
"type": "array",
"items": {
"type": "string"
}
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "query",
"name": "library_id",
"required": false
},
{
"schema": {
"type": "string"
},
"in": "query",
"name": "collection_id",
"required": false
}
],
"tags": [
"referential-controller"
]
}
},
"/api/v1/libraries/{libraryId}": {
"get": {
"operationId": "getOne_1",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/LibraryDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "libraryId",
"required": true
}
],
"tags": [
"library-controller"
]
},
"delete": {
"operationId": "deleteOne_1",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"204": {
"description": "No Content"
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "libraryId",
"required": true
}
],
"tags": [
"library-controller"
]
},
"put": {
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/LibraryUpdateDto"
}
}
},
"required": true
},
"operationId": "updateOne",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"204": {
"description": "No Content"
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "libraryId",
"required": true
}
],
"tags": [
"library-controller"
]
}
},
"/api/v1/series/latest": {
"get": {
"description": "Return recently added or updated series.",
"operationId": "getLatestSeries_1",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PageSeriesDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "library_id",
"required": false
},
{
"schema": {
"type": "boolean"
},
"in": "query",
"name": "unpaged",
"required": false
},
{
"schema": {
"type": "integer"
},
"in": "query",
"name": "page",
"description": "Zero-based page index (0..N)"
},
{
"schema": {
"type": "integer"
},
"in": "query",
"name": "size",
"description": "The size of the page to be returned"
}
],
"tags": [
"series-controller"
]
}
},
"/api/v1/users/me/authentication-activity": {
"get": {
"operationId": "getMyAuthenticationActivity",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PageAuthenticationActivityDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "boolean"
},
"in": "query",
"name": "unpaged",
"required": false
},
{
"schema": {
"default": 0,
"type": "integer"
},
"in": "query",
"name": "page",
"description": "Zero-based page index (0..N)"
},
{
"schema": {
"default": 20,
"type": "integer"
},
"in": "query",
"name": "size",
"description": "The size of the page to be returned"
},
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "sort",
"description": "Sorting criteria in the format: property(,asc|desc). Default sort order is ascending. Multiple sort criteria are supported."
}
],
"tags": [
"user-controller"
]
}
},
"/opds/v1.2/books/{bookId}/file/*": {
"get": {
"description": "Download the book file.",
"operationId": "getBookFile_2",
"responses": {
"200": {
"description": "OK",
"content": {
"application/octet-stream": {
"schema": {
"$ref": "#/components/schemas/StreamingResponseBody"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "bookId",
"required": true
}
],
"tags": [
"book-controller"
]
}
},
"/api/v1/tags/book": {
"get": {
"operationId": "getBookTags",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"uniqueItems": true,
"type": "array",
"items": {
"type": "string"
}
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "query",
"name": "series_id",
"required": false
}
],
"tags": [
"referential-controller"
]
}
},
"/opds/v1.2/books/latest": {
"get": {
"operationId": "getLatestBooks",
"responses": {
"200": {
"description": "OK",
"content": {
"application/xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
},
"application/atom+xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
},
"text/xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"default": "",
"type": "string"
},
"in": "header",
"name": "User-Agent",
"required": false
}
],
"tags": [
"opds-controller"
]
}
},
"/api/v1/series/new": {
"get": {
"description": "Return newly added series.",
"operationId": "getNewSeries",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PageSeriesDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "library_id",
"required": false
},
{
"schema": {
"type": "boolean"
},
"in": "query",
"name": "unpaged",
"required": false
},
{
"schema": {
"type": "integer"
},
"in": "query",
"name": "page",
"description": "Zero-based page index (0..N)"
},
{
"schema": {
"type": "integer"
},
"in": "query",
"name": "size",
"description": "The size of the page to be returned"
}
],
"tags": [
"series-controller"
]
}
},
"/api/v1/books/{bookId}/analyze": {
"post": {
"operationId": "analyze_3",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"202": {
"description": "Accepted"
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "bookId",
"required": true
}
],
"tags": [
"book-controller"
]
}
},
"/api/v1/books/import": {
"post": {
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BookImportBatchDto"
}
}
},
"required": true
},
"operationId": "importBooks",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"202": {
"description": "Accepted"
}
},
"tags": [
"book-controller"
]
}
},
"/api/v1/books/{bookId}/file/*": {
"get": {
"description": "Download the book file.",
"operationId": "getBookFile_1",
"responses": {
"200": {
"description": "OK",
"content": {
"application/octet-stream": {
"schema": {
"$ref": "#/components/schemas/StreamingResponseBody"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "bookId",
"required": true
}
],
"tags": [
"book-controller"
]
}
},
"/api/v1/collections/{id}/series": {
"get": {
"operationId": "getSeriesForCollection",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PageSeriesDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
},
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "library_id",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string",
"enum": [
"ENDED",
"ONGOING",
"ABANDONED",
"HIATUS"
]
}
},
"in": "query",
"name": "status",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string",
"enum": [
"UNREAD",
"READ",
"IN_PROGRESS"
]
}
},
"in": "query",
"name": "read_status",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "publisher",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "language",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "genre",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "tag",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "age_rating",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "release_year",
"required": false
},
{
"schema": {
"type": "boolean"
},
"in": "query",
"name": "unpaged",
"required": false
},
{
"schema": {
"type": "integer"
},
"in": "query",
"name": "page",
"description": "Zero-based page index (0..N)"
},
{
"schema": {
"type": "integer"
},
"in": "query",
"name": "size",
"description": "The size of the page to be returned"
},
{
"in": "query",
"name": "author",
"description": "Author criteria in the format: name,role. Multiple author criteria are supported.",
"content": {
"*/*": {
"schema": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
],
"tags": [
"series-collection-controller"
]
}
},
"/api/v1/series/{seriesId}/analyze": {
"post": {
"operationId": "analyze_1",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"202": {
"description": "Accepted"
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "seriesId",
"required": true
}
],
"tags": [
"series-controller"
]
}
},
"/opds/v1.2/libraries/{id}": {
"get": {
"operationId": "getOneLibrary",
"responses": {
"200": {
"description": "OK",
"content": {
"application/xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
},
"application/atom+xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
},
"text/xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
}
],
"tags": [
"opds-controller"
]
}
},
"/api/v1/readlists/{id}/read-progress/tachiyomi": {
"get": {
"operationId": "getReadProgress",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TachiyomiReadProgressDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
}
],
"tags": [
"read-list-controller"
]
},
"put": {
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TachiyomiReadProgressUpdateDto"
}
}
},
"required": true
},
"operationId": "markReadProgressTachiyomi_1",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"204": {
"description": "No Content"
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
}
],
"tags": [
"read-list-controller"
]
}
},
"/api/v1/books/{bookId}/read-progress": {
"patch": {
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ReadProgressUpdateDto"
}
}
},
"required": true
},
"operationId": "markReadProgress",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"204": {
"description": "No Content"
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "bookId",
"required": true
}
],
"tags": [
"book-controller"
]
},
"delete": {
"operationId": "deleteReadProgress",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"204": {
"description": "No Content"
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "bookId",
"required": true
}
],
"tags": [
"book-controller"
]
}
},
"/api/v1/users": {
"post": {
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UserCreationDto"
}
}
},
"required": true
},
"operationId": "addOne",
"responses": {
"201": {
"description": "Created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UserDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"tags": [
"user-controller"
]
},
"get": {
"operationId": "getAll",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/UserWithSharedLibrariesDto"
}
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"tags": [
"user-controller"
]
}
},
"/api/v1/series/{seriesId}/file": {
"get": {
"operationId": "getSeriesFile",
"responses": {
"200": {
"description": "OK",
"content": {
"application/octet-stream": {
"schema": {
"$ref": "#/components/schemas/StreamingResponseBody"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "seriesId",
"required": true
}
],
"tags": [
"series-controller"
]
}
},
"/api/v1/genres": {
"get": {
"operationId": "getGenres",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"uniqueItems": true,
"type": "array",
"items": {
"type": "string"
}
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "query",
"name": "library_id",
"required": false
},
{
"schema": {
"type": "string"
},
"in": "query",
"name": "collection_id",
"required": false
}
],
"tags": [
"referential-controller"
]
}
},
"/api/v1/series/{seriesId}/read-progress": {
"post": {
"operationId": "markAsRead",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"204": {
"description": "No Content"
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "seriesId",
"required": true
}
],
"tags": [
"series-controller"
]
},
"delete": {
"operationId": "markAsUnread",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"204": {
"description": "No Content"
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "seriesId",
"required": true
}
],
"tags": [
"series-controller"
]
}
},
"/opds/v1.2/series/{id}": {
"get": {
"operationId": "getOneSeries",
"responses": {
"200": {
"description": "OK",
"content": {
"application/xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
},
"application/atom+xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
},
"text/xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"default": "",
"type": "string"
},
"in": "header",
"name": "User-Agent",
"required": false
},
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
}
],
"tags": [
"opds-controller"
]
}
},
"/api/v1/readlists/{id}/books/{bookId}/previous": {
"get": {
"operationId": "getBookSiblingPrevious",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BookDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
},
{
"schema": {
"type": "string"
},
"in": "path",
"name": "bookId",
"required": true
}
],
"tags": [
"read-list-controller"
]
}
},
"/api/v1/series/{seriesId}/collections": {
"get": {
"operationId": "getAllCollectionsBySeries",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CollectionDto"
}
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "seriesId",
"required": true
}
],
"tags": [
"series-controller"
]
}
},
"/api/v1/authors/names": {
"get": {
"operationId": "getAuthorsNames",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"default": "",
"type": "string"
},
"in": "query",
"name": "search",
"required": false
}
],
"tags": [
"referential-controller"
]
}
},
"/api/v1/series/{seriesId}/metadata/refresh": {
"post": {
"operationId": "refreshMetadata",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"202": {
"description": "Accepted"
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "seriesId",
"required": true
}
],
"tags": [
"series-controller"
]
}
},
"/api/v1/series/{seriesId}/books": {
"get": {
"operationId": "getAllBooksBySeries",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PageBookDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "seriesId",
"required": true
},
{
"schema": {
"type": "array",
"items": {
"type": "string",
"enum": [
"UNKNOWN",
"ERROR",
"READY",
"UNSUPPORTED",
"OUTDATED"
]
}
},
"in": "query",
"name": "media_status",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string",
"enum": [
"UNREAD",
"READ",
"IN_PROGRESS"
]
}
},
"in": "query",
"name": "read_status",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "tag",
"required": false
},
{
"schema": {
"type": "boolean"
},
"in": "query",
"name": "unpaged",
"required": false
},
{
"schema": {
"type": "integer"
},
"in": "query",
"name": "page",
"description": "Zero-based page index (0..N)"
},
{
"schema": {
"type": "integer"
},
"in": "query",
"name": "size",
"description": "The size of the page to be returned"
},
{
"in": "query",
"name": "sort",
"description": "Sorting criteria in the format: property(,asc|desc). Default sort order is ascending. Multiple sort criteria are supported.",
"content": {
"*/*": {
"schema": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
},
{
"in": "query",
"name": "author",
"description": "Author criteria in the format: name,role. Multiple author criteria are supported.",
"content": {
"*/*": {
"schema": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
],
"tags": [
"series-controller"
]
}
},
"/api/v2/authors": {
"get": {
"operationId": "getAuthors",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PageAuthorDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"default": "",
"type": "string"
},
"in": "query",
"name": "search",
"required": false
},
{
"schema": {
"type": "string"
},
"in": "query",
"name": "role",
"required": false
},
{
"schema": {
"type": "string"
},
"in": "query",
"name": "library_id",
"required": false
},
{
"schema": {
"type": "string"
},
"in": "query",
"name": "collection_id",
"required": false
},
{
"schema": {
"type": "string"
},
"in": "query",
"name": "series_id",
"required": false
},
{
"schema": {
"type": "boolean"
},
"in": "query",
"name": "unpaged",
"required": false
},
{
"schema": {
"type": "integer"
},
"in": "query",
"name": "page",
"description": "Zero-based page index (0..N)"
},
{
"schema": {
"type": "integer"
},
"in": "query",
"name": "size",
"description": "The size of the page to be returned"
}
],
"tags": [
"referential-controller"
]
}
},
"/opds/v1.2/books/{bookId}/pages/{pageNumber}": {
"get": {
"operationId": "getBookPage_1",
"responses": {
"default": {
"description": "default response",
"content": {
"image/*": {
"schema": {
"format": "binary",
"type": "string"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "bookId",
"required": true
},
{
"schema": {
"format": "int32",
"type": "integer"
},
"in": "path",
"name": "pageNumber",
"required": true
},
{
"schema": {
"type": "string",
"enum": [
"jpeg",
"png"
]
},
"in": "query",
"name": "convert",
"description": "Convert the image to the provided format.",
"required": false
},
{
"schema": {
"default": false,
"type": "boolean"
},
"in": "query",
"name": "zero_based",
"description": "If set to true, pages will start at index 0. If set to false, pages will start at index 1.",
"required": false
}
],
"tags": [
"book-controller"
]
}
},
"/api/v1/collections/{id}": {
"patch": {
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CollectionUpdateDto"
}
}
},
"required": true
},
"operationId": "updateOne_2",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"204": {
"description": "No Content"
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
}
],
"tags": [
"series-collection-controller"
]
},
"get": {
"operationId": "getOne_2",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CollectionDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
}
],
"tags": [
"series-collection-controller"
]
},
"delete": {
"operationId": "deleteOne_2",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"204": {
"description": "No Content"
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
}
],
"tags": [
"series-collection-controller"
]
}
},
"/opds/v1.2/readlists/{id}": {
"get": {
"operationId": "getOneReadList",
"responses": {
"200": {
"description": "OK",
"content": {
"application/xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
},
"application/atom+xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
},
"text/xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
}
],
"tags": [
"opds-controller"
]
}
},
"/api/v1/libraries/{libraryId}/scan": {
"post": {
"operationId": "scan",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"202": {
"description": "Accepted"
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "libraryId",
"required": true
}
],
"tags": [
"library-controller"
]
}
},
"/api/v1/books/{bookId}/previous": {
"get": {
"operationId": "getBookSiblingPrevious_1",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BookDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "bookId",
"required": true
}
],
"tags": [
"book-controller"
]
}
},
"/api/v1/books/{bookId}/readlists": {
"get": {
"operationId": "getAllReadListsByBook",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReadListDto"
}
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "bookId",
"required": true
}
],
"tags": [
"book-controller"
]
}
},
"/opds/v1.2/series": {
"get": {
"operationId": "getAllSeries",
"responses": {
"200": {
"description": "OK",
"content": {
"application/xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
},
"application/atom+xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
},
"text/xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "query",
"name": "search",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "publisher",
"required": false
}
],
"tags": [
"opds-controller"
]
}
},
"/api/v1/readlists/{id}/thumbnail": {
"get": {
"operationId": "getReadListThumbnail",
"responses": {
"default": {
"description": "default response",
"content": {
"image/jpeg": {
"schema": {
"format": "binary",
"type": "string"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
}
],
"tags": [
"read-list-controller"
]
}
},
"/api/v1/libraries/{libraryId}/metadata/refresh": {
"post": {
"operationId": "refreshMetadata_1",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"202": {
"description": "Accepted"
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "libraryId",
"required": true
}
],
"tags": [
"library-controller"
]
}
},
"/opds/v1.2/publishers": {
"get": {
"operationId": "getPublishers",
"responses": {
"200": {
"description": "OK",
"content": {
"application/xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
},
"application/atom+xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
},
"text/xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"tags": [
"opds-controller"
]
}
},
"/api/v1/tags/series": {
"get": {
"operationId": "getSeriesTags",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"uniqueItems": true,
"type": "array",
"items": {
"type": "string"
}
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "query",
"name": "library_id",
"required": false
},
{
"schema": {
"type": "string"
},
"in": "query",
"name": "collection_id",
"required": false
}
],
"tags": [
"referential-controller"
]
}
},
"/api/v1/age-ratings": {
"get": {
"operationId": "getAgeRatings",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"uniqueItems": true,
"type": "array",
"items": {
"type": "string"
}
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "query",
"name": "library_id",
"required": false
},
{
"schema": {
"type": "string"
},
"in": "query",
"name": "collection_id",
"required": false
}
],
"tags": [
"referential-controller"
]
}
},
"/api/v1/books/{bookId}/pages/{pageNumber}": {
"get": {
"operationId": "getBookPage",
"responses": {
"default": {
"description": "default response",
"content": {
"image/*": {
"schema": {
"format": "binary",
"type": "string"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "bookId",
"required": true
},
{
"schema": {
"format": "int32",
"type": "integer"
},
"in": "path",
"name": "pageNumber",
"required": true
},
{
"schema": {
"type": "string",
"enum": [
"jpeg",
"png"
]
},
"in": "query",
"name": "convert",
"description": "Convert the image to the provided format.",
"required": false
},
{
"schema": {
"default": false,
"type": "boolean"
},
"in": "query",
"name": "zero_based",
"description": "If set to true, pages will start at index 0. If set to false, pages will start at index 1.",
"required": false
}
],
"tags": [
"book-controller"
]
}
},
"/api/v1/series/release-dates": {
"get": {
"operationId": "getSeriesReleaseDates",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"uniqueItems": true,
"type": "array",
"items": {
"type": "string"
}
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "query",
"name": "library_id",
"required": false
},
{
"schema": {
"type": "string"
},
"in": "query",
"name": "collection_id",
"required": false
}
],
"tags": [
"referential-controller"
]
}
},
"/api/v1/series": {
"get": {
"operationId": "getAllSeries_1",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PageSeriesDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "query",
"name": "search",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "library_id",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "collection_id",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string",
"enum": [
"ENDED",
"ONGOING",
"ABANDONED",
"HIATUS"
]
}
},
"in": "query",
"name": "status",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string",
"enum": [
"UNREAD",
"READ",
"IN_PROGRESS"
]
}
},
"in": "query",
"name": "read_status",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "publisher",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "language",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "genre",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "tag",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "age_rating",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "release_year",
"required": false
},
{
"schema": {
"type": "boolean"
},
"in": "query",
"name": "unpaged",
"required": false
},
{
"schema": {
"type": "integer"
},
"in": "query",
"name": "page",
"description": "Zero-based page index (0..N)"
},
{
"schema": {
"type": "integer"
},
"in": "query",
"name": "size",
"description": "The size of the page to be returned"
},
{
"in": "query",
"name": "sort",
"description": "Sorting criteria in the format: property(,asc|desc). Default sort order is ascending. Multiple sort criteria are supported.",
"content": {
"*/*": {
"schema": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
},
{
"in": "query",
"name": "author",
"description": "Author criteria in the format: name,role. Multiple author criteria are supported.",
"content": {
"*/*": {
"schema": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
],
"tags": [
"series-controller"
]
}
},
"/api/v1/users/{id}": {
"patch": {
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RolesUpdateDto"
}
}
},
"required": true
},
"operationId": "updateUserRoles",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"204": {
"description": "No Content"
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
}
],
"tags": [
"user-controller"
]
},
"delete": {
"operationId": "delete",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"204": {
"description": "No Content"
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
}
],
"tags": [
"user-controller"
]
}
},
"/opds/v1.2/collections/{id}": {
"get": {
"operationId": "getOneCollection",
"responses": {
"200": {
"description": "OK",
"content": {
"application/xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
},
"application/atom+xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
},
"text/xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
}
],
"tags": [
"opds-controller"
]
}
},
"/api/v1/series/{seriesId}": {
"get": {
"operationId": "getOneSeries_1",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SeriesDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "seriesId",
"required": true
}
],
"tags": [
"series-controller"
]
}
},
"/api/v1/books/{bookId}/metadata/refresh": {
"post": {
"operationId": "refreshMetadata_2",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"202": {
"description": "Accepted"
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "bookId",
"required": true
}
],
"tags": [
"book-controller"
]
}
},
"/api/v1/readlists": {
"post": {
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ReadListCreationDto"
}
}
},
"required": true
},
"operationId": "addOne_1",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ReadListDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"tags": [
"read-list-controller"
]
},
"get": {
"operationId": "getAll_1",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PageReadListDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "query",
"name": "search",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "library_id",
"required": false
},
{
"schema": {
"type": "boolean"
},
"in": "query",
"name": "unpaged",
"required": false
},
{
"schema": {
"type": "integer"
},
"in": "query",
"name": "page",
"description": "Zero-based page index (0..N)"
},
{
"schema": {
"type": "integer"
},
"in": "query",
"name": "size",
"description": "The size of the page to be returned"
}
],
"tags": [
"read-list-controller"
]
}
},
"/api/v1/books": {
"get": {
"operationId": "getAllBooks",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PageBookDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "query",
"name": "search",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "library_id",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string",
"enum": [
"UNKNOWN",
"ERROR",
"READY",
"UNSUPPORTED",
"OUTDATED"
]
}
},
"in": "query",
"name": "media_status",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string",
"enum": [
"UNREAD",
"READ",
"IN_PROGRESS"
]
}
},
"in": "query",
"name": "read_status",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "tag",
"required": false
},
{
"schema": {
"type": "boolean"
},
"in": "query",
"name": "unpaged",
"required": false
},
{
"schema": {
"type": "integer"
},
"in": "query",
"name": "page",
"description": "Zero-based page index (0..N)"
},
{
"schema": {
"type": "integer"
},
"in": "query",
"name": "size",
"description": "The size of the page to be returned"
},
{
"in": "query",
"name": "sort",
"description": "Sorting criteria in the format: property(,asc|desc). Default sort order is ascending. Multiple sort criteria are supported.",
"content": {
"*/*": {
"schema": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
],
"tags": [
"book-controller"
]
}
},
"/opds/v1.2/libraries": {
"get": {
"operationId": "getLibraries",
"responses": {
"200": {
"description": "OK",
"content": {
"application/xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
},
"application/atom+xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
},
"text/xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"tags": [
"opds-controller"
]
}
},
"/api/v1/authors/roles": {
"get": {
"operationId": "getAuthorsRoles",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"tags": [
"referential-controller"
]
}
},
"/api/v1/users/me/password": {
"patch": {
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PasswordUpdateDto"
}
}
},
"required": true
},
"operationId": "updateMyPassword",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"204": {
"description": "No Content"
}
},
"tags": [
"user-controller"
]
}
},
"/api/v1/libraries/{libraryId}/analyze": {
"post": {
"operationId": "analyze_2",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"202": {
"description": "Accepted"
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "libraryId",
"required": true
}
],
"tags": [
"library-controller"
]
}
},
"/api/v1/readlists/{id}/books/{bookId}/next": {
"get": {
"operationId": "getBookSiblingNext",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BookDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
},
{
"schema": {
"type": "string"
},
"in": "path",
"name": "bookId",
"required": true
}
],
"tags": [
"read-list-controller"
]
}
},
"/api/v1/series/{seriesId}/metadata": {
"patch": {
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SeriesMetadataUpdateDto"
}
}
},
"required": true
},
"operationId": "updateMetadata",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"204": {
"description": "No Content"
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "seriesId",
"required": true
}
],
"tags": [
"series-controller"
]
}
},
"/api/v1/transient-books/{id}/analyze": {
"post": {
"operationId": "analyze",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TransientBookDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
}
],
"tags": [
"transient-books-controller"
]
}
},
"/opds/v1.2/catalog": {
"get": {
"operationId": "getCatalog",
"responses": {
"200": {
"description": "OK",
"content": {
"application/xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
},
"application/atom+xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
},
"text/xml": {
"schema": {
"$ref": "#/components/schemas/OpdsFeed"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"tags": [
"opds-controller"
]
}
},
"/api/v1/collections": {
"post": {
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CollectionCreationDto"
}
}
},
"required": true
},
"operationId": "addOne_3",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CollectionDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"tags": [
"series-collection-controller"
]
},
"get": {
"operationId": "getAll_3",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PageCollectionDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "query",
"name": "search",
"required": false
},
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "library_id",
"required": false
},
{
"schema": {
"type": "boolean"
},
"in": "query",
"name": "unpaged",
"required": false
},
{
"schema": {
"type": "integer"
},
"in": "query",
"name": "page",
"description": "Zero-based page index (0..N)"
},
{
"schema": {
"type": "integer"
},
"in": "query",
"name": "size",
"description": "The size of the page to be returned"
}
],
"tags": [
"series-collection-controller"
]
}
},
"/api/v1/readlists/{id}": {
"patch": {
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ReadListUpdateDto"
}
}
},
"required": true
},
"operationId": "updateOne_1",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"204": {
"description": "No Content"
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
}
],
"tags": [
"read-list-controller"
]
},
"get": {
"operationId": "getOne",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ReadListDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
}
],
"tags": [
"read-list-controller"
]
},
"delete": {
"operationId": "deleteOne",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"204": {
"description": "No Content"
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
}
],
"tags": [
"read-list-controller"
]
}
},
"/api/v1/filesystem": {
"post": {
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DirectoryRequestDto"
}
}
}
},
"operationId": "getDirectoryListing",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DirectoryListingDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"tags": [
"file-system-controller"
]
}
},
"/api/v1/users/{id}/password": {
"patch": {
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PasswordUpdateDto"
}
}
},
"required": true
},
"operationId": "updatePassword",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"204": {
"description": "No Content"
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
}
],
"tags": [
"user-controller"
]
}
},
"/api/v1/users/{id}/shared-libraries": {
"patch": {
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SharedLibrariesUpdateDto"
}
}
},
"required": true
},
"operationId": "updateSharesLibraries",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"204": {
"description": "No Content"
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
}
],
"tags": [
"user-controller"
]
}
},
"/api/v1/tags": {
"get": {
"operationId": "getTags",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"uniqueItems": true,
"type": "array",
"items": {
"type": "string"
}
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "query",
"name": "library_id",
"required": false
},
{
"schema": {
"type": "string"
},
"in": "query",
"name": "series_id",
"required": false
},
{
"schema": {
"type": "string"
},
"in": "query",
"name": "collection_id",
"required": false
}
],
"tags": [
"referential-controller"
]
}
},
"/api/v1/collections/{id}/thumbnail": {
"get": {
"operationId": "getCollectionThumbnail",
"responses": {
"default": {
"description": "default response",
"content": {
"image/jpeg": {
"schema": {
"format": "binary",
"type": "string"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
}
],
"tags": [
"series-collection-controller"
]
}
},
"/opds/v1.2/books/{bookId}/thumbnail": {
"get": {
"operationId": "getBookThumbnail_1",
"responses": {
"default": {
"description": "default response",
"content": {
"image/jpeg": {
"schema": {
"format": "binary",
"type": "string"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "bookId",
"required": true
}
],
"tags": [
"book-controller"
]
}
},
"/api/v1/transient-books": {
"post": {
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ScanRequestDto"
}
}
},
"required": true
},
"operationId": "scanForTransientBooks",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/TransientBookDto"
}
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"tags": [
"transient-books-controller"
]
}
},
"/api/v1/books/{bookId}/pages": {
"get": {
"operationId": "getBookPages",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PageDto"
}
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "bookId",
"required": true
}
],
"tags": [
"book-controller"
]
}
},
"/api/v1/readlists/{id}/books": {
"get": {
"operationId": "getBooksForReadList",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PageBookDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
},
{
"schema": {
"type": "boolean"
},
"in": "query",
"name": "unpaged",
"required": false
},
{
"schema": {
"type": "integer"
},
"in": "query",
"name": "page",
"description": "Zero-based page index (0..N)"
},
{
"schema": {
"type": "integer"
},
"in": "query",
"name": "size",
"description": "The size of the page to be returned"
}
],
"tags": [
"read-list-controller"
]
}
},
"/api/v1/authors": {
"get": {
"operationId": "getAuthorsV1",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AuthorDto"
}
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"default": "",
"type": "string"
},
"in": "query",
"name": "search",
"required": false
},
{
"schema": {
"type": "string"
},
"in": "query",
"name": "library_id",
"required": false
},
{
"schema": {
"type": "string"
},
"in": "query",
"name": "collection_id",
"required": false
},
{
"schema": {
"type": "string"
},
"in": "query",
"name": "series_id",
"required": false
}
],
"tags": [
"referential-controller"
]
}
},
"/api/v1/publishers": {
"get": {
"operationId": "getPublishers_1",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"uniqueItems": true,
"type": "array",
"items": {
"type": "string"
}
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "query",
"name": "library_id",
"required": false
},
{
"schema": {
"type": "string"
},
"in": "query",
"name": "collection_id",
"required": false
}
],
"tags": [
"referential-controller"
]
}
},
"/api/v1/books/{bookId}/pages/{pageNumber}/thumbnail": {
"get": {
"operationId": "getBookPageThumbnail",
"responses": {
"default": {
"description": "default response",
"content": {
"image/jpeg": {
"schema": {
"format": "binary",
"type": "string"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "bookId",
"required": true
},
{
"schema": {
"format": "int32",
"type": "integer"
},
"in": "path",
"name": "pageNumber",
"required": true
}
],
"tags": [
"book-controller"
]
}
},
"/api/v1/series/{seriesId}/read-progress/tachiyomi": {
"get": {
"operationId": "getReadProgressTachiyomi",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TachiyomiReadProgressDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "seriesId",
"required": true
}
],
"tags": [
"series-controller"
]
},
"put": {
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TachiyomiReadProgressUpdateDto"
}
}
},
"required": true
},
"operationId": "markReadProgressTachiyomi",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"204": {
"description": "No Content"
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "seriesId",
"required": true
}
],
"tags": [
"series-controller"
]
}
},
"/api/v1/books/{bookId}/metadata": {
"patch": {
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BookMetadataUpdateDto"
}
}
},
"required": true
},
"operationId": "updateMetadata_1",
"responses": {
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
},
"204": {
"description": "No Content"
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "bookId",
"required": true
}
],
"tags": [
"book-controller"
]
}
},
"/api/v1/books/{bookId}": {
"get": {
"operationId": "getOneBook",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BookDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "bookId",
"required": true
}
],
"tags": [
"book-controller"
]
}
},
"/api/v1/books/ondeck": {
"get": {
"description": "Return first unread book of series with at least one book read and no books in progress.",
"operationId": "getBooksOnDeck",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PageBookDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "library_id",
"required": false
},
{
"schema": {
"type": "integer"
},
"in": "query",
"name": "page",
"description": "Zero-based page index (0..N)"
},
{
"schema": {
"type": "integer"
},
"in": "query",
"name": "size",
"description": "The size of the page to be returned"
}
],
"tags": [
"book-controller"
]
}
},
"/api/v1/readlists/import": {
"post": {
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"format": "binary",
"type": "string"
}
}
}
}
}
}
},
"operationId": "importFromComicRackList",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReadListRequestResultDto"
}
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"tags": [
"read-list-controller"
]
}
},
"/api/v1/claim": {
"post": {
"operationId": "claimAdmin",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UserDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "string"
},
"in": "header",
"name": "X-Komga-Email",
"required": true
},
{
"schema": {
"type": "string"
},
"in": "header",
"name": "X-Komga-Password",
"required": true
}
],
"tags": [
"claim-controller"
]
},
"get": {
"operationId": "getClaimStatus",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ClaimStatus"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"tags": [
"claim-controller"
]
}
},
"/api/v1/series/updated": {
"get": {
"description": "Return recently updated series, but not newly added ones.",
"operationId": "getUpdatedSeries",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PageSeriesDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorResponse"
}
}
}
}
},
"parameters": [
{
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"in": "query",
"name": "library_id",
"required": false
},
{
"schema": {
"type": "boolean"
},
"in": "query",
"name": "unpaged",
"required": false
},
{
"schema": {
"type": "integer"
},
"in": "query",
"name": "page",
"description": "Zero-based page index (0..N)"
},
{
"schema": {
"type": "integer"
},
"in": "query",
"name": "size",
"description": "The size of the page to be returned"
}
],
"tags": [
"series-controller"
]
}
}
},
"externalDocs": {
"description": "Komga documentation",
"url": "https://komga.org"
},
"info": {
"license": {
"name": "MIT",
"url": "https://github.com/gotson/komga/blob/master/LICENSE"
},
"description": "Komga offers 2 APIs: REST and OPDS.\n\nBoth APIs are secured using HTTP Basic Authentication.",
"title": "Komga API",
"version": "v1.0"
}
}