Getting Started



Creating an API Key

Access to the API is available to everyone with a Noun Project account (including users with Playground accounts). Once you have logged in, visit the app management page to generate a new API key or manage existing keys. It is important that you treat this key as if it were a secret password. With an API key and secret, anyone can access endpoints from your account.



Authentication

The API is secured with OAuth 1.0a. You must use your client key and secret to sign requests when accessing the API. There are many established libraries that will take care of authenticating calls for you. There is no need to provide an access token as our API endpoints do not yet support granting access to a users private data.

For more examples, please view our sample code.

Note

  • Nonce must be a minimum of 8 characters in length.



Making Requests

After authenticating, you can make requests. To make a request you simply need to point to https://api.thenounproject.com. It’s really that simple!

For reference, here is a list of our public API endpoints, API Explorer, and sample code.



Supported File Formats and HTTP Responses

Every request will return a JSON response or an error response.

Examples:

  • 200 Success - returns data as JSON in the response body.

  • 404 Not Found - may return extra error description in response body.

  • 401 Unauthorized - may return extra error description in response body.



Pricing

We have plans of all sizes, and can customize plans to meet your needs. Please visit the developers page for more information on our API pricing.



Unacceptable Uses

The Noun Project API is designed to empower developers with a visual language. Using the Noun Project API inappropriately will result in the review and removal of your API keys.

This includes but is not limited to:

  • Distributing icons.

  • Reselling content.

  • Exploiting The Noun Project users or content.

  • Replicating The Noun Project.



Sample Code

Python

import requests
from requests_oauthlib import OAuth1

auth = OAuth1("your-api-key", "your-api-secret")
endpoint = "https://api.thenounproject.com/v2/icon/1"

response = requests.get(endpoint, auth=auth)
print(response.content)

Ruby

require "oauth"

consumer = OAuth::Consumer.new("your-api-key", "your-api-secret")
access_token = OAuth::AccessToken.new consumer
endpoint = "https://api.thenounproject.com/v2/icon/1"

response = access_token.get(endpoint)
puts response.body

Additional Examples



V1 Documentation & Explorer

Note

  • Our older V1 API endpoints are still accessible if you previously had access. However, they are no longer being updated and we recommend transitioning to using our newer V2 API endpoints instead.