Skip to main content

Elsevier Developer Portal

ScienceDirect Search API V2

This represents the search interfaces associated with ScienceDirect. Each search result will, by definition, link to a Full-Text article.

The PUT interface is the native layer and recommended choice for this API. The GET interface offers support for legacy requests, field and parameter names, etc. but is emulated and thus less robust.

Please see our Science Direct Search Migration Guide for detailed information on both interfaces of this new API.

Additional information includes ScienceDirect Search Views.

Summary

Resource Method Description
https://api.elsevier.com/content/search/sciencedirect PUT
ScienceDirect Search API: This represents a search against the ScienceDirect cluster, which contains serial/nonserial full-text articles. ScienceDirect is a leading full-text scientific database offering journal articles and book chapters from more than 2,500 journals and almost 20,000 books. This API resource allows for the submission of Boolean queries into the ScienceDirect index, retrieving relevant result metadata in user-specific text formats.
https://api.elsevier.com/content/search/sciencedirect GET
ScienceDirect Search API: This represents a search against the ScienceDirect cluster, which contains serial/nonserial full-text articles. ScienceDirect is a leading full-text scientific database offering journal articles and book chapters from more than 2,500 journals and almost 20,000 books. This API resource allows for the submission of Boolean queries into the ScienceDirect index, retrieving relevant result metadata in user-specific text formats.

Resources


https://api.elsevier.com/content/search/sciencedirect

ScienceDirect Search API: This represents a search against the ScienceDirect cluster, which contains serial/nonserial full-text articles. ScienceDirect is a leading full-text scientific database offering journal articles and book chapters from more than 2,500 journals and almost 20,000 books. This API resource allows for the submission of Boolean queries into the ScienceDirect index, retrieving relevant result metadata in user-specific text formats.

Methods
PUT simple()

request
header params
Accept xsd:string
(required)
default: application/json
options: application/json
This represents the acceptable mime types in which the response can be generated. This can also be submitted as the query string parameter "httpAccept". Currently, only JSON format responses are supported.
Authorization xsd:string This header field contains the OAuth bearer access token in which the format of the field is "Bearer <token>" (where the token represents the end-user session key). The presence of a bearer token implies the request will be executed against user-based entitlements. The Authorization field overrides X-ELS-Authtoken.
X-ELS-APIKey xsd:string
(required)
This represents a unique application developer key providing access to API resources. This key can also be submitted as the query string parameter "apiKey"
X-ELS-Authtoken xsd:string This represents a end-user session. If provided, this token is used to validate the credentials needed to access content in this resource. This token can also be submitted through the HTTP header "Authorization" or the query string parameter "access_token".
X-ELS-Insttoken xsd:string This represents a institution token. If provided, this key (in combination with its associated APIKey) is used to establish the credentials needed to access content in this resource. This token can also be provided through the query string parameter "insttoken".
X-ELS-ReqId xsd:string This is a client-defined request identifier, which will be logged in all trace messages of the service. This identifier can be used to track a specific transaction in the service's message logs. It will also be returned as an HTTP header in the corresponding response. Note that this should be a unique identifier for the client, and used to track a single transaction.
X-ELS-ResourceVersion xsd:string

Represents the version of the resource that should be received. Multiple attributes can

be submitted by separating with commas or semicolons. Options include:

responses
status:
200
representations
application/json SCIDIR JSON Response: This is JSON representing the requested document. JSON Example
status:
400
representations
text/xml Invalid Request: This is an error that occurs when invalid information is submitted. Invalid Request Example
status:
401
representations
text/xml Authentication Error: This is an error that occurs when a user cannot be authenticated due to missing/invalid credentials (authtoken or APIKey). Authentication Error Example
status:
403
representations
text/xml Authorization/Entitlements Error: This is an error that occurs when a user cannot be authenticated or entitlements cannot be validated. Authorization Error Example
status:
405
representations
text/xml Invalid HTTP Method: This is an error that occurs when the requested HTTP Method is invalid. Invalid Method Example
status:
406
representations
text/xml Invalid Mime Type: This is an error that occurs when the requested mime type is invalid. Invalid Mime Type Example
status:
429
representations
text/xml Quota Exceeded: This is an error that occurs when a requester has exceeded the quota limits associated with their API Key. Quota Exceeded Example
status:
500
representations
text/xml Generic Error: This is a general purpose error condition, typically due to back-end processing errors. Generic Error Example

https://api.elsevier.com/content/search/sciencedirect

ScienceDirect Search API: This represents a search against the ScienceDirect cluster, which contains serial/nonserial full-text articles. ScienceDirect is a leading full-text scientific database offering journal articles and book chapters from more than 2,500 journals and almost 20,000 books. This API resource allows for the submission of Boolean queries into the ScienceDirect index, retrieving relevant result metadata in user-specific text formats.

Methods
GET simple()

request
header params
Accept xsd:string
(required)
default: application/json
options: application/json, application/atom+xml, application/xml
This represents the acceptable mime types in which the response can be generated. This can also be submitted as the query string parameter "httpAccept". This returns the response in JSON, ATOM, or XML mark-up.
Authorization xsd:string This header field contains the OAuth bearer access token in which the format of the field is "Bearer <token>" (where the token represents the end-user session key). The presence of a bearer token implies the request will be executed against user-based entitlements. The Authorization field overrides X-ELS-Authtoken.
X-ELS-APIKey xsd:string
(required)
This represents a unique application developer key providing access to API resources. This key can also be submitted as the query string parameter "apiKey"
X-ELS-Authtoken xsd:string This represents a end-user session. If provided, this token is used to validate the credentials needed to access content in this resource. This token can also be submitted through the HTTP header "Authorization" or the query string parameter "access_token".
X-ELS-Insttoken xsd:string This represents a institution token. If provided, this key (in combination with its associated APIKey) is used to establish the credentials needed to access content in this resource. This token can also be provided through the query string parameter "insttoken".
X-ELS-ReqId xsd:string This is a client-defined request identifier, which will be logged in all trace messages of the service. This identifier can be used to track a specific transaction in the service's message logs. It will also be returned as an HTTP header in the corresponding response. Note that this should be a unique identifier for the client, and used to track a single transaction.
X-ELS-ResourceVersion xsd:string

Represents the version of the resource that should be received. Multiple attributes can

be submitted by separating with commas or semicolons. Options include:

query params
httpAccept xsd:string
options: application/json, application/atom+xml, application/xml
Override for HTTP header Accept, this represents the acceptable mime types in which the response can be generated.
access_token xsd:string Override for HTTP header Authorization, this contains the OAuth bearer access token, where the format of the field is "token>" (where the token represents the end-user session key). The presence of a bearer token implies the request will be executed against user-based entitlements.
insttoken xsd:string Override for HTTP header X-ELS-Insttoken, this represents a institution token. If provided, this key (in combination with its associated APIKey) is used to establish the credentials needed to access content in this resource.
apiKey xsd:string Override for HTTP header X-ELS-APIKey, this represents a unique application developer key providing access to resource.
reqId xsd:string Override for HTTP header X-ELS-ReqId, this is a client-defined request identifier, which will be logged in all trace messages of the service. This identifier can be used to track a specific transaction in the service's message logs. Note that this should be a unique identifier for the client, and used to track a single transaction.
ver xsd:string

Override for HTTP header X-ELS-ResourceVersion, this represents the version of the resource that should be received.

Multiple attributes can be submitted by separating with commas or semicolons. Options include:
query xsd:string
(required)


This represents the boolean search to be executed against the SCIDIR cluster (full text articles).

There is additional information regarding Search Tips.



ex. query=heart+attack%20AND%20text(liver)
view xsd:string
default: STANDARD
options: STANDARD


This alias represents the list of elements that will be returned in the response.



The following chart shows the ScienceDirect Search Views.
field xsd:string

This alias represents the name of specific fields that should be returned. The list of fields include each of the primary fields returned in the response payload (see view).

Multiple fields can be specified, delimited by commas. Note that specifying this parameter overrides the view parameter.



ex. field=url,identifier,description
suppressNavLinks xsd:string
default: false
options: true, false


This parameter is used to suppress the inclusion of top-level navigation links in the response payload.
date xsd:string

Represents the date range associated with the search, with the lowest granularity being year.



ex. date=2002-2007
start xsd:string

Numeric value representing the results offset (i.e. starting position for the search results). The maximum for this value is a system-level default (varies with search cluster) minus the number of results requested. If not specified the offset will be set to zero (i.e. first search result)

Permitted values: 0-6000

ex. start=5
count xsd:string

Numeric value representing the maximum number of results to be returned for the search. If not provided this will be set to a system default based on service level.

In addition the number cannot exceed the maximum system default - if it does an error will be returned.

Permitted values: 10, 25, 50, 100

ex. count=10
sort xsd:string
options: coverDate, relevance


Represents the sort field name and order.

responses
status:
200
representations
application/json SCIDIR JSON Response: This is JSON representing the requested document. JSON Example
status:
200
representations
application/atom+xml SCIDIR ATOM Response: This is XML representing the requested document. ATOM+XML Example
status:
200
representations
application/xml SCIDIR XML Response: This is XML representing the requested document. XML Example
status:
400
representations
text/xml Invalid Request: This is an error that occurs when invalid information is submitted. Invalid Request Example
status:
401
representations
text/xml Authentication Error: This is an error that occurs when a user cannot be authenticated due to missing/invalid credentials (authtoken or APIKey). Authentication Error Example
status:
403
representations
text/xml Authorization/Entitlements Error: This is an error that occurs when a user cannot be authenticated or entitlements cannot be validated. Authorization Error Example
status:
405
representations
text/xml Invalid HTTP Method: This is an error that occurs when the requested HTTP Method is invalid. Invalid Method Example
status:
406
representations
text/xml Invalid Mime Type: This is an error that occurs when the requested mime type is invalid. Invalid Mime Type Example
status:
429
representations
text/xml Quota Exceeded: This is an error that occurs when a requester has exceeded the quota limits associated with their API Key. Quota Exceeded Example
status:
500
representations
text/xml Generic Error: This is a general purpose error condition, typically due to back-end processing errors. Generic Error Example