Skip to main content
Developer Documentation

API Reference

Complete reference for the GetIllustrations REST API. Search, browse, and download 171K+ illustrations and icons programmatically.

Get API Key View Pricing
Overview

Base URL and getting started

Base URL +

All API requests use this base URL:

https://getillustrations.com/api/v1/plugin

Append the endpoint path to the base URL. For example, to search:

GET https://getillustrations.com/api/v1/plugin/search?q=business
Quick Start: Your First API Call +

Step 1: Create an API key from your dashboard.

Step 2: Include your key in the Authorization header:

// JavaScript example
const response = await fetch('https://getillustrations.com/api/v1/plugin/search?q=business', {
  headers: { 'Authorization': 'Bearer gi_pro_your_key_here' }
});
const data = await response.json();

Step 3: Parse the JSON response and use the asset URLs in your application.

Authentication

API key setup and usage

API Key Authentication +

Every API request must include your API key in the Authorization header:

Authorization: Bearer YOUR_API_KEY

API keys are prefixed by tier: gi_free_ (Free — 1,500 calls/mo; free assets clean, and your own library included clean if you're subscribed), gi_pro_ (Pro — the entire library + 300,000 calls/mo, $49/mo or $409/yr), gi_ent_ (Enterprise). API access is a separate plan — a download subscription gives you the FREE API tier reaching your own library, not Pro.

Your API key is shown only once when created. Save it securely. You cannot retrieve it later. You can regenerate a new key if needed.
Email/Password Authentication (Alternative) +

POST /auth

Authenticate with email and password to get an access token (used by the Figma plugin).

ParameterTypeDescription
emailstringrequiredYour account email
passwordstringrequiredYour account password

Returns a JWT access token. Include in subsequent requests as Authorization: Bearer {token}.

Who Can Use the API

Access requirements and tiers

API Access Requirements +

API access is a premium feature. To protect our assets from unauthorized distribution, API access is available only to:

Customer TypeAPI AccessCalls/Month
Illustration All AccessIncluded1,500
Icons All AccessIncluded1,500
Ultimate BundleIncluded1,500
Pro API (add-on)$49/month300,000
Enterprise APICustomUnlimited
Free accountNo access
Individual pack purchaseNo access
Need more than the free tier? Get API Pro ($49/mo or $409/yr) for the entire library + 300,000 calls/mo, or contact us for Enterprise pricing.
Illustration Packs

Browse and list illustration packs

GET /packs: List illustration packs +
ParameterTypeDescription
featuredbooleanFilter featured packs only
freebooleanFilter free packs only
styleIdnumberFilter by illustration style ID
pagenumberPage number (default 1)
limitnumberItems per page, max 100 (default 20)
GET /packs/:packId/illustrations: Get pack illustrations +
ParameterTypeDescription
packIdnumberrequiredPack ID (URL path)
pagenumberPage number
limitnumberItems per page

Returns illustration objects with id, name, tags, thumbnail, and packName.

Icon Packs

Browse and list icon packs

GET /icon-packs: List icon packs +
ParameterTypeDescription
featuredbooleanFilter featured only
freebooleanFilter free only
pagenumberPage number
limitnumberItems per page
GET /icon-packs/:packId/icons: Get pack icons +
ParameterTypeDescription
packIdstringrequiredIcon pack UUID (URL path)
pagenumberPage number
limitnumberItems per page
Downloads

Download individual assets

GET /download/:type/:packId/:assetId: Download asset +
ParameterTypeDescription
typestringrequiredillustration or icon
packIdstringrequiredPack ID
assetIdstringrequiredAsset ID
formatstringsvg (default) or png
sizestringPNG size: small, medium, large, xl, original
Downloads require an active bundle subscription or pack purchase. The API checks your access before serving files. Bulk downloads are not supported. Assets must be downloaded individually.
SVG Inline

Get raw SVG content for direct embedding

Retrieve raw SVG markup for icons and illustrations, ready to embed directly into HTML, slides, or applications.

GET /api/v1/plugin/svg/{type}/{id}

Path Parameters:

  • type: icon or illustration
  • id: Asset ID from search results

Query Parameters:

  • json=true: Returns JSON wrapper instead of raw SVG

Raw SVG Response:

Content-Type: image/svg+xml

<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24">
  <path d="M3 9l9-7 9 7v11..."></path>
</svg>

JSON Response (with ?json=true):

{
  "id": "abc123",
  "name": "Home",
  "tags": "home, house, building",
  "type": "icon",
  "svg_inline": "<svg>...</svg>",
  "svg_url": "https://api.iconify.design/feather/home.svg",
  "pack": { "name": "Feather Icons" }
}

Use case: AI slide generators, SaaS tools, and design apps that need to embed SVG directly into their output without downloading files.

Batch & Browse

Batch operations and browsing endpoints

Batch SVG Retrieval

POST /api/icons/batch-svg

Get SVG content for up to 50 icons in a single request. Pro subscribers only.

Request Body (JSON):

{
  "iconIds": ["id1", "id2", "id3"]
}

Response:

{
  "icons": [
    { "id": "id1", "name": "Home", "svg": "<svg>...</svg>", "tags": "home, house" }
  ],
  "count": 3
}
Rate limit: 10 batch requests per minute. Maximum 50 icons per request.

Icon Categories

GET /api/icon-categories

List all icon categories with counts. Useful for building category navigation in your app.

Icon Pack Statistics

GET /api/icon-packs/stats

Get summary statistics for all icon packs including total counts, free vs paid breakdown.

Random Icons

GET /api/icons/random?count=24&pack=feather-free-icons

Get a random selection of free icons. Great for showcases, hero sections, or placeholder content.

ParameterTypeDescription
countintNumber of icons (1-100, default 24)
packstringFilter by pack urlName (optional)
Favorites

Save and manage favorite assets

GET /favorites: Get favorites +

Returns all packs, icon packs, and illustrations the user has favorited.

POST /favorites: Add/remove favorite +
ParameterTypeDescription
typestringrequiredpack, iconPack, or illustration
idstringrequiredItem ID to favorite/unfavorite (toggle)
Rate Limits

Usage limits and headers

Rate Limit Tiers +
TierCalls/MonthPriceDownloads
Included (Bundle)1,500Included with bundleFull quality SVG + PNG
Pro API300,000$49/monthFull quality SVG + PNG
EnterpriseUnlimitedCustomFull quality + SLA

Rate limit information is included in every response header:

X-RateLimit-Limit: 1500
X-RateLimit-Remaining: 1423
X-RateLimit-Reset: 2026-04-01T00:00:00Z
Error Handling

HTTP status codes and error responses

Status Codes +

200 OK 400 Bad Request 401 Unauthorized 403 Forbidden 404 Not Found 429 Rate Limited

// Error response format
{
  "error": "Rate limit exceeded",
  "code": "RATE_LIMITED",
  "retryAfter": 3600
}
File Formats

Available download formats via API

Supported Formats +
FormatAvailable via APINotes
SVGYesFull scalable vector
PNG 1xYesStandard resolution
PNG 2xYesRetina / HiDPI
ThumbnailsYesLow-res for UI previews
AI / SourceNoDownload from website only
IconJarNoDownload from website only
SDKs & Code Examples

Integration examples

JavaScript / Node.js +
// Search for illustrations
const API_KEY = 'gi_pro_your_key_here';
const BASE = 'https://getillustrations.com/api/v1/plugin';

const res = await fetch(`${BASE}/search?q=teamwork&limit=5`, {
  headers: { 'Authorization': `Bearer ${API_KEY}` }
});
const { hits } = await res.json();

// Download an SVG
const dl = await fetch(`${BASE}/download/illustration/${packId}/${assetId}?format=svg`, {
  headers: { 'Authorization': `Bearer ${API_KEY}` }
});
const svgContent = await dl.text();
Python +
import requests

API_KEY = 'gi_pro_your_key_here'
BASE = 'https://getillustrations.com/api/v1/plugin'
headers = {'Authorization': f'Bearer {API_KEY}'}

# Search
r = requests.get(f'{BASE}/search', params={'q': 'nature'}, headers=headers)
results = r.json()

# List packs
r = requests.get(f'{BASE}/packs', params={'limit': 10}, headers=headers)
packs = r.json()
cURL +
# Search illustrations
curl -H "Authorization: Bearer gi_pro_xxx" \
  "https://getillustrations.com/api/v1/plugin/search?q=business"

# List icon packs
curl -H "Authorization: Bearer gi_pro_xxx" \
  "https://getillustrations.com/api/v1/plugin/icon-packs?limit=5"

Ready to integrate?

Get your API key and start building in minutes.

Get API Key Contact Sales

Forget Password!