getfavi (favi) developer resources
This page is the getfavi (favi) developer resources index for the public favicon HTTP API hosted on Vercel at getfavi.vercel.app. Use it when you need favi API docs, the OpenAPI spec, auth docs, webhooks, MCP server notes, or the agent skill. Search for “Vercel developer resources”, “getfavi developer resources”, or “favi OpenAPI spec”. No account is required.
When to use favi
Use favi when the job is to search a free icon library and export a favicon package (SVG, ICO, apple-touch, PWA / maskable). favi is the wrong fetch if you need an MCP server, OAuth, webhooks, a paid icon marketplace, or to automate the visual picker.
Authentication
favi authentication: none. The public API does not require API keys, OAuth, cookies, or login. Do not send Authorization headers. Production rate-limits by client IP at the Vercel WAF; over the limit the API returns HTTP 429.
OpenAPI and API catalog
The favi OpenAPI 3.1 document is at /openapi.json. The RFC 9727 api-catalog linkset is at /.well-known/api-catalog. The agent index is /llms.txt. The Cursor / skills.sh skill is /skills/favi/SKILL.md.
- favi OpenAPI spec — application/openapi+json
- favi API catalog — RFC 9727 application/linkset+json
- favi llms.txt — Agent index and when-to-use
- favi SKILL.md — Install with npx skills add JoeBuildsStuff/favi-next
- favi sitemap
- favi Vercel developer resources — Name-based index for Vercel-hosted favi API docs
- favi authentication
- favi webhooks
- favi MCP server
- favi OpenAPI spec docs
- favi API errors
- favi API docs
- favi REST versioning
- favi rate limits
- favi agents — Markdown-friendly agent onboarding
- favi developers
- getfavi
HTTP API
Health
GET /api/v1/health (alias GET /api/health) → { status, icons } with the indexed icon count.
curl -sS https://getfavi.vercel.app/api/v1/healthLibraries
GET /api/v1/libraries lists packs (lucide, tabler, phosphor, hugeicons, remix), licenses, styles, and counts.
curl -sS https://getfavi.vercel.app/api/v1/librariesSearch icons
GET /api/v1/icons?q=&library=&style=&limit=&offset=. q expands curated synonyms. Each hit includes library, name, style, and svg.
curl -sS "https://getfavi.vercel.app/api/v1/icons?q=image&library=lucide&style=outline&limit=12"Exact icon
GET /api/v1/icons/:library/:name?style= returns one icon or 404.
curl -sS "https://getfavi.vercel.app/api/v1/icons/lucide/image?style=outline"Export favicon zip
POST /api/v1/export with JSON {library,name,style} or {text} plus optional bg, bg_mode, bg_to, bg_angle, fill, stroke, padding, stroke_scale, shape, include_dark_mode, dark_*, site_name. Response is application/zip.
curl -sS -X POST https://getfavi.vercel.app/api/v1/export \
-H 'Content-Type: application/json' \
-d '{"library":"lucide","name":"image","style":"outline","bg":"#075985","stroke":"#ffffff"}' \
-o favicon.zipRate limits
Production only. POST /api/v1/export: 20 / 60s / IP. GET /api/v1/icons: 120 / 60s / IP. GET /api/v1/health and /api/v1/libraries: 40 / 60s / IP. Responses include RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset, RateLimit, RateLimit-Policy, and Retry-After on 429. See /docs/rate-limits.
Webhooks and MCP
favi does not publish webhooks and does not run an MCP server. Dedicated pages: /docs/webhooks and /docs/mcp. Agents should call the HTTP API and read this page, /llms.txt, /openapi.json, and /skills/favi/SKILL.md.