<a href="http://cm.crunchbase.com/8hpw"> <img border="0" alt="Talk to Sales" src="https://files.readme.io/fa42b26-API_upsell_2.png"> </a>
New and Improved Functionality Introduced in v3.1
At a high level, enhancements included in v3.1 include:
[Refined Searches](🔗) - Specify exactly what results you want to see.
[Batch Search Capabilities](🔗) - Pass parameters for several query requests in a single HTTP call.
[Faster Pagination](🔗) - Key set pagination will enable you to traverse our dataset faster.
Build powerful applications and integrate Crunchbase into your web and mobile applications with the REST API. The Crunchbase API is a read-only RESTful service that enables approved developers to leverage the same data that powers [www.crunchbase.com](🔗).
To get a better sense of what's available through the REST API, you can compare the [Crunchbase company page](🔗) with [JSON returned from the API](🔗).
## Accessing the REST API
Access to the Full API Requires an Enterprise or Applications License
If you are not already registered for a Crunchbase Data account, [register here](🔗).
Enterprise and Applications licensees have access to the full Crunchbase API. Basic Access licensees are limited to the [/odm-organizations](🔗) and [/odm-people ](🔗) collection endpoints which return data from the [Open Data Map](🔗).
For simple testing / inspection, the Crunchbase API can also be accessed through any web browser capable of displaying JSON.
All API calls require a user key which is emailed to you following registration. If you lose your key, contact [[email protected]](🔗).
The Crunchbase API uses token-based authentication, which means that developers must pass their individual user_key parameter with every request. An example request for the [/organizations](🔗) endpoint would read as follows:
user_key` is used to validate each developer's access to the API and ensure that any rate limits or quotas are respected. If you omit the user_key, overrun a rate limit, or exceed a quota, the system will respond with an error message.
Processing Entire Collections
If you are attempting to paginate through an entire collection, we recommend that you use the [Complete Node List](🔗) export. This alleviates the need to paginate and includes an updated_at timestamp for each node.
The Crunchbase API provides Collection endpoints to retrieve the entire set and core properties of many of the important Item types in the Crunchbase Dataset. The Crunchbase API returns 100 items per page.
## Item Details
Further, the Crunchbase API provides Item Detail endpoints to retrieve not only the core properties of each Node but also the details of related Items.
Such endpoints are available for the following Items:
The Crunchbase API returns 10 items per relationship type. For example, you might get 10 investments. Then you can use the investments endpoint [/organizations/:permalink/investments](🔗) for an entity to get a further 1000 investments per page if you require more.
## Refined Searches
When you query an entity, you're now able to specify exactly what results you want to see. Previously with v3, you'd see results for all relationships included in your query. Now you can customize your query to pull only the results that you want to see. For example, if you're only interested in funding rounds and investors of a company, you can specify this in your query to see only those results. To do this, just add the relationships you'd like to see the results for at the end of the query.
## Batch Search Capabilities
A new batching endpoint will allow you to pass parameters for several query requests in a single HTTP call, and even specify the relationships for each query. Your queries will be processed in parallel and results will be returned sequentially in the original order. Once all requests have been completed, a consolidated response will be passed back to you and the HTTP connection will be closed. To leverage this, you can now call our batch endpoint:
Use an array of requests with the following parameters when calling the batch endpoint:
entity_type`: any available type that has a collection (Organization, Person, Product, FundingRound, Acquisition, Ipo, Fund)
entity_uuid`: UUID of corresponding entity
relationships`: An array with the relationships name (string)
The intended use of this endpoint is as a POST (if you are using it as a GET a 404 will be returned)
Authentication is through the Header of the request (X-Cb-User-Key) as shown below
Here is an example of using this endpoint:
## Faster Pagination
Key set pagination will enable you to traverse our dataset faster. If you’re looking to extract all data results from a given endpoint, you will no longer have to paginate through the entire collection using the page number. We now provide pre-populated pagination URLs in your query results so that you can paginate through the collection efficiently as possible. Using page numbers to traverse a set can cause you to miss entities as the set changes while you paginate. Switching to keyset pagination guarantees that you will never miss an entity! As the set changes the keys remain constant so you can rely on the provided URLs never missing a beat.
In your query results, under the 'data' array, there will now be the following fields:
For any queries that return more than 100 results and require pagination, the `
key_set_url` will have the compiled version of the respective fast pagination, so if you continuously use the `
key_set_url` for each page of the results, it will traverse through the collection until you reach the end of the results in which case it will return NULL.
## Using the REST API
We encourage you to leverage the API for your internal business and research needs. Unless otherwise noted in your license (see [License Agreement](🔗) and [Data Access Terms](🔗)), you may not license, sublicense, sell, offer to sell, distribute or otherwise provide any of the Crunchbase data to any third parties.
### Attribution Requirements
When sharing information about the data, follow these attribution requirements.
Attribution must be accompanied by a hyperlink to Crunchbase
If content being attributed is primarily about one entity, link must point to that entity on Crunchbase.
Link must be plainly visible to end user
Link must be in close proximity to the attributed data
Link must be visible to Internet spiders (e.g. Googlebot)
Link cannot include the “nofollow” tag"