Update OpenAPI documentation

This commit is contained in:
GitHub Action 2025-04-29 16:55:19 +00:00
parent 5a540ba7ea
commit 3a0d33ca13

View File

@ -1,8 +1,8 @@
{
"openapi": "3.0.4",
"info": {
"title": "Kavita (v0.8.6.4)",
"description": "Kavita provides a set of APIs that are authenticated by JWT. JWT token can be copied from local storage. Assume all fields of a payload are required. Built against v0.8.6.4",
"title": "Kavita (v0.8.6.5)",
"description": "Kavita provides a set of APIs that are authenticated by JWT. JWT token can be copied from local storage. Assume all fields of a payload are required. Built against v0.8.6.5",
"license": {
"name": "GPL-3.0",
"url": "https://github.com/Kareadita/Kavita/blob/develop/LICENSE"
@ -1256,6 +1256,47 @@
}
}
},
"/api/Chapter/chapter-detail-plus": {
"get": {
"tags": [
"Chapter"
],
"summary": "Returns Ratings and Reviews for an individual Chapter",
"parameters": [
{
"name": "chapterId",
"in": "query",
"description": "",
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ChapterDetailPlusDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ChapterDetailPlusDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ChapterDetailPlusDto"
}
}
}
}
}
}
},
"/api/Collection": {
"get": {
"tags": [
@ -5896,15 +5937,124 @@
}
}
},
"/api/Rating/overall": {
"/api/Rating/series": {
"post": {
"tags": [
"Rating"
],
"summary": "Update the users' rating of the given series",
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateRatingDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/UpdateRatingDto"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/UpdateRatingDto"
}
}
}
},
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/Rating/chapter": {
"post": {
"tags": [
"Rating"
],
"summary": "Update the users' rating of the given chapter",
"requestBody": {
"description": "chapterId must be set",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateRatingDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/UpdateRatingDto"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/UpdateRatingDto"
}
}
}
},
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/Rating/overall-series": {
"get": {
"tags": [
"Rating"
],
"summary": "Overall rating from all Kavita users for a given Series",
"parameters": [
{
"name": "seriesId",
"in": "query",
"description": "",
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/RatingDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/RatingDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/RatingDto"
}
}
}
}
}
}
},
"/api/Rating/overall-chapter": {
"get": {
"tags": [
"Rating"
],
"summary": "Overall rating from all Kavita users for a given Chapter",
"parameters": [
{
"name": "chapterId",
"in": "query",
"description": "",
"schema": {
"type": "integer",
"format": "int32"
@ -8724,12 +8874,12 @@
}
}
},
"/api/Review": {
"/api/Review/series": {
"post": {
"tags": [
"Review"
],
"summary": "Updates the review for a given series",
"summary": "Updates the user's review for a given series",
"requestBody": {
"description": "",
"content": {
@ -8795,6 +8945,77 @@
}
}
},
"/api/Review/chapter": {
"post": {
"tags": [
"Review"
],
"summary": "Update the user's review for a given chapter",
"requestBody": {
"description": "chapterId must be set",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateUserReviewDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/UpdateUserReviewDto"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/UpdateUserReviewDto"
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/UserReviewDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/UserReviewDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/UserReviewDto"
}
}
}
}
}
},
"delete": {
"tags": [
"Review"
],
"summary": "Deletes the user's review for the given chapter",
"parameters": [
{
"name": "chapterId",
"in": "query",
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/Scrobbling/anilist-token": {
"get": {
"tags": [
@ -9926,39 +10147,6 @@
"deprecated": true
}
},
"/api/Series/update-rating": {
"post": {
"tags": [
"Series"
],
"summary": "Update the user rating for the given series",
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateSeriesRatingDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/UpdateSeriesRatingDto"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/UpdateSeriesRatingDto"
}
}
}
},
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/Series/update": {
"post": {
"tags": [
@ -15079,6 +15267,13 @@
},
"nullable": true
},
"chapterRatings": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AppUserChapterRating"
},
"nullable": true
},
"userPreferences": {
"$ref": "#/components/schemas/AppUserPreferences"
},
@ -15290,6 +15485,52 @@
"additionalProperties": false,
"description": "Represents a saved page in a Chapter entity for a given user."
},
"AppUserChapterRating": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"rating": {
"type": "number",
"description": "A number between 0-5.0 that represents how good a series is.",
"format": "float"
},
"hasBeenRated": {
"type": "boolean",
"description": "If the rating has been explicitly set. Otherwise, the 0.0 rating should be ignored as it's not rated"
},
"review": {
"type": "string",
"description": "A short summary the user can write when giving their review.",
"nullable": true
},
"seriesId": {
"type": "integer",
"description": "An optional tagline for the review",
"format": "int32"
},
"series": {
"$ref": "#/components/schemas/Series"
},
"chapterId": {
"type": "integer",
"format": "int32"
},
"chapter": {
"$ref": "#/components/schemas/Chapter"
},
"appUserId": {
"type": "integer",
"format": "int32"
},
"appUser": {
"$ref": "#/components/schemas/AppUser"
}
},
"additionalProperties": false
},
"AppUserCollection": {
"required": [
"ageRating",
@ -16709,6 +16950,11 @@
"type": "string",
"nullable": true
},
"averageExternalRating": {
"type": "number",
"description": "(Kavita+) Average rating from Kavita+ metadata",
"format": "float"
},
"ageRatingLocked": {
"type": "boolean"
},
@ -16795,6 +17041,13 @@
},
"nullable": true
},
"ratings": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AppUserChapterRating"
},
"nullable": true
},
"userProgress": {
"type": "array",
"items": {
@ -16808,6 +17061,47 @@
"volumeId": {
"type": "integer",
"format": "int32"
},
"externalReviews": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ExternalReview"
},
"nullable": true
},
"externalRatings": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ExternalRating"
},
"nullable": true
}
},
"additionalProperties": false
},
"ChapterDetailPlusDto": {
"type": "object",
"properties": {
"rating": {
"type": "number",
"format": "float"
},
"hasBeenRated": {
"type": "boolean"
},
"reviews": {
"type": "array",
"items": {
"$ref": "#/components/schemas/UserReviewDto"
},
"nullable": true
},
"ratings": {
"type": "array",
"items": {
"$ref": "#/components/schemas/RatingDto"
},
"nullable": true
}
},
"additionalProperties": false
@ -18343,6 +18637,14 @@
"description": "Misleading name but is the source of data (like a review coming from AniList)",
"format": "int32"
},
"authority": {
"enum": [
0,
1
],
"type": "integer",
"format": "int32"
},
"providerUrl": {
"type": "string",
"nullable": true
@ -18351,6 +18653,12 @@
"type": "integer",
"format": "int32"
},
"chapterId": {
"type": "integer",
"description": "This can be null when for a series-rating",
"format": "int32",
"nullable": true
},
"externalSeriesMetadatas": {
"type": "array",
"items": {
@ -18469,6 +18777,14 @@
"description": "Misleading name but is the source of data (like a review coming from AniList)",
"format": "int32"
},
"authority": {
"enum": [
0,
1
],
"type": "integer",
"format": "int32"
},
"siteUrl": {
"type": "string",
"nullable": true
@ -18496,6 +18812,11 @@
"type": "integer",
"format": "int32"
},
"chapterId": {
"type": "integer",
"format": "int32",
"nullable": true
},
"externalSeriesMetadatas": {
"type": "array",
"items": {
@ -20865,6 +21186,14 @@
"description": "Misleading name but is the source of data (like a review coming from AniList)",
"format": "int32"
},
"authority": {
"enum": [
0,
1
],
"type": "integer",
"format": "int32"
},
"providerUrl": {
"type": "string",
"nullable": true
@ -24820,6 +25149,25 @@
},
"additionalProperties": false
},
"UpdateRatingDto": {
"type": "object",
"properties": {
"seriesId": {
"type": "integer",
"format": "int32"
},
"chapterId": {
"type": "integer",
"format": "int32",
"nullable": true
},
"userRating": {
"type": "number",
"format": "float"
}
},
"additionalProperties": false
},
"UpdateReadingListByChapterDto": {
"type": "object",
"properties": {
@ -25156,20 +25504,6 @@
},
"additionalProperties": false
},
"UpdateSeriesRatingDto": {
"type": "object",
"properties": {
"seriesId": {
"type": "integer",
"format": "int32"
},
"userRating": {
"type": "number",
"format": "float"
}
},
"additionalProperties": false
},
"UpdateStreamPositionDto": {
"type": "object",
"properties": {
@ -25237,6 +25571,11 @@
"type": "integer",
"format": "int32"
},
"chapterId": {
"type": "integer",
"format": "int32",
"nullable": true
},
"body": {
"type": "string",
"nullable": true
@ -25669,6 +26008,11 @@
"description": "The series this is for",
"format": "int32"
},
"chapterId": {
"type": "integer",
"format": "int32",
"nullable": true
},
"libraryId": {
"type": "integer",
"description": "The library this series belongs in",
@ -25716,6 +26060,15 @@
"type": "integer",
"description": "If this review is External, which Provider did it come from",
"format": "int32"
},
"authority": {
"enum": [
0,
1
],
"type": "integer",
"description": "Source of the Rating",
"format": "int32"
}
},
"additionalProperties": false,