We use cookies to enable functionality on our website and track usage.
The Cell Model Passports API provides access cell model information and associated datasets.
The API for the cell model passports is a HTTP REST-API that returns information based on the URL of GET requests. It strictly follows the JSONAPI v1.0 standards to allow consistent, predictable and discoverable access to all available resources. Therefore, all responses will be in JSON-format and will carry the 'application/vnd.api+json' Content-Type header.
The base-url for the API is https://api.cellmodelpassports.sanger.ac.uk
The base-url needs to be supplemented with a suffix (path) to the resource. The base url and path together form the endpoint. All Cell Model Passport API endpoints are listed below.
Please note that the root url ("/") is not a valid endpoint and will thus result in a 404 (Not Found) error.
Endpoints that result in a list of models
Endpoints that result in a single model
Endpoints that show a list genes
There are query parameters that can be appended to any of the endpoint URLs to modify the response. These modifiers apply mainly to list endpoints, and allow control of sorting, filtering, pagination, specifying which fields to return and the inclusion of related resources.
All modifiers can be combined in a single query to request exactly the desired data
Applies to: list endpoints
Use the page[size] parameter to change the number of items in a list, use page[number] to specify the page. The default page size is 30. Use page[size]=0to disable pagination.
Applies to: list and single endpoints
With the include query parameter, related resources can be included in a response. Provide a comma-separated list of relations to include.
In addition to the data, links, and jsonapi-fields of a normal response, an additional field 'included' is added to the response, which contains an array or related resources. The relationships-field in the data parameter of the main object(s) now includes a type and id parameter that refers to each item’s related resources. It is possible to include relations of related resources with the .-notation.
Note: included related resources do not benefit from pagination or other modifiers.
Use the sort-parameter to change the sorting order of a list. Specify a comma-separated list on the fields to sort by. Default sorting is ascending, use a minus-sign (-) to sort descending on that field.
Sorting can be used on text-fields (alphabetically) or numerical fields, but not on properties of related properties.
Applies to: single and list endpoints
Use the fields[resource] parameter to view a limited list of fields. Provide a comma separated list of fields to include. Selecting only the required fields can significantly reduce the size of the response and increase the speed.
Applies to: list endpoints
Filtering allows the list endpoint to be filtered on the server. Filtering is very powerful and flexible, but has a verbose syntax. The basic query parameter is as follows: filter=[list of filters]
A single filter in this list is a json object with three fields:
{"name": <field to filter on>,"op": <operator for filtering>,"val": <value for filtering>}
The ‘name’ is the name of the attribute that is being filtered on.
The ‘op’ is the operator. There is a fixed list of valid operators, but availability depends on the field type of the field being filtered on:
Comperators
eq: check if field is equal to something
ne: check if field is not equal to something
gt: check if field is greater than to something
ge: check if field is greater than or equal to something
lt: check if field is less than to something
le: check if field is less than or equal to something
contains: check if field contains a string
like: check if field contains a string
notlike: check if field does not contains a string
ilike: check if field contains a string (case insensitive)
notilike: check if field does not contains a string (case insensitive)
startswith: check if field starts with a string
endswith: check if field ends with a string
in_: check if field is in a list of values
notin_: check if field is not in a list of values
any: used to filter on to many relationships
has: used to filter on to one relationships
Multiple filters can be applied with the 'and', 'or' and 'not' logic combinators.
All data in the Cell Model Passports is publicly available and individual users are free to use the API for non-commercial use without login or registration. Throttling of requests may be applied to ensure service reliability and fair use.
Third Party Websites or Applications
Administrators of third-party websites that are interested in using the Cell Model Passports API should contact the Passports via depmap@sanger.ac.uk. Direct use of the API in third party websites without prior permission is not permitted.
Commercial Use
Commercial use of the Cell Model Passports API and/or data is not permitted without prior consent. Please contact depmap@sanger.ac.uk to for enquiries.
Educational Use
Use of the Cell Model Passports API for educational purposes is permitted. Educators interested in using the Cell Model Passports API in their teachings are encouraged to contact depmap@sanger.ac.uk - especially if this could result in a high volume of traffic.