Skip to content

feat(notification): include picture galleries in the HTTP webhook - #489

Merged
orangecoding merged 1 commit into
orangecoding:masterfrom
eneuberg:images-in-webhook
Oct 13, 2026
Merged

orangecoding merged 1 commit into
orangecoding:masterfrom
eneuberg:images-in-webhook

Conversation

@eneuberg

Copy link
Copy Markdown
Contributor

What does this PR do?

Adds an optional images: [{url, caption?, floorPlan?}] field to the HTTP webhook, built only from responses Fredy already loads:

  • ImmoScout24, Kleinanzeigen: detail response (when provider details are enabled)
  • Immowelt/SeLoger, Deutsche Wohnen, immobilien.de, Engel & Völkers: search response

No additional requests. imageUrl is unchanged, and the field is omitted when there is no gallery. Floor plans come first, capped at 20.

Related issue

#344: as mentioned there, opening each listing can be enabled in the settings (provider details), but even then the pictures in those responses are dropped. This PR passes them on for webhook consumers.

Going further, these pictures could also be stored and shown in Fredy itself (database, listing view). I'll open a separate issue for that.

AI disclosure (required)

  • ai:none - I wrote this myself. No AI generated code, text or commit messages.
  • ai:assisted - AI helped with parts of it (autocomplete, refactoring, tests, docs). I reviewed and understand every line.
  • ai:generated - AI produced most or all of this PR. I reviewed it, but it is largely machine written.

Which AI: Claude Code (Claude Opus 5.5)

How much: Most of the code and tests; I defined the approach, reviewed the diff and trimmed it down.

Why: Faster to cover the different gallery formats of several providers.

Checklist

  • yarn test:offline passes (or yarn test if the change touches a live provider)
  • yarn lint and yarn format:check pass
  • The change is useful for everybody, not a custom tweak for my own setup
  • I have read and answered the AI disclosure above honestly

Providers now pass on the pictures they already fetch as `images` (floor
plans first, at most 20), and the HTTP adapter sends them next to `imageUrl`.
Detail page: ImmoScout24, Kleinanzeigen. Search result: Immowelt, SeLoger,
Deutsche Wohnen, immobilien.de, Engel & Völkers. No extra requests.
@orangecoding
orangecoding merged commit 54ed5fe into orangecoding:master Oct 13, 2026
3 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.

2 participants