Skip to content

Add titlovi.com provider - #47

Merged
josdion merged 1 commit into
josdion:masterfrom
stipic:add-titlovi-com-provider
Oct 5, 2026
Merged

josdion merged 1 commit into
josdion:masterfrom
stipic:add-titlovi-com-provider

Conversation

@stipic

@stipic stipic commented Oct 2, 2026

Copy link
Copy Markdown
Contributor

Adds titlovi.com as a subtitles provider. Closes #13.

The provider talks to the titlovi.com API used by the official Kodi and Jellyfin plugins, so a titlovi.com account is required. API access is free for the first 30 days after registration, afterwards an active supporter subscription is needed. The login token is stored in the plugin configuration and renewed when it expires or gets rejected.

  • search by title, with the IMDb ID when available and a fallback to title only; episode searches also pick up season packs
  • languages available on the site: Bosnian, Croatian, English, Macedonian, Serbian (Latin and Cyrillic) and Slovenian
  • results are downloaded and scored per subtitle file like the other providers; search responses and archives go through the existing file cache
  • configuration page: provider checkbox and an account section that validates the login on save (Jellyfin and Emby)
  • unit tests (xunit) for the API client helpers and models in tests/subbuzz.tests, run by a new CI job; the plugin projects exclude tests/**

Verified without an account against the public endpoints: login and search error handling, archive download and subtitle page links. A search with a real account that has API access is still to be confirmed, so the PR is opened as a draft.

Search and download subtitles through the titlovi.com API used by the
official Kodi and Jellyfin plugins. A titlovi.com account with API access
is required; the login token is kept in the plugin configuration and
renewed when it expires or is rejected.

- search by title and IMDb ID, episodes also pick up season packs
- Bosnian, Croatian, English, Macedonian, Serbian (Latin and Cyrillic)
  and Slovenian subtitles
- configuration page with account validation for Jellyfin and Emby
- unit tests for the API client helpers and models, run in CI
@stipic
stipic marked this pull request as ready for review October 2, 2026 13:13
@josdion

josdion commented Oct 3, 2026

Copy link
Copy Markdown
Owner

@stipic Hello and thank you for the pull request. Did you able to verify if it's working with a real account that has API access?

@stipic

stipic commented Oct 5, 2026 •

Copy link
Copy Markdown
Contributor Author

@josdion Yes, I tested it with my titlovi.com account with API access on a local Jellyfin 12.1 with the plugin built from this branch. Searching works for movies and episodes (including season packs) in hr/sr/bs/sl/en, and downloading saves the subtitle next to the video. I also checked token renewal: an invalid token (401) and an expired one both trigger a new login and the search succeeds.

Here are few screenshots that confirms:

Turn on titlovi.com

image

Wrong username and password

image

Correct username and password

image

Fetched subtitles from titlovi.com

image

@josdion
josdion merged commit 8148a7a into josdion:master Oct 5, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add titlovi.com please

2 participants