Create
Drawico

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.

RequestReturnsLimit per IP
GET /api/v1What the API offers, with examples.–
GET /api/v1/setsEvery 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 429 with retryAfterSeconds and a Retry-After header. 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.