nutrient-data-laboratory
v1.4.1
Published
API wrapper for the USDA Nutrient Data Laboratory REST API (https://ndb.nal.usda.gov/ndb/api/doc)
Downloads
13
Maintainers
Readme
Node.js | USDA Nutrient Data Laboratory API
Summary
Node.js API wrapper for the USDA Nutrient Data Laboratory REST API
For more information, visit https://ndb.nal.usda.gov/ndb/api/doc
Installation
npm install nutrient-data-laboratory --save
Usage
NutrientDataLaboratory#foodReports()
Parameters
| Parameter | Required | Default | Description | | --- | --- | --- | --- | | api_key | y | n/a | Must be a data.gov registered API key | | ndbno | y | n/a | NDB no. May send as a list of NDB nos. up to a maixum of 20 per request | | type | n | b (basic) | Report type: [b]asic or [f]ull or [s]tats | format | n | JSON | Report format: xml or json |
Example
let ndl = new NutrientDataLaboratory('DEMO_KEY')
ndl.foodReports({
ndbno: '01009',
type: 'b'
}, (err, res) => {
if (err) console.error(err)
else console.log(res)
})
NutrientDataLaboratory#lists()
Parameters
| Parameter | Required | Default | Description | | --- | --- | --- | --- | | api_key | y | n/a | Must be a data.gov registered API key | | lt | n | f | list type(lt): f = food , n = all nutrients, ns = speciality nutrients, nr = standard release nutrients only,g = food group | | max | n | 50 | maximum number of items to return | | offset | n | 0 | beginning item in the result set | | sort | n | n | sort order: n=name or id (Meaning of id varies by list type: nutrient number for a nutrient list, NDBno for a foods list ,food group id for a food group list | | format | n | JSON | report format: JSON or XML |
Example
let ndl = new NutrientDataLaboratory('DEMO_KEY')
ndl.lists({
lt: 'f',
sort: 'n'
}, (err, res) => {
if (err) console.error(err)
else console.log(res)
})
NutrientDataLaboratory#nutrientReports()
Parameters
| Parameter | Required | Default | Description | | --- | --- | --- | --- | | api_key |y | n/a | Must be a data.gov registered API key | | fg | n | "" | limit your nutrients to one or more food groups by providing a list of food group ID's via the fg parameter. The default is a blank list meaning no food group filtering will be applied. Up to 10 food groups may be specified. | | format | n | JSON | Report format: xml or json | max | n | 50 | Number of rows to return. The maximum per request is 1,500. | | offset | n | 0 | beginning row in the result set to begin | | nbno | n | n/a | Report the nutrients for a single food identified by it's unique id -- nutrient number | | nutrients | y | n/a | a list of up to a maximum of 20 nutrient_id's to include in the report | | sort | n | f | Sort the list of foods by (f)ood name or nutrient (c)ontent. If you are requesting more than one nutrient and specifying sort = c then the first nutrient in your list is used for the content sort. | | subset | n | 0 | You may indicate all the foods in the SR database or an abridged list from the pull down menu. Set the subset parameter to 1 for the abridged list of about 1,000 foods commonly consumed in the U.S. The default 0 for all of the foods in the database |
Example
let ndl = new NutrientDataLaboratory('DEMO_KEY')
ndl.nutrientReports({
nutrients: ['205', '204', '208', '269']
}, (err, res) => {
if (err) console.error(err)
else console.log(res)
})
NutrientDataLaboratory#search()
Parameters
| Parameter | Required | Default | Description | | --- | --- | --- | --- | | api_key | y | n/a | Must be a data.gov registered API key | | q | n | "" | Search terms | | ds | n | "" | Data source. Must be either 'Branded Food Products' or 'Standard Reference' | | fg | n | "" | Food group ID | | sort | n | r | Sort the results by food name (n) or by search relevance (r) | | max | n | 50 | maximum rows to return | | offset | n | 0 | beginning row in the result set to begin | | format | n | JSON | results format: json or xml |
Example
let ndl = new NutrientDataLaboratory('DEMO_KEY')
ndl.search({
q: 'butter',
max: 25,
offset: 0
}, (err, res) => {
if (err) console.error(err)
else console.log(res)
})