Developer API
A small read-only JSON API over the icon catalogue, for scripts, plugins and build tools. No key and no sign-up. It returns only what the public pages show.
| Request | Returns | Limit per IP |
|---|---|---|
GET /api/v1 | What the API offers, with examples. | – |
GET /api/v1/sets | Every icon set: id, name, number of icons, licence, author, grid size. | 60/min |
GET /api/v1/sets/{id} | One set, with its description. | 120/min |
GET /api/v1/icons?q=… | Search. Also ?set=, ?style=outline|solid|twotone, ?size=16|24|32, ?lic=permissive|cc0|ccby, ?page=, ?pageSize= (max 100). | 60/min |
GET /api/v1/icons?set=… | All icons of one set, by name, page by page. | 60/min |
GET /api/v1/icons/{set}/{name} | One icon: SVG markup, tags, style, links to SVG and PNG files, licence. | 120/min |
Example
curl "https://drawico.com/api/v1/icons?q=arrow&style=outline&pageSize=5"
{
"data": [
{ "set": "lucide", "name": "arrow-left", "width": 24, "height": 24, "style": "outline",
"url": "https://drawico.com/icon/lucide/arrow-left",
"svgUrl": "https://drawico.com/svg/lucide/arrow-left.svg",
"pngUrl": "https://drawico.com/png/lucide/arrow-left.png" }
],
"page": 1, "pageSize": 5, "total": 1234, "totalPages": 247
}Rules
- Read-only: only GET requests. Responses allow use from any website (CORS).
- Over the limit you get
429withretryAfterSecondsand aRetry-Afterheader. Please cache what you fetch. - Each icon keeps the licence of its set. Check the licence in the response, and credit the author where a set is CC BY.