pbxg33k / kavita-client
Requires
- php: >=8.5
- ext-curl: *
- ext-json: *
- ext-mbstring: *
- guzzlehttp/guzzle: ^7.3
- guzzlehttp/psr7: ^1.7 || ^2.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.5
- phpunit/phpunit: ^8.0 || ^9.0
This package is auto-updated.
Last update: 2026-05-08 11:22:37 UTC
README
Kavita provides a set of APIs authenticated via an Auth Key passed in the x-api-key header. Generate an Auth Key under User Settings → Manage Auth Keys, paste it into the Authorize panel, and all Try It requests will include it. Assume all fields of a payload are required unless marked optional. Built against v0.9.0.0
This PHP package is automatically generated by the Swagger Codegen project:
- API version: 0.9.0.0
- Build package: io.swagger.codegen.v3.generators.php.PhpClientCodegen
Requirements
PHP 5.5 and later
Installation & Usage
Composer
To install the bindings via Composer, add the following to composer.json:
{
"repositories": [
{
"type": "git",
"url": "https://github.com/pbxg33k/kavita-client.git"
}
],
"require": {
"pbxg33k/kavita-client": "*@dev"
}
}
Then run composer install
Manual Installation
Download the files and include autoload.php:
require_once('/path/to/kavita-client/vendor/autoload.php');
Tests
To run the unit tests:
composer install
./vendor/bin/phpunit
Getting Started
Please follow the installation procedure and then run the following:
<?php require_once(__DIR__ . '/vendor/autoload.php'); // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); $auth_key_id = 56; // int | try { $apiInstance->apiAccountAuthKeyDelete($auth_key_id); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountAuthKeyDelete: ', $e->getMessage(), PHP_EOL; } // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); try { $result = $apiInstance->apiAccountAuthKeysGet(); print_r($result); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountAuthKeysGet: ', $e->getMessage(), PHP_EOL; } // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); try { $apiInstance->apiAccountClearOidcLinkPost(); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountClearOidcLinkPost: ', $e->getMessage(), PHP_EOL; } // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); $body = new \Pbxg33k\KavitaClient\Model\ConfirmEmailDto(); // \Pbxg33k\KavitaClient\Model\ConfirmEmailDto | try { $result = $apiInstance->apiAccountConfirmEmailPost($body); print_r($result); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountConfirmEmailPost: ', $e->getMessage(), PHP_EOL; } // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); $body = new \Pbxg33k\KavitaClient\Model\ConfirmEmailUpdateDto(); // \Pbxg33k\KavitaClient\Model\ConfirmEmailUpdateDto | try { $apiInstance->apiAccountConfirmEmailUpdatePost($body); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountConfirmEmailUpdatePost: ', $e->getMessage(), PHP_EOL; } // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); $body = new \Pbxg33k\KavitaClient\Model\ConfirmMigrationEmailDto(); // \Pbxg33k\KavitaClient\Model\ConfirmMigrationEmailDto | try { $result = $apiInstance->apiAccountConfirmMigrationEmailPost($body); print_r($result); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountConfirmMigrationEmailPost: ', $e->getMessage(), PHP_EOL; } // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); $body = new \Pbxg33k\KavitaClient\Model\ConfirmPasswordResetDto(); // \Pbxg33k\KavitaClient\Model\ConfirmPasswordResetDto | try { $result = $apiInstance->apiAccountConfirmPasswordResetPost($body); print_r($result); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountConfirmPasswordResetPost: ', $e->getMessage(), PHP_EOL; } // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); $body = new \Pbxg33k\KavitaClient\Model\RotateAuthKeyRequestDto(); // \Pbxg33k\KavitaClient\Model\RotateAuthKeyRequestDto | try { $result = $apiInstance->apiAccountCreateAuthKeyPost($body); print_r($result); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountCreateAuthKeyPost: ', $e->getMessage(), PHP_EOL; } // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); try { $result = $apiInstance->apiAccountEmailConfirmedGet(); print_r($result); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountEmailConfirmedGet: ', $e->getMessage(), PHP_EOL; } // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); $email = "email_example"; // string | try { $result = $apiInstance->apiAccountForgotPasswordPost($email); print_r($result); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountForgotPasswordPost: ', $e->getMessage(), PHP_EOL; } // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); try { $result = $apiInstance->apiAccountGet(); print_r($result); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountGet: ', $e->getMessage(), PHP_EOL; } // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); $body = new \Pbxg33k\KavitaClient\Model\InviteUserDto(); // \Pbxg33k\KavitaClient\Model\InviteUserDto | try { $result = $apiInstance->apiAccountInvitePost($body); print_r($result); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountInvitePost: ', $e->getMessage(), PHP_EOL; } // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); $user_id = 56; // int | $with_base_url = true; // bool | Include the \"https://ip:port/\" in the generated link try { $result = $apiInstance->apiAccountInviteUrlGet($user_id, $with_base_url); print_r($result); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountInviteUrlGet: ', $e->getMessage(), PHP_EOL; } // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); try { $result = $apiInstance->apiAccountIsEmailValidGet(); print_r($result); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountIsEmailValidGet: ', $e->getMessage(), PHP_EOL; } // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); $body = new \Pbxg33k\KavitaClient\Model\LoginDto(); // \Pbxg33k\KavitaClient\Model\LoginDto | try { $result = $apiInstance->apiAccountLoginPost($body); print_r($result); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountLoginPost: ', $e->getMessage(), PHP_EOL; } // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); try { $result = $apiInstance->apiAccountOidcAuthenticatedGet(); print_r($result); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountOidcAuthenticatedGet: ', $e->getMessage(), PHP_EOL; } // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); $auth_key_name = "auth_key_name_example"; // string | try { $result = $apiInstance->apiAccountOpdsUrlGet($auth_key_name); print_r($result); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountOpdsUrlGet: ', $e->getMessage(), PHP_EOL; } // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); try { $result = $apiInstance->apiAccountRefreshAccountGet(); print_r($result); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountRefreshAccountGet: ', $e->getMessage(), PHP_EOL; } // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); $body = new \Pbxg33k\KavitaClient\Model\TokenRequestDto(); // \Pbxg33k\KavitaClient\Model\TokenRequestDto | try { $result = $apiInstance->apiAccountRefreshTokenPost($body); print_r($result); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountRefreshTokenPost: ', $e->getMessage(), PHP_EOL; } // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); $body = new \Pbxg33k\KavitaClient\Model\RegisterDto(); // \Pbxg33k\KavitaClient\Model\RegisterDto | try { $result = $apiInstance->apiAccountRegisterPost($body); print_r($result); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountRegisterPost: ', $e->getMessage(), PHP_EOL; } // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); $user_id = 56; // int | try { $result = $apiInstance->apiAccountResendConfirmationEmailPost($user_id); print_r($result); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountResendConfirmationEmailPost: ', $e->getMessage(), PHP_EOL; } // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); $body = new \Pbxg33k\KavitaClient\Model\ResetPasswordDto(); // \Pbxg33k\KavitaClient\Model\ResetPasswordDto | try { $apiInstance->apiAccountResetPasswordPost($body); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountResetPasswordPost: ', $e->getMessage(), PHP_EOL; } // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); $body = new \Pbxg33k\KavitaClient\Model\RotateAuthKeyRequestDto(); // \Pbxg33k\KavitaClient\Model\RotateAuthKeyRequestDto | $auth_key_id = 56; // int | try { $result = $apiInstance->apiAccountRotateAuthKeyPost($body, $auth_key_id); print_r($result); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountRotateAuthKeyPost: ', $e->getMessage(), PHP_EOL; } // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); $body = new \Pbxg33k\KavitaClient\Model\UpdateAgeRestrictionDto(); // \Pbxg33k\KavitaClient\Model\UpdateAgeRestrictionDto | try { $apiInstance->apiAccountUpdateAgeRestrictionPost($body); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountUpdateAgeRestrictionPost: ', $e->getMessage(), PHP_EOL; } // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); $body = new \Pbxg33k\KavitaClient\Model\UpdateEmailDto(); // \Pbxg33k\KavitaClient\Model\UpdateEmailDto | try { $result = $apiInstance->apiAccountUpdateEmailPost($body); print_r($result); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountUpdateEmailPost: ', $e->getMessage(), PHP_EOL; } // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); $body = new \Pbxg33k\KavitaClient\Model\UpdateUserDto(); // \Pbxg33k\KavitaClient\Model\UpdateUserDto | try { $apiInstance->apiAccountUpdatePost($body); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountUpdatePost: ', $e->getMessage(), PHP_EOL; } // Configure API key authorization: AuthKey $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKey('x-api-key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Pbxg33k\KavitaClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('x-api-key', 'Bearer'); $apiInstance = new Pbxg33k\KavitaClient\Api\AccountApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); $body = new \Pbxg33k\KavitaClient\Model\UpdateUsernameRequestDto(); // \Pbxg33k\KavitaClient\Model\UpdateUsernameRequestDto | try { $result = $apiInstance->apiAccountUpdateUsernamePost($body); print_r($result); } catch (Exception $e) { echo 'Exception when calling AccountApi->apiAccountUpdateUsernamePost: ', $e->getMessage(), PHP_EOL; } ?>
Documentation for API Endpoints
All URIs are relative to {protocol}://{hostpath}
| Class | Method | HTTP request | Description |
|---|---|---|---|
| AccountApi | apiAccountAuthKeyDelete | DELETE /api/Account/auth-key | Delete the Auth Key |
| AccountApi | apiAccountAuthKeysGet | GET /api/Account/auth-keys | Returns all Auth Keys with the account |
| AccountApi | apiAccountClearOidcLinkPost | POST /api/Account/clear-oidc-link | Remove the OIDC link for the authenticated user. This action will also remove the authentication cookie. The caller should take note and redirect to login if no other authentication is currently present (I.e. JWT) |
| AccountApi | apiAccountConfirmEmailPost | POST /api/Account/confirm-email | Last step in authentication flow, confirms the email token for email |
| AccountApi | apiAccountConfirmEmailUpdatePost | POST /api/Account/confirm-email-update | Final step in email update change. Given a confirmation token and the email, this will finish the email change. |
| AccountApi | apiAccountConfirmMigrationEmailPost | POST /api/Account/confirm-migration-email | |
| AccountApi | apiAccountConfirmPasswordResetPost | POST /api/Account/confirm-password-reset | |
| AccountApi | apiAccountCreateAuthKeyPost | POST /api/Account/create-auth-key | Creates a new Auth Key for a user. |
| AccountApi | apiAccountEmailConfirmedGet | GET /api/Account/email-confirmed | |
| AccountApi | apiAccountForgotPasswordPost | POST /api/Account/forgot-password | Will send user a link to update their password to their email or prompt them if not accessible |
| AccountApi | apiAccountGet | GET /api/Account | Returns the current user, as it would from login |
| AccountApi | apiAccountInvitePost | POST /api/Account/invite | Invites a user to the server. Will generate a setup link for continuing setup. If email is not setup, a link will be presented to user to continue setup. |
| AccountApi | apiAccountInviteUrlGet | GET /api/Account/invite-url | Requests the Invite Url for the AppUserId. Will return error if user is already validated. |
| AccountApi | apiAccountIsEmailValidGet | GET /api/Account/is-email-valid | Is the user's current email valid or not |
| AccountApi | apiAccountLoginPost | POST /api/Account/login | Perform a login. Will send JWT Token of the logged in user back. |
| AccountApi | apiAccountOidcAuthenticatedGet | GET /api/Account/oidc-authenticated | Returns true if OIDC authentication cookies are present and the Kavita.Server.Extensions.IdentityServiceExtensions.OpenIdConnect scheme has been registered |
| AccountApi | apiAccountOpdsUrlGet | GET /api/Account/opds-url | Returns the OPDS url for this user |
| AccountApi | apiAccountRefreshAccountGet | GET /api/Account/refresh-account | Returns an up-to-date user account |
| AccountApi | apiAccountRefreshTokenPost | POST /api/Account/refresh-token | Refreshes the user's JWT token |
| AccountApi | apiAccountRegisterPost | POST /api/Account/register | Register the first user (admin) on the server. Will not do anything if an admin is already confirmed |
| AccountApi | apiAccountResendConfirmationEmailPost | POST /api/Account/resend-confirmation-email | Resend an invite to a user already invited |
| AccountApi | apiAccountResetPasswordPost | POST /api/Account/reset-password | Update a user's password |
| AccountApi | apiAccountRotateAuthKeyPost | POST /api/Account/rotate-auth-key | Rotate the Auth Key |
| AccountApi | apiAccountUpdateAgeRestrictionPost | POST /api/Account/update/age-restriction | Change the Age Rating restriction for the user |
| AccountApi | apiAccountUpdateEmailPost | POST /api/Account/update/email | Initiates the flow to update a user's email address. If email is not setup, then the email address is not changed in this API. A confirmation link is sent/dumped which will validate the email. It must be confirmed for the email to update. |
| AccountApi | apiAccountUpdatePost | POST /api/Account/update | Update the user account. This can only affect Username, Email (will require confirming), Roles, and Library access. |
| AccountApi | apiAccountUpdateUsernamePost | POST /api/Account/update/username | Initiates the flow to update a user's username. |
| ActivityApi | apiActivityCurrentGet | GET /api/Activity/current | Returns active reading sessions on the Server |
| AdminApi | apiAdminExistsGet | GET /api/Admin/exists | Checks if an admin exists on the system. This is essentially a check to validate if the system has been set up. |
| AnnotationApi | apiAnnotationAllFilteredPost | POST /api/Annotation/all-filtered | Returns a list of annotations for browsing |
| AnnotationApi | apiAnnotationAllForSeriesGet | GET /api/Annotation/all-for-series | Returns all annotations by Series |
| AnnotationApi | apiAnnotationAllGet | GET /api/Annotation/all | Returns the annotations for the given chapter |
| AnnotationApi | apiAnnotationAnnotationIdGet | GET /api/Annotation/{annotationId} | Returns the Annotation by Id. User must have access to annotation. |
| AnnotationApi | apiAnnotationBulkDeletePost | POST /api/Annotation/bulk-delete | Removes annotations in bulk. Requires every annotation to be owned by the authenticated user |
| AnnotationApi | apiAnnotationCreatePost | POST /api/Annotation/create | Create a new Annotation for the user against a Chapter |
| AnnotationApi | apiAnnotationDelete | DELETE /api/Annotation | Delete the annotation for the user |
| AnnotationApi | apiAnnotationExportFilterPost | POST /api/Annotation/export-filter | Exports annotations for the given users |
| AnnotationApi | apiAnnotationExportPost | POST /api/Annotation/export | Exports Annotations for the User |
| AnnotationApi | apiAnnotationLikePost | POST /api/Annotation/like | Adds a like for the currently authenticated user if not already from the annotations with given ids |
| AnnotationApi | apiAnnotationUnlikePost | POST /api/Annotation/unlike | Removes likes for the currently authenticated user if present from the annotations with given ids |
| AnnotationApi | apiAnnotationUpdatePost | POST /api/Annotation/update | Update the modifiable fields (Spoiler, highlight slot, and comment) for an annotation |
| BookApi | apiBookChapterIdBookInfoGet | GET /api/Book/{chapterId}/book-info | Retrieves information for the PDF and Epub reader. This will cache the file. |
| BookApi | apiBookChapterIdBookPageGet | GET /api/Book/{chapterId}/book-page | This returns a single page within the epub book. All html will be rewritten to be scoped within our reader, all css is scoped, etc. |
| BookApi | apiBookChapterIdBookResourcesGet | GET /api/Book/{chapterId}/book-resources | This is an entry point to fetch resources from within an epub chapter/book. |
| BookApi | apiBookChapterIdChaptersGet | GET /api/Book/{chapterId}/chapters | This will return a list of mappings from ID -> page num. ID will be the xhtml key and page num will be the reading order this is used to rewrite anchors in the book text so that we always load properly in our reader. |
| CblApi | apiCblBrowseGet | GET /api/Cbl/browse | Provides the browse CBL Repo interface. Requires Download role. |
| CblApi | apiCblFileImportPost | POST /api/Cbl/file-import | Saves an uploaded CBL file to disk without importing. Returns the saved file info. |
| CblApi | apiCblFinalizeImportPost | POST /api/Cbl/finalize-import | Finalizes the import of a saved CBL file with user decisions |
| CblApi | apiCblReValidatePost | POST /api/Cbl/re-validate | Validates an already-saved CBL file on disk. Called by the import modal after remap rule changes. |
| CblApi | apiCblRemapRulesAllGet | GET /api/Cbl/remap-rules/all | Returns all rules across all users |
| CblApi | apiCblRemapRulesGet | GET /api/Cbl/remap-rules | Returns all remap rules accessible to the current user (own rules + global/admin rules). |
| CblApi | apiCblRemapRulesIdDelete | DELETE /api/Cbl/remap-rules/{id} | Deletes a remap rule. Users can only delete their own rules. |
| CblApi | apiCblRemapRulesIdDemotePost | POST /api/Cbl/remap-rules/{id}/demote | Demotes a global remap rule back to user-scoped. Admin-only. |
| CblApi | apiCblRemapRulesIdPost | POST /api/Cbl/remap-rules/{id} | Updates a remap rule with issue-level detail (volume/chapter). |
| CblApi | apiCblRemapRulesIdPromotePost | POST /api/Cbl/remap-rules/{id}/promote | Promotes a remap rule to global scope. Admin-only. |
| CblApi | apiCblRemapRulesPost | POST /api/Cbl/remap-rules | Creates a new remap rule, or updates an existing one if a rule with the same CBL matching key (normalized name + volume + number) already exists for this user. When no explicit VolumeId is provided, attempts to auto-resolve a matching volume on the target series from the CBL volume string. |
| CblApi | apiCblRepoImportPost | POST /api/Cbl/repo-import | Downloads selected CBL files from the GitHub repo and saves them to disk without importing. |
| CblApi | apiCblSyncPost | POST /api/Cbl/sync | Enqueues the Reading List to be synced on a background thread. UI will be informed from Kavita.Models.DTOs.SignalR.MessageFactory.ReadingListUpdated event |
| CblApi | apiCblUploadCblFilePost | POST /api/Cbl/upload-cbl-file | Downloads a CBL file from a URL and saves it to disk without importing. |
| ChapterApi | apiChapterChapterDetailPlusGet | GET /api/Chapter/chapter-detail-plus | Returns Ratings and Reviews for an individual Chapter |
| ChapterApi | apiChapterDelete | DELETE /api/Chapter | Removes a Chapter |
| ChapterApi | apiChapterDeleteMultiplePost | POST /api/Chapter/delete-multiple | Deletes multiple chapters and any volumes with no leftover chapters |
| ChapterApi | apiChapterGet | GET /api/Chapter | Gets a single chapter |
| ChapterApi | apiChapterUpdatePost | POST /api/Chapter/update | Update chapter metadata |
| CollectionApi | apiCollectionAllSeriesGet | GET /api/Collection/all-series | Returns all collections that contain the Series for the user with the option to allow for promoted collections (non-user owned) |
| CollectionApi | apiCollectionDelete | DELETE /api/Collection | Removes the collection tag from the user |
| CollectionApi | apiCollectionDeleteMultiplePost | POST /api/Collection/delete-multiple | Delete multiple collections in one go |
| CollectionApi | apiCollectionGet | GET /api/Collection | Returns all Collection tags for a given User |
| CollectionApi | apiCollectionImportStackPost | POST /api/Collection/import-stack | Imports a MAL Stack into Kavita |
| CollectionApi | apiCollectionMalStacksGet | GET /api/Collection/mal-stacks | For the authenticated user, if they have an active Kavita+ subscription and a MAL username on record, fetch their Mal interest stacks (including restacks) |
| CollectionApi | apiCollectionNameExistsGet | GET /api/Collection/name-exists | Checks if a collection exists with the name |
| CollectionApi | apiCollectionPromoteMultiplePost | POST /api/Collection/promote-multiple | Promote/UnPromote multiple collections in one go. Will only update the authenticated user's collections and will only work if the user has promotion role |
| CollectionApi | apiCollectionSingleGet | GET /api/Collection/single | Returns a single Collection tag by Id for a given user |
| CollectionApi | apiCollectionUpdateForSeriesPost | POST /api/Collection/update-for-series | Adds multiple series to a collection. If tag id is 0, this will create a new tag. |
| CollectionApi | apiCollectionUpdatePost | POST /api/Collection/update | Updates an existing tag with a new title, promotion status, and summary. <remarks>UI does not contain controls to update title</remarks> |
| CollectionApi | apiCollectionUpdateSeriesPost | POST /api/Collection/update-series | For a given tag, update the summary if summary has changed and remove a set of series from the tag. |
| ColorScapeApi | apiColorScapeChapterGet | GET /api/ColorScape/chapter | Returns the color scape for a chapter |
| ColorScapeApi | apiColorScapeSeriesGet | GET /api/ColorScape/series | Returns the color scape for a series |
| ColorScapeApi | apiColorScapeVolumeGet | GET /api/ColorScape/volume | Returns the color scape for a volume |
| DeviceApi | apiDeviceClientAllDevicesGet | GET /api/Device/client/all-devices | Get All user client devices |
| DeviceApi | apiDeviceClientDeviceDelete | DELETE /api/Device/client/device | Removes the client device from DB |
| DeviceApi | apiDeviceClientDevicesGet | GET /api/Device/client/devices | Get my client devices |
| DeviceApi | apiDeviceClientUpdateNamePost | POST /api/Device/client/update-name | Update the friendly name of the Device |
| DeviceApi | apiDeviceCreatePost | POST /api/Device/create | Creates a new Device |
| DeviceApi | apiDeviceDelete | DELETE /api/Device | Deletes the device from the user |
| DeviceApi | apiDeviceGet | GET /api/Device | |
| DeviceApi | apiDeviceSendSeriesToPost | POST /api/Device/send-series-to | Attempts to send a whole series to a device. |
| DeviceApi | apiDeviceSendToPost | POST /api/Device/send-to | Sends a collection of chapters to the user's device |
| DeviceApi | apiDeviceUpdatePost | POST /api/Device/update | Updates an existing Device |
| DownloadApi | apiDownloadBookmarksPost | POST /api/Download/bookmarks | Downloads all bookmarks in a zip for |
| DownloadApi | apiDownloadBulkChapterSizePost | POST /api/Download/bulk-chapter-size | For a set of chapters, return the size in bytes |
| DownloadApi | apiDownloadBulkReadinglistSizePost | POST /api/Download/bulk-readinglist-size | Returns the mapping of readinglist -> size |
| DownloadApi | apiDownloadBulkSeriesSizePost | POST /api/Download/bulk-series-size | For a set of series, return the size in bytes |
| DownloadApi | apiDownloadBulkVolumeSizePost | POST /api/Download/bulk-volume-size | For a set of volumes, return the size in bytes |
| DownloadApi | apiDownloadChapterGet | GET /api/Download/chapter | Returns the zip for a single chapter. If the chapter contains multiple files, they will be zipped. |
| DownloadApi | apiDownloadChapterSizeGet | GET /api/Download/chapter-size | For a given chapter, return the size in bytes |
| DownloadApi | apiDownloadReadinglistSizeGet | GET /api/Download/readinglist-size | Returns the filesize for all items of a reading list that the requesting user has access to |
| DownloadApi | apiDownloadSeriesGet | GET /api/Download/series | |
| DownloadApi | apiDownloadSeriesSizeGet | GET /api/Download/series-size | For a series, return the size in bytes |
| DownloadApi | apiDownloadVolumeGet | GET /api/Download/volume | Downloads all chapters within a volume. If the chapters are multiple zips, they will all be zipped up. |
| DownloadApi | apiDownloadVolumeSizeGet | GET /api/Download/volume-size | For a given volume, return the size in bytes |
| EmailApi | apiEmailAllGet | GET /api/Email/all | |
| FilterApi | apiFilterDecodePost | POST /api/Filter/decode | Decodes the Filter |
| FilterApi | apiFilterDelete | DELETE /api/Filter | Delete the smart filter for the authenticated user |
| FilterApi | apiFilterEncodeAnnotationPost | POST /api/Filter/encode/annotation | Encode an Annotation Filter |
| FilterApi | apiFilterEncodePersonPost | POST /api/Filter/encode/person | Encode a Person Filter |
| FilterApi | apiFilterEncodeReadingListPost | POST /api/Filter/encode/reading-list | Encode a Reading List filter |
| FilterApi | apiFilterEncodeSeriesPost | POST /api/Filter/encode/series | Encode a Series filter |
| FilterApi | apiFilterGet | GET /api/Filter | All Smart Filters for the authenticated user |
| FilterApi | apiFilterRenamePost | POST /api/Filter/rename | Rename a Smart Filter given the filterId and new name |
| FilterApi | apiFilterUpdateAnnotationPost | POST /api/Filter/update/annotation | Creates or Updates the Reading List filter |
| FilterApi | apiFilterUpdatePersonPost | POST /api/Filter/update/person | Creates or Updates the Person filter |
| FilterApi | apiFilterUpdateReadingListPost | POST /api/Filter/update/reading-list | Creates or Updates the Reading List filter |
| FilterApi | apiFilterUpdateSeriesPost | POST /api/Filter/update/series | Creates or Updates the Series filter |
| FontApi | apiFontAllGet | GET /api/Font/all | List out the fonts |
| FontApi | apiFontDelete | DELETE /api/Font | Removes a font from the system |
| FontApi | apiFontGet | GET /api/Font | Returns a font file |
| FontApi | apiFontInUseGet | GET /api/Font/in-use | Returns if the given font is in use by any other user. System provided fonts will always return true. |
| FontApi | apiFontUploadByUrlPost | POST /api/Font/upload-by-url | |
| FontApi | apiFontUploadPost | POST /api/Font/upload | Manual upload |
| HealthApi | apiHealthGet | GET /api/Health | No-op method that just returns Ok. Used for health checks in Docker containers. |
| ImageApi | apiImageBookmarkGet | GET /api/Image/bookmark | Returns image for a given bookmark page |
| ImageApi | apiImageChapterCoverGet | GET /api/Image/chapter-cover | Returns cover image for Chapter |
| ImageApi | apiImageCollectionCoverGet | GET /api/Image/collection-cover | Returns cover image for Collection |
| ImageApi | apiImageCoverUploadGet | GET /api/Image/cover-upload | Returns a temp coverupload image |
| ImageApi | apiImageLibraryCoverGet | GET /api/Image/library-cover | Returns cover image for Library |
| ImageApi | apiImagePersonCoverGet | GET /api/Image/person-cover | Returns cover image for Person |
| ImageApi | apiImagePublisherGet | GET /api/Image/publisher | Returns the image associated with a publisher |
| ImageApi | apiImageReadinglistCoverGet | GET /api/Image/readinglist-cover | Returns cover image for a Reading List |
| ImageApi | apiImageSeriesCoverGet | GET /api/Image/series-cover | Returns cover image for Series |
| ImageApi | apiImageUserCoverGet | GET /api/Image/user-cover | Returns cover image for User |
| ImageApi | apiImageVolumeCoverGet | GET /api/Image/volume-cover | Returns cover image for Volume |
| ImageApi | apiImageWebLinkGet | GET /api/Image/web-link | Returns the image associated with a web-link |
| KoreaderApi | apiKoreaderApiKeySyncsProgressEbookHashGet | GET /api/Koreader/{apiKey}/syncs/progress/{ebookHash} | Gets book progress from Kavita, if not found will return a 400 |
| KoreaderApi | apiKoreaderApiKeySyncsProgressPut | PUT /api/Koreader/{apiKey}/syncs/progress | Syncs book progress with Kavita. Will attempt to save the underlying reader position if possible. |
| KoreaderApi | apiKoreaderApiKeyUsersAuthGet | GET /api/Koreader/{apiKey}/users/auth | |
| LibraryApi | apiLibraryCopySettingsFromPost | POST /api/Library/copy-settings-from | Copy the library settings (adv tab + optional type) to a set of other libraries. |
| LibraryApi | apiLibraryCreatePost | POST /api/Library/create | Creates a new Library. Upon library creation, adds new library to all Admin accounts. |
| LibraryApi | apiLibraryDeleteDelete | DELETE /api/Library/delete | Deletes the library and all series within it. |
| LibraryApi | apiLibraryDeleteMultipleDelete | DELETE /api/Library/delete-multiple | Deletes multiple libraries and all series within it. |
| LibraryApi | apiLibraryGet | GET /api/Library | Return a specific library |
| LibraryApi | apiLibraryGrantAccessPost | POST /api/Library/grant-access | Grants a user account access to a Library |
| LibraryApi | apiLibraryHasFilesAtRootPost | POST /api/Library/has-files-at-root | For each root, checks if there are any supported files at root to warn the user during library creation about an invalid setup |
| LibraryApi | apiLibraryJumpBarGet | GET /api/Library/jump-bar | For a given library, generate the jump bar information |
| LibraryApi | apiLibraryLibrariesGet | GET /api/Library/libraries | Return all libraries in the Server |
| LibraryApi | apiLibraryListGet | GET /api/Library/list | Returns a list of directories for a given path. If path is empty, returns root drives. |
| LibraryApi | apiLibraryNameExistsGet | GET /api/Library/name-exists | Checks if the library name exists or not |
| LibraryApi | apiLibraryRefreshMetadataMultiplePost | POST /api/Library/refresh-metadata-multiple | |
| LibraryApi | apiLibraryRefreshMetadataPost | POST /api/Library/refresh-metadata | |
| LibraryApi | apiLibraryScanAllPost | POST /api/Library/scan-all | Scans a given library for file changes. If another scan task is in progress, will reschedule the invocation for 3 hours in future. |
| LibraryApi | apiLibraryScanFolderPost | POST /api/Library/scan-folder | Given a valid path, will invoke either a Scan Series or Scan Library. If the folder does not exist within Kavita, the request will be ignored |
| LibraryApi | apiLibraryScanMultiplePost | POST /api/Library/scan-multiple | Enqueues a bunch of library scans |
| LibraryApi | apiLibraryScanPost | POST /api/Library/scan | Scans a given library for file changes. |
| LibraryApi | apiLibraryTypeGet | GET /api/Library/type | Returns the type of the underlying library |
| LibraryApi | apiLibraryUpdatePost | POST /api/Library/update | Updates an existing Library with new name, folders, and/or type. |
| LibraryApi | apiLibraryUserLibrariesGet | GET /api/Library/user-libraries | Gets libraries for the given user that you also have access to |
| LicenseApi | apiLicenseDelete | DELETE /api/License | Remove the Kavita+ License on the Server |
| LicenseApi | apiLicenseHasLicenseGet | GET /api/License/has-license | Has any license registered with the instance. Does not validate against Kavita+ API |
| LicenseApi | apiLicenseInfoGet | GET /api/License/info | Asks Kavita+ for the latest license info |
| LicenseApi | apiLicensePost | POST /api/License | Updates server license |
| LicenseApi | apiLicenseResendLicensePost | POST /api/License/resend-license | Resend the welcome email to the user |
| LicenseApi | apiLicenseResetPost | POST /api/License/reset | Break the registration between Kavita+ and this instance |
| LicenseApi | apiLicenseValidLicenseGet | GET /api/License/valid-license | Checks if the user's license is valid or not |
| LocaleApi | apiLocaleGet | GET /api/Locale | Returns all applicable locales on the server |
| ManageApi | apiManageSeriesMetadataPost | POST /api/Manage/series-metadata | Returns a list of all Series that is Kavita+ applicable to metadata match and the status of it |
| MetadataApi | apiMetadataAgeRatingsGet | GET /api/Metadata/age-ratings | Fetches all age ratings from the instance |
| MetadataApi | apiMetadataAllLanguagesGet | GET /api/Metadata/all-languages | Returns all languages Kavita can accept |
| MetadataApi | apiMetadataGenresGet | GET /api/Metadata/genres | Fetches genres from the instance |
| MetadataApi | apiMetadataGenresWithCountsPost | POST /api/Metadata/genres-with-counts | Returns a list of Genres with counts for counts when Genre is on Series/Chapter |
| MetadataApi | apiMetadataLanguageTitleGet | GET /api/Metadata/language-title | Given a language code returns the display name |
| MetadataApi | apiMetadataLanguagesGet | GET /api/Metadata/languages | Fetches all age languages from the libraries passed (or if none passed, all in the server) |
| MetadataApi | apiMetadataPeopleByRoleGet | GET /api/Metadata/people-by-role | Fetches people from the instance by role |
| MetadataApi | apiMetadataPeopleGet | GET /api/Metadata/people | Fetches people from the instance |
| MetadataApi | apiMetadataPublicationStatusGet | GET /api/Metadata/publication-status | Fetches all publication status' from the instance |
| MetadataApi | apiMetadataReadinglistTagsGet | GET /api/Metadata/readinglist-tags | Fetches Reading List Tags from the instance |
| MetadataApi | apiMetadataSeriesDetailPlusGet | GET /api/Metadata/series-detail-plus | Fetches the details needed from Kavita+ for Series Detail page |
| MetadataApi | apiMetadataTagsGet | GET /api/Metadata/tags | Fetches all tags from the instance |
| MetadataApi | apiMetadataTagsWithCountsPost | POST /api/Metadata/tags-with-counts | Returns a list of Tags with counts for counts when Tag is on Series/Chapter |
| OidcApi | oidcLoginGet | GET /Oidc/login | |
| OidcApi | oidcLogoutGet | GET /Oidc/logout | |
| OpdsApi | apiOpdsApiKeyCollectionsCollectionIdGet | GET /api/Opds/{apiKey}/collections/{collectionId} | Get Series for a given Collection - Supports Pagination |
| OpdsApi | apiOpdsApiKeyCollectionsGet | GET /api/Opds/{apiKey}/collections | Get all Collections - Supports Pagination |
| OpdsApi | apiOpdsApiKeyFaviconGet | GET /api/Opds/{apiKey}/favicon | |
| OpdsApi | apiOpdsApiKeyGet | GET /api/Opds/{apiKey} | Returns the Catalogue for Kavita's OPDS Service |
| OpdsApi | apiOpdsApiKeyImageGet | GET /api/Opds/{apiKey}/image | This returns a streamed image following OPDS-PS v1.2 |
| OpdsApi | apiOpdsApiKeyLibrariesGet | GET /api/Opds/{apiKey}/libraries | Get the User's Libraries - No Pagination Support |
| OpdsApi | apiOpdsApiKeyLibrariesLibraryIdGet | GET /api/Opds/{apiKey}/libraries/{libraryId} | Returns Series from the Library - Supports Pagination |
| OpdsApi | apiOpdsApiKeyOnDeckGet | GET /api/Opds/{apiKey}/on-deck | Get the On Deck (Dashboard) - Supports Pagination |
| OpdsApi | apiOpdsApiKeyPost | POST /api/Opds/{apiKey} | Returns the Catalogue for Kavita's OPDS Service |
| OpdsApi | apiOpdsApiKeyReadingListGet | GET /api/Opds/{apiKey}/reading-list | Get a User's Reading Lists - Supports Pagination |
| OpdsApi | apiOpdsApiKeyReadingListReadingListIdGet | GET /api/Opds/{apiKey}/reading-list/{readingListId} | Returns individual items (chapters) from Reading List by ID - Supports Pagination |
| OpdsApi | apiOpdsApiKeyRecentlyAddedGet | GET /api/Opds/{apiKey}/recently-added | Returns Recently Added (Dashboard Feed) - Supports Pagination |
| OpdsApi | apiOpdsApiKeyRecentlyUpdatedGet | GET /api/Opds/{apiKey}/recently-updated | Get the Recently Updated Series (Dashboard) - Pagination available, total pages will not be filled due to underlying implementation |
| OpdsApi | apiOpdsApiKeySearchGet | GET /api/Opds/{apiKey}/search | |
| OpdsApi | apiOpdsApiKeySeriesGet | GET /api/Opds/{apiKey}/series | OPDS Search endpoint |
| OpdsApi | apiOpdsApiKeySeriesSeriesIdGet | GET /api/Opds/{apiKey}/series/{seriesId} | Returns the items within a Series (Series Detail) |
| OpdsApi | apiOpdsApiKeySeriesSeriesIdVolumeVolumeIdChapterChapterIdDownloadFilenameGet | GET /api/Opds/{apiKey}/series/{seriesId}/volume/{volumeId}/chapter/{chapterId}/download/{filename} | Downloads a file (user must have download permission) |
| OpdsApi | apiOpdsApiKeySeriesSeriesIdVolumeVolumeIdChapterChapterIdGet | GET /api/Opds/{apiKey}/series/{seriesId}/volume/{volumeId}/chapter/{chapterId} | Gets items for a given Chapter |
| OpdsApi | apiOpdsApiKeySeriesSeriesIdVolumeVolumeIdGet | GET /api/Opds/{apiKey}/series/{seriesId}/volume/{volumeId} | Returns items for a given Volume |
| OpdsApi | apiOpdsApiKeySmartFiltersFilterIdGet | GET /api/Opds/{apiKey}/smart-filters/{filterId} | Get the User's Smart Filter - Supports Pagination |
| OpdsApi | apiOpdsApiKeySmartFiltersGet | GET /api/Opds/{apiKey}/smart-filters | Get the User's Smart Filters (Dashboard Context) - Supports Pagination |
| OpdsApi | apiOpdsApiKeyWantToReadGet | GET /api/Opds/{apiKey}/want-to-read | Get the User's Want to Read list - Supports Pagination |
| PanelsApi | apiPanelsGetProgressGet | GET /api/Panels/get-progress | Gets the Progress of a given chapter |
| PanelsApi | apiPanelsSaveProgressPost | POST /api/Panels/save-progress | Saves the progress of a given chapter. This will generate a reading session with the estimated time from the last progress till the current |
| PersonApi | apiPersonAllPost | POST /api/Person/all | Returns a list of authors and artists for browsing |
| PersonApi | apiPersonChaptersByRoleGet | GET /api/Person/chapters-by-role | Returns all individual chapters by role. Limited to 20 results. |
| PersonApi | apiPersonFetchCoverPost | POST /api/Person/fetch-cover | Attempts to download the cover from CoversDB (Note: Not yet release in Kavita) |
| PersonApi | apiPersonGet | GET /api/Person | |
| PersonApi | apiPersonMergePost | POST /api/Person/merge | Merges Persons into one, this action is irreversible |
| PersonApi | apiPersonRolesGet | GET /api/Person/roles | Returns all roles for a Person |
| PersonApi | apiPersonSearchGet | GET /api/Person/search | Find a person by name or alias against a query string |
| PersonApi | apiPersonSeriesKnownForGet | GET /api/Person/series-known-for | Returns the top 20 series that the "person" is known for. This will use Average Rating when applicable (Kavita+ field), else it's a random sort |
| PersonApi | apiPersonUpdatePost | POST /api/Person/update | Updates the Person |
| PersonApi | apiPersonValidAliasPost | POST /api/Person/valid-alias | Ensure the alias is valid to be added. For example, the alias cannot be on another person or be the same as the current person name/alias. |
| PluginApi | apiPluginAuthenticatePost | POST /api/Plugin/authenticate | Authenticate with the Server given an auth key. This will log you in by returning the user object and the JWT token. |
| PluginApi | apiPluginAuthkeyExpiresGet | GET /api/Plugin/authkey-expires | Returns the expiration (UTC) of the authenticated Auth key (or null if none set) |
| PluginApi | apiPluginParseBulkPost | POST /api/Plugin/parse-bulk | |
| PluginApi | apiPluginParseGet | GET /api/Plugin/parse | Parse a string and return Parsed information from it. Does not support any directory fallback parsing |
| PluginApi | apiPluginVersionGet | GET /api/Plugin/version | Returns the version of the Kavita install |
| RatingApi | apiRatingChapterPost | POST /api/Rating/chapter | Update the users' rating of the given chapter |
| RatingApi | apiRatingOverallChapterGet | GET /api/Rating/overall-chapter | Overall rating from all Kavita users for a given Chapter |
| RatingApi | apiRatingOverallSeriesGet | GET /api/Rating/overall-series | Overall rating from all Kavita users for a given Series |
| RatingApi | apiRatingSeriesPost | POST /api/Rating/series | Update the users' rating of the given series |
| ReaderApi | apiReaderAllBookmarksPost | POST /api/Reader/all-bookmarks | Returns a list of all bookmarked pages for a User |
| ReaderApi | apiReaderBookmarkImageGet | GET /api/Reader/bookmark-image | Returns an image for a given bookmark series. Side effect: This will cache the bookmark images for reading. |
| ReaderApi | apiReaderBookmarkInfoGet | GET /api/Reader/bookmark-info | Returns various information about all bookmark files for a Series. Side effect: This will cache the bookmark images for reading. |
| ReaderApi | apiReaderBookmarkPost | POST /api/Reader/bookmark | Bookmarks a page against a Chapter |
| ReaderApi | apiReaderBulkRemoveBookmarksPost | POST /api/Reader/bulk-remove-bookmarks | Removes all bookmarks for all chapters linked to a Series |
| ReaderApi | apiReaderChapterBookmarksGet | GET /api/Reader/chapter-bookmarks | Returns a list of bookmarked pages for a given Chapter |
| ReaderApi | apiReaderChapterInfoGet | GET /api/Reader/chapter-info | Returns various information about a Chapter. Side effect: This will cache the chapter images for reading. |
| ReaderApi | apiReaderContinuePointGet | GET /api/Reader/continue-point | Continue point is the chapter which you should start reading again from. If there is no progress on a series, then the first chapter will be returned (non-special unless only specials). Otherwise, loop through the chapters and volumes in order to find the next chapter which has progress. |
| ReaderApi | apiReaderCreatePtocPost | POST /api/Reader/create-ptoc | Create a new personal table of content entry for a given chapter |
| ReaderApi | apiReaderFileDimensionsGet | GET /api/Reader/file-dimensions | Returns the file dimensions for all pages in a chapter. If the underlying chapter is PDF, use extractPDF to unpack as images. |
| ReaderApi | apiReaderFirstProgressDateGet | GET /api/Reader/first-progress-date | |
| ReaderApi | apiReaderGetProgressGet | GET /api/Reader/get-progress | Returns Progress (page number) for a chapter for the logged in user |
| ReaderApi | apiReaderHasProgressGet | GET /api/Reader/has-progress | Returns if the user has reading progress on the Series |
| ReaderApi | apiReaderImageGet | GET /api/Reader/image | Returns an image for a given chapter. Will perform bounding checks |
| ReaderApi | apiReaderMarkChapterReadPost | POST /api/Reader/mark-chapter-read | Mark a single chapter as read |
| ReaderApi | apiReaderMarkMultipleReadPost | POST /api/Reader/mark-multiple-read | Marks all chapters within a list of volumes as Read. All volumes must belong to the same Series. |
| ReaderApi | apiReaderMarkMultipleSeriesReadPost | POST /api/Reader/mark-multiple-series-read | Marks all chapters within a list of series as Read. |
| ReaderApi | apiReaderMarkMultipleSeriesUnreadPost | POST /api/Reader/mark-multiple-series-unread | Marks all chapters within a list of series as Unread. |
| ReaderApi | apiReaderMarkMultipleUnreadPost | POST /api/Reader/mark-multiple-unread | Marks all chapters within a list of volumes as Unread. All volumes must belong to the same Series. |
| ReaderApi | apiReaderMarkReadPost | POST /api/Reader/mark-read | Marks a Series as read. All volumes and chapters will be marked as read during this process. |
| ReaderApi | apiReaderMarkUnreadPost | POST /api/Reader/mark-unread | Marks a Series as Unread. All volumes and chapters will be marked as unread during this process. |
| ReaderApi | apiReaderMarkVolumeReadPost | POST /api/Reader/mark-volume-read | Marks all chapters within a volume as Read |
| ReaderApi | apiReaderMarkVolumeUnreadPost | POST /api/Reader/mark-volume-unread | Marks all chapters within a volume as unread |
| ReaderApi | apiReaderNextChapterGet | GET /api/Reader/next-chapter | Returns the next logical chapter from the series. |
| ReaderApi | apiReaderPdfGet | GET /api/Reader/pdf | Returns the PDF for the chapterId. |
| ReaderApi | apiReaderPrevChapterGet | GET /api/Reader/prev-chapter | Returns the previous logical chapter from the series. |
| ReaderApi | apiReaderProgressPost | POST /api/Reader/progress | Save page against Chapter for authenticated user |
| ReaderApi | apiReaderPromptRereadChapterGet | GET /api/Reader/prompt-reread/chapter | Check if we should prompt the user for rereads for the given chapter |
| ReaderApi | apiReaderPromptRereadSeriesGet | GET /api/Reader/prompt-reread/series | Check if we should prompt the user for rereads for the given series |
| ReaderApi | apiReaderPromptRereadVolumeGet | GET /api/Reader/prompt-reread/volume | Check if we should prompt the user for rereads for the given volume |
| ReaderApi | apiReaderPtocDelete | DELETE /api/Reader/ptoc | Deletes the user's personal table of content for the given chapter |
| ReaderApi | apiReaderPtocGet | GET /api/Reader/ptoc | Returns the user's personal table of contents for the given chapter |
| ReaderApi | apiReaderRemoveBookmarksPost | POST /api/Reader/remove-bookmarks | Removes all bookmarks for all chapters linked to a Series |
| ReaderApi | apiReaderSeriesBookmarksGet | GET /api/Reader/series-bookmarks | Returns all bookmarked pages for a given series |
| ReaderApi | apiReaderThumbnailGet | GET /api/Reader/thumbnail | Returns a thumbnail for the given page number |
| ReaderApi | apiReaderTimeLeftForChapterGet | GET /api/Reader/time-left-for-chapter | For the current user, returns an estimate on how long it would take to finish reading the chapter. |
| ReaderApi | apiReaderTimeLeftGet | GET /api/Reader/time-left | For the current user, returns an estimate on how long it would take to finish reading the series. |
| ReaderApi | apiReaderUnbookmarkPost | POST /api/Reader/unbookmark | Removes a bookmarked page for a Chapter |
| ReaderApi | apiReaderVolumeBookmarksGet | GET /api/Reader/volume-bookmarks | Returns all bookmarked pages for a given volume |
| ReadingListApi | apiReadingListAllPeopleGet | GET /api/ReadingList/all-people | Returns all people in given roles for a reading list |
| ReadingListApi | apiReadingListAllPost | POST /api/ReadingList/all | Returns reading lists (paginated) for a given user. |
| ReadingListApi | apiReadingListCreatePost | POST /api/ReadingList/create | Creates a new List with a unique title. Returns the new ReadingList back |
| ReadingListApi | apiReadingListDelete | DELETE /api/ReadingList | Deletes a reading list |
| ReadingListApi | apiReadingListDeleteItemPost | POST /api/ReadingList/delete-item | Deletes a list item from the list. Item orders will update as a result. |
| ReadingListApi | apiReadingListDeleteMultiplePost | POST /api/ReadingList/delete-multiple | Delete multiple reading lists in one go |
| ReadingListApi | apiReadingListExportAsCblPost | POST /api/ReadingList/export-as-cbl | Export a Reading List to CBL format |
| ReadingListApi | apiReadingListGet | GET /api/ReadingList | Fetches a single Reading List |
| ReadingListApi | apiReadingListInfoGet | GET /api/ReadingList/info | Returns random information about a Reading List |
| ReadingListApi | apiReadingListItemsGet | GET /api/ReadingList/items | Fetches all reading list items for a given list including rich metadata around series, volume, chapters, and progress |
| ReadingListApi | apiReadingListListsForChapterGet | GET /api/ReadingList/lists-for-chapter | Returns all Reading Lists the user has access to that has the given chapter within it. |
| ReadingListApi | apiReadingListListsForSeriesGet | GET /api/ReadingList/lists-for-series | Returns all Reading Lists the user has access to that the given series within it. |
| ReadingListApi | apiReadingListListsPost | POST /api/ReadingList/lists | Returns reading lists (paginated) for a given user. |
| ReadingListApi | apiReadingListNameExistsGet | GET /api/ReadingList/name-exists | Checks if a reading list exists with the name |
| ReadingListApi | apiReadingListNextChapterGet | GET /api/ReadingList/next-chapter | Returns the next chapter within the reading list |
| ReadingListApi | apiReadingListPeopleGet | GET /api/ReadingList/people | Returns a list of a given role associated with the reading list |
| ReadingListApi | apiReadingListPrevChapterGet | GET /api/ReadingList/prev-chapter | Returns the prev chapter within the reading list |
| ReadingListApi | apiReadingListPromoteMultiplePost | POST /api/ReadingList/promote-multiple | Promote/UnPromote multiple reading lists in one go. Will only update the authenticated user's reading lists and will only work if the user has promotion role |
| ReadingListApi | apiReadingListRegenerateCoverPost | POST /api/ReadingList/regenerate-cover | Regenerates the cover image for a reading list, you must own the given reading list to do this |
| ReadingListApi | apiReadingListRemoveReadPost | POST /api/ReadingList/remove-read | Removes all entries that are fully read from the reading list |
| ReadingListApi | apiReadingListUpdateByChapterPost | POST /api/ReadingList/update-by-chapter | |
| ReadingListApi | apiReadingListUpdateByMultiplePost | POST /api/ReadingList/update-by-multiple | Adds all chapters from a list of volumes and chapters to a reading list |
| ReadingListApi | apiReadingListUpdateByMultipleSeriesPost | POST /api/ReadingList/update-by-multiple-series | Adds all chapters from a list of series to a reading list |
| ReadingListApi | apiReadingListUpdateBySeriesPost | POST /api/ReadingList/update-by-series | Adds all chapters from a Series to a reading list |
| ReadingListApi | apiReadingListUpdateByVolumePost | POST /api/ReadingList/update-by-volume | |
| ReadingListApi | apiReadingListUpdatePositionPost | POST /api/ReadingList/update-position | Updates an items position |
| ReadingListApi | apiReadingListUpdatePost | POST /api/ReadingList/update | Update the properties (title, summary) of a reading list |
| ReadingProfileApi | apiReadingProfileAllGet | GET /api/reading-profile/all | Gets all non-implicit reading profiles for a user |
| ReadingProfileApi | apiReadingProfileBulkPost | POST /api/reading-profile/bulk | Assigns the reading profile to all passes series, and deletes their implicit profiles |
| ReadingProfileApi | apiReadingProfileCreatePost | POST /api/reading-profile/create | Creates a new reading profile for the current user |
| ReadingProfileApi | apiReadingProfileDelete | DELETE /api/reading-profile | Deletes the given profile, requires the profile to belong to the logged-in user |
| ReadingProfileApi | apiReadingProfileLibraryGet | GET /api/reading-profile/library | Returns all the Reading rofiles bound to the library |
| ReadingProfileApi | apiReadingProfileLibraryIdSeriesIdGet | GET /api/reading-profile/{libraryId}/{seriesId} | Returns the ReadingProfile that should be applied to the given series, walks up the tree. Series -> Library -> Default |
| ReadingProfileApi | apiReadingProfileLibraryLibraryIdDelete | DELETE /api/reading-profile/library/{libraryId} | Clears the reading profile for the given library for the currently logged-in user |
| ReadingProfileApi | apiReadingProfileLibraryLibraryIdPost | POST /api/reading-profile/library/{libraryId} | Sets the reading profile for a given library, removes the old one |
| ReadingProfileApi | apiReadingProfilePost | POST /api/reading-profile | Updates the given reading profile, must belong to the current user |
| ReadingProfileApi | apiReadingProfilePromotePost | POST /api/reading-profile/promote | Promotes the implicit profile to a user profile. Removes the series from other profiles |
| ReadingProfileApi | apiReadingProfileSeriesGet | GET /api/reading-profile/series | Returns all Reading Profiles bound to a series |
| ReadingProfileApi | apiReadingProfileSeriesPost | POST /api/reading-profile/series | Update the implicit reading profile for a series, creates one if none exists |
| ReadingProfileApi | apiReadingProfileSeriesSeriesIdDelete | DELETE /api/reading-profile/series/{seriesId} | Clears the reading profile for the given series for the currently logged-in user |
| ReadingProfileApi | apiReadingProfileSeriesSeriesIdPost | POST /api/reading-profile/series/{seriesId} | Sets the reading profile for a given series, removes the old one |
| ReadingProfileApi | apiReadingProfileSetDevicesPost | POST /api/reading-profile/set-devices | Set the assigned devices for a reading profile |
| ReadingProfileApi | apiReadingProfileUpdateParentPost | POST /api/reading-profile/update-parent | Updates the non-implicit reading profile for the given series, and removes implicit profiles |
| ReviewApi | apiReviewAllGet | GET /api/Review/all | Returns all reviews for the user. If you are authenticated as the user, will always return data, regardless of ShareReviews setting |
| ReviewApi | apiReviewChapterDelete | DELETE /api/Review/chapter | Deletes the user's review for the given chapter |
| ReviewApi | apiReviewChapterPost | POST /api/Review/chapter | Update the user's review for a given chapter |
| ReviewApi | apiReviewSeriesDelete | DELETE /api/Review/series | Deletes the user's review for the given series |
| ReviewApi | apiReviewSeriesPost | POST /api/Review/series | Updates the user's review for a given series |
| ScrobblingApi | apiScrobblingAddHoldPost | POST /api/Scrobbling/add-hold | Adds a hold against the Series for user's scrobbling |
| ScrobblingApi | apiScrobblingAnilistTokenGet | GET /api/Scrobbling/anilist-token | Get the current user's AniList token |
| ScrobblingApi | apiScrobblingBulkRemoveEventsPost | POST /api/Scrobbling/bulk-remove-events | Delete the given scrobble events if they belong to that user |
| ScrobblingApi | apiScrobblingClearErrorsPost | POST /api/Scrobbling/clear-errors | Clears the scrobbling errors table |
| ScrobblingApi | apiScrobblingGenerateScrobbleEventsPost | POST /api/Scrobbling/generate-scrobble-events | When a user request to generate scrobble events from history. Should only be ran once per user. |
| ScrobblingApi | apiScrobblingHasHoldGet | GET /api/Scrobbling/has-hold | If there is an active hold on the series |
| ScrobblingApi | apiScrobblingHasRanScrobbleGenGet | GET /api/Scrobbling/has-ran-scrobble-gen | Has the logged in user ran scrobble generation |
| ScrobblingApi | apiScrobblingHoldsGet | GET /api/Scrobbling/holds | Returns all scrobble holds for the current user |
| ScrobblingApi | apiScrobblingLibraryAllowsScrobblingGet | GET /api/Scrobbling/library-allows-scrobbling | Does the library the series is in allow scrobbling? |
| ScrobblingApi | apiScrobblingMalTokenGet | GET /api/Scrobbling/mal-token | Get the current user's MAL token and username |
| ScrobblingApi | apiScrobblingRemoveHoldDelete | DELETE /api/Scrobbling/remove-hold | Remove a hold against the Series for user's scrobbling |
| ScrobblingApi | apiScrobblingScrobbleErrorsGet | GET /api/Scrobbling/scrobble-errors | Returns all scrobbling errors for the instance |
| ScrobblingApi | apiScrobblingScrobbleEventsPost | POST /api/Scrobbling/scrobble-events | Returns the scrobbling history for the user |
| ScrobblingApi | apiScrobblingTokenExpiredGet | GET /api/Scrobbling/token-expired | Checks if the current Scrobbling token for the given Provider has expired for the current user |
| ScrobblingApi | apiScrobblingUpdateAnilistTokenPost | POST /api/Scrobbling/update-anilist-token | Update the current user's AniList token |
| ScrobblingApi | apiScrobblingUpdateMalTokenPost | POST /api/Scrobbling/update-mal-token | Update the current user's MAL token (Client ID) and Username |
| SearchApi | apiSearchChaptersBySeriesGet | GET /api/Search/chapters-by-series | Returns all chapters for a given series with localized titles. Used for CBL chapter-level matching. |
| SearchApi | apiSearchSearchGet | GET /api/Search/search | Searches against different entities in the system against a query string |
| SearchApi | apiSearchSeriesForChapterGet | GET /api/Search/series-for-chapter | Returns the series for the Chapter id. If the user does not have access (shouldn't happen by the UI), then null is returned |
| SearchApi | apiSearchSeriesForMangafileGet | GET /api/Search/series-for-mangafile | Returns the series for the MangaFile id. If the user does not have access (shouldn't happen by the UI), then null is returned |
| SeriesApi | apiSeriesAgeRatingGet | GET /api/Series/age-rating | Get the age rating for the Kavita.Models.Entities.Enums.AgeRating enum value |
| SeriesApi | apiSeriesAllRelatedGet | GET /api/Series/all-related | Returns all related series against the passed series Id |
| SeriesApi | apiSeriesAllV2Post | POST /api/Series/all-v2 | Returns all series for the library |
| SeriesApi | apiSeriesAnalyzePost | POST /api/Series/analyze | Run a file analysis on the series. |
| SeriesApi | apiSeriesChapterGet | GET /api/Series/chapter | Returns a single Chapter with progress information |
| SeriesApi | apiSeriesCurrentlyReadingGet | GET /api/Series/currently-reading | Get series a user is currently reading, requires the user to share their profile |
| SeriesApi | apiSeriesDeleteMultiplePost | POST /api/Series/delete-multiple | Deletes multiple series from Kavita at once |
| SeriesApi | apiSeriesDontMatchPost | POST /api/Series/dont-match | When true, will not perform a match and will prevent Kavita from attempting to match/scrobble against this series |
| SeriesApi | apiSeriesExternalSeriesDetailGet | GET /api/Series/external-series-detail | |
| SeriesApi | apiSeriesMatchPost | POST /api/Series/match | Sends a request to Kavita+ API for all potential matches, sorted by relevance |
| SeriesApi | apiSeriesMetadataGet | GET /api/Series/metadata | Returns metadata for a given series |
| SeriesApi | apiSeriesMetadataPost | POST /api/Series/metadata | Update series metadata |
| SeriesApi | apiSeriesNextExpectedGet | GET /api/Series/next-expected | Based on the delta times between when chapters are added, for series that are not Completed/Cancelled/Hiatus, forecast the next date when it will be available. |
| SeriesApi | apiSeriesOnDeckPost | POST /api/Series/on-deck | Fetches series that are on deck aka have progress on them. |
| SeriesApi | apiSeriesRecentlyAddedV2Post | POST /api/Series/recently-added-v2 | Gets all recently added series |
| SeriesApi | apiSeriesRecentlyUpdatedSeriesPost | POST /api/Series/recently-updated-series | Returns series that were recently updated, like adding or removing a chapter |
| SeriesApi | apiSeriesRefreshMetadataPost | POST /api/Series/refresh-metadata | Runs a Cover Image Generation task |
| SeriesApi | apiSeriesRelatedGet | GET /api/Series/related | Fetches the related series for a given series |
| SeriesApi | apiSeriesRemoveFromOnDeckPost | POST /api/Series/remove-from-on-deck | Removes a series from displaying on deck until the next read event on that series |
| SeriesApi | apiSeriesScanPost | POST /api/Series/scan | Scan a series and force each file to be updated. This should be invoked via the User, hence why we force. |
| SeriesApi | apiSeriesSeriesByCollectionGet | GET /api/Series/series-by-collection | Returns all Series grouped by the passed Collection Id with Pagination. |
| SeriesApi | apiSeriesSeriesByIdsPost | POST /api/Series/series-by-ids | Fetches Series for a set of Ids. This will check User for permission access and filter out any Ids that don't exist or the user does not have access to. |
| SeriesApi | apiSeriesSeriesDetailGet | GET /api/Series/series-detail | Get a special DTO for Series Detail page. |
| SeriesApi | apiSeriesSeriesIdDelete | DELETE /api/Series/{seriesId} | Deletes a series from Kavita |
| SeriesApi | apiSeriesSeriesIdGet | GET /api/Series/{seriesId} | Fetches a Series for a given Id |
| SeriesApi | apiSeriesSeriesWithAnnotationsGet | GET /api/Series/series-with-annotations | Returns all Series that a user has access to |
| SeriesApi | apiSeriesUpdateMatchPost | POST /api/Series/update-match | This will perform the fix match |
| SeriesApi | apiSeriesUpdatePost | POST /api/Series/update | Updates the Series |
| SeriesApi | apiSeriesUpdateRelatedPost | POST /api/Series/update-related | Update the relations attached to the Series. Does not generate associated Sequel/Prequel pairs on target series. |
| SeriesApi | apiSeriesV2Post | POST /api/Series/v2 | Gets series with the applied Filter |
| SeriesApi | apiSeriesVolumeGet | GET /api/Series/volume | Returns a single Volume with progress information and Chapters |
| SeriesApi | apiSeriesVolumesGet | GET /api/Series/volumes | Returns All volumes for a series with progress information and Chapters |
| ServerApi | apiServerAnalyzeFilesPost | POST /api/Server/analyze-files | This is a one time task that needs to be ran for v0.7 statistics to work |
| ServerApi | apiServerBackupDbPost | POST /api/Server/backup-db | Performs an ad-hoc backup of the Database |
| ServerApi | apiServerBustKavitaplusCachePost | POST /api/Server/bust-kavitaplus-cache | Bust Kavita+ Cache |
| ServerApi | apiServerChangelogGet | GET /api/Server/changelog | Pull the Changelog for Kavita from Github and display |
| ServerApi | apiServerCheckForUpdatesGet | GET /api/Server/check-for-updates | Checks for updates and pushes an event to the UI |
| ServerApi | apiServerCheckOutOfDateGet | GET /api/Server/check-out-of-date | Returns how many versions out of date this install is |
| ServerApi | apiServerCheckUpdateGet | GET /api/Server/check-update | Checks for updates, if no updates that are > current version installed, returns null |
| ServerApi | apiServerCleanupPost | POST /api/Server/cleanup | Performs the nightly maintenance work on the Server. Can be heavy. |
| ServerApi | apiServerCleanupWantToReadPost | POST /api/Server/cleanup-want-to-read | Performs an ad-hoc cleanup of Want To Read, by removing want to read series for users, where the series are fully read and in Completed publication status. |
| ServerApi | apiServerClearCachePost | POST /api/Server/clear-cache | Performs an ad-hoc cleanup of Cache |
| ServerApi | apiServerClearMediaAlertsPost | POST /api/Server/clear-media-alerts | Deletes all media errors |
| ServerApi | apiServerConvertMediaPost | POST /api/Server/convert-media | Triggers the scheduling of the convert media job. This will convert all media to the target encoding (except for PNG). Only one job will run at a time. |
| ServerApi | apiServerJobsGet | GET /api/Server/jobs | Returns a list of reoccurring jobs. Scheduled ad-hoc jobs will not be returned. |
| ServerApi | apiServerLogsGet | GET /api/Server/logs | Downloads all the log files via a zip |
| ServerApi | apiServerMediaErrorsGet | GET /api/Server/media-errors | Returns a list of issues found during scanning or reading in which files may have corruption or bad metadata (structural metadata) |
| ServerApi | apiServerServerInfoSlimGet | GET /api/Server/server-info-slim | Returns non-sensitive information about the current system |
| ServerApi | apiServerSyncThemesPost | POST /api/Server/sync-themes | Runs the Sync Themes task |
| SettingsApi | apiSettingsBaseUrlGet | GET /api/Settings/base-url | Returns the base url for this instance (if set) |
| SettingsApi | apiSettingsGet | GET /api/Settings | Returns the server settings |
| SettingsApi | apiSettingsImportFieldMappingsPost | POST /api/Settings/import-field-mappings | Import field mappings |
| SettingsApi | apiSettingsIsEmailSetupGet | GET /api/Settings/is-email-setup | Is the minimum information setup for Email to work |
| SettingsApi | apiSettingsIsValidAuthorityPost | POST /api/Settings/is-valid-authority | Validate if the given authority is reachable from the server |
| SettingsApi | apiSettingsIsValidCronGet | GET /api/Settings/is-valid-cron | Is the cron expression valid for Kavita's scheduler |
| SettingsApi | apiSettingsLibraryTypesGet | GET /api/Settings/library-types | |
| SettingsApi | apiSettingsLogLevelsGet | GET /api/Settings/log-levels | |
| SettingsApi | apiSettingsMetadataSettingsGet | GET /api/Settings/metadata-settings | Get the metadata settings for Kavita+ users. |
| SettingsApi | apiSettingsMetadataSettingsPost | POST /api/Settings/metadata-settings | Update the metadata settings for Kavita+ Metadata feature |
| SettingsApi | apiSettingsOidcGet | GET /api/Settings/oidc | Retrieve publicly required configuration regarding Oidc |
| SettingsApi | apiSettingsOpdsEnabledGet | GET /api/Settings/opds-enabled | |
| SettingsApi | apiSettingsPost | POST /api/Settings | Update Server settings |
| SettingsApi | apiSettingsResetBaseUrlPost | POST /api/Settings/reset-base-url | Resets the Base url |
| SettingsApi | apiSettingsResetExternalIdsPost | POST /api/Settings/reset-external-ids | |
| SettingsApi | apiSettingsResetIpAddressesPost | POST /api/Settings/reset-ip-addresses | Resets the IP Addresses |
| SettingsApi | apiSettingsResetPost | POST /api/Settings/reset | |
| SettingsApi | apiSettingsTaskFrequenciesGet | GET /api/Settings/task-frequencies | All values allowed for Task Scheduling APIs. A custom cron job is not included. Disabled is not applicable for Cleanup. |
| SettingsApi | apiSettingsTestEmailUrlPost | POST /api/Settings/test-email-url | Sends a test email to see if email settings are hooked up correctly |
| StatsApi | apiStatsAvgTimeByHourGet | GET /api/Stats/avg-time-by-hour | Returns the avg time read by hour in the given filter |
| StatsApi | apiStatsDayBreakdownGet | GET /api/Stats/day-breakdown | |
| StatsApi | apiStatsDeviceClientTypeGet | GET /api/Stats/device/client-type | Returns client type breakdown for the current month |
| StatsApi | apiStatsDeviceDeviceTypeGet | GET /api/Stats/device/device-type | Desktop vs Mobile spread over this month |
| StatsApi | apiStatsFavoriteAuthorsGet | GET /api/Stats/favorite-authors | |
| StatsApi | apiStatsFilesAddedOverTimeGet | GET /api/Stats/files-added-over-time | |
| StatsApi | apiStatsGenreBreakdownGet | GET /api/Stats/genre-breakdown | Returns the top 10 genres that the user likes reading |
| StatsApi | apiStatsMostActiveUsersGet | GET /api/Stats/most-active-users | Top 5 most active readers for the given timeframe |
| StatsApi | apiStatsPageSpreadGet | GET /api/Stats/page-spread | |
| StatsApi | apiStatsPagesPerYearGet | GET /api/Stats/pages-per-year | Returns a count of pages read per year for a given userId. |
| StatsApi | apiStatsPopularDecadesGet | GET /api/Stats/popular-decades | |
| StatsApi | apiStatsPopularGenresGet | GET /api/Stats/popular-genres | |
| StatsApi | apiStatsPopularLibrariesGet | GET /api/Stats/popular-libraries | |
| StatsApi | apiStatsPopularPeopleGet | GET /api/Stats/popular-people | |
| StatsApi | apiStatsPopularReadingListGet | GET /api/Stats/popular-reading-list | Gets the top 5 most popular reading lists. Counts a reading list as active if a user has read at least some |
| StatsApi | apiStatsPopularSeriesGet | GET /api/Stats/popular-series | |
| StatsApi | apiStatsPopularTagsGet | GET /api/Stats/popular-tags | |
| StatsApi | apiStatsReadingActivityGet | GET /api/Stats/reading-activity | |
| StatsApi | apiStatsReadingCountsGet | GET /api/Stats/reading-counts | Returns reading history events for a give or all users, broken up by day, and format |
| StatsApi | apiStatsReadingHistoryGet | GET /api/Stats/reading-history | Return a user's reading session history |
| StatsApi | apiStatsReadingHistorySeriesSeriesIdGet | GET /api/Stats/reading-history/series/{seriesId} | Return the authenticated users reading session history for a given series |
| StatsApi | apiStatsReadingPaceGet | GET /api/Stats/reading-pace | |
| StatsApi | apiStatsReadsByMonthGet | GET /api/Stats/reads-by-month | |
| StatsApi | apiStatsServerCountMangaFormatGet | GET /api/Stats/server/count/manga-format | |
| StatsApi | apiStatsServerCountPublicationStatusGet | GET /api/Stats/server/count/publication-status | |
| StatsApi | apiStatsServerFileBreakdownGet | GET /api/Stats/server/file-breakdown | A breakdown of different files, their size, and format |
| StatsApi | apiStatsServerFileExtensionGet | GET /api/Stats/server/file-extension | Generates a csv of all file paths for a given extension |
| StatsApi | apiStatsServerStatsGet | GET /api/Stats/server/stats | |
| StatsApi | apiStatsTagBreakdownGet | GET /api/Stats/tag-breakdown | Returns top 10 tags that user likes reading |
| StatsApi | apiStatsTotalReadsGet | GET /api/Stats/total-reads | Returns the total amount reads in the given filter |
| StatsApi | apiStatsUserReadGet | GET /api/Stats/user-read | |
| StatsApi | apiStatsUserStatsGet | GET /api/Stats/user-stats | |
| StatsApi | apiStatsWordSpreadGet | GET /api/Stats/word-spread | |
| StatsApi | apiStatsWordsPerYearGet | GET /api/Stats/words-per-year | Returns a count of words read per year for a given userId. |
| StreamApi | apiStreamAddDashboardStreamPost | POST /api/Stream/add-dashboard-stream | Creates a Dashboard Stream from a SmartFilter and adds it to the user's dashboard as visible |
| StreamApi | apiStreamAddSidenavStreamFromExternalSourcePost | POST /api/Stream/add-sidenav-stream-from-external-source | Creates a SideNav Stream from a SmartFilter and adds it to the user's sidenav as visible |
| StreamApi | apiStreamAddSidenavStreamPost | POST /api/Stream/add-sidenav-stream | Creates a SideNav Stream from a SmartFilter and adds it to the user's sidenav as visible |
| StreamApi | apiStreamBulkSidenavStreamVisibilityPost | POST /api/Stream/bulk-sidenav-stream-visibility | |
| StreamApi | apiStreamCreateExternalSourcePost | POST /api/Stream/create-external-source | Create an external Source |
| StreamApi | apiStreamDashboardGet | GET /api/Stream/dashboard | Returns the layout of the user's dashboard |
| StreamApi | apiStreamDeleteExternalSourceDelete | DELETE /api/Stream/delete-external-source | Delete's the external source |
| StreamApi | apiStreamExternalSourceExistsPost | POST /api/Stream/external-source-exists | Validates the external source by host is unique (for this user) |
| StreamApi | apiStreamExternalSourcesGet | GET /api/Stream/external-sources | Return's the user's external sources |
| StreamApi | apiStreamSidenavGet | GET /api/Stream/sidenav | Return's the user's side nav |
| StreamApi | apiStreamSmartFilterDashboardStreamDelete | DELETE /api/Stream/smart-filter-dashboard-stream | Removes a Smart Filter from a user's Dashboard Streams |
| StreamApi | apiStreamSmartFilterSideNavStreamDelete | DELETE /api/Stream/smart-filter-side-nav-stream | Removes a Smart Filter from a user's SideNav Streams |
| StreamApi | apiStreamUpdateDashboardPositionPost | POST /api/Stream/update-dashboard-position | Updates the position of a dashboard stream |
| StreamApi | apiStreamUpdateDashboardStreamPost | POST /api/Stream/update-dashboard-stream | Updates the visibility of a dashboard stream |
| StreamApi | apiStreamUpdateExternalSourcePost | POST /api/Stream/update-external-source | Updates an existing external source |
| StreamApi | apiStreamUpdateSidenavPositionPost | POST /api/Stream/update-sidenav-position | Updates the position of a dashboard stream |
| StreamApi | apiStreamUpdateSidenavStreamPost | POST /api/Stream/update-sidenav-stream | Updates the visibility of a dashboard stream |
| TachiyomiApi | apiTachiyomiLatestChapterGet | GET /api/Tachiyomi/latest-chapter | Given the series Id, this should return the latest chapter that has been fully read. |
| TachiyomiApi | apiTachiyomiMarkChapterUntilAsReadPost | POST /api/Tachiyomi/mark-chapter-until-as-read | Marks every chapter that is sorted below the passed number as Read. This will not mark any specials as read. |
| ThemeApi | apiThemeBrowseGet | GET /api/Theme/browse | Browse themes that can be used on this server |
| ThemeApi | apiThemeDelete | DELETE /api/Theme | Attempts to delete a theme. If already in use by users, will not allow |
| ThemeApi | apiThemeDownloadContentGet | GET /api/Theme/download-content | Returns css content to the UI. UI is expected to escape the content |
| ThemeApi | apiThemeDownloadThemePost | POST /api/Theme/download-theme | Downloads a SiteTheme from upstream |
| ThemeApi | apiThemeGet | GET /api/Theme | |
| ThemeApi | apiThemeUpdateDefaultPost | POST /api/Theme/update-default | |
| ThemeApi | apiThemeUploadThemePost | POST /api/Theme/upload-theme | Uploads a new theme file |
| UploadApi | apiUploadChapterPost | POST /api/Upload/chapter | Replaces chapter cover image and locks it with a base64 encoded image. This will update the parent volume's cover image. |
| UploadApi | apiUploadCollectionPost | POST /api/Upload/collection | Replaces collection tag cover image and locks it with a base64 encoded image |
| UploadApi | apiUploadLibraryPost | POST /api/Upload/library | Replaces library cover image with a base64 encoded image. If empty string passed, will reset to null. |
| UploadApi | apiUploadPersonPost | POST /api/Upload/person | Replaces person tag cover image and locks it with a base64 encoded image |
| UploadApi | apiUploadReadingListPost | POST /api/Upload/reading-list | Replaces reading list cover image and locks it with a base64 encoded image |
| UploadApi | apiUploadSeriesPost | POST /api/Upload/series | Replaces series cover image and locks it with a base64 encoded image |
| UploadApi | apiUploadUploadByUrlPost | POST /api/Upload/upload-by-url | This stores a file (image) in temp directory for use in a cover image replacement flow. This is automatically cleaned up. |
| UploadApi | apiUploadUserPost | POST /api/Upload/user | Replaces user cover image and locks it with a base64 encoded image |
| UploadApi | apiUploadVolumePost | POST /api/Upload/volume | Replaces volume cover image and locks it with a base64 encoded image. |
| UsersApi | apiUsersDeleteUserDelete | DELETE /api/Users/delete-user | |
| UsersApi | apiUsersGet | GET /api/Users | Returns all users of this server |
| UsersApi | apiUsersGetPreferencesGet | GET /api/Users/get-preferences | Returns the preferences of the user |
| UsersApi | apiUsersHasLibraryAccessGet | GET /api/Users/has-library-access | Does the user have access to this library |
| UsersApi | apiUsersHasProfileSharedGet | GET /api/Users/has-profile-shared | Does the requested user have their profile sharing on |
| UsersApi | apiUsersHasReadingProgressGet | GET /api/Users/has-reading-progress | Is there any reading progress on this library |
| UsersApi | apiUsersNamesGet | GET /api/Users/names | Returns a list of the user names within the system |
| UsersApi | apiUsersProfileInfoGet | GET /api/Users/profile-info | Get Information about a given user |
| UsersApi | apiUsersTokensGet | GET /api/Users/tokens | Returns all users with tokens registered and their token information. Does not send the tokens. |
| UsersApi | apiUsersUpdatePreferencesPost | POST /api/Users/update-preferences | Update the user preferences |
| VolumeApi | apiVolumeDelete | DELETE /api/Volume | Delete the Volume from the DB |
| VolumeApi | apiVolumeGet | GET /api/Volume | Returns the appropriate Volume |
| VolumeApi | apiVolumeMultiplePost | POST /api/Volume/multiple | Delete multiple Volumes from the DB |
| VolumeApi | apiVolumeUpdatePost | POST /api/Volume/update | Updates the information on the Volume |
| WantToReadApi | apiWantToReadAddSeriesPost | POST /api/want-to-read/add-series | Given a list of Series Ids, add them to the current logged in user's Want To Read list |
| WantToReadApi | apiWantToReadGet | GET /api/want-to-read | |
| WantToReadApi | apiWantToReadRemoveSeriesPost | POST /api/want-to-read/remove-series | Given a list of Series Ids, remove them from the current logged in user's Want To Read list |
| WantToReadApi | apiWantToReadV2Post | POST /api/want-to-read/v2 | Return all Series that are in the current logged in user's Want to Read list, filtered |
Documentation For Models
- ALMediaTitle
- AgeRating
- AgeRatingDto
- AgeRestrictionDto
- AniListUpdateDto
- AnnotationDto
- AnnotationFilterDto
- AnnotationFilterField
- AnnotationFilterStatementDto
- AnnotationSortField
- AnnotationSortOptionDto
- AppUserCollectionDto
- AppUserOpdsPreferences
- AppUserSocialPreferences
- AuthKeyDto
- AuthKeyExpiresAtDto
- AuthKeyProvider
- AuthenticationType
- AuthorChapterDto
- AuthorityValidationDto
- AuthorityValidationResult
- BookChapterItem
- BookInfoDto
- BookPageLayoutMode
- BookmarkDto
- BookmarkInfoDto
- BookmarkSearchResultDto
- BreakPoint
- BrowseGenreDto
- BrowsePersonDto
- BrowseTagDto
- BulkActionDto
- BulkChapterSizeRequest
- BulkReadingListSizeRequest
- BulkRemoveBookmarkForSeriesDto
- BulkSeriesSizeRequest
- BulkSetSeriesProfiles
- BulkUpdateSideNavStreamVisibilityDto
- BulkVolumeSizeRequest
- CblBookResult
- CblFileimportBody
- CblFinalizeRequestDto
- CblImportDecisions
- CblImportReason
- CblImportResult
- CblImportSummaryDto
- CblItemDecision
- CblMatchTier
- CblReValidateRequestDto
- CblRemapRuleKind
- CblRepoBrowseResultDto
- CblRepoImportRequestDto
- CblRepoItemDto
- CblSavedFileDto
- CblSeriesCandidate
- ChapterDetailPlusDto
- ChapterDto
- ChapterInfoDto
- CharacterRole
- CheckForFilesInFolderRootsDto
- ClientDeviceDto
- ClientDevicePlatform
- ClientDeviceType
- ClientDeviceTypeStatCount
- ClientInfoDto
- CollectionTagBulkAddDto
- ColorScapeDto
- ConfirmEmailDto
- ConfirmEmailUpdateDto
- ConfirmMigrationEmailDto
- ConfirmPasswordResetDto
- ConflictResolution
- CopySettingsFromLibraryDto
- CoverImageSize
- CreateEmailDeviceDto
- CreatePersonalToCDto
- CreateReadingListDto
- CreateRemapRuleDto
- DashboardStreamDto
- DashboardStreamType
- DateTimeStatCountWithFormat
- DayOfWeek
- DayOfWeekStatCount
- DecodeFilterDto
- DeleteChaptersDto
- DeleteCollectionsDto
- DeleteReadingListsDto
- DeleteSeriesDto
- DeviceClientBreakdownDto
- DirectoryDto
- DownloadBookmarkDto
- DownloadableSiteThemeDto
- EmailDeviceDto
- EmailDevicePlatform
- EmailHistoryDto
- EmailTestResultDto
- EncodeFormat
- EpubFontDto
- ExternalChapterDto
- ExternalSeriesDetailDto
- ExternalSeriesDto
- ExternalSeriesMatchDto
- ExternalSourceDto
- FieldMappingsDto
- FieldMappingsImportResultDto
- FileDimensionDto
- FileExtensionBreakdownDto
- FileExtensionDto
- FileTypeGroup
- FilterCombination
- FilterComparison
- FilterEntityType
- FontProvider
- FontUploadBody
- GenreTagDto
- GenreTagDtoStatCount
- GithubRateLimitDto
- GroupedSeriesDto
- HighlightSlot
- HourEstimateRangeDto
- IFilterDto
- IdentityProvider
- ImportFieldMappingsDto
- ImportMode
- ImportSettingsDto
- Int32StatCount
- InviteUserDto
- InviteUserResponse
- JobDto
- JumpKeyDto
- KavitaLocale
- KeyBind
- KoreaderBookDto
- KoreaderProgressUpdateDto
- LanguageDto
- LayoutMode
- LibraryDto
- LibraryDtoStatCount
- LibraryType
- LicenseInfoDto
- LoginDto
- MalStackDto
- MalUserInfoDto
- ManageMatchFilterDto
- ManageMatchSeriesDto
- MangaFileDto
- MangaFormat
- MangaFormatStatCount
- MarkChapterReadDto
- MarkMultipleSeriesAsReadDto
- MarkReadDto
- MarkVolumeReadDto
- MarkVolumesReadDto
- MatchSeriesDto
- MatchStateOption
- MediaErrorDto
- MemberDto
- MemberInfoDto
- MetadataFieldMappingDto
- MetadataFieldType
- MetadataSettingField
- MetadataSettingsDto
- MetadataTagDto
- MostReadAuthorsDto
- NextExpectedChapterDto
- OidcConfigDto
- OidcPublicConfigDto
- PageLayoutMode
- PageSplitOption
- ParseBulkRequestDto
- ParseBulkResponseDto
- ParseResultDto
- PdfRenderResolution
- PdfScrollMode
- PdfSpreadMode
- PdfTheme
- PersonAliasCheckDto
- PersonDto
- PersonDtoStatCount
- PersonFilterDto
- PersonFilterField
- PersonFilterStatementDto
- PersonMergeDto
- PersonRole
- PersonSortField
- PersonSortOptionDto
- PersonalToCDto
- PlusMediaFormat
- ProfileStatBarDto
- ProgressDto
- PromoteCollectionsDto
- PromoteReadingListsDto
- PublicationStatus
- PublicationStatusStatCount
- QueryContext
- RatingAuthority
- RatingDto
- ReadTimeByHourDto
- ReaderMode
- ReadingActivityDataDto
- ReadingActivityGraphEntryDto
- ReadingDirection
- ReadingHistoryChapterItemDto
- ReadingHistoryItemDto
- ReadingListDto
- ReadingListFilterDto
- ReadingListFilterField
- ReadingListFilterStatementDto
- ReadingListInfoDto
- ReadingListItemChapterDto
- ReadingListItemDto
- ReadingListItemVolumeDto
- ReadingListProvider
- ReadingListSortField
- ReadingListSortOptionDto
- ReadingListTagDto
- ReadingPaceDto
- ReadingProfileKind
- ReadingSessionDto
- RecommendationDto
- RefreshSeriesDto
- RegisterDto
- RelatedSeriesDto
- RelationKind
- RemapRuleDto
- RemoveBookmarkForSeriesDto
- RereadChapterDto
- RereadDto
- ResetPasswordDto
- RgbaColor
- RotateAuthKeyRequestDto
- ScalingOption
- ScanFolderDto
- ScrobbleErrorDto
- ScrobbleEventDto
- ScrobbleEventFilter
- ScrobbleEventSortField
- ScrobbleEventType
- ScrobbleHoldDto
- ScrobbleProvider
- SearchResultDto
- SearchResultGroupDto
- SendSeriesToEmailDeviceDto
- SendToEmailDeviceDto
- SeriesByIdsDto
- SeriesCharacter
- SeriesDetailDto
- SeriesDetailPlusDto
- SeriesDto
- SeriesDtoStatCount
- SeriesFilterField
- SeriesFilterStatementDto
- SeriesFilterV2Dto
- SeriesMetadataDto
- SeriesRelationship
- SeriesSortField
- SeriesSortOptionDto
- SeriesStaffDto
- ServerInfoSlimDto
- ServerSettingDto
- ServerStatisticsDto
- SideNavStreamDto
- SideNavStreamType
- SiteThemeDto
- SmartFilterDto
- SmtpConfigDto
- SpreadStatsDto
- StandaloneChapterDto
- StatBucketDto
- StringBreakDownDto
- StringStatCount
- TachiyomiChapterDto
- TagDto
- TagDtoStatCount
- ThemeProvider
- ThemeUploadthemeBody
- TokenRequestDto
- TopReadDto
- UpdateAgeRestrictionDto
- UpdateChapterDto
- UpdateClientDeviceNameDto
- UpdateDefaultThemeDto
- UpdateEmailDeviceDto
- UpdateEmailDto
- UpdateLibraryDto
- UpdateLibraryForUserDto
- UpdateLicenseDto
- UpdateNotificationDto
- UpdatePersonDto
- UpdateRatingDto
- UpdateReadingListByChapterDto
- UpdateReadingListByMultipleDto
- UpdateReadingListByMultipleSeriesDto
- UpdateReadingListBySeriesDto
- UpdateReadingListByVolumeDto
- UpdateReadingListDto
- UpdateReadingListPosition
- UpdateRelatedSeriesDto
- UpdateRemapRuleDto
- UpdateSeriesDto
- UpdateSeriesForTagDto
- UpdateSeriesMetadataDto
- UpdateStreamPositionDto
- UpdateUserDto
- UpdateUserReviewDto
- UpdateUsernameRequestDto
- UpdateVolumeDto
- UpdateWantToReadDto
- UploadCoverFileDto
- UploadUrlDto
- UserDto
- UserParams
- UserPreferencesDto
- UserPreferencesDtoCustomKeyBinds
- UserReadStatistics
- UserReadingProfileDto
- UserReviewDto
- UserReviewExtendedDto
- UserTokenInfo
- VolumeDto
- WritingStyle
- YearMonthGroupingDto
- YearMonthGroupingDtoStatCount
Documentation For Authorization
AuthKey
- Type: API key
- API key parameter name: x-api-key
- Location: HTTP header