Saltar al contenido

Inicio rápido

Tu primer request en cinco minutos. Necesitas una API key; consulta Autenticación para conseguir una. Después expórtala y llama al endpoint de alimentos.

1. Configura tu key

Mantén tu key fuera del control de versiones. Expórtala como una variable de entorno que tus fragmentos puedan leer:

export NOMS_KEY=noms_sk_live_xxxxxxxxxxxxxxxxxxxxxxxx

2. Haz tu primer request

Busca alimentos con ?q=. La respuesta es un arreglo data más links y meta para la paginación:

GET
curl -G https://api.noms.sh/v1/foods \
  --data-urlencode "q=almonds" \
  --data-urlencode "page_size=1" \
  -H "Authorization: Bearer $NOMS_KEY"
Response
200 OK
{
"data": [
{
"id": "TIgbNPnzCIjX",id estable del alimento, el handle de /v1/foods/{id}
"barcode": "00041570110645",
"name": "Roasted salted almonds",
"description": null,
"scientific_name": null,
"country_of_origin": null,
"ingredients_text": "Almonds, sunflower oil, sea salt.",
"is_foundational": false,
"basis_unit": "grams",por cuánto están expresados los valores nutricionales de este alimento
"brand_id": "XoluRyOx9o3C",
"food_group_id": "NUTS_AND_SEEDS"
}
],
"links": {
"self": "/v1/foods?q=almonds&page_size=1",
"next": "/v1/foods?q=almonds&page_size=1&cursor=b3V0..."sigue esta URL para la siguiente página
},
"meta": {
"has_more": true,true cuando existen más resultados
"page_size": 1
}
}

3. Obtén un alimento con sus nutrientes

Toma un único alimento por su id y trae su desglose de nutrientes con include=nutrients. Los valores son por 100 del basis_unit del alimento; consulta Datos nutricionales para convertirlos a una porción:

GET
curl -G https://api.noms.sh/v1/foods/TIgbNPnzCIjX \
  --data-urlencode "include=nutrients,brand" \
  -H "Authorization: Bearer $NOMS_KEY"
Response
200 OK
{
"data": {
"id": "TIgbNPnzCIjX",
"barcode": "00041570110645",
"name": "Roasted salted almonds",
"description": null,
"scientific_name": null,
"country_of_origin": null,
"ingredients_text": "Almonds, sunflower oil, sea salt.",
"is_foundational": false,
"basis_unit": "grams",los valores de abajo son por 100 gramos, ver Datos nutricionales
"brand_id": "XoluRyOx9o3C",
"food_group_id": "NUTS_AND_SEEDS",
"brand": {incorporado por include=brand
"id": "XoluRyOx9o3C",
"name": "Blue Diamond"
},
"nutrients": [mediciones por 100 (include=nutrients)
{
"id": "ADDED_SUGARS",
"name": "Sugars, added",
"value": "0.0",
"unit": "g"
},
{
"id": "ALPHA_TOCOPHEROL",
"name": "Vitamin E (alpha-tocopherol)",
"value": "25.1625",
"unit": "mg"
},
{
"id": "BIOTIN",
"name": "Biotin",
"value": "43.214286",
"unit": "mcg"
},
{
"id": "CALCIUM",
"name": "Calcium, Ca",
"value": "285.714286",
"unit": "mg"
},
]
}
}

Próximos pasos