The portal and the API carry the metadata associated with the antibody testing, including the recommendations and the published figures behind them. If you sell antibodies, run a registry, or build tools that cite them, you can show that data beside the products it is about.
| The data portal | A web page. Browse, filter and download, in a browser. |
|---|---|
| The API | JSON over HTTPS, for keeping your own catalogue in step with ours automatically. |
Both show the same data. The portal needs a key; two of the API's feeds do not.
Two endpoints answer anyone, from anywhere, with no sign-up and nothing to ask for:
curl https://onlygoodantibodies.co.uk/api/v1/genes/
curl https://onlygoodantibodies.co.uk/api/v1/antibodies/They carry the same knockout-controlled results the gene pages show. Paste either address into a browser if you would rather look than script. Fair use is 30 requests a minute and 300 an hour, and replies can be cached for five minutes.
Keys are issued per organisation, and are worth having if you sync regularly. A key raises your rate limit, filters the feed to your own products, and returns only what has changed since your last sync. It also opens the data portal and the per-gene competitor view.
Email us saying who you are and what you would like to do with the data, and we will set one up.
Go to onlygoodantibodies.co.uk/portal/ and paste in your key. Nothing to install.
manifest.csv naming every
file, so you can match images to products automatically.Base URL https://onlygoodantibodies.co.uk/api/v1/. The
two read feeds need no key, as above; everything else does. Send
yours as a header on every request:
curl -H "X-API-Key: YOUR_KEY" \
https://onlygoodantibodies.co.uk/api/v1/status/Send it as a header, not in the address: keys in URLs end up in server logs and browser history.
/download/ |
Everything in one zip — every published figure plus a
manifest.csv naming each one. Redirects to a
prepared archive, so the download is resumable and comes
straight from the CDN. Add ?gene=ACE for one
gene. |
|---|---|
/manifest/ |
Every published figure you may download, as a URL with its
gene, catalogue number, RRID, supplier, application and
recommendation. Also available as CSV, or as a plain list of URLs
for wget. ?gene=ACE narrows it to
one gene, for a partial mirror. |
/antibodies/ |
The antibody records themselves, with metadata and per-application recommendations. No key needed. |
/genes/ |
Every gene with characterisation data, and how much. No key needed. |
/status/ |
What your account can see, and the dataset totals. The quickest way to check a key works. |
One request does it. Include -L — the endpoint
redirects to a prepared archive.
# everything, one file
curl -L -H "X-API-Key: YOUR_KEY" \
https://onlygoodantibodies.co.uk/api/v1/download/ -o oga-figures.zipIf you would rather fetch the figures yourself — to mirror them, to pull only what changed, or to run them through your own pipeline — the manifest contains no image data and every figure has a permanent public address.
# every image URL, one per line
curl -H "X-API-Key: YOUR_KEY" \
"https://onlygoodantibodies.co.uk/api/v1/manifest/?format=urls" -o urls.txt
wget -i urls.txt -P images/Send a User-Agent identifying your client when you fetch
images. Some libraries' defaults are blocked, and the error you get
back reads like a permissions problem.
Each manifest carries an ETag. Send it back next time as
If-None-Match and, if nothing has changed, you get an
empty 304 answer in a fraction of a second. When
something has changed you get the whole list, and comparing it
with what you already hold tells you what is new, what has been
replaced, and what has been withdrawn.
Compare each file's url, not its
filename. Filenames are built from the gene, the catalogue
number and the application, so a re-cropped figure keeps its name but
gets a new address — match on the name and you will keep the old
image. Every reply names the field to compare on, in its
sync block.
The reference below has a working sync client, about forty lines.
Every endpoint, every parameter, and a sync client you can run:
The API also describes itself in OpenAPI 3.1, which needs no key:
https://onlygoodantibodies.co.uk/api/v1/openapi.jsonImport that address into Postman or Insomnia and you get every
endpoint, parameter and example as a ready-made collection — or feed
it to openapi-generator for a typed client in your own
language. There is also a plain-language catalogue at
/api/v1/.
A recommendation is per application — a pass in western blot says nothing about immunofluorescence.
| Value | Means |
|---|---|
| recommended | Recommended for that application in the conditions tested. |
| not_recommended | Tested and not recommended in the conditions tested. |
| not_tested | Not tested for that application. |
Results are based on consensus protocols. Antibody performance is protocol and sample dependent, and these results do not validate or invalidate experiments in other assay systems or sample types. Read the protocols.
We count requests per key, per endpoint, per day. We do not log individual calls and we store nothing about their content. Requests without a usable key are counted without recording who sent them.
The totals tell us how the API is used, and help us spot a client stuck in a loop.
The data is published under Creative Commons Attribution 4.0 International (CC BY 4.0). You may copy it, redistribute it, and build on it commercially.
Cite the DOI, not this website. Every gene we have reported carries the DOI of its report, shown on that gene's page and returned with the record. A DOI takes your reader to the experiments themselves, and will not move.
A gene that has no report published yet has no DOI to cite. Attribute it to Only Good Antibodies and link its gene page.
You are welcome to show the figures alongside the products they are about. Please attribute the source and link the gene page that comes with every record, so a reader can reach the full result and the report behind it.
If anything here does not match what the API does, please tell us.