Nutritional Database
The most detailed information can be found in the PassioIDAttributes object. To retrieve this object from a given PassioID or name or barcode or ocrCode and searchQuery.
/**
* Look up the nutrition attributes for a given Passio ID.
* @param passioID - The Passio ID for the attributes query.
* @returns A `Promise` resolving to a `PassioIDAttributes` object if the
* record exists in the database or `null` if not.
*/
getAttributesForPassioID(passioID: PassioID): Promise<PassioIDAttributes | null>;
/**
* Look up the nutrition attributes for the given name of a food item. This is
* most often used with a string received from the `searchForFood` function.
* @param name - The name of the item you'd like to query.
* @returns A `Promise` resolving to a `PassioIDAttributes` object if the
* record exists in the database or `null` if not.
*/
getAttributesForName(name: string): Promise<PassioIDAttributes | null>;
/**
* Query Passio's UPC web service for nutrition attributes of a given barcode.
* @param barcode - The barcode value for the attributes query, typically
* taken from a scanned `BarcodeCandidate`.
* @returns A `Promise` resolving to a `PassioIDAttributes` object if the
* record exists in the database or `null` if not.
*/
fetchAttributesForBarcode(barcode: Barcode): Promise<PassioIDAttributes | null>;
/**
* Query Passio's web service for nutrition attributes given an OCR identifier.
* @param ocrCode - The OCR identifier for the attributes query, taken from
* the list of OCR candidates on a `FoodDetectionEvent`.
* @returns A `Promise` resolving to a `PassioIDAttributes` object if the
* record exists in the database or `null` if not.
*/
fetchAttributesForOCR(ocrCode: OCRCode): Promise<PassioIDAttributes | null>;
/**
* Search the local database of foods with a given search term.
* @param searchQuery - The search term to match against food item names.
* @returns A `Promise` resolving to an array of food item names.
*/
searchForFood(searchQuery: string): Promise<string[]>;
convertUPCProductToAttributes(product: UPCProduct, entityType: PassioIDEntityType): Promise<PassioIDAttributes | null>;
PassioIDAttributes: Information associated with an item in the nutritional database. Check the entityType
field to determine the type of the item.
export interface PassioIDAttributes {
/**
* The ID of the item in the database
*/
passioID: PassioID;
/**
* The name of the item
*/
name: string;
/**
* The name of the image for this item. Provide this value to a `PassioIconView`
* in order to display the image.
*/
imageName: string;
/**
* The entity type of the item
*/
entityType: PassioIDEntityType;
/**
* The nutritional data for this item in the database
*/
foodItem?: PassioFoodItem;
/**
* The recipe data for this item in the database
*/
recipe?: PassioRecipe;
/**
* Related items above this item in the food heirarchy (more generic)
*/
parents: PassioAlternative[];
/**
* Related items below this item in the food heirarchy (more specific)
*/
children: PassioAlternative[];
/**
* Related items at the same level as this item in the food heirarchy
*/
siblings: PassioAlternative[];
}
PassioFoodItem: Nutritional information for an item in the food database
export interface PassioFoodItem {
/**
* The ID of the item in the database
*/
passioID: PassioID;
/**
* The name of the item
*/
name: string;
/**
* The name of the image for this item. Provide this value to a `PassioIconView`
* in order to display the image.
*/
imageName: string;
/**
* The default serving quantity
*/
selectedQuantity: number;
/**
* The default serving unit
*/
selectedUnit: string;
/**
* The entity type of the item
*/
entityType: PassioIDEntityType;
/**
* The serving units available for this recipe
*/
servingUnits: ServingUnit[];
/**
* The serving sizes available for this recipe
*/
servingSizes: ServingSize[];
/**
* The mass of the serving size, in grams
*/
computedWeight: Measurement;
/**
* Related items above this item in the food heirarchy (more generic)
*/
parents?: PassioAlternative[];
/**
* Related items below this item in the food heirarchy (more specific)
*/
children?: PassioAlternative[];
/**
* Related items at the same level as this item in the food heirarchy
*/
siblings?: PassioAlternative[];
/**
* Calories, in kcal
*/
calories?: number;
/**
* Carbohydrates, in grams
*/
carbs?: number;
/**
* Fat, in grams
*/
fat?: number;
/**
* Protein, in grams
*/
protein?: number;
/**
* Saturated fat, in grams
*/
saturatedFat?: number;
/**
* Transfat, in grams
*/
transFat?: number;
/**
* Monounsaturated fat, in grams
*/
monounsaturatedFat?: number;
/**
* Polyunsaturated fat, in grams
*/
polyunsaturatedFat?: number;
/**
* Cholesterol, in milligrams
*/
cholesterol?: number;
/**
* Sodium, in milligrams
*/
sodium?: number;
/**
* Dietary fiber, in grams
*/
fiber?: number;
/**
* Total sugars, in grams
*/
sugar?: number;
/**
* Added sugar, in grams
*/
sugarAdded?: number;
/**
* Vitamin D, in milligrams
*/
vitaminD?: number;
/**
* Calcium, in milligrams
*/
calcium?: number;
/**
* Iron, in milligrams
*/
iron?: number;
/**
* Potassium, in milligrams
*/
potassium?: number;
/**
* Vitamin A, in IU
*/
vitaminA?: number;
/**
* Vitamin C, in milligrams
*/
vitaminC?: number;
/**
* Alcohol, in grams
*/
alcohol?: number;
/**
* Sugar alcohol, in grams
*/
sugarAlcohol?: number;
/**
* Vitamin B12, in micrograms
*/
vitaminB12?: number;
/**
* Added Vitamin B12, in micrograms
*/
vitaminB12Added?: number;
/**
* Vitamin B6, in milligrams
*/
vitaminB6?: number;
/**
* Vitamin E, in milligrams
*/
vitaminE?: number;
/**
* Added Vitamin E, in milligrams
*/
vitaminEAdded?: number;
/**
* Magnesium, in milligrams
*/
magnesium?: number;
/**
* Phosphorus, in milligrams
*/
phosphorus?: number;
/**
* Iodine, in micrograms
*/
iodine?: number;
/**
* The ingredients listed on the product packaging, if any
*/
ingredientsDescription?: string;
/**
* The UPC code for this food product, if available
*/
barcode?: string;
}
PassioRecipe
export interface PassioRecipe {
/**
* The ID of the recipe in the database
*/
passioID: PassioID;
/**
* The name of the recipe
*/
name: string;
/**
* The name of the image for this recipe. Provide this value to a
* `PassioIconView` in order to display the image.
*/
imageName: string;
/**
* The serving sizes available for this recipe
*/
servingSizes: ServingSize[];
/**
* The serving units available for this recipe
*/
servingUnits: ServingUnit[];
/**
* The default serving unit
*/
selectedUnit: string;
/**
* The default serving quantity
*/
selectedQuantity: number;
/**
* The food items in this recipe
*/
foodItems: PassioFoodItem[];
}
If at any point you need help from the Passio team, please reach out to us at support@passiolife.com
Last updated