Skip to main content

UpdateLibraryRequest

Update library request

Note: series_strategy and series_config are immutable after library creation. book_strategy, book_config, number_strategy, and number_config can be updated.

allowedFormatsstring[]nullable

Allowed file formats (e.g., ["CBZ", "CBR", "EPUB"])

Example: ["CBZ","CBR"]
autoMatchConditionsobject | nullnullable

Auto-match conditions (JSON object with mode and rules) Controls when auto-matching runs for this library.

  • Omit field: keep existing value
  • Set to null: clear the conditions
  • Set to value: update the conditions
bookConfig

Book strategy-specific configuration (JSON, mutable)

bookStrategyBookStrategy (string)

Book naming strategy (mutable) Options: filename, metadata_first, smart, series_name

Possible values: [filename, metadata_first, smart, series_name, custom]

defaultReadingDirectionstring | nullnullable

Default reading direction for books in this library (ltr, rtl, ttb or webtoon)

Example: rtl
descriptionstring | nullnullable

Optional description

Example: Updated comic book collection
excludedPatternsstring | nullnullable

Excluded path patterns (newline-separated, e.g., ".DS_Store\nThumbs.db")

Example: .DS_Store
isActiveboolean | nullnullable

Active status

Example: true
namestring | nullnullable

Library name

Example: Comics Collection
numberConfig

Number strategy-specific configuration (JSON, mutable)

numberStrategyNumberStrategy (string)

Book number strategy (mutable) Options: file_order, metadata, filename, smart

Possible values: [file_order, metadata, filename, smart]

pathstring | nullnullable

Filesystem path to the library

Example: /media/comics
scanningConfig object

Scanning configuration

cronSchedulestring | nullnullable

Cron expression for scheduled scans. Accepts standard 5-part Unix cron (e.g., "0 */6 * * *") or 6-part with seconds (e.g., "0 0 */6 * * *"). Stored as provided; normalization happens at scheduler level.

Example: 0 */6 * * *
cronTimezonestring | nullnullable

IANA timezone for the cron schedule (e.g., "America/Los_Angeles", "Europe/London"). Overrides the server-level scheduler.timezone config for this library. If not set, falls back to the server default (which itself defaults to UTC).

Example: America/Los_Angeles
enabledbooleanrequired

Whether scheduled scanning is enabled

Example: true
purgeDeletedOnScanboolean

Purge soft-deleted books after completing a scan

Example: false
scanModestringrequired

Default scan mode for scheduled scans ("normal" or "deep")

Example: normal
scanOnStartboolean

Scan library when the application starts

Example: false
titlePreprocessingRulesobject | nullnullable

Title preprocessing rules (JSON array of regex rules) Applied during scan to clean series titles before metadata search.

  • Omit field: keep existing value
  • Set to null: clear the rules
  • Set to value: update the rules
UpdateLibraryRequest
{
"allowedFormats": [
"CBZ",
"CBR"
],
"autoMatchConditions": "Unknown Type: object,null",
"bookStrategy": "filename",
"defaultReadingDirection": "rtl",
"description": "Updated comic book collection",
"excludedPatterns": ".DS_Store",
"isActive": true,
"name": "Comics Collection",
"numberStrategy": "file_order",
"path": "/media/comics",
"scanningConfig": {
"cronSchedule": "0 */6 * * *",
"cronTimezone": "America/Los_Angeles",
"enabled": true,
"purgeDeletedOnScan": false,
"scanMode": "normal",
"scanOnStart": false
},
"titlePreprocessingRules": "Unknown Type: object,null"
}