The photo fetcher
What NoviKvadrat-PartnerFetch is, when it downloads your photos, the rules it follows, and how to report a problem.
What it is#
NoviKvadrat-PartnerFetch downloads the listing photos that partner software sends to the Novi Kvadrat partner API as URLs. It runs when a staged listing is imported — within minutes of a push — and only for photos it does not already have.
Its user agent:
text
NoviKvadrat-PartnerFetch/1 (+https://developers.novikvadrat.rs/fetcher)The rules#
- HTTPS on port 443 only.
- Public hosts only: addresses in private, local, link-local and other reserved ranges are refused, and so are IP-literal URLs and local host names.
- The connection goes to the address we checked, so a DNS change in the middle of a request can't redirect it.
- At most 3 redirects, each checked again.
- 15 seconds for the whole download, 10 MiB per image.
- JPEG, PNG, WebP and AVIF only, decided by the file's own bytes (its magic number), not only by
Content-Type. SVG, GIF and HEIC are refused. - Images are re-encoded to WebP, at most 2560 px on the long side, with metadata stripped.
- Unchanged photos are not fetched again when the URL and its digest match the previous push.
- Sandbox items fetch at most 8 photos.
- A 4xx answer, a non-image or a file too large fails the photo at once; a timeout, a 5xx or a 429 is retried later with backoff.
Allowing the fetcher#
Our egress IP addresses are not fixed and not published. Serve photos from a public CDN or allow the user agent.
Reporting a problem#
If the fetcher misbehaves on your servers — too many requests, an unexpected address, anything else — write to partners@novikvadrat.rs with the time, the URL and your server's log line. Partners: see Photos and the fetcher.