Scientist’s (formerly Assay Depot) JSON API gives read-only access to vendors and services. To use the API you must authenticate using OAuth2.
Location
The API is accessible at /api on whatever website you use. For instance, public marketplace customers (users of http://app.scientist.com) can access the api at:
Vendors can access the api at:
And private RX customers can access the api using their custom URL:
Authentication
The API requires the user to authenticate. To use the API you must authenticate using OAuth2. Scientist supports both Authorization Code and Client Credential workflows.
You should specify the authentication token using the Authorization header. For instance:
or in Ruby
The authentication token is only strictly required for the first request of the session, but you may include it with every request. All examples assume the user has successfully authenticated.
Vendors
There are two functions you can perform on vendors, search and get.
Vendor Search Query
Search queries take the form:
For example, to search for vendors that match the term “antibody”, you would use the url:
The system will search for the word antibody or it’s synonyms in all applicable vendor fields.
Vendor Search Query Options
page
1
When there are more results than can fit on a single page, you can retrieve different pages by changing this parameter.
per_page
25
You can change the number of results returned per request by changing this parameter.
sort_by
nil (relevance)
You can change the order in which results are returned. This orders the entire result set, not just the current page.
sort_order
desc
Change the direction of the result set
facets
nil
You can refine the result set by specifying facet values. See the vendor search facets section for more information.
Vendor Search Facets
Vendor search results can be refined using facets. To apply a facet to a search use a URL in the following format:
For instance, if you wanted find vendors that are members of BIOCOM, you would use the following URL:
You may specify multiple facets in a single query. It’s important to note, unlike the query string, facet values must match exactly.
Vendor Search Facets Values
There are numerous facets that can be specified. Below is a table of a few interesting facets. Search results contain lists of all the applicable facet names and values, you should consult these results for a more complete list.
professional_associations
BIOCOM
Narrow the results to only vendors that are members of a particular association. Currently, only BIOCOM is supported.
category_names
Biology
Biomarkers
Clinical Chemistry
...
Narrow the results to only vendors who appear in a certain discipline, category or subcategory on the site.
certifications
AAALAC
GLP
ISO 9001
...
Narrow the results to only vendors who have specific certifications.
countries_facet
United States
China
Great Britain
...
Narrow the results to only vendors who have offices or laboratories in certain countries.
Vendor Search Return Value
This will return:
Vendor Details
Get queries take the form:
Vendor Details Return Value
This will return:
Services
There are two functions you can perform on services, search and get.
Service Search Query
Search queries take the form:
For example, to search for services that match the term “peptide”, you would use the url:
The system will search for the word antibody or it’s synonyms in all applicable service fields.
Service Search Query Options
page
1
When there are more results than can fit on a single page, you can retrieve different pages by changing this parameter.
per_page
25
You can change the number of results returned per request by changing this parameter.
sort_by
nil (relevance)
You can change the order in which results are returned. This orders the entire result set, not just the current page.
sort_order
desc
Change the direction of the result set
facets
nil
You can refine the result set by specifying facet values. See the service search facets section for more information.
Service Search Facets
Service search results can be refined using facets. To apply a facet to a search use a URL in the following format:
For instance, if you wanted find services where Assay Depot was available as a provider, you would use the URL:
You may specify multiple facets in a single query. It’s important to note, unlike the query string, facet values must match exactly.
Service Search Facets Values
There are numerous facets that can be specified. Below is a table of a few interesting facets. Search results contain lists of all the applicable facet names and values, you should consult these results for a more complete list.
protein_type
Enzymes
Bacterial and Viral Antigens
Growth Factors
...
Narrow the results to only services listing a specific type of protein.
species
Human
Treponema pallidum
Dengue virus
...
Narrow the results to only services associated with a certain species.
available_provider_names
Ricerca Biosciences
GVK Biosciences
Charles River Laboratories
...
Narrow the results to only services that are offered by a particular vendor.
Service Search Return Value
This will return:
Service Details
Get queries take the form:
Service Details Return Value
This will return:
Bringing It All Together
Any number of options can be combined in a single query. For instance, the following (contrived) example, lists the first page of services that match the string “fluid” and are associated with the species Human. It also sets the page size to 2 and the authentication token to 1234567890.