BUG: Ombi TV show requests show "unknown" user + webhooks not reliably updating TV content #53
Closed
opened 2026-05-27 08:55:21 +01:00 by Gandalf
·
3 comments
No Branch/Tag Specified
main
release/1.7.38
develop
release/1.7.37
release/1.7.36
release/1.7.35
release/1.7.34
release/1.7.33
release/1.7.32
release/1.7.31
release/1.7.30
release/1.7.29
release/1.7.28
release/1.7.27
release/1.7.26
release/1.7.25
release/1.7.24
release/1.7.23
release/1.7.22
release/1.7.21
release/1.7.20
release/1.7.19
release/1.7.18
release/1.7.17
release/1.7.16
release/1.7.15
release/1.7.14
release/1.7.13
release/1.7.12
release/1.7.11
release/1.7.10
release/1.7.9
release/1.7.8
release/1.7.7
release/1.7.6
release/1.7.5
release/1.7.4
release/1.7.3
release/1.6.0
release/1.5.5
release/1.5.3
release/1.5.2
release/1.5.0a
release/1.4.0
release/1.3.1a
release/1.3.1
release/1.3.0
release/v1.2.2
release/v1.2.1
release/v1.2.0
release/1.1.2
release/1.1.1
release/1.1.0
release/1.0.0
release/0.2.0
release/v0.1.5
release/0.1.4
release/0.1.3
release/0.1
v1.7.38
v1.7.37
v1.7.36
v1.7.35
v1.7.34
v1.7.33
v1.7.32
v1.7.31
v1.7.30
v1.7.29
v1.7.28
v1.7.27
v1.7.26
v1.7.25
v1.7.24
v1.7.23
v1.7.22
v1.7.21
v1.7.20
v1.7.19
v1.7.18
v1.7.17
v1.7.16
v1.7.15
v1.7.14
v1.7.13
v1.7.12
v1.7.11
v1.7.10
v1.7.9
v1.7.8
v1.7.7
v1.7.6
v1.7.5
v1.7.4
v1.7.3
v1.6.0
v1.5.5
v1.5.3
v1.5.2
v1.5.1
v1.5.0a
v1.4.0
v1.3.1a
v1.3.1
v1.2.2
v1.2.1
v1.2.0
v1.1.2
v1.1.1
v1.1.0
v1.0.0
v0.2.0
v0.1.5
v0.1.4
v0.1.3
v0.1.2
v0.1.1
v0.1.0
Labels
Clear labels
Area/Docker
Area/Download Clients
Area/Frontend
Area/History
Area/Logging
Area/Matching
Area/Proxy
Area/SSE
Area/Webhooks
Compat/Breaking
Compat/Non-Breaking
Kind/Bug
Kind/Documentation
Kind/Enhancement
Kind/Feature
Kind/Security
Kind/Testing
Docker image and container packaging
Download client integrations
Client-side UI and build tooling
History and completed downloads views
Log streaming, file handling, and debug infrastructure
Matching and correlation logic
Upstream service proxy routes
Server-Sent Events and real-time streaming
Webhook processing and reliability
Breaking change that won't be backward compatible
Non-breaking compatibility change
Something is not working
Documentation changes
Improve existing functionality
New functionality
This is security issue
Issue or pull request related to testing
Priority
Critical
1
The priority is critical
Priority
High
2
The priority is high
Priority
Low
4
The priority is low
Priority
Medium
3
The priority is medium
Reviewed
Confirmed
1
Issue has been confirmed
Reviewed
Duplicate
2
This issue or pull request already exists
Reviewed
Invalid
3
Invalid issue
Reviewed
Won't Fix
3
This issue won't be fixed
Status
Abandoned
3
Somebody has started to work on this but abandoned work
Status
Blocked
1
Something is blocking this issue or pull request
Status
Need More Info
2
Feedback is required to reproduce issue or to continue work
Milestone
No items
No Milestone
Projects
Clear projects
No projects
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: Gandalf/sofarr#53
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Related to closed issue: #47 (Ombi webhook authentication fix)
Problem Summary
Even after the fix in commit
7b9c895(which added?secret=query parameter support for Ombi webhooks), two related issues remain:This breaks the core value proposition of linking downloads to the original Ombi requester, especially for TV shows.
Steps to Reproduce
OMBI_INSTANCESand enable webhooks via the one-click setup (SOFARR_BASE_URL+SOFARR_WEBHOOK_SECRET).Root Cause Analysis
Primary Cause: Incomplete user extraction for TV requests
File:
server/utils/ombiHelpers.js→extractRequestedUser()The function handles both object and string formats for
requestedUser/RequestedUserand has good fallbacks for movies:However, Ombi TV show request objects (returned by Ombi’s
/api/v1/Requests/tvendpoint and in webhook payloads) frequently use different field names or nesting for the requester:userrequestedByombiUserrequestedByUserseasons[]for multi-episode requestsWhen none of the current fields match, the function returns an empty string (
''), which is then displayed as "unknown" in the UI andfilterRequestsByUser().Movies work because their request objects consistently populate one of the supported fields.
Secondary Cause: Webhook processing appears ineffective for TV
File:
server/routes/webhook.jsPOST /api/webhook/ombi) correctly authenticates (thanks to #47) and callsprocessWebhookEvent().poll:ombi-requests(bothmovieandtvarrays) after a 2-second delay.Expected Behavior
Proposed Solution
1. Improve
extractRequestedUser()(highest priority)Add more Ombi TV-specific fields and deeper fallback logic in
server/utils/ombiHelpers.js:Optionally add a small debug log when returning empty for a TV-type request.
2. Strengthen Ombi webhook reliability
OMBI_WEBHOOK_REFRESH_DELAY_MS, default 2000).processWebhookEventfor Ombi until the new request appears with valid user data.requestedUserobject when extraction fails for TV events.3. Minor improvements
Additional Context
Resolved in commit
95bd703b26.TV show requests are still displayed I correctly. The enhancement #55 to show request date and link also not working and status of TV show requests is "unknown"
Resolved in commit
33b122d. TV request status, user, and date are now correctly extracted from childRequests[] sub-objects. See CHANGELOG for details.