Vecteezy APIvecteezy.com ↗
Search Vecteezy's vector library by keyword and retrieve metadata including title, author, tags, license type, preview URL, and download URL.
What is the Vecteezy API?
The Vecteezy API exposes 2 endpoints that let you search millions of vector images and retrieve per-vector metadata. The search_vectors endpoint returns paginated results with thumbnail URLs, dimensions, license status, and direct download links, while get_vector_details provides author info, tags, description, and preview URL for any specific vector by ID or URL.
curl -X GET 'https://api.parse.bot/scraper/44f20c0e-18b7-4b9b-96b8-3db176a8e720/search_vectors?page=1&query=flowers&license_type=free' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace vecteezy-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
from parse_apis.vecteezy_api import Vecteezy, VectorSummary, Vector, LicenseType
client = Vecteezy()
# Search for free flower vectors
for summary in client.vectorsummaries.search(query="flowers", license_type=LicenseType.FREE):
print(summary.title, summary.thumbnail_url, summary.is_pro)
# Get full details for each vector
detail = summary.details()
print(detail.author, detail.license, detail.tags)
break
Search for vector images by keyword or browse a default category. Returns paginated results with thumbnails and metadata. If query is omitted, browses the backgrounds category. Each result includes a numeric ID usable with get_vector_details for full metadata.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (1-based). |
| query | string | Search keyword (e.g., 'flowers', 'winter holiday'). If omitted, browses the backgrounds category. |
| license_type | string | Filter by license type. Accepted values: 'free', 'pro'. |
{
"type": "object",
"fields": {
"page": "integer, current page number",
"items": "array of vector summary objects with keys: id, title, detail_url, thumbnail_url, width, height, is_pro, download_url",
"query": "string or null, the search query used"
},
"sample": {
"data": {
"page": 1,
"items": [
{
"id": "952678",
"title": "Set of Hand Drawn Line Flowers vector",
"width": "400",
"height": "200",
"is_pro": false,
"detail_url": "https://www.vecteezy.com/vector-art/952678-set-of-hand-drawn-line-flowers",
"download_url": "https://www.vecteezy.com/resources/952678/download",
"thumbnail_url": "https://static.vecteezy.com/system/resources/thumbnails/000/952/678/small/set-of-hand-drawn-line-flowers.jpg"
}
],
"query": "flowers"
},
"status": "success"
}
}About the Vecteezy API
Search Vectors
The search_vectors endpoint accepts a query string (e.g., 'flowers', 'abstract background') and returns a paginated list of matching vectors. Each item in the items array includes id, title, thumbnail_url, width, height, is_pro, detail_url, and download_url. Use the page parameter to walk through result sets, and the license_type filter ('free' or 'pro') to restrict results by access tier. If no query is supplied, the endpoint defaults to browsing the backgrounds category.
Vector Details
The get_vector_details endpoint takes either a numeric vector_id_or_url (e.g., '123456') or a full Vecteezy detail page URL. It returns a richer record than the search results: tags (an array of topic strings), author (contributor username), license (e.g., 'Pro License'), description, preview_url, and download_url. This is useful when you need tag-level categorization or author attribution beyond what the search result objects expose.
Coverage and Limitations
Both endpoints reflect public listing data. The is_pro flag in search results and the license field in detail responses let you distinguish freely usable vectors from those requiring a Vecteezy Pro subscription. Pagination is integer-based via the page parameter; there is no cursor or offset mechanism. The download_url is included in both endpoints, but actual download access depends on the license tier of the vector.
The Vecteezy API is a managed, monitored endpoint for vecteezy.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when vecteezy.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official vecteezy.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Populate a design asset browser with vector thumbnails, titles, and dimensions from
search_vectors. - Filter a library dashboard to show only free-license vectors using the
license_type: 'free'parameter. - Pull author attribution and tags via
get_vector_detailsto auto-tag assets in a digital asset management system. - Build a topic-based vector catalog by querying multiple keywords and storing
thumbnail_urlanddetail_urlper result. - Validate vector license type before offering a download by checking the
licensefield fromget_vector_details. - Aggregate trending tags across vectors in a niche by collecting the
tagsarray from multiple detail lookups.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Vecteezy have an official developer API?+
What does `search_vectors` return for each result, and how do I tell if a vector requires a paid subscription?+
items array includes id, title, thumbnail_url, width, height, detail_url, download_url, and is_pro. The is_pro boolean indicates whether the vector is behind a Pro subscription. You can also pre-filter the full result set using the license_type parameter set to 'free' or 'pro'.Can I retrieve the full list of tags for a vector from the search results alone?+
search_vectors does not return tags. Tags are only available from get_vector_details, which returns a tags array alongside author, license, description, and preview_url. If you need tag data in bulk, you would call get_vector_details for each vector ID returned by search.Does the API support downloading the actual SVG or EPS file directly?+
download_url for each vector, but completing the download requires the user to have the appropriate Vecteezy license (free or Pro). The API itself does not proxy or deliver the binary file content. You can fork this API on Parse and revise it to add an endpoint that handles download resolution or link validation for your use case.Is there any way to browse vectors by category rather than by keyword?+
search_vectors defaults to the backgrounds category when no query is provided, and there is no explicit category-browsing parameter. The API covers keyword search and license filtering. You can fork it on Parse and revise it to add category-specific browsing endpoints.