Added some smaller fixes and the getaitem endpoint

This commit is contained in:
Vito0912 2024-07-28 18:24:12 +02:00
parent 3e944974e2
commit 7ae904ccbb
7 changed files with 49 additions and 3 deletions

View file

@ -3,6 +3,7 @@ paths:
post: post:
summary: Login to the server summary: Login to the server
description: Logs in a client to the server, returning information about the user and server. description: Logs in a client to the server, returning information about the user and server.
operationId: login
requestBody: requestBody:
required: true required: true
content: content:
@ -38,6 +39,7 @@ paths:
post: post:
summary: Logout from the server summary: Logout from the server
description: Logs out a client from the server. If the socketId parameter is provided, the server removes the socket from the client list. description: Logs out a client from the server. If the socketId parameter is provided, the server removes the socket from the client list.
operationId: logout
requestBody: requestBody:
required: true required: true
content: content:

View file

@ -167,6 +167,7 @@ paths:
parameters: parameters:
- in: query - in: query
name: include name: include
description: A comma separated list of what to include with the library item. The only current option is filterdata.
schema: schema:
type: string type: string
- $ref: '../schemas.yaml#/components/parameters/minified' - $ref: '../schemas.yaml#/components/parameters/minified'

View file

@ -0,0 +1,41 @@
paths:
/api/items/{id}:
parameters:
- name: id
in: path
description: The ID of the library item.
required: true
schema:
$ref: '../objects/LibraryItem.yaml#/components/schemas/libraryItemId'
get:
operationId: getLibraryItem
summary: Get a single library item by ID on server.
description: Get a single library item by ID on server.
tags:
- LibraryItem
parameters:
- in: query
name: include
description: A comma separated list of what to include with the library item. The options are progress, rssfeed, authors (for books), and downloads (for podcasts). expanded must be 1 for include to have an effect.
schema:
type: string
- in: query
name: expanded
description: Whether to return Library Item Expanded instead. 0 for false, 1 for true.
schema:
type: integer
example: 1
- in: query
name: episode
description: If requesting progress for a podcast, the episode ID to get progress for.
schema:
$ref: '../objects/mediaTypes/Podcast.yaml#/components/schemas/podcastId'
responses:
'200':
description: OK
content:
application/json:
schema:
oneOf:
- $ref: '../objects/LibraryItem.yaml#/components/schemas/libraryItemMinified'
- $ref: '../objects/LibraryItem.yaml#/components/schemas/libraryItemBase'

View file

@ -56,9 +56,7 @@ components:
mediaType: mediaType:
$ref: './mediaTypes/media.yaml#/components/schemas/mediaType' $ref: './mediaTypes/media.yaml#/components/schemas/mediaType'
media: media:
oneOf: $ref: './mediaTypes/Book.yaml#/components/schemas/bookMinified'
- $ref: './mediaTypes/Book.yaml#/components/schemas/bookMinified'
- $ref: './mediaTypes/Podcast.yaml#/components/schemas/Podcast'
libraryItemMinified: libraryItemMinified:
type: object type: object
description: A single item on the server, like a book or podcast. Minified media format. description: A single item on the server, like a book or podcast. Minified media format.

View file

@ -9,6 +9,8 @@ components:
type: object type: object
description: Base book schema description: Base book schema
properties: properties:
id:
description: TODO
libraryItemId: libraryItemId:
$ref: '../LibraryItem.yaml#/components/schemas/libraryItemId' $ref: '../LibraryItem.yaml#/components/schemas/libraryItemId'
coverPath: coverPath:

Binary file not shown.

View file

@ -81,6 +81,8 @@ paths:
$ref: './controllers/AuthController.yaml#/paths/~1login' $ref: './controllers/AuthController.yaml#/paths/~1login'
/logout: /logout:
$ref: './controllers/AuthController.yaml#/paths/~1logout' $ref: './controllers/AuthController.yaml#/paths/~1logout'
/api/items/{id}:
$ref: './controllers/LibraryItemController.yaml#/paths/~1api~1items~1{id}'
tags: tags:
- name: Authors - name: Authors
description: Author endpoints description: Author endpoints