Developer API
The public API exposes the same food–chemical–disease graph that powers this site, with stable resource-shaped responses suited for research scripts. The interactive OpenAPI reference lives at https://api.foodatlas.ai/docs.
Get an API key
Keys are issued by hand to keep the door open without inviting abuse. Request access via the contact form with your name, affiliation, and a one-line description of what you're building. You'll usually hear back within a few business days.
Use is intended for academic and non-commercial research. Please cite FoodAtlas in any published work.
How to Cite
Li, F., Youn, J., Xie, K., Chan, T., Gupta, P., Yoo, A., Gunning, M., Ni, K., & Tagkopoulos, I. (2026). A unified knowledge graph linking foodomics to chemical-disease networks and flavor profiles. npj Science of Food, 10(1), 33. https://doi.org/10.1038/s41538-025-00680-9
Setup
Base URL
All endpoints live under
https://api.foodatlas.ai Authentication
Send your key in the Authorization header with the Bearer scheme:
curl -H "Authorization: Bearer YOUR_KEY" \
https://api.foodatlas.ai/v1/foods/FA:0001Examples
Python
import requests
resp = requests.get(
"https://api.foodatlas.ai/v1/triplets",
params={"head_id": "FA:0001", "relationship": "contains"},
headers={"Authorization": "Bearer YOUR_KEY"},
)
resp.raise_for_status()
print(resp.json())Endpoints
Full request/response schemas and an interactive console live at https://api.foodatlas.ai/docs. Pagination is offset-based: ?page=&page_size= (max 100).
| Method | Path | Summary |
|---|---|---|
GET | /v1/foods | List foods (paginated, filterable) |
GET | /v1/foods/{id} | Get one food |
GET | /v1/foods/{id}/chemicals | Chemicals contained in a food |
GET | /v1/foods/{id}/taxonomy | IS_A ancestry |
GET | /v1/chemicals | List chemicals |
GET | /v1/chemicals/{id} | Get one chemical |
GET | /v1/chemicals/{id}/foods | Foods containing a chemical |
GET | /v1/chemicals/{id}/diseases | Disease correlations (reduces|worsens) |
GET | /v1/diseases | List diseases |
GET | /v1/diseases/{id} | Get one disease |
GET | /v1/diseases/{id}/chemicals | Chemical correlations (reduces|worsens) |
GET | /v1/bioactivities | List bioactivities (paginated, filterable) |
GET | /v1/bioactivities/{id} | Get one bioactivity + parents/children hierarchy |
GET | /v1/bioactivities/{id}/chemicals | Chemicals measured for a bioactivity (r6) |
GET | /v1/bioactivities/{id}/foods | Foods that exhibit a bioactivity (r5) |
GET | /v1/chemicals/{id}/bioactivities | Bioactivities measured for a chemical |
GET | /v1/foods/{id}/bioactivities | Bioactivities exhibited by a food |
GET | /v1/triplets | Knowledge-graph edges (head, relationship, tail) |
GET | /v1/triplets/{id} | Get one triplet |
GET | /v1/attestations/{id} | Raw evidence row backing a triplet |
GET | /v1/search | Trigram autocomplete |
GET | /v1/stats | Aggregate counts |
GET | /v1/bundles | Released bulk-download bundles |
GET | /v1/bundles/{version}/download | 302 to a short-lived signed URL for one bundle |
List foods (paginated, filterable)
Get one food
Chemicals contained in a food
IS_A ancestry
List chemicals
Get one chemical
Foods containing a chemical
Disease correlations (reduces|worsens)
List diseases
Get one disease
Chemical correlations (reduces|worsens)
List bioactivities (paginated, filterable)
Get one bioactivity + parents/children hierarchy
Chemicals measured for a bioactivity (r6)
Foods that exhibit a bioactivity (r5)
Bioactivities measured for a chemical
Bioactivities exhibited by a food
Knowledge-graph edges (head, relationship, tail)
Get one triplet
Raw evidence row backing a triplet
Trigram autocomplete
Aggregate counts
Released bulk-download bundles
302 to a short-lived signed URL for one bundle
Versioning & terms
Routes under /v1/ follow a stable contract. Breaking changes ship under a new prefix ( /v2/ ) — we will not change response shapes within /v1/ .
Bulk downloads of released data are available under Downloads and via /v1/bundles , gated by the same key: /v1/bundles/{version}/download answers with a 302 to a signed URL that is valid for ten minutes, so pass -L to curl. Use those for corpus-scale work rather than scraping the API.
About AIFS
The AI Institute for Next Generation Food Systems, or AIFS aims to meet growing demands in our food supply by increasing efficiencies using Al and bioinformatics spanning the entire system–from growing crops through consumption. We are dedicated to creating AI applications for a healthier, more sustainable planet from farm to fork.
Connect with us
Subscribe to our newsletter to stay up-to-date on AIFS events, industry news, and AI research.