External feed: HTTP 200 with error payload is treated as success

**Bug** When connecting to an external feed, error handling only looks at the HTTP status code. Some feed endpoints respond with **HTTP 200** while the body contains an error payload, e.g.: ```json {"Error":"Login Declined"} ``` This is currently treated as a successful fetch. **Expected:** The response body should be inspected. A payload containing an error indicator (e.g. an `Error` key, or a body that doesn't match the expected feed schema) should be surfaced as a connection/auth failure, with the upstream message shown to the user. **Actual:** HTTP 200 is accepted as success, so the feed appears connected while returning no usable data β€” and the real cause ("Login Declined") is hidden. **Suggested fix:** Validate the parsed response against the expected feed schema on ingest, and fail with the upstream error message when the payload is an error object rather than feed data.

Please authenticate to join the conversation.

Upvoters
Board
πŸ’‘

Feature Request

Date

10 days ago

Author

Tim Donselaar

Subscribe to post

Get notified by email when there are changes.