### Install and Start Windows Service with NSSM Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/manual_install.md Instructions for installing and starting Kapowarr as a Windows service using NSSM. This involves downloading NSSM, configuring it via its GUI, and starting the service. ```bash nssm install kapowarr ``` ```bash nssm start kapowarr ``` -------------------------------- ### Docker Volume Example for Database Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/docker.md Example of mapping a host folder to the Kapowarr database directory inside the container. ```bash -v "/opt/Kapowarr/db:/app/db" ``` ```bash -v "C:\apps\Kapowarr\db:/app/db" ``` -------------------------------- ### Docker Port Mapping Examples Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/docker.md Examples of how to map the Kapowarr container's port to a different host port. ```bash -p 8009:5656 ``` ```bash -p 443:5656 ``` ```bash -p 5656:5656 ``` -------------------------------- ### Start Kapowarr Service (Linux) Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/manual_install.md Starts the Kapowarr service using systemd after an update or installation on Linux. ```bash sudo systemctl start kapowarr ``` -------------------------------- ### Docker Volume Example for Download Folder Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/docker.md Example of mapping a host folder to the Kapowarr temporary download directory inside the container. ```bash -v "/home/my-user/comic-downloads:/app/temp_downloads" ``` ```bash -v "D:\Comics\Downloads:/app/temp_downloads" ``` -------------------------------- ### Start Kapowarr on Linux/macOS Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/manual_install.md Starts the Kapowarr application by executing the main Python script. ```bash python3 Kapowarr.py ``` -------------------------------- ### Docker Volume Example for Root Comic Folder Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/docker.md Example of mapping a host folder to the Kapowarr comics directory inside the container. ```bash -v "/home/my-user/comics:/comics" ``` ```bash -v "D:\Comics\Library:/comics" ``` -------------------------------- ### Docker Volume Example for Multiple Root Folders Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/docker.md Example of mapping multiple host folders to different comic directories inside the container. ```bash -v "/home/my-user/comics-2:/comics-2" \ ``` ```bash -v "E:\Comics:/comics-2" ``` -------------------------------- ### Install Python PIP on Linux Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/manual_install.md Installs Python PIP, the package installer for Python, using the apt package manager. ```bash sudo apt-get install python3-pip ``` -------------------------------- ### Docker Compose Volume Example for Database Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/docker.md Example of mapping a host folder to the Kapowarr database directory within a Docker Compose file. ```yaml - "/opt/Kapowarr/db:/app/db" ``` ```yaml - "C:\apps\Kapowarr\db:/app/db" ``` -------------------------------- ### Start Kapowarr on Windows Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/manual_install.md Starts the Kapowarr application by executing the main Python script using PowerShell. ```powershell python Kapowarr.py ``` -------------------------------- ### Docker Compose Volume Example for Download Folder Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/docker.md Example of mapping a host folder to the Kapowarr temporary download directory within a Docker Compose file. ```yaml - "/home/my-user/comic-downloads:/app/temp_downloads" ``` ```yaml - "D:\Comics\Downloads:/app/temp_downloads" ``` -------------------------------- ### Install Python 3 on Linux Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/manual_install.md Installs Python 3 using the apt package manager. Ensure Python 3.8 or higher is installed. ```bash sudo apt-get install python3 ``` -------------------------------- ### Start Kapowarr with Docker Compose Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/docker.md Run this command in the same directory as your `docker-compose.yml` file to start the Kapowarr container in detached mode. ```bash docker-compose up -d ``` -------------------------------- ### Install Python Requirements on Linux/macOS Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/manual_install.md Installs the Python dependencies required by Kapowarr from the requirements.txt file. ```bash python3 -m pip install -r requirements.txt ``` -------------------------------- ### Install Python Requirements on Windows Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/manual_install.md Installs the Python dependencies required by Kapowarr from the requirements.txt file using PowerShell. ```powershell python -m pip install -r requirements.txt ``` -------------------------------- ### Create Kapowarr Application Directory Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/manual_install.md Creates the directory where Kapowarr will be installed. Recommended path is /opt/Kapowarr. ```bash sudo mkdir /opt/Kapowarr ``` -------------------------------- ### Docker Compose Volume Example for Root Comic Folder Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/docker.md Example of mapping a host folder to the Kapowarr comics directory within a Docker Compose file. ```yaml - "/home/my-user/comics:/comics" ``` ```yaml - "D:\Comics\Library:/comics" ``` -------------------------------- ### Navigate to Kapowarr Directory Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/manual_install.md Changes the current directory to the Kapowarr installation folder. ```bash cd /opt/Kapowarr ``` -------------------------------- ### Manage Linux systemd Service Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/manual_install.md Commands to reload systemd, start, and enable the Kapowarr service. Enabling ensures it starts on system boot. ```bash sudo systemctl daemon-reload ``` ```bash sudo systemctl start kapowarr ``` ```bash sudo systemctl enable kapowarr ``` -------------------------------- ### Start Kapowarr Service (Windows NSSM) Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/manual_install.md Start the Kapowarr service using NSSM after updating. This command assumes Kapowarr is registered as a service named 'kapowarr'. ```powershell nssm start kapowarr ``` -------------------------------- ### Create Linux systemd Service File Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/manual_install.md Create and configure the systemd service file for Kapowarr. Ensure paths and user/group are correctly set for your installation. ```bash sudo nano /etc/systemd/system/kapowarr.service ``` ```toml [Unit] Description=Kapowarr Daemon After=syslog.target network.target [Service] WorkingDirectory=/opt/Kapowarr/ User={user} Group={group} UMask=0002 Restart=on-failure RestartSec=5 Type=simple ExecStart=/usr/bin/python3 /opt/Kapowarr/Kapowarr.py KillSignal=SIGINT TimeoutStopSec=20 SyslogIdentifier=kapowarr ExecStartPre=/bin/sleep 30 [Install] WantedBy=multi-user.target ``` -------------------------------- ### List Available Conversion Formats Source: https://context7.com/casvt/kapowarr/llms.txt Retrieve a list of available file conversion formats supported by the Kapowarr installation. This depends on the system's capabilities and installed libraries. Requires an API key. ```bash curl -X GET "http://localhost:5656/api/settings/availableformats?api_key=$API_KEY" ``` -------------------------------- ### Kapowarr Docker CLI Equivalent Source: https://context7.com/casvt/kapowarr/llms.txt This command provides the equivalent setup for Kapowarr using the Docker CLI. It mirrors the configuration defined in the docker-compose.yml file. ```bash # Docker CLI equivalent (Linux) docker run -d \ --name kapowarr \ -v "kapowarr-db:/app/db" \ -v "/path/to/downloads:/app/temp_downloads" \ -v "/path/to/comics:/comics" \ -p 5656:5656 \ -e PUID=1000 \ -e PGID=1000 \ -e TZ=America/New_York \ mrcas/kapowarr:latest # Access the web UI at: # http://localhost:5656 ``` -------------------------------- ### Manage macOS LaunchAgent Service Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/manual_install.md Command to load the Kapowarr LaunchAgent service. This starts the service and ensures it runs on subsequent logins. ```bash launchctl load /Users/{user_name}/Library/LaunchAgents/com.github.casvt.kapowarr.plist ``` -------------------------------- ### Get all mappings Source: https://context7.com/casvt/kapowarr/llms.txt Retrieves all configured remote path mappings. ```APIDOC ## GET /api/remotemapping ### Description Retrieves all configured remote path mappings. ### Method GET ### Endpoint /api/remotemapping ### Parameters #### Query Parameters - **api_key** (string) - Required - The API key for authentication. ``` -------------------------------- ### Get Current Settings Source: https://context7.com/casvt/kapowarr/llms.txt Retrieve all public settings for the Kapowarr application. This request requires an API key. ```bash curl -X GET "http://localhost:5656/api/settings?api_key=$API_KEY" ``` -------------------------------- ### Navigate to Kapowarr Directory on Windows Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/manual_install.md Changes the current directory to the Kapowarr application folder using PowerShell. Assumes installation in C:\apps\Kapowarr. ```powershell cd C:\apps\Kapowarr ``` -------------------------------- ### System Information Source: https://context7.com/casvt/kapowarr/llms.txt Endpoints for retrieving system-level information and controlling the server. Includes getting application details, downloading logs, and restarting or shutting down the server. ```APIDOC ## System ### Get application info Returns Kapowarr version, Python version, database version/location, OS type, and 64-bit support status. ```bash curl -X GET "http://localhost:5656/api/system/about?api_key=$API_KEY" # Response: # { # "error": null, # "result": { # "version": "1.3.1", # "python_version": "3.11.0", # "database_version": 42, # "database_location": "/app/db/Kapowarr.db", # "data_folder": "/app", # "os": "Linux", # "runs_64bit": true # } # } ``` ### Download application logs Downloads the current Kapowarr log file as a timestamped `.txt` file. ```bash curl -X GET "http://localhost:5656/api/system/logs?api_key=$API_KEY" \ -o "kapowarr_log_$(date +%Y_%m_%d).txt" ``` ### Restart or shutdown the server ```bash # Graceful restart curl -X POST "http://localhost:5656/api/system/power/restart?api_key=$API_KEY" # Shutdown curl -X POST "http://localhost:5656/api/system/power/shutdown?api_key=$API_KEY" # Both respond: {"error": null, "result": {}} ``` ``` -------------------------------- ### Get Issue Details Source: https://context7.com/casvt/kapowarr/llms.txt Fetches the details of a specific issue, including its metadata and file information. Requires the issue ID and API key. ```bash # Get issue details curl -X GET "http://localhost:5656/api/issues/123?api_key=$API_KEY" ``` -------------------------------- ### Get All Active Downloads Source: https://context7.com/casvt/kapowarr/llms.txt Retrieves a list of all currently active downloads in the queue, including their status and progress. ```bash # Get all active downloads curl -X GET "http://localhost:5656/api/activity/queue?api_key=$API_KEY" ``` -------------------------------- ### Manage Manual File Matching Source: https://context7.com/casvt/kapowarr/llms.txt Override Kapowarr's automatic file-to-issue matching. Use GET to view current matches and PUT to force specific assignments. ```bash # Get current file matching for a volume curl -X GET "http://localhost:5656/api/volumes/7/manualmatch?api_key=$API_KEY" ``` ```bash # Override file matching: force a file to match to specific issues curl -X PUT "http://localhost:5656/api/volumes/7/manualmatch?api_key=$API_KEY" \ -H "Content-Type: application/json" \ -d '[{"filepath": "/comics/Deadpool/Volume 01 (1994)/some_file.cbz", "issue_ids": [123, 124], "general_file": false, "forced_match": true}, {"filepath": "/comics/Deadpool/Volume 01 (1994)/cover.jpg", "issue_ids": [], "general_file": true, "forced_match": true}]' ``` -------------------------------- ### Get Application Information Source: https://context7.com/casvt/kapowarr/llms.txt Retrieve details about the Kapowarr application, including its version, Python version, database information, OS type, and 64-bit support status. Requires an API key. ```bash curl -X GET "http://localhost:5656/api/system/about?api_key=$API_KEY" ``` -------------------------------- ### Create macOS LaunchAgent Service File Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/manual_install.md Create and configure the LaunchAgent property list file for Kapowarr. Replace `{user_name}` with the actual username. ```bash sudo nano /Users/{user_name}/Library/LaunchAgents/com.github.casvt.kapowarr.plist ``` ```xml Label com.github.casvt.kapowarr ProgramArguments /usr/bin/python3 /Applications/Kapowarr/Kapowarr.py WorkingDirectory /Applications/Kapowarr RunAtLoad KeepAlive StandardOutPath /usr/local/var/log/kapowarr.log StandardErrorPath /usr/local/var/log/kapowarr.log ``` -------------------------------- ### List External Download Client Options Source: https://context7.com/casvt/kapowarr/llms.txt Retrieves a list of supported external download client types and their required configuration fields. This helps in understanding what information is needed to set up a new client. ```bash # List available client types and their required fields curl -X GET "http://localhost:5656/api/externalclients/options?api_key=$API_KEY" ``` -------------------------------- ### Create Local Folder for Database (Linux) Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/docker.md Create a directory on your Linux system to store the Kapowarr database. Ensure the user running the container has read, write, and execute permissions. ```bash mkdir "/path/to/directory" ``` -------------------------------- ### Create Local Folder for Database (Windows) Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/docker.md Create a directory on your Windows system using PowerShell to store the Kapowarr database. Ensure the user running the container has read, write, and execute permissions. ```powershell mkdir "C:\path\to\directory" ``` -------------------------------- ### Get Volume Cover Image Source: https://context7.com/casvt/kapowarr/llms.txt Retrieves the cover image for a specified volume. ```APIDOC ## GET /api/volumes/{id}/cover ### Description Retrieves the cover image for a specific volume. ### Method GET ### Endpoint /api/volumes/{id}/cover ### Query Parameters - **api_key** (string) - Required - API key for authentication. ### Response Example (Returns the image file, e.g., cover.jpg) ``` -------------------------------- ### Get and Update Issue Source: https://context7.com/casvt/kapowarr/llms.txt Retrieves details for a specific issue or toggles its monitoring status. ```APIDOC ## GET /api/issues/{id} ### Description Retrieves details for a specific issue. ### Method GET ### Endpoint /api/issues/{id} ### Query Parameters - **api_key** (string) - Required - API key for authentication. ### Response Example ```json { "id": 123, "volume_id": 7, "comicvine_id": 456, "issue_number": "5", "calculated_issue_number": 5.0, "title": "...", "date": "1994-08-01", "monitored": true, "files": [...] } ``` ## PUT /api/issues/{id} ### Description Toggles the monitoring status for a specific issue. ### Method PUT ### Endpoint /api/issues/{id} ### Query Parameters - **api_key** (string) - Required - API key for authentication. ### Request Body - **monitored** (boolean) - Required - The new monitoring status for the issue. ### Request Example ```json { "monitored": false } ``` ### Response Example (No specific response example provided for PUT request) ``` -------------------------------- ### Create Docker Volume for Database Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/docker.md Use this command to create a Docker volume for storing the Kapowarr database. This ensures data persistence. ```bash docker volume create kapowarr-db ``` -------------------------------- ### Get Download History Source: https://context7.com/casvt/kapowarr/llms.txt Retrieves the download history, which can be paginated and filtered by volume ID. ```bash # Get download history (paginated, filterable by volume or issue) curl -X GET "http://localhost:5656/api/activity/history?api_key=$API_KEY&offset=0&volume_id=7" ``` -------------------------------- ### Run Kapowarr with Docker CLI (Windows) Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/installation.md Execute this command to launch Kapowarr in a Docker container on Windows. Remember to replace 'DRIVE:\\with\\...' with your specific directory paths. It sets up necessary volumes, ports, and environment variables. ```powershell docker run -d --name kapowarr -v "kapowarr-db:/app/db" -v "DRIVE:\\with\\download_folder:/app/temp_downloads" -v "DRIVE:\\with\\root_folder:/comics" -p 5656:5656 -e PUID=0 -e PGID=0 -e TZ=Etc/UTC mrcas/kapowarr:latest ``` -------------------------------- ### Get Specific Download from Queue Source: https://context7.com/casvt/kapowarr/llms.txt Retrieves details for a specific download from the queue using its ID. ```bash # Get a specific download curl -X GET "http://localhost:5656/api/activity/queue/5?api_key=$API_KEY" ``` -------------------------------- ### Get Specific Root Folder Source: https://context7.com/casvt/kapowarr/llms.txt Retrieves details for a single root folder by its ID. Requires an API key. ```bash # Get a specific root folder curl -X GET "http://localhost:5656/api/rootfolder/1?api_key=$API_KEY" ``` -------------------------------- ### List Root Folders Source: https://context7.com/casvt/kapowarr/llms.txt Retrieves a list of all configured root folders. Requires an API key. ```bash # List all root folders curl -X GET "http://localhost:5656/api/rootfolder?api_key=$API_KEY" ``` -------------------------------- ### Get Specific Volume Data Source: https://context7.com/casvt/kapowarr/llms.txt Retrieves the complete data for a specific volume, including all its issues, by its ID. Requires an API key. ```bash # Get full volume data including all issues curl -X GET "http://localhost:5656/api/volumes/7?api_key=$API_KEY" ``` -------------------------------- ### Launch Kapowarr with Docker CLI Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/docker.md Use this command to run the Kapowarr container directly using the Docker CLI. It configures volumes, ports, and environment variables. ```bash docker run -d \ --name kapowarr \ -v "kapowarr-db:/app/db" \ -v "/home/cas/media/Downloads:/app/temp_downloads" \ -v "/home/cas/media/Comics:/comics" \ -v "/home/cas/other_media/Comics-2:/comics-2" \ -p 5656:5656 \ -e PUID=1000 \ -e PGID=1000 \ -e TZ=Europe/Amsterdam \ mrcas/kapowarr:latest ``` -------------------------------- ### Manage Download Service Credentials Source: https://context7.com/casvt/kapowarr/llms.txt Store and manage credentials for download services like Mega and Pixeldrain. Use POST to add new credentials, specifying the source and login details. ```bash # List all stored credentials (passwords are masked) curl -X GET "http://localhost:5656/api/credentials?api_key=$API_KEY" ``` ```bash # Add Mega credentials curl -X POST "http://localhost:5656/api/credentials?api_key=$API_KEY" \ -H "Content-Type: application/json" \ -d '{ "source": "mega", "email": "user@example.com", "password": "megapassword" }' ``` -------------------------------- ### Manual Search for Specific Issue Download Source: https://context7.com/casvt/kapowarr/llms.txt Searches configured sources for a specific issue. Requires the issue ID and API key. ```bash # Search for a specific issue curl -X GET "http://localhost:5656/api/issues/123/manualsearch?api_key=$API_KEY" ``` -------------------------------- ### Get All Remote Path Mappings Source: https://context7.com/casvt/kapowarr/llms.txt Retrieves all configured remote path mappings. These mappings are used to translate paths between external download clients and Kapowarr. ```bash # Get all mappings curl -X GET "http://localhost:5656/api/remotemapping?api_key=$API_KEY" ``` -------------------------------- ### Launch Kapowarr with Docker Compose Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/docker.md This Docker Compose configuration defines the Kapowarr service, including its image, environment variables, volumes, and port mappings. ```yaml services: kapowarr: container_name: kapowarr image: mrcas/kapowarr:latest environment: - PUID=1000 - PGID=1000 - TZ=Europe/Amsterdam volumes: - "kapowarr-db:/app/db" - "/home/cas/media/Downloads:/app/temp_downloads" - "/home/cas/media/Comics:/comics" - "/home/cas/other_media/Comics-2:/comics-2" ports: - 5656:5656 volumes: kapowarr-db: ``` -------------------------------- ### Run Kapowarr with Docker CLI (Linux) Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/installation.md Use this command to run Kapowarr as a Docker container on Linux. Ensure you replace placeholder paths with your actual download and root folder locations. The container maps ports and sets environment variables for user ID, group ID, and timezone. ```bash docker run -d \ --name kapowarr \ -v "kapowarr-db:/app/db" \ -v "/path/to/download_folder:/app/temp_downloads" \ -v "/path/to/root_folder:/comics" \ -p 5656:5656 \ -e PUID=0 \ -e PGID=0 \ -e TZ=Etc/UTC \ mrcas/kapowarr:latest ``` -------------------------------- ### Get Volume Cover Image Source: https://context7.com/casvt/kapowarr/llms.txt Retrieves the cover image for a specific volume. Requires the volume ID and API key. The output is saved to a file. ```bash curl -X GET "http://localhost:5656/api/volumes/7/cover?api_key=$API_KEY" -o cover.jpg ``` -------------------------------- ### Kapowarr Docker Compose Configuration Source: https://context7.com/casvt/kapowarr/llms.txt Use this docker-compose.yml file to set up and run Kapowarr. Ensure you map your local directories correctly for persistent storage and comic access. ```yaml services: kapowarr: container_name: kapowarr image: mrcas/kapowarr:latest environment: - PUID=1000 # User ID to run as - PGID=1000 # Group ID to run as - TZ=America/New_York volumes: - "kapowarr-db:/app/db" # Persistent database - "/path/to/downloads:/app/temp_downloads" # Staging area for downloads - "/path/to/comics:/comics" # Root folder (add this in UI as /comics) - "/path/to/comics2:/comics2" # Optional second root folder ports: - "5656:5656" restart: unless-stopped volumes: kapowarr-db: ``` -------------------------------- ### Login and Obtain API Key Source: https://context7.com/casvt/kapowarr/llms.txt Authenticate with your username and password to obtain the API key required for all subsequent requests. Ensure the 'Content-Type' header is set to 'application/json'. ```bash curl -X POST "http://localhost:5656/api/auth" \ -H "Content-Type: application/json" \ -d '{"username": "admin", "password": "mysecret"}' ``` -------------------------------- ### Get Library Statistics Source: https://context7.com/casvt/kapowarr/llms.txt Retrieves statistics about your comic library, including volume count, issue count, and downloaded issue count. Requires an API key. ```bash # Get library statistics curl -X GET "http://localhost:5656/api/volumes/stats?api_key=$API_KEY" ``` -------------------------------- ### Download Application Logs Source: https://context7.com/casvt/kapowarr/llms.txt Download the current Kapowarr log file. The downloaded file will be named with a timestamp, e.g., 'kapowarr_log_YYYY_MM_DD.txt'. Requires an API key. ```bash curl -X GET "http://localhost:5656/api/system/logs?api_key=$API_KEY" \ -o "kapowarr_log_$(date +%Y_%m_%d).txt" ``` -------------------------------- ### Test External Download Client Connection Source: https://context7.com/casvt/kapowarr/llms.txt Tests the connection to an external download client before saving its configuration. This is useful for verifying credentials and network accessibility. ```bash # Test a client connection before saving curl -X POST "http://localhost:5656/api/externalclients/test?api_key=$API_KEY" \ -H "Content-Type: application/json" \ -d '{ "client_type": "qBittorrent", "base_url": "http://localhost:8080", "username": "admin", "password": "adminpass", "api_token": null }' ``` -------------------------------- ### Settings Management Source: https://context7.com/casvt/kapowarr/llms.txt Endpoints for retrieving and updating Kapowarr's configuration settings. Supports getting all settings, updating specific fields, resetting keys to defaults, and rotating the API key. ```APIDOC ## Settings ### Get and update settings `GET /api/settings` returns all public settings. `PUT` updates them. `DELETE` with a `reset_keys` list resets specific keys to defaults. Changes to `host`, `port`, `url_base`, or proxy settings automatically trigger a server restart. ```bash # Get current settings curl -X GET "http://localhost:5656/api/settings?api_key=$API_KEY" # Response includes all public settings fields # Update settings — rename files, set file naming format, enable conversion curl -X PUT "http://localhost:5656/api/settings?api_key=$API_KEY" \ -H "Content-Type: application/json" \ -d '{ "rename_downloaded_files": true, "file_naming": "{series_name} ({year}) Volume {volume_number} Issue {issue_number}", "volume_folder_naming": "{series_name}/Volume {volume_number} ({year})", "convert": true, "format_preference": "cbz,cbr", "extract_issue_ranges": true, "log_level": 20, "comicvine_api_key": "YOUR_CV_KEY_HERE" }' # Reset specific settings to defaults curl -X DELETE "http://localhost:5656/api/settings?api_key=$API_KEY" \ -H "Content-Type: application/json" \ -d '{"reset_keys": ["file_naming", "volume_folder_naming"]}' # Rotate the API key curl -X POST "http://localhost:5656/api/settings/api_key?api_key=$API_KEY" # Response: {"error": null, "result": { ...updated settings with new api_key... }} # List available conversion formats (depends on system capabilities) curl -X GET "http://localhost:5656/api/settings/availableformats?api_key=$API_KEY" ``` ``` -------------------------------- ### Map Host Ports to Container Ports Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/docker.md Configure port forwarding to make Kapowarr accessible on your host machine. Replace the host port (left side) with your desired port. ```bash - 8009:5656 ``` ```bash - 443:5656 ``` ```bash - 5656:5656 ``` -------------------------------- ### Reset Specific Settings to Defaults Source: https://context7.com/casvt/kapowarr/llms.txt Reset specific configuration settings to their default values by providing a list of keys to reset. Requires an API key. ```bash curl -X DELETE "http://localhost:5656/api/settings?api_key=$API_KEY" \ -H "Content-Type: application/json" \ -d '{"reset_keys": ["file_naming", "volume_folder_naming"]}' ``` -------------------------------- ### Run Unit Tests Source: https://github.com/casvt/kapowarr/blob/main/CONTRIBUTING.md Discover and run all Python unit tests within the specified directory. Requires Python 3. ```bash python3 -m unittest discover -s ./tests -p '*.py' ``` -------------------------------- ### Preview File Renames and Conversions Source: https://context7.com/casvt/kapowarr/llms.txt Preview changes before applying them. Use volume or issue specific endpoints to see which files will be renamed or converted. ```bash # Preview renames for all files in a volume curl -X GET "http://localhost:5656/api/volumes/7/rename?api_key=$API_KEY" ``` ```bash # Preview renames for a specific issue's files curl -X GET "http://localhost:5656/api/issues/123/rename?api_key=$API_KEY" ``` ```bash # Preview conversions for all files in a volume curl -X GET "http://localhost:5656/api/volumes/7/convert?api_key=$API_KEY" ``` ```bash # Preview conversions for a specific issue curl -X GET "http://localhost:5656/api/issues/123/convert?api_key=$API_KEY" ``` -------------------------------- ### Download Kapowarr Release Source: https://github.com/casvt/kapowarr/blob/main/docs/src/installation/manual_install.md Downloads the latest Kapowarr release archive from GitHub using wget. ```bash wget https://github.com/Casvt/Kapowarr/releases/latest/download/Kapowarr-release.zip ``` -------------------------------- ### List available client types and their required fields Source: https://context7.com/casvt/kapowarr/llms.txt Retrieves a list of supported external download client types and the fields required for each. ```APIDOC ## GET /api/externalclients/options ### Description Lists available external download client types and their required configuration fields. ### Method GET ### Endpoint /api/externalclients/options ### Parameters #### Query Parameters - **api_key** (string) - Required - The API key for authentication. ### Response #### Success Response (200) - **qBittorrent** (array of strings) - Required fields for qBittorrent. - **Transmission** (array of strings) - Required fields for Transmission. ``` -------------------------------- ### Test a client connection before saving Source: https://context7.com/casvt/kapowarr/llms.txt Tests the connection to an external download client using provided credentials and base URL. ```APIDOC ## POST /api/externalclients/test ### Description Tests the connection to an external download client. ### Method POST ### Endpoint /api/externalclients/test ### Parameters #### Query Parameters - **api_key** (string) - Required - The API key for authentication. #### Request Body - **client_type** (string) - Required - The type of the client (e.g., "qBittorrent"). - **base_url** (string) - Required - The base URL of the client. - **username** (string) - Optional - The username for authentication. - **password** (string) - Optional - The password for authentication. - **api_token** (string) - Optional - The API token for authentication. ### Response #### Success Response (200) - **error** (string) - Null if successful, otherwise an error message. - **result** (object) - Contains connection test results. - **success** (boolean) - Indicates if the connection test was successful. - **description** (string) - A description of the test result. ``` -------------------------------- ### Run 'Update All' Task Source: https://context7.com/casvt/kapowarr/llms.txt Initiates the 'Update All' task, which refreshes and scans all volumes, optionally skipping recently updated ones. Requires the API key and a JSON payload specifying the command and skip option. ```bash # Run 'Update All' (refresh + scan all volumes, skip recently updated) curl -X POST "http://localhost:5656/api/system/tasks?api_key=$API_KEY" \ -H "Content-Type: application/json" \ -d '{"cmd": "update_all", "allow_skipping": true}' ``` -------------------------------- ### Manage Kapowarr Tasks Source: https://context7.com/casvt/kapowarr/llms.txt Endpoints for initiating, querying, and canceling tasks like file conversion. Use `mass_convert` to convert files in a volume. Task IDs are returned for tracking. ```bash curl -X POST "http://localhost:5656/api/system/tasks?api_key=$API_KEY" \ -H "Content-Type: application/json" \ -d '{"cmd": "mass_convert", "volume_id": 7, "filepath_filter": ["/comics/Deadpool/old.cbr"]}' ``` ```bash curl -X GET "http://localhost:5656/api/system/tasks/10?api_key=$API_KEY" ``` ```bash curl -X DELETE "http://localhost:5656/api/system/tasks/10?api_key=$API_KEY" ``` ```bash curl -X GET "http://localhost:5656/api/system/tasks/history?api_key=$API_KEY&offset=0" ``` ```bash curl -X GET "http://localhost:5656/api/system/tasks/planning?api_key=$API_KEY" ``` ```bash curl -X DELETE "http://localhost:5656/api/system/tasks/history?api_key=$API_KEY" ``` -------------------------------- ### Rotate API Key Source: https://context7.com/casvt/kapowarr/llms.txt Generate a new API key and update the application settings with it. The response will include the updated settings, including the new API key. Requires an API key. ```bash curl -X POST "http://localhost:5656/api/settings/api_key?api_key=$API_KEY" ``` -------------------------------- ### Manual Search for Volume Downloads Source: https://context7.com/casvt/kapowarr/llms.txt Searches configured sources for downloadable content for an entire volume. Requires the volume ID and API key. ```bash # Search for downloadable content for a whole volume curl -X GET "http://localhost:5656/api/volumes/7/manualsearch?api_key=$API_KEY" ```