Logo endpoint
One URL per company. The endpoint returns the best available logo for the domain, ready to be used anywhere an image URL works.
URL shape
Section titled “URL shape”# the logo, as an imageGET https://img.anylogo.dev/{domain}
# exampleshttps://img.anylogo.dev/github.comhttps://img.anylogo.dev/stripe.comhttps://img.anylogo.dev/linear.app{domain} is a bare registrable domain — no scheme, no path, no www. prefix.
What you get back
Section titled “What you get back”The response is a plain image: an SVG when a sharp vector mark is available, otherwise a high-resolution PNG. The Content-Type header reflects the format.
Logos are served at their original size — there are no resizing parameters. SVGs scale to any size losslessly; for PNGs, size the image in your markup or CSS (for example width="64") and the browser scales it down cleanly.
Caching
Section titled “Caching”Responses are cached aggressively so repeat loads are instant: browsers cache a logo for a day, and the edge network keeps it for a week. Logos refresh automatically as new versions become available — you never need to bust the cache yourself.
CORS and headers
Section titled “CORS and headers”The endpoint is CORS-enabled (Access-Control-Allow-Origin: *), so it can be fetched from browser code on any origin, not just used in img tags. Every successful response also carries an X-Anylogo-Source header, a short label identifying which logo variant was served.
# response headers on a successful requestContent-Type: image/svg+xml # or image/pngCache-Control: public, max-age=86400, s-maxage=604800Access-Control-Allow-Origin: *X-Anylogo-Source: ... # which logo variant was servedErrors
Section titled “Errors”When no logo is available for a domain, the endpoint returns 404 with a JSON body. Misses aren’t permanent: the domain is re-checked periodically (roughly weekly), so if a logo becomes available later, the same URL starts working.
# 404 — no logo available for this domain{ "error": "no logo found", "domain": "example.com" }
# 400 — the domain is malformed{ "error": "invalid domain" }In an img tag, a 404 simply fires the image’s onerror handler — handy for falling back to initials or a placeholder. See Errors for the full reference.
Sizes and formats
Section titled “Sizes and formats”By default the original image is returned. Request a variant with query parameters:
<img src="https://img.anylogo.dev/github.com?size=64"><img src="https://img.anylogo.dev/github.com?size=128&format=webp">size— one of16, 32, 64, 128, 256, 512. The image is scaled to fit within that square, never upscaled beyond its source resolution.format—pngorwebp.
SVG logos are returned as-is regardless of size — they scale losslessly at any resolution, so use them directly. Responses include X-Anylogo-Width and X-Anylogo-Height headers with the source dimensions.