Fix formatting

This commit is contained in:
MerlinScheurer 2024-05-13 14:56:39 +02:00
parent 256ee8c768
commit 674de5fa69

View File

@ -1,170 +1,149 @@
# Additional API endpoints # Additional API endpoints
## Login ## Login
Return token and user ID for username and password: Return token and user ID for username and password:
**POST** `/api/login/` **POST** `/api/login/`
```json ```json
{ {
"username": "tubearchivist", "username": "tubearchivist",
"password": "verysecret" "password": "verysecret"
} }
``` ```
after successful login returns after successful login returns
```json ```json
{ {
"token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"user_id": 1 "user_id": 1
} }
``` ```
## Refresh ## Refresh
**GET** `/api/refresh/`
**GET** `/api/refresh/`
Parameters: Parameters:
- **type**: one of _video_, _channel_, _playlist_, optional - **type**: one of *video*, *channel*, *playlist*, optional
- **id**: item id, optional - **id**: item id, optional
without specifying type: return total for all queued items: without specifying type: return total for all queued items:
```json ```json
{ {
"total_queued": 2, "total_queued": 2,
"type": "all", "type": "all",
"state": "running" "state": "running"
} }
``` ```
specify type: return total items queue of this type: specify type: return total items queue of this type:
```json ```json
{ {
"total_queued": 2, "total_queued": 2,
"type": "video", "type": "video",
"state": "running" "state": "running"
} }
``` ```
specify type _and_ id to get state of item in queue: specify type *and* id to get state of item in queue:
```json ```json
{ {
"total_queued": 2, "total_queued": 2,
"type": "video", "type": "video",
"state": "in_queue", "state": "in_queue",
"id": "video-id" "id": "video-id"
} }
``` ```
**POST** `/api/refresh/` **POST** `/api/refresh/`
Parameter: Parameter:
- extract_videos: to refresh all videos for channels/playlists, default False - extract_videos: to refresh all videos for channels/playlists, default False
Manually start a refresh task: post list of _video_, _channel_, _playlist_ IDs: Manually start a refresh task: post list of *video*, *channel*, *playlist* IDs:
```json ```json
{ {
"video": ["video1", "video2", "video3"], "video": ["video1", "video2", "video3"],
"channel": ["channel1", "channel2", "channel3"], "channel": ["channel1", "channel2", "channel3"],
"playlist": ["playlist1", "playlist2"] "playlist": ["playlist1", "playlist2"]
} }
``` ```
## Cookie ## Cookie
Check your youtube cookie settings, *status* turns to `true` if cookie has been validated.
Check your youtube cookie settings, _status_ turns to `true` if cookie has been validated.
**GET** `/api/cookie/` **GET** `/api/cookie/`
```json ```json
{ {
"cookie_enabled": true, "cookie_enabled": true,
"status": true, "status": true,
"validated": 1680953715, "validated": 1680953715,
"validated_str": "timestamp" "validated_str": "timestamp"
} }
``` ```
**POST** `/api/cookie/` **POST** `/api/cookie/`
Send empty post request to validate cookie. Send empty post request to validate cookie.
```json ```json
{ {
"cookie_validated": true "cookie_validated": true
} }
``` ```
**PUT** `/api/cookie/` **PUT** `/api/cookie/`
Send put request containing the cookie as a string: Send put request containing the cookie as a string:
```json ```json
{ {
"cookie": "your-cookie-as-string" "cookie": "your-cookie-as-string"
} }
``` ```
Imports and validates cookie, returns on success: Imports and validates cookie, returns on success:
```json ```json
{ {
"cookie_import": "done", "cookie_import": "done",
"cookie_validated": true "cookie_validated": true
} }
``` ```
Or returns status code 400 on failure: Or returns status code 400 on failure:
```json ```json
{ {
"cookie_import": "fail", "cookie_import": "fail",
"cookie_validated": false "cookie_validated": false
} }
``` ```
## Search ## Search
**GET** `/api/search/?query=<query>`
**GET** `/api/search/?query=<query>`
Returns search results from your query. Returns search results from your query.
## Watched ## Watched
**POST** `/api/watched/`
**POST** `/api/watched/`
Change watched state, where the `id` can be a single video, or channel/playlist to change all videos belonging to that channel/playlist. Change watched state, where the `id` can be a single video, or channel/playlist to change all videos belonging to that channel/playlist.
```json ```json
{ {
"id": "xxxxxxx", "id": "xxxxxxx",
"is_watched": true "is_watched": true
} }
``` ```
## Ping ## Ping
Validate your connection and authentication with the API Validate your connection and authentication with the API
**GET** `/api/ping/` **GET** `/api/ping/`
When valid returns message with user id and TubeArchivist version: When valid returns message with user id and TubeArchivist version:
```json ```json
{ {
"response": "pong", "response": "pong",
"user": 1, "user": 1,
"version": "v0.4.7" "version": "v0.4.7"
} }
``` ```
## Notification List ## Notification List
Get all current notifications. Get all current notifications.
**GET** `/api/notification/` **GET** `/api/notification/`
Parameter: Parameter:
@ -187,3 +166,4 @@ Parameter:
``` ```
"command" can be false || "STOP" || "KILL". "command" can be false || "STOP" || "KILL".