Icons
Search and create icons from 200k+ open-source icons via Iconify.
Type reference
// Icons are fetched from the Iconify API (iconify.design) and inserted as SVG vector nodes.// Icon names use "prefix:name" format. Common sets: lucide, mdi, tabler, heroicons, ph.// Examples: "lucide:home", "mdi:account-circle", "tabler:arrow-right", "ph:gear-bold"// Use search to discover icons by keyword. Use collections to list available icon sets.// create fetches the SVG and inserts it via frames.create — auto-detects fill vs stroke icons.// Use colorVariableName (not fillVariableName/strokeVariableName) — the handler applies to whichever channel has paint.// Fetched icons are cached in memory for the session (same icon+size is fetched once).// Powered by Iconify (iconify.design) — open-source icon framework.3 methods available.
search
Section titled “search”Search icons by keyword across all Iconify sets
| Parameter | Type | Required | Description |
|---|---|---|---|
query | string | ✓ | Search keyword (e.g. "home", "arrow", "user") |
prefix | string | ✗ | Restrict to one icon set (e.g. "lucide", "mdi") |
limit | number | ✗ | Max results (default 64) |
Response
| Field | Type | Description |
|---|---|---|
icons | string[] | Icon names (e.g. ["lucide:home", "mdi:home"]) |
total | number | Total matching icons |
collections
Section titled “collections”List available Iconify icon sets
| Parameter | Type | Required | Description |
|---|---|---|---|
query | string | ✗ | Filter by name or prefix (e.g. "lucide", "material") |
category | string | ✗ | Filter by category (e.g. "UI 24px", "Logos", "Emoji") |
limit | number | ✗ | Max results (default: all) |
Response
Array of icon set metadata
| Field | Type | Description |
|---|---|---|
collections | array | [{ prefix, name, total, category, license }] |
total | number | Total matching collections (before limit) |
create
Section titled “create”Create an icon node in Figma from an Iconify icon name
| Parameter | Type | Required | Description |
|---|---|---|---|
icon | string | ✓ | Icon name — "prefix:name" e.g. "lucide:home", "mdi:account" |
size | number | ✗ | Icon size in px (default 24, square) |
name | string | ✗ | Layer name (default: icon name) |
parentId | string | ✗ | Parent node ID. Omit for current page root. |
x | number | ✗ | X position (default: 0) |
y | number | ✗ | Y position (default: 0) |
colorVariableName | string | ✗ | Color variable for the icon — auto-detects fill vs stroke (e.g. 'text/primary') |
colorStyleName | string | ✗ | Paint style for the icon — auto-detects fill vs stroke (e.g. 'Icon/Primary') |
Response
| Field | Type | Description |
|---|---|---|
results | object[] | One entry per input item |
↳ id | string |