From da3c11845e6f0e6e2d30f7b0514a64f39682d573 Mon Sep 17 00:00:00 2001 From: Felix Schneider Date: Thu, 22 Oct 2026 13:21:12 +0200 Subject: [PATCH 1/3] fix: add BLOCKLISTED/DELETED media status https://github.com/home-assistant/core/issues/188007 --- src/python_overseerr/models.py | 2 ++ tests/__snapshots__/test_overseerr.ambr | 2 +- tests/fixtures/seerr/request.json | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/python_overseerr/models.py b/src/python_overseerr/models.py index b62ae00..0262c1d 100644 --- a/src/python_overseerr/models.py +++ b/src/python_overseerr/models.py @@ -57,6 +57,8 @@ class MediaStatus(IntEnum): PROCESSING = 3 PARTIALLY_AVAILABLE = 4 AVAILABLE = 5 + BLOCKLISTED = 6 + DELETED = 7 @dataclass diff --git a/tests/__snapshots__/test_overseerr.ambr b/tests/__snapshots__/test_overseerr.ambr index 3c35f5f..cb8ebf5 100644 --- a/tests/__snapshots__/test_overseerr.ambr +++ b/tests/__snapshots__/test_overseerr.ambr @@ -2668,7 +2668,7 @@ 'id': 182, 'imdb_id': 'tt0079470', 'media_type': , - 'status': , + 'status': , 'tmdb_id': 583, 'tvdb_id': None, 'updated_at': datetime.datetime(2026, 1, 30, 13, 0, 47, tzinfo=datetime.timezone.utc), diff --git a/tests/fixtures/seerr/request.json b/tests/fixtures/seerr/request.json index d4cbaa7..a252a28 100644 --- a/tests/fixtures/seerr/request.json +++ b/tests/fixtures/seerr/request.json @@ -715,7 +715,7 @@ "tmdbId": 583, "tvdbId": null, "imdbId": "tt0079470", - "status": 5, + "status": 7, "status4k": 1, "createdAt": "2026-01-30T13:00:47.000Z", "updatedAt": "2026-01-30T13:00:47.000Z", From 7e2748134f524eab56b907c699c2c442b2d04ac7 Mon Sep 17 00:00:00 2001 From: Felix Schneider Date: Thu, 22 Oct 2026 13:21:37 +0200 Subject: [PATCH 2/3] fix: make User email/plexId optional Related to https://github.com/home-assistant/core/issues/188007 --- src/python_overseerr/models.py | 4 ++-- tests/__snapshots__/test_overseerr.ambr | 8 ++++---- tests/fixtures/seerr/tv.json | 14 -------------- 3 files changed, 6 insertions(+), 20 deletions(-) diff --git a/src/python_overseerr/models.py b/src/python_overseerr/models.py index 0262c1d..6073d81 100644 --- a/src/python_overseerr/models.py +++ b/src/python_overseerr/models.py @@ -194,11 +194,9 @@ class User(DataClassORJSONMixin): """User model.""" id: int - email: str avatar: str username: str | None plex_username: str | None = field(metadata=field_options(alias="plexUsername")) - plex_id: int | None = field(metadata=field_options(alias="plexId")) movie_quota_limit: int | None = field( metadata=field_options(alias="movieQuotaLimit") ) @@ -214,6 +212,8 @@ class User(DataClassORJSONMixin): metadata=field_options(alias="recoveryLinkExpirationDate") ) user_type: int | None = field(metadata=field_options(alias="userType")) + email: str | None = None + plex_id: int | None = field(metadata=field_options(alias="plexId"), default=None) settings: UserSettings | None = None warnings: list[str] = field(default_factory=list) jellyfin_username: str | None = field( diff --git a/tests/__snapshots__/test_overseerr.ambr b/tests/__snapshots__/test_overseerr.ambr index cb8ebf5..1b2919f 100644 --- a/tests/__snapshots__/test_overseerr.ambr +++ b/tests/__snapshots__/test_overseerr.ambr @@ -3216,7 +3216,7 @@ 'avatar_version': '1757624411000', 'created_at': datetime.datetime(2025, 9, 11, 20, 41, 53, tzinfo=datetime.timezone.utc), 'display_name': 'anotheruser', - 'email': 'two@email.com', + 'email': None, 'id': 3, 'jellyfin_user_id': '50a5812baa05458ea7df786d69146ba7', 'jellyfin_username': 'anotheruser', @@ -3242,7 +3242,7 @@ 'avatar_version': '1757624411000', 'created_at': datetime.datetime(2025, 9, 11, 20, 41, 53, tzinfo=datetime.timezone.utc), 'display_name': 'anotheruser', - 'email': 'two@email.com', + 'email': None, 'id': 3, 'jellyfin_user_id': '50a5812baa05458ea7df786d69146ba7', 'jellyfin_username': 'anotheruser', @@ -3276,7 +3276,7 @@ 'avatar_version': '1757624411000', 'created_at': datetime.datetime(2025, 9, 11, 20, 41, 53, tzinfo=datetime.timezone.utc), 'display_name': 'anotheruser', - 'email': 'two@email.com', + 'email': None, 'id': 3, 'jellyfin_user_id': '50a5812baa05458ea7df786d69146ba7', 'jellyfin_username': 'anotheruser', @@ -3302,7 +3302,7 @@ 'avatar_version': '1757624411000', 'created_at': datetime.datetime(2025, 9, 11, 20, 41, 53, tzinfo=datetime.timezone.utc), 'display_name': 'anotheruser', - 'email': 'two@email.com', + 'email': None, 'id': 3, 'jellyfin_user_id': '50a5812baa05458ea7df786d69146ba7', 'jellyfin_username': 'anotheruser', diff --git a/tests/fixtures/seerr/tv.json b/tests/fixtures/seerr/tv.json index a6485bd..f176197 100644 --- a/tests/fixtures/seerr/tv.json +++ b/tests/fixtures/seerr/tv.json @@ -590,13 +590,11 @@ "permissions": 160, "warnings": [], "id": 3, - "email": "two@email.com", "plexUsername": null, "jellyfinUsername": "anotheruser", "username": null, "recoveryLinkExpirationDate": null, "userType": 3, - "plexId": null, "jellyfinUserId": "50a5812baa05458ea7df786d69146ba7", "avatar": "/avatarproxy/50a5812baa05458ea7df786d69146ba7?v=1757624411000", "avatarETag": "6959257e91a22b569369d2bf18f374d625e4af431e32317c0196031b545602b0", @@ -614,13 +612,11 @@ "permissions": 160, "warnings": [], "id": 3, - "email": "two@email.com", "plexUsername": null, "jellyfinUsername": "anotheruser", "username": null, "recoveryLinkExpirationDate": null, "userType": 3, - "plexId": null, "jellyfinUserId": "50a5812baa05458ea7df786d69146ba7", "avatar": "/avatarproxy/50a5812baa05458ea7df786d69146ba7?v=1757624411000", "avatarETag": "6959257e91a22b569369d2bf18f374d625e4af431e32317c0196031b545602b0", @@ -689,13 +685,11 @@ "permissions": 160, "warnings": [], "id": 3, - "email": "two@email.com", "plexUsername": null, "jellyfinUsername": "anotheruser", "username": null, "recoveryLinkExpirationDate": null, "userType": 3, - "plexId": null, "jellyfinUserId": "50a5812baa05458ea7df786d69146ba7", "avatar": "/avatarproxy/50a5812baa05458ea7df786d69146ba7?v=1757624411000", "avatarETag": "6959257e91a22b569369d2bf18f374d625e4af431e32317c0196031b545602b0", @@ -713,13 +707,11 @@ "permissions": 160, "warnings": [], "id": 3, - "email": "two@email.com", "plexUsername": null, "jellyfinUsername": "anotheruser", "username": null, "recoveryLinkExpirationDate": null, "userType": 3, - "plexId": null, "jellyfinUserId": "50a5812baa05458ea7df786d69146ba7", "avatar": "/avatarproxy/50a5812baa05458ea7df786d69146ba7?v=1757624411000", "avatarETag": "6959257e91a22b569369d2bf18f374d625e4af431e32317c0196031b545602b0", @@ -785,13 +777,11 @@ "permissions": 162, "warnings": [], "id": 2, - "email": "one@email.com", "plexUsername": null, "jellyfinUsername": "someone", "username": null, "recoveryLinkExpirationDate": null, "userType": 3, - "plexId": null, "jellyfinUserId": "1bba6a9788ab418f89ae263315a1d712", "avatar": "/avatarproxy/1bba6a9788ab418f89ae263315a1d712?v=1758451253000", "avatarETag": "981168a3c88b23c0656316955720ce9fb99a50a4ebcc0ebb874a8aa42a1837e0", @@ -854,13 +844,11 @@ "permissions": 2, "warnings": [], "id": 1, - "email": "one@email.com", "plexUsername": null, "jellyfinUsername": "somebody", "username": null, "recoveryLinkExpirationDate": null, "userType": 3, - "plexId": null, "jellyfinUserId": "feba146b527a4e08bff0ae8c7c53facb", "avatar": "/avatarproxy/feba146b527a4e08bff0ae8c7c53facb?v=null", "avatarETag": null, @@ -923,13 +911,11 @@ "permissions": 162, "warnings": [], "id": 2, - "email": "one@email.com", "plexUsername": null, "jellyfinUsername": "someone", "username": null, "recoveryLinkExpirationDate": null, "userType": 3, - "plexId": null, "jellyfinUserId": "1bba6a9788ab418f89ae263315a1d712", "avatar": "/avatarproxy/1bba6a9788ab418f89ae263315a1d712?v=1758451253000", "avatarETag": "981168a3c88b23c0656316955720ce9fb99a50a4ebcc0ebb874a8aa42a1837e0", From 1a2d847bc983e2f56159862d0b2eb2a6e255afd4 Mon Sep 17 00:00:00 2001 From: Felix Schneider Date: Thu, 22 Oct 2026 13:24:56 +0200 Subject: [PATCH 3/3] chore: bump version --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 100bdd3..f7ac0df 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "python_overseerr" -version = "0.2.0" +version = "0.2.1" description = "Asynchronous Python client for Overseerr." authors = ["Joost Lekkerkerker "] maintainers = ["Joost Lekkerkerker "]