Who is this information for?
Providers of federated search applications to subscribing ScienceDirect/Scopus customers, or customers who wish to integrate ScienceDirect/Scopus into their home-grown federated search system.
After registering for an API Key here, contact us through our Elsevier Research Product APIs Support Center for next steps: we may need to change some of your key settings and will probably want to co-ordinate some things about customer authentication. Also make sure that you read the content use policies that explain what data you can use in your application.
Building search requests
After your API Key has been granted access to the ScienceDirect/Scopus search API, you can start sending requests. You'll have to pass in your APIKey either via X-ELS-APIKey HTTP request header or as apiKey query string parameter.
API search requests for ScienceDirect and Scopus are very similar:
[query] is the user's search query, mapped to ScienceDirect's or Scopus' search syntax.
By default, this request will return results in JSON; the other response format that is available is Atom/XML. Either format can be explicitly requested by modifying the 'Accept' HTTP header for the request:
Instead of passing in this parameters as a HTTP request header, you can also pass it in as an encoded URL parameter:
By default, the AP will return 25 responses. You can get up to 100 responses by adding a 'count' parameter:
Beware, however, that higher counts negatively affect response time.
By default, the API will return standard bibliographic data for each record. A more complete set of data can be retrieved by using the 'VIEW' parameter:
Requesting this view, especially in combination with requesting more than the standard 25 results, will negatively affect response time.
You can tailor the specific fields to be returned by using the 'fields' parameter. For example:
By default, the API returns search results ordered by whatever the default sort order is on ScienceDirect/Scopus itself. However, it is also possible to force a sort order, e.g. descending (-) by date: