API Documentation¶
Blacklist / Block Content¶
- GET /v2/client/blacklist¶
Displays current blacklist associated with client key
Note
Blacklist is cached for 10 minutes. If you recently made changes they will appear here within 10 minutes.
Request:
GET https://api.thenounproject.com/v2/client/blacklistResponse:
{ "blacklist": { "collection_ids": [ 1234 ], "icon_ids": [ 42, 143, 1337 ], "search_terms": [ "bad word here", "harry potter", "previous blacklist entry here", "ünîcōdę is šüppørtëd, along with phråses" ] }, "usage_limits": { "monthly": { "limit": 5000, "usage": 440 } } }
- POST /v2/client/blacklist/id¶
Accepts array of blacklist ids
- Query Parameters:
type (string) – the blacklist type, values must be either “icon” or “collection” and is set to “icon” by default.
- Parameters:
json (json) – should include “blacklist” which is an array of icon IDs or collection IDs, and optionally “overwrite” which overwrites the old blacklist if true, and adds to it if false.
Important
Maximum array length of 1,000 per request (5 for free users)
Maximum icon & collection id blacklist length of 20,000 total (5 for free users)
Request:
POST https://api.thenounproject.com/v2/client/blacklist/id?type=iconData:
{ "blacklist": [ 42, 1337 ], "overwrite": false }Response:
{ "blacklist": { "collection_ids": [ 1234 ], "icon_ids": [ 42, 143, 1337 ], "search_terms": [ "bad word here", "harry potter", "previous blacklist entry here", "ünîcōdę is šüppørtëd, along with phråses" ] }, "usage_limits": { "monthly": { "limit": 5000, "usage": 440 } } }
- POST /v2/client/blacklist/term¶
Accepts array of blacklist terms and phrases
- Parameters:
json (json) – should include “blacklist” which is an array of terms and phrases, and optionally “overwrite” which overwrites the old blacklist if true, and adds to it if false.
Important
Maximum array length of 1,000 per request (5 for free users)
Maximum search term blacklist length of 20,000 total (5 for free users)
Request:
POST https://api.thenounproject.com/v2/client/blacklist/termData:
{ "blacklist": [ "harry potter", "ünîcōdę is šüppørtëd, along with phråses" ], "overwrite": false }Response:
{ "blacklist": { "collection_ids": [ 1234 ], "icon_ids": [ 42, 143, 1337 ], "search_terms": [ "bad word here", "harry potter", "previous blacklist entry here", "ünîcōdę is šüppørtëd, along with phråses" ] }, "usage_limits": { "monthly": { "limit": 5000, "usage": 440 } } }
Usage¶
- GET /v2/client/usage¶
Returns current client key usage and limits
Request:
GET https://api.thenounproject.com/v2/client/usageResponse:
{ "monthly": { "limit": 5000, "usage": 440 } }
Icon¶
Search and Filter Icons¶
- GET /v2/icon¶
Returns a list of icons
- Query Parameters:
query (string) – search term
styles (string) – filter results by style (solid, line)
line_weight (string) – filter results by line weight (must be an integer or range of integers from 1 to 60)
limit_to_public_domain (int) – limit results to public domain icons only
thumbnail_size (int) – the thumbnail size to be returned (42, 84, 200)
blacklist (int) – removes any results matching terms or ids in blacklist
include_svg (int) – include SVGs in the results
limit (int) – maximum number of results
prev_page (string) – token for paging to the previous page
next_page (string) – token for paging to the next page
Important
By default, PNG urls are included. SVG sizes vary from a few hundred bytes to several megabytes. We recommend using PNGs for displaying large numbers of icons at once, and retrieving the SVG for a specific icon when a vector format is needed.
Note
Asset URLs are temporary and will expire within an hour after the call. Once that URL expires, a new call will be required to retrieve a new asset URL.
Request:
GET https://api.thenounproject.com/v2/icon?query=parking&limit=4&thumbnail_size=84&blacklist=1&next_page=31352E3739393633322C69636F6E2331333534303034Response:
{ "generated_at": "2018-05-15 20:14:50.615761", "icons": [ { "attribution": "Parking by I Like Bears from Noun Project", "collections": [ { "creator": { "name": "I Like Bears", "permalink": "/ilkebrs", "username": "ilkebrs" }, "id": "4459", "name": "Estate Amenities", "permalink": "/ilkebrs/collection/estate-amenities" } ], "creator": { "name": "I Like Bears", "permalink": "/ilkebrs", "username": "ilkebrs" }, "id": "148533", "license_description": "creative-commons-attribution", "permalink": "/term/parking/148533", "styles": [ { "style": "line", "line_weight": 8 } ], "tags": [ "parking", "automobile", "car", "taxi", "transport", "transportation", "travel" ], "term": "Parking", "thumbnail_url": "https://static.thenounproject.com/png/148533-84.png" }, { "attribution": "Parking Sign by Vectors Market from Noun Project", "collections": [ { "creator": { "name": "Vectors Market", "permalink": "/vectorsmarket", "username": "vectorsmarket" }, "id": "37560", "name": "Parking Line Icon", "permalink": "/vectorsmarket/collection/parking-line-icon" } ], "creator": { "name": "Vectors Market", "permalink": "/vectorsmarket", "username": "vectorsmarket" }, "id": "1204672", "license_description": "creative-commons-attribution", "permalink": "/term/parking-sign/1204672", "styles": [ { "style": "line" } ], "tags": [ "parking-sign", "parking", "parking-area", "parking-space", "parking-zone" ], "term": "Parking Sign", "thumbnail_url": "https://static.thenounproject.com/png/1204672-84.png" }, { "attribution": "car parking by SBTS from Noun Project", "collections": [ { "creator": { "name": "SBTS", "permalink": "/sbts2018", "username": "sbts2018" }, "id": "50788", "name": "Car set1", "permalink": "/sbts2018/collection/car-set1" } ], "creator": { "name": "SBTS", "permalink": "/sbts2018", "username": "sbts2018" }, "id": "1694509", "license_description": "creative-commons-attribution", "permalink": "/term/car-parking/1694509", "styles": [ { "style": "solid" } ], "tags": [ "car-parking", "no-parking", "parking-lot", "parking-sign", "vehicle-parking" ], "term": "car parking", "thumbnail_url": "https://static.thenounproject.com/png/1694509-84.png" }, { "attribution": "Parking by Pause08 from Noun Project", "collections": [ { "creator": { "name": "Pause08", "permalink": "/Pause08", "username": "Pause08" }, "id": "45832", "name": "Hotel Collection", "permalink": "/Pause08/collection/hotel-collection" } ], "creator": { "name": "Pause08", "permalink": "/Pause08", "username": "Pause08" }, "id": "1541332", "license_description": "creative-commons-attribution", "permalink": "/term/parking/1541332", "styles": [ { "style": "line", "line_weight": 16 } ], "tags": [ "parking", "car-parking", "hotel", "service", "travel" ], "term": "Parking", "thumbnail_url": "https://static.thenounproject.com/png/1541332-84.png" } ], "next_page": "31332E3932333137352C69636F6E2331353431333332", "prev_page": "31352E3635353936352C69636F6E23313438353333", "total": 1009, "usage_limits": { "monthly": { "limit": 5000, "usage": 440 } } }
Find Similar Icons¶
- GET /v2/icon/(int: icon_id)/more-like-this¶
Returns a list of alternate icons similar in design style to the referenced icon. The icon ID is used to match style. If a query is provided, results will match the reference icon’s style and the query’s subject. If no query is provided, results will match the reference icon’s style as well as its subject matter.
- Parameters:
icon_id (int) – reference icon for style matching
- Query Parameters:
query (string) – search term; if provided, results match this term for subject matter while still matching the design style of the referenced icon
limit_to_public_domain (int) – limit results to public domain icons only
thumbnail_size (int) – the thumbnail size to be returned (42, 84, 200)
blacklist (int) – removes any results matching terms or icon/collection IDs in blacklist
include_svg (int) – include SVGs in the results
limit (int) – maximum number of results
prev_page (string) – token for paging to the previous page
next_page (string) – token for paging to the next page
Important
By default, PNG urls are included. SVG sizes vary from a few hundred bytes to several megabytes. We recommend using PNGs for displaying large numbers of icons at once, and retrieving the SVG for a specific icon when a vector format is needed.
Note
Result relevancy may decrease for results further from the top of the list. It is recommended to avoid paginating too deep into the results.
Asset URLs are temporary and will expire within an hour after the call. Once that URL expires, a new call will be required to retrieve a new asset URL.
Request:
GET https://api.thenounproject.com/v2/icon/85/more-like-this?limit=4&thumbnail_size=200&blacklist=1
Response:
{ "icons": [ { "attribution": "Ship by SHAKA FAHMI from Noun Project", "id": "8131984", "license_description": "creative-commons-attribution", "permalink": "/icon/ship-8131984/", "term": "Ship", "thumbnail_url": "https://static.thenounproject.com/png/8131984-200.png", "collections": [ { "id": "271539", "name": "Travel", "creator": { "name": "SHAKA FAHMI", "permalink": "/creator/shaka2025/", "username": "shaka2025" } } ], "tags": [ "cruise", "ferry-boat", "marine", "ship", "ship", "transportation" ], "styles": [ { "style": "solid" } ], "creator": { "name": "SHAKA FAHMI", "permalink": "/creator/shaka2025/", "username": "shaka2025" } }, { "attribution": "Ship by Nikita Ivanov from Noun Project", "id": "5345797", "license_description": "creative-commons-attribution", "permalink": "/icon/ship-5345797/", "term": "Ship", "thumbnail_url": "https://static.thenounproject.com/png/5345797-200.png", "collections": [ { "id": "175728", "name": "Travel app", "permalink": "/browse/collection-icon/travel-app-175728/", "creator": { "name": "Nikita Ivanov", "permalink": "/creator/nickivanov/", "username": "nickivanov" } } ], "tags": [ "cruise", "ferriage", "ferry", "ship", "waterway" ], "styles": [ { "style": "solid" } ], "creator": { "name": "Nikita Ivanov", "permalink": "/creator/nickivanov/", "username": "nickivanov" } }, { "attribution": "Ship by Andrejs Kirma from Noun Project", "id": "3863457", "license_description": "creative-commons-attribution", "permalink": "/icon/ship-3863457/", "term": "Ship", "thumbnail_url": "https://static.thenounproject.com/png/3863457-200.png", "collections": [ { "id": "128920", "name": "Craziness Filled", "creator": { "name": "Andrejs Kirma", "permalink": "/creator/andrejs/", "username": "andrejs" } } ], "tags": [ "boat", "cruise", "ferry", "raft", "ship", "transport" ], "styles": [ { "style": "solid" } ], "creator": { "name": "Andrejs Kirma", "permalink": "/creator/andrejs/", "username": "andrejs" } }, { "attribution": "Ship by Adrien Coquet from Noun Project", "id": "3202971", "license_description": "creative-commons-attribution", "permalink": "/icon/ship-3202971/", "term": "Ship", "thumbnail_url": "https://static.thenounproject.com/png/3202971-200.png", "collections": [], "tags": [ "boat", "ferry-boat", "ship", "transportation", "travel" ], "styles": [ { "style": "solid" } ], "creator": { "name": "Adrien Coquet", "permalink": "/creator/coquet_adrien/", "username": "coquet_adrien" } } ], "generated_at": "2026-04-14 20:21:11.492471", "total": 6860, "next_page": "362E302C33323032393731", "usage_limits": { "monthly": { "limit": 5000, "usage": 17 } } }
Get an Icon¶
- GET /v2/icon/(int: icon_id)¶
Returns a single icon
- Parameters:
icon_id (int) – icon ID
- Query Parameters:
thumbnail_size (int) – the thumbnail size to be returned (42, 84, 200)
blacklist (int) – removes any results matching terms or icon/collection ids in blacklist
Note
Asset URLs are temporary and will expire within an hour after the call. Once that URL expires, a new call will be required to retrieve a new asset URL.
Request:
GET https://api.thenounproject.com/v2/icon/1234?thumbnail_size=200Response:
{ "generated_at": "2018-05-10 00:26:42.221427", "icon": { "attribution": "Telephone by John Caserta from Noun Project", "collections": [ { "creator": { "name": "John Caserta", "permalink": "/johncaserta", "username": "johncaserta" }, "id": "5", "name": "Modern Pictograms", "permalink": "/johncaserta/collection/modern-pictograms" } ], "creator": { "name": "John Caserta", "permalink": "/johncaserta", "username": "johncaserta" }, "icon_url": "https://static.thenounproject.com/svg_clean/1234.svg?Expires=1525915602&Signature=ZtepAdnb-RJ-nkKsy3P0f-4rz9zvE59F5z1tDUIOCo6frgKlw7q739zelNpNCgfPnQ4mQzTK1OG9x6DJaC8fkQRLu2zjK3IHQ4NO1sRNW8ZkrRTdM~gXXX2ZGmmOEc7QUPoUGdDd0iZO93CZPFUG-TQ3U2cdLMsS0z6EZuw~LLo_&Key-Pair-Id=APKAI5ZVHAXN65CHVU2Q", "id": "1234", "license_description": "creative-commons-attribution", "permalink": "/term/telephone/1234", "styles": [ { "style": "solid" } ], "tags": [ "telephone", "communication", "phone", "talking", "tech", "technology" ], "term": "Telephone", "thumbnail_url": "https://static.thenounproject.com/png/1234-200.png" }, "total": 1, "usage_limits": { "monthly": { "limit": 5000, "usage": 440 } } }
Specify Color, Size, and File Type¶
- GET /v2/icon/(int: icon_id)/download¶
Returns a single icon file of desired color and filetype
- Parameters:
icon_id (int) – icon ID
- Query Parameters:
color (string) – hexadecimal color value
filetype (string) – SVG or PNG filetype
size (int) – size of PNG (minimum of 20, maximum of 1200)
Note
filetype svg does not accept a size
free api access is limited to public domain icons
paid api access will allow you to edit any icon
Request:
GET https://api.thenounproject.com/v2/icon/1/download?color=A3A3A3&filetype=png&size=25Response:
{ "base64_encoded_file": "iVBORw0KGgoAAAANSUhEUgAAABkAAAAZCAYAAADE6YVjAAAEiUlEQVR4nJ1VS4gcZRD+6v/7MdOz47KJBBmIEcKuYkRUIl6UTAeUECSisoOS2UQRWU/G+ACNYG978OJFT5KwGubFwigeFrwEdAZPgZgImx1FEwgxgQjDZJiVeXRP919eutfZh0k2dfopqur7qqrra8JdGDMLIlLlcvktTdM+B+APh8PZmZmZ76rVqszlcuFoPN0FABERnz59+j5N0y5LKVNSSvi+f218fPyhQ4cO9ZkZRMRxjtgqyNzcHAGAruumlDJFRCAiANjWarUMZt6Qs+VOAKBWq2m2bQfFYvG4aZonAAw9z/vgyJEjFWYmAGs62TKI4zjCdV1VLpd3WZa1s9/vPxyG4TCRSFwiIrp58+bZ2dnZYVSbtwwSL7VQKLxkWVaBiMY8zwMRQdd1AIDv+xeUUs/n8/m/446027HOZrMCAJrNpmg0GsHCwsJOZv4mDMMx3/cDIpIAEAQBA8D27dufaLfb7xPRe7VaTQMQ3BLEdV3luq4a9ZXL5flUKjW+srLCQojVfCEEKaXavV5vnJmnImIMAJuCxJ9pqVR6MJlM7u/1ehIAE9FUOp1+rtPpXJBSdk3TfGYwGCgA0DRNDIfDb/v9/ptSyjX1NgWp1+uyWq2y7/tOJpN5tdPpQAgBZsbKygo0TXs9DMMTUkpwxCgixzHJ24LYth0AQLFYfOf69es/+r4PpRTGxsZEv9+/cvTo0aVSqbRNKbVZ+gbbAOI4jshkMjKdTn/KzMu5XO7rzWIAhOv9dwTiOI6WyWRoYmLCGg6HbyilzgCoVKtVo91u89TUlFxaWuJjx455pVIpPrb1Jx4CWNPiGhDXdYPo2SkWi48IIV4rFosvT09Pfx9d8HA0npkhpdRiKSEilUwmtX6/nxyNEyPto1KpvFIul98GgEQi8Q+Aj4joXQBUqVQmFxcXPykUCvfHybquIwzD35RSN5LJJAD86XnexwC+AIBGo8GrIPHBKaX2GYbx5cmTJ61cLtcfDAZ7LMt6kYhUGIYvaJrmSiljbVKmaQLAWSHEVcMwoJQKDx8+/NnMzMwP0WTUKki9Xo/JnTEMI7Qsa1ulUtm3Y8eOn3q93r1R0b3NZvNGPp+/Go2KI0k3mVmP3uQ4jra8vGxsGFe8KCHE7wAkMz/OzB0A14QQ8R72Sikvjq5kJHd1+a7rBs1mc+Pi5+bm2HVdTExMXGm1Wr4QYn8+nz8O4FkAmJ+fTwshHlBKLWCdRR2sd68xEY2CHccRBw8e9Jj5D2beC4BqtVoCAJmmOZlKpSQR/bK+wOh/45YgwH/LJ6LzzPxotVoV9Xrdj0bxWBiGIKKL/1fojkBG7JxlWfd0u92d2WxWRHL9VK/X62Yymb/W69KWQGJZFkL8ahgGhBC7bNsObNsOmPlJAA3btoNTp07FBxwvV8XC+H+jW7346elpBQC6rl/udrsDKeWHpVLpaWYmwzD2BEHwFQAMBoOYmCGEABHpAPRIpTcV3FVnzKLRaLR27959KZ1OH1BKHWBmCCE4CILzADA5ORmn/KyUygohFsMwXPE8b0pKeW50KrH9CxPIMKj1/EicAAAAAElFTkSuQmCC", "content_type": "image/png", "usage_limits": { "monthly": { "limit": 5000, "usage": 183 } } }
Collection¶
Search Icon Collections (Icon Sets)¶
- GET /v2/collection¶
Returns a list of collections
- Query Parameters:
query (string) – search term
blacklist (int) – removes any results matching terms or icon/collection ids in blacklist
limit (int) – maximum number of results
prev_page (string) – token for paging to the previous page
next_page (string) – token for paging to the next page
Request:
GET https://api.thenounproject.com/v2/collection?query=winter&limit=3&blacklist=1Response:
{ "collections": [ { "creator": { "name": "Tamiko Young", "permalink": "/tamikoy1", "username": "tamikoy1" }, "icon_count": 15, "id": "56", "name": "Winter Olympicons", "permalink": "/tamikoy1/collection/winter-olympicons", "tags": [ "athlete", "sport", "olympics", "sports", "winter" ] }, { "creator": { "name": "Matt Brooks", "permalink": "/Mattebrooks", "username": "Mattebrooks" }, "icon_count": 24, "id": "155", "name": "Christmas Icons", "permalink": "/Mattebrooks/collection/christmas-icons", "tags": [ "snow", "winter", "vacation", "christmas", "holiday" ] }, { "creator": { "name": "Factorio.us collective", "permalink": "/factorious", "username": "factorious" }, "icon_count": 16, "id": "51", "name": "Xmas Icons", "permalink": "/factorious/collection/xmas-icons", "tags": [ "christmas", "holiday", "winter", "decoration", "celebrate" ] } ], "generated_at": "2023-11-16 23:22:43.311288", "total": 3, "usage_limits": { "monthly": { "limit": 5000, "usage": 385 } } }
Get a Collection (Icon Set)¶
- GET /v2/collection/(int: collection_id)¶
Returns a single collection
- Parameters:
collection_id (int) – collection id
- Query Parameters:
blacklist (int) – removes any results matching terms or icon/collection ids in blacklist
thumbnail_size (int) – the thumbnail size to be returned (42, 84, 200)
include_svg (int) – include SVGs in the results
limit (int) – maximum number of icon results
prev_page (string) – token for paging to the previous page of icons
next_page (string) – token for paging to the next page of icons
Request:
GET https://api.thenounproject.com/v2/collection/10/?thumbnail_size=42&limit=2&blacklist=1Response:
{ "collection": { "creator": { "name": "Adam Whitcroft", "permalink": "/adamwhitcroft", "username": "adamwhitcroft" }, "icon_count": 72, "icons": [ { "attribution": "Wind by Adam Whitcroft from Noun Project", "collections": [ { "creator": { "name": "Adam Whitcroft", "permalink": "/adamwhitcroft", "username": "adamwhitcroft" }, "id": "10", "name": "Climacons", "permalink": "/adamwhitcroft/collection/climacons" } ], "creator": { "name": "Adam Whitcroft", "permalink": "/adamwhitcroft", "username": "adamwhitcroft" }, "id": "2708", "license_description": "creative-commons-attribution", "permalink": "/term/wind/2708", "styles": [ { "style": "line", "line_weight": 46 } ], "tags": [ "wind", "gale", "weather", "climacons", "gust" ], "term": "Wind", "thumbnail_url": "https://static.test.thenounproject.com/png/2708-42.png" }, { "attribution": "Umbrella by Adam Whitcroft from Noun Project", "collections": [ { "creator": { "name": "Adam Whitcroft", "permalink": "/adamwhitcroft", "username": "adamwhitcroft" }, "id": "10", "name": "Climacons", "permalink": "/adamwhitcroft/collection/climacons" } ], "creator": { "name": "Adam Whitcroft", "permalink": "/adamwhitcroft", "username": "adamwhitcroft" }, "id": "2707", "license_description": "creative-commons-attribution", "permalink": "/term/umbrella/2707", "styles": [ { "style": "solid" } ], "tags": [ "umbrella", "weather", "climacons", "rain", "brolly" ], "term": "Umbrella", "thumbnail_url": "https://static.test.thenounproject.com/png/2707-42.png" } ], "id": "10", "name": "Climacons", "next_page": "312E302C32373037", "permalink": "/adamwhitcroft/collection/climacons", "tags": [ "weather", "climacons", "cloud", "climate", "moon" ] }, "generated_at": "2024-01-09 11:20:21.886092", "total": 1, "usage_limits": { "monthly": { "limit": 5000, "usage": 130 } } }
Autocomplete¶
- GET /v2/icon/autocomplete¶
Returns a list of terms
- Query Parameters:
query (string) – term
blacklist (int) – removes any results matching terms in blacklist
limit (int) – maximum number of results
Note
Maximum limit of 10
Request:
GET https://api.thenounproject.com/v2/icon/autocomplete?query=engine&blacklist=1&limit=5Response:
{ "generated_at": "2023-01-31 23:59:49.045512", "suggestions": [ "engine coolant", "engine filter", "engine valves", "engineer", "engineering" ], "usage_limits": { "monthly": { "limit": 5000, "usage": 189 } } }