You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your feature request related to a problem? Please describe.
The series progress badge ("Ended (X / Y)") relies entirely on SeriesMetadata.TotalCount and MaxCount, which are only ever populated from a file's embedded ComicInfo.xml <Count> tag during a scan. There is currently no way to set these manually - confirmed by reading Kavita.Services/SeriesService.cs's UpdateSeriesMetadata(): every other field (PublicationStatus, Genres, Tags, People, etc.) is explicitly copied from the incoming DTO and can be locked, but TotalCount/MaxCount are never referenced at all, even though SeriesMetadataDto exposes them in the Swagger schema. At the chapter level it's even more locked down: UpdateChapterDto doesn't declare these fields at all, so there's no way to set them via POST /api/Chapter/update either.
My use case: I maintain my library's metadata from an external database (via the existing Series/metadata and Chapter/update endpoints, which work great for everything else), and I deliberately never modify the archive files themselves (embedding ComicInfo.xml would change their file hashes, which I rely on elsewhere). Right now the only way I've found to set a series' total/owned count is a direct SQLite UPDATE on SeriesMetadata, which requires stopping the container each time — not something I want to script into a routine metadata sync. Describe the solution you'd like
Expose TotalCount and MaxCount as editable fields (with matching Locked flags, consistent with every other field) on POST /api/Series/metadata, the same way PublicationStatus already works — so external tools/scripts can set them without touching files or the database directly. Describe alternatives you've considered
Embedding ComicInfo.xml <Count> — works, but changes file hashes, which isn't acceptable for my setup.
Direct SQLite edit — works (confirmed: UPDATE SeriesMetadata SET TotalCount=?, MaxCount=?, PublicationStatus=4 WHERE SeriesId=?), but requires stopping Kavita and isn't something safe to automate routinely.
Idea Category
API
Duration of Using Kavita
No response
Before submitting
I've already searched for existing ideas before posting.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
Idea Description
Is your feature request related to a problem? Please describe.
The series progress badge ("Ended (X / Y)") relies entirely on
SeriesMetadata.TotalCountandMaxCount, which are only ever populated from a file's embedded ComicInfo.xml<Count>tag during a scan. There is currently no way to set these manually - confirmed by readingKavita.Services/SeriesService.cs'sUpdateSeriesMetadata(): every other field (PublicationStatus, Genres, Tags, People, etc.) is explicitly copied from the incoming DTO and can be locked, butTotalCount/MaxCountare never referenced at all, even thoughSeriesMetadataDtoexposes them in the Swagger schema. At the chapter level it's even more locked down:UpdateChapterDtodoesn't declare these fields at all, so there's no way to set them viaPOST /api/Chapter/updateeither.My use case: I maintain my library's metadata from an external database (via the existing
Series/metadataandChapter/updateendpoints, which work great for everything else), and I deliberately never modify the archive files themselves (embedding ComicInfo.xml would change their file hashes, which I rely on elsewhere). Right now the only way I've found to set a series' total/owned count is a direct SQLiteUPDATEonSeriesMetadata, which requires stopping the container each time — not something I want to script into a routine metadata sync.Describe the solution you'd like
Expose
TotalCountandMaxCountas editable fields (with matchingLockedflags, consistent with every other field) onPOST /api/Series/metadata, the same wayPublicationStatusalready works — so external tools/scripts can set them without touching files or the database directly.Describe alternatives you've considered
<Count>— works, but changes file hashes, which isn't acceptable for my setup.UPDATE SeriesMetadata SET TotalCount=?, MaxCount=?, PublicationStatus=4 WHERE SeriesId=?), but requires stopping Kavita and isn't something safe to automate routinely.Idea Category
API
Duration of Using Kavita
No response
Before submitting
All reactions