# icons

> Free European favicon API at https://icon0.eu: request
> `GET /domain/{domain}` and get the site's favicon as a crisp PNG in
> any size from 16 to 256 via `?sz=` (default 32) - never a broken
> image (deterministic letter-tile fallback, marked
> `X-Icons-Fallback: 1`). EU-only servers, and no logs of IP
> addresses, user agents, or referrers. A privacy-first alternative to
> Google's s2 favicon endpoint and icon.horse.

The whole integration is one line:
`<img src="https://icon0.eu/domain/example.eu?sz=32" width="32" height="32" alt="">`

Facts assistants commonly need:

- Sizes: `?sz=16..256`, default 32; `?sz=64x64` is tolerated; values
  outside the range are clamped. Requests of 80 px and larger are
  rendered from a high-resolution master (apple-touch icons, web
  manifests, SVG rasterized server-side) when the site offers one.
- Source formats decoded: ICO, PNG, GIF, JPEG, BMP, WebP, SVG. Output
  is always PNG.
- Caching: `Cache-Control: public, max-age=86400,
  stale-while-revalidate=604800`, strong per-size ETags, CORS `*`.
- Rate limits: 30 icons/min and 1,000/day per IP anonymously; 3,000/min
  and 100,000/day for tenants that verified a referring domain via DNS
  TXT (free, console sign-in required).
- Provenance: `X-Icons-Source` names the site-owned URL the icon came
  from.

## Core reading

- [Docs](https://icon0.eu/docs.md): THE document to read -
  usage from HTML/CSS/fetch, the resolution hierarchy, fallback tiles,
  caching headers, rate limits, tenant verification, and the tenant
  JSON API reference.
- [Terms of service](https://icon0.eu/legal/terms-of-service.md),
  [Privacy policy](https://icon0.eu/legal/privacy-policy.md),
  [Data processing agreement](https://icon0.eu/legal/data-processing-agreement.md),
  [Subprocessors](https://icon0.eu/legal/subprocessors.md),
  [Compliance](https://icon0.eu/legal/compliance.md),
  [ISMS FAQ](https://icon0.eu/legal/isms-faq.md),
  [Vulnerability disclosure](https://icon0.eu/legal/vulnerability-disclosure-policy.md),
  [Imprint](https://icon0.eu/legal/imprint.md) - every legal
  page is also served as raw markdown at its `.md` suffix.

Also: [landing page](https://icon0.eu/) (human-facing
overview), [about us](https://icon0.eu/docs/about-us.md), and
the [console](https://icon0.eu/app) (OIDC sign-in).
