diff --git a/off-pm-collection.json b/off-pm-collection.json index 3a55688..358b369 100644 --- a/off-pm-collection.json +++ b/off-pm-collection.json @@ -1,7 +1,7 @@ { "info": { - "_postman_id": "23865946-cffa-468d-9e49-3e008fb17ded", - "name": "Open Food Facts API Documentation", + "_postman_id": "6a9378a4-de90-45fa-9914-b4c41740ccd0", + "name": "off-pm-collection.json", "description": "## About\nAs a developer, the Open Food Facts API allows you to get information and contribute to the products database. You can create great apps to help people make better food choices and also provide data to enhance the database. Check out how others are making use of the API at https://world.openfoodfacts.org/discover#reuses\n\n----\n\n## Data Disclaimer\nThe data contained in the Open Food Facts database are collected by users willing to selflessly contribute to the Open Food Facts initiative. Therefore, no guarantees can be made for the accuracy, completeness, or reliability of the information provided. The user assumes the entire risk related to the use of data. You (or your users) are very welcome to provide fixes using the __WRITE__ API.\n\n----\n\n## Use\nYou can use the OFF API for production cases, as long as 1 API call equals 1 real scan by a user.\n\n----\n\n## Domains\nYou can either use the global domain (https://world.openfoodfacts.org) or the local domains (https://fr.openfoodfacts.org, https://en.openfoodfacts.org, …) for your API queries.\n\n----\n\n## Endpoint\nThe Open Food Facts base endpoint is: https://world.openfoodfacts.org\n\n----\n\n## Version\nThe current version of the API is 0.\n\n----\n\n## Authentication\n\n__READ and SEARCH operations__\n\nNo authentication is required.\n\nHowever, you have to add a User-Agent HTTP Header with the name of your app, the version, system and a url (if any), not to be blocked by mistake.\n\nFor example: `User-Agent: NameOfYourApp - Android - Version 1.0 - www.yourappwebsite.com`\n\n__WRITE operations__ \n\nNo authentication is required for adding new products or adding images.\n\nBasic authentication is required for editing existing products. You can create a global account to let the users of your app contribute without having to create individual credentials in the Open Food Facts site. \n\nParameters\n* `user_id`: YourUserID\n* `password`: YourPassword\n\n----\n\n## Servers\nYou can do READ/SEARCH/WRITE operations using the production server. \nTo make tests for WRITE operations, use  https://world.openfoodfacts.net (User:off, Password:off).\n\n----\n\n## Security\nUse the SSL version of the API: https://world.openfoodfacts.org\n\n----\n\n## Error Codes\n* __Product does not exist__ - HTTP code 200 + \"status_verbose\" : \"product not found\" + \"Status\" : 0.\n The request format is correct, but the product code does not exist in the database.\n* __Wrong Password__ - HTTP code 200 + an HTML page with a link to log in.\n The request format is correct, but basic authentication is missing or the password entered is not correct.\n* __Server down__ - HTTP codes 502/503/500\n* __Redirect to another product__ - HTTP code 301\n\n__Disclaimer:__ The HTML code 404 is never thrown, even when a wrong password is entered. A feature request has been created and we are already working to fix this.\n\n----\n\n## Rate limit\nThe API intended use is for apps, with one real user scan = one query. Automated queries are not supported. Please let us know in advance if you expect a high volume of calls. \n\nFor more information, see: https://world.openfoodfacts.org/data\n\n----\n\n## Preliminary Considerations\nThe API development is in progress. This has several implications:\n\n* Open Food Facts and food products are constantly evolving.\n* Assume that data is less reliable until the product is marked as complete. You might want to filter incomplete products to avoid issues (this is especially relevant for allergens or food intolerances). Let your end users know about this and encourage them to exercise caution. Be upfront about possible risks. You can use the following template to inform your users: _The data provided to you by this app are retrieved from the Open Food Facts database. No guarantees can be made for the accuracy, completeness, or reliability of the information provided. The data are provided “as is” and the originating source for the data (Open Food Facts) is not liable for any damages arising out of the use of the data._\n* Join our Slack Channel (https://slack-ssl-openfoodfacts.herokuapp.com) to get help, to share your thoughts, to let us know what you build with the API (contact@openfoodfacts.org or in the #API channel) or if you want to use WRITE operations.\n* You can also join the mailing list to be notified when improvements or changes are made to the API (we send only relevant information and very few e-mails. Don't worry, you won't be spammed). To join the mailing list, send an empty e-mail to api-subscribe@openfoodfacts.org to subscribe. \n\n----\n\n## License\n* Do not send copyrighted photos or information using the API. Everything you send is OdBL for the data (https://opendatacommons.org/licenses/odbl/summary/index.html) and CC-BY-SA for the pictures (https://creativecommons.org/licenses/by-sa/4.0/). If you don't own the data, you bear all the legal consequences.\n* Mention Open Food Facts as the source of the data.\n* Do not mix with other product databases (since you are then required to release them under OdBL, at your own legal risk).\n* Share any additions under the OdBL with the community. \n* By using any part of the API you have read and understood the license.\n\n----\n\n## API Conventions\n* Fields that end with `_t` are dates in the UNIX timestamp format (number of seconds since Jan 1st 1970)\n* Fields that end with `_datetime` are dates in the ISO8601 format: yyyy-mm-ddThh:mn:ssZ\n* Fields that end with `_tags` are comma-separated list of tags (e.g. categories_tags is the set of normalized tags computer from the categories field)\n* Fields that end with a language 2 letter code (e.g. fr for French) is the set of tags in that language\n* Fields that end with `_100g` correspond to the amount of a nutriment (in g) for 100 g or 100 ml of product\n\n----\n\n## Bugs\nDo not hesitate to file a bug if you find an issue in the API or need an improvement.\nYou can fill out the issue report on GitHub:\n\n* General bugs: https://github.com/openfoodfacts/openfoodfacts-server/issues\n* API bugs: https://github.com/openfoodfacts/openfoodfacts-server/labels/api\n* API milestone: https://github.com/openfoodfacts/openfoodfacts-server/milestone/8\n\n----\n\n## Downloading Data\nIt is recommended to use the live API to get updated data about products. However, in some cases, you may need a snapshot. \nThey are available at:\n\n* https://world.openfoodfacts.org/data (all data)\n* https://countrycode.openfoodfacts.org/data (data for a specific country). Example: https://us.openfoodfacts.org/data - (See the list of countries in the __Countries__ taxonomy)\n\n----\n\n## Exporting Data\n* File Encoding: The file encoding is Unicode UTF-8.\n* CSV API: The character that separates fields is < tab > (tabulation).\n* JSON\n\n----\n\n## API Roadmap\nAPI Redesign: The API is far from perfect. It's been decided to fix the most urgent bugs and start planning for a new version, more compliant with modern API standards. We need all the help we can get. Please join us on the #api Slack channel.\n\n* Project API: Additives\n* Project API: States\n* Project API: Statistics\n* Project API: Statistics Entry Dates\n\n----\n\n## Other Projects\n\n* Open Pet Food Facts\n* Open Beauty Facts\n* Open Products Facts", "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json" }, @@ -2818,7 +2818,7 @@ { "name": "FAQ", "item": [], - "description": "This section provides answers to frequently asked questions.\n\n## Some parameters allow the use of \"1\" and \"true\" (e.g. json). Which one should I use?\nAlthough both 1 and true are supported, we recommend using \"true\". \"1\" still works, but will be deprecated soon.\n\n----\n\n## Is multi-filtering supported?\nNo. You cannot search for different products in the same request:\n\nsearchUrl....+ \"&tagtype_0=nutrition_grades&tag_contains_0=contains&tag_0=CProducts\" +\n\"&tagtype_1=nutrition_grades&tag_contains_1=contains&tag_1=Products\"\n\nThe boolean logic behind requests is AND.\n\n----\n\n## Can I search for a specific writing of an ingredient? (for example: en:strawberry and not en:strawberries?)\n\nYes, you can do it with the search box: https://world.openfoodfacts.org/cgi/search.pl?search_terms=strawberries&search_simple=1&action=process (note that this also searches the product name and brand, not only the ingredients)\n\nYou can use the MongoDB export or CSV export. The API is ONLY for scan apps: 1 real user action = 1 api call. \n\n----\n\n## Is there a difference between nutrition-score-fr_100g and nutrition-score-uk_100g? \n\nYes, these parameters refer to different concepts.\n\n`nutrition-score-fr_100g` : experimental nutrition score derived from the UK FSA score and adapted for the French market (formula defined by the team of Professor Hercberg).\n\nNutri-Score definition: a synoptic 5-colour system put forward by public-health researchers (a graphic\nimprovement of the “5-C” system put forward in November 2013 by Serge Hercberg). It places\nproducts into five categories set up on the basis of a score that describes the nutritional quality\nof the product based on its content in major nutrients and certain other items; the five colours\nappear systematically on the packaging, with a “magnifying glass” on the one that relates to the\nproduct. \n\nThe nutritional score is calculated using the data from the nutritional declaration for 100 g of the product as sold. With liquid foods such as soups, oils or milk, the value used is the one given as a unit on the nutrition label, and not a unit that is not written on the packaging (to ensure transparency for the consumer). If two values are mentioned (per 100 g and per 100 ml), the one per 100 g is to be taken into account. Source: https://www.santepubliquefrance.fr/media/files/02-determinants-de-sante/nutrition-et-activite-physique/nutri-score/qr-scientifique-technique-en\n\nFor more information, see: https://solidarites-sante.gouv.fr/IMG/pdf/rapport_etiquetage_nutritionnel_version_anglaise.pdf\n\n`nutrition-score-uk_100g` : nutrition score defined by the UK Food Standards Administration (FSA)\n\nFor more information, see: \n* https://www.gov.uk/government/publications/the-nutrient-profiling-model\n* https://*.openfoodfacts.org/nutriscore\n* https://*.openfoodfacts.org/nova\n* https://*.openfoodfacts.org/nutrient-levels\n\n----\n\n## Other Sources of Information\n\nOpen Food Facts contains only information about packaged food. For average values of produce (for example, tomatoes or bananas) and other food products, you can use one of the official national nutrition databases instead.\n\n__Note:__ The list below contains some of the most important national food databases. If you think some other database should be included in the list, please contact us at: https://world.openfoodfacts.org/contact\n\n__List of National Food Databases__\n\n- __Australia__ - FSANZ - NUTTAB 2006: https://www.foodstandards.gov.au/media/documents/FSANZ%20Conf%20PostersNUTTAB.pdf\n- __Belgium__ - NUBEL - Belgian Food Composition Data: https://www.internubel.be\n- __Canada__ - FCEN: https://aliments-nutrition.canada.ca/cnf-fce/index-fra.jsp\n- __Czech Republic__ - Food Composition Database at National Institute of Public Health: http://www.chpr.szu.cz/dbdata/foodcomp/nut2001.asp\n- __Denmark__ - Danish Food Composition Databank: https://frida.fooddata.dk/?lang=en\n- __Estonia__ - Estonian Food Composition Database: https://tka.nutridata.ee/en/\n- __Finland__ - Finnish Food Composition Database - FINELI: https://fineli.fi/fineli/en/index\n- __France__ - CIQUAL: https://www.anses.fr/en/search/site/Table%20ciqual\n- __Germany__ - Souci-Fachmann-Kraut Online Database: https://www.sfk.online/#/home\n- __Italy__ - Banca Dati di Composizione degli Alimenti CREA: https://www.crea.gov.it/web/alimenti-e-nutrizione/banche-dati\n- __Netherlands__ - Dutch Food Composition Database: https://www.rivm.nl/en/dutch-food-composition-database\n- __Norway__ - The Norwegian Food Composition Table 2006: https://www.matvaretabellen.no/?language=en\n- __Poland__ - Food Composition Tables: http://www.izz.waw.pl/en/?lang=en\n- __Spain__ - Spanish Food Composition Database - BEDCA: https://www.bedca.net/bdpub/index.php\n- __Switzerland__ - Swiss Food Composition Database: https://www.naehrwertdaten.ch/de/\n- __UK__ - Composition of foods integrated dataset (CoFID): https://www.gov.uk/government/publications/composition-of-foods-integrated-dataset-cofid\n- __USA__ - USDA: https://ndb.nal.usda.gov/\n\n----\n\n## String Normalization\n\nThe normalization process is different depending on the language:\n\n* `no_language` is used for strings that are not in a specific language (e.g. user names)\n* `default` is used for languages that do not have specified values\n* German: Umlauts are not converted (e.g. ä -> ae)\n* All languages: the parameters are converted to lowercase and unaccented. \nThe following special characters are converted:\n\n * [à|á|â|ã|ä|å] -> a\n * [ç] -> c\n * [è|é|ê|ë] -> e\n * [ì|í|î|ï] -> i\n * [ñ] -> n\n * [ò|ó|ô|õ|ö] -> o\n * [ù|ú|û|ü] -> u\n * [ý|ÿ] -> y\n * [œ|Œ] -> oe\n * [æ|Æ] -> ae\n\n* Punctuation signs are changed to a dash - \n\n__Example of the normalization process for the product: coffee, brand: Nescafé__\n\nNon-taxonomized fields:\n\n* `brands`: Nescafé (as typed, no normalization)\n* `brands_tags`: nescafe (normalized = lower-case, unaccented, punctuation signs are changed to a dash -  )\n\nTaxonomized fields:\n\n* `categories`: Café\n* `categories_tags`: en:coffees\n\nIn this case, the tags are an id in the relevant taxonomy. \n\n__WRITE API:__ \n* Always use the raw unprocessed value (Nescafé). Do not try to provide the tag directly (taxonomized or not)\n\n__READ API:__ \n* If the field is taxonomized, use the taxonomy file to translate the `_tag` value into the user's native language (see the __Taxonomies__ section).\n* If the field is not taxonomized, use the raw unprocessed value.\n\n----\n\n## Which products are considered beverages in the NutriScore?\n\nThe following products are not considered beverages:\n\n\ten:plant-milks\n\ten:milks\n\ten:dairy-drinks\n\ten:meal-replacement\n\ten:dairy-drinks-substitutes\n\ten:chocolate-powders\n\ten:soups\n\ten:coffees\n\ten:tea-bags\n\ten:herbal-teas\n\t\nThe following products are considered beverages:\n\n\ten:tea-based-beverages\n\ten:iced-teas\n\ten:herbal-tea-beverages\n\ten:coffee-beverages\n\ten:coffee-drinks\n\nFor more information, see: https://world.openfoodfacts.org/nutriscore\n\n----\n\t\n## Which products are not taken into account for the NutriScore?\n\n\ten:alcoholic-beverages\n\ten:aromatic-herbs\n\ten:baby-foods\n\ten:baby-milks\n\ten:chewing-gum\n\ten:coffees\n\ten:food-additives\n\ten:herbal-teas\n\ten:honeys\n\ten:meal-replacements\n\ten:salts\n\ten:spices\n\ten:sugar-substitutes\n\ten:vinegars\n\ten:pet-food\n\ten:non-food-products\n\t\nThe information below has been taken from the Nutri-Score FAQ document, available online at: https://www.santepubliquefrance.fr/content/download/150263/file/QR_scientifique_technique_EN_011119.pdf\n\nFood products that are not covered by the mandatory nutritional declaration are listed in Appendix V of\nregulation no. 1169/2011. \nThey are:\n1. Unprocessed products that comprise a single ingredient or category of ingredients (such as fresh\nfruits or vegetables, cut raw meat, honey, etc.)\n2. Processed products where the only processing they have been subjected to is maturing and that\ncomprise a single ingredient or category of ingredients\nNote: here the products in question are mainly meat products\n3. Waters intended for human consumption, including those where the only added ingredients are\ncarbon dioxide and/or flavourings\n4. Herbs, spices or mixtures thereof\n5. Salt and salt substitutes\n6. Table top sweeteners\n7. Products covered by Directive 1999/4/EC of the European Parliament and of the Council of 22\nFebruary 1999 relating to coffee extracts and chicory extracts, whole or milled coffee beans, and\nwhole or milled decaffeinated coffee beans\n8. Herbal and fruit infusions, tea, decaffeinated tea, instant or soluble tea or tea extract, decaffeinated\ninstant or soluble tea or tea extract, which do not contain other added ingredients than flavourings\nwhich do not modify the nutritional value of the tea\n9. Fermented vinegars and substitutes for vinegar, including those where the only added ingredients\nare flavourings\n10. Flavourings\n11. Food additives\n12. Processing aids\n13. Food enzymes\n14. Gelatine\n15. Jam setting compounds\n16. Yeasts\n17. Chewing gums\n18. Food in packaging or containers the largest surface of which has an area of less than 25 cm²\n19. Food, including handcrafted food, directly supplied by the manufacturer of small quantities of\nproducts to the final consumer or to local retail establishments directly supplying the final consumer\n\n----\n\n## I've found a bug in the API, but I'm not sure if the issue has been already reported. Where can I find a list of existing issues? How can I create a new bug fix request?\n\nBefore creating a new bug fix request, make sure the issue has not been reported yet. The following link displays a full list of issues for the backend (in different states):\n\nhttps://github.com/openfoodfacts/openfoodfacts-server/issues?utf8=%E2%9C%93&q=is%3Aissue+is%3Aopen+label%3Aapi+\n\nTo report a bug, inform us in the API channel o create a bug fix request on GitHub: https://github.com/openfoodfacts/openfoodfacts-server/blob/master/CONTRIBUTING.md\n\n----\n\n## How can I set the main language of a product?\n\nThe `lang` parameter allows you to set the main language of the product. If not explicitly defined, the main language will be the first language added to the product.\n\nIn the case of a multilingual product, you can specify the main language of the product, and you can then specify values and images for different languages by suffixing the language code to the other fields.\n\n__Examples:__\n\n* `lang=fr`\n* `ingredients_text_with_allergens_fr`\n\n----\n\n## About Salt and Sodium\n\n\"salt\" is automatically converted to \"sodium\" and viceversa. Both values are stored in the database. Note that, if you want to delete \"sodium\", \"nutriment_salt\" has to be deleted as well.", + "description": "This section provides answers to frequently asked questions.\n\n## Some parameters allow the use of \"1\" and \"true\" (e.g. json). Which one should I use?\n\nAlthough both 1 and true are supported, we recommend using \"true\". \"1\" still works, but will be deprecated soon.\n\n* * *\n\n## Is multi-filtering supported?\n\nNo. You cannot search for different products in the same request:\n\nsearchUrl....+ \"&tagtype_0=nutrition_grades&tag_contains_0=contains&tag_0=CProducts\" + \n\"&tagtype_1=nutrition_grades&tag_contains_1=contains&tag_1=Products\"\n\nThe boolean logic behind requests is AND.\n\n* * *\n\n## Can I search for a specific writing of an ingredient? (for example: en:strawberry and not en:strawberries?)\n\nYes, you can do it with the search box: [https://world.openfoodfacts.org/cgi/search.pl?search_terms=strawberries&search_simple=1&action=process](https://world.openfoodfacts.org/cgi/search.pl?search_terms=strawberries&search_simple=1&action=process) (note that this also searches the product name and brand, not only the ingredients)\n\nYou can use the MongoDB export or CSV export. The API is ONLY for scan apps: 1 real user action = 1 api call.\n\n* * *\n\n## Is there a difference between nutrition-score-fr_100g and nutrition-score-uk_100g?\n\nYes, these parameters refer to different concepts.\n\n`nutrition-score-fr_100g` : experimental nutrition score derived from the UK FSA score and adapted for the French market (formula defined by the team of Professor Hercberg).\n\nNutri-Score definition: a synoptic 5-colour system put forward by public-health researchers (a graphic \nimprovement of the “5-C” system put forward in November 2013 by Serge Hercberg). It places \nproducts into five categories set up on the basis of a score that describes the nutritional quality \nof the product based on its content in major nutrients and certain other items; the five colours \nappear systematically on the packaging, with a “magnifying glass” on the one that relates to the \nproduct.\n\nThe nutritional score is calculated using the data from the nutritional declaration for 100 g of the product as sold. With liquid foods such as soups, oils or milk, the value used is the one given as a unit on the nutrition label, and not a unit that is not written on the packaging (to ensure transparency for the consumer). If two values are mentioned (per 100 g and per 100 ml), the one per 100 g is to be taken into account. Source: [https://www.santepubliquefrance.fr/media/files/02-determinants-de-sante/nutrition-et-activite-physique/nutri-score/qr-scientifique-technique-en](https://www.santepubliquefrance.fr/media/files/02-determinants-de-sante/nutrition-et-activite-physique/nutri-score/qr-scientifique-technique-en)\n\nFor more information, see: [https://solidarites-sante.gouv.fr/IMG/pdf/rapport_etiquetage_nutritionnel_version_anglaise.pdf](https://solidarites-sante.gouv.fr/IMG/pdf/rapport_etiquetage_nutritionnel_version_anglaise.pdf)\n\n`nutrition-score-uk_100g` : nutrition score defined by the UK Food Standards Administration (FSA)\n\nFor more information, see:\n\n* [https://www.gov.uk/government/publications/the-nutrient-profiling-model](https://www.gov.uk/government/publications/the-nutrient-profiling-model)\n* https://*.openfoodfacts.org/nutriscore\n* https://*.openfoodfacts.org/nova\n* https://*.openfoodfacts.org/nutrient-levels\n \n\n* * *\n\n## Other Sources of Information\n\nOpen Food Facts contains only information about packaged food. For average values of produce (for example, tomatoes or bananas) and other food products, you can use one of the official national nutrition databases instead.\n\n**Note:** The list below contains some of the most important national food databases. If you think some other database should be included in the list, please contact us at: [https://world.openfoodfacts.org/contact](https://world.openfoodfacts.org/contact)\n\n**List of National Food Databases**\n\n* **Australia** - FSANZ - NUTTAB 2006: [https://www.foodstandards.gov.au/media/documents/FSANZ%20Conf%20PostersNUTTAB.pdf](https://www.foodstandards.gov.au/media/documents/FSANZ%20Conf%20PostersNUTTAB.pdf)\n* **Belgium** - NUBEL - Belgian Food Composition Data: [https://www.internubel.be](https://www.internubel.be)\n* **Canada** - FCEN: [https://aliments-nutrition.canada.ca/cnf-fce/index-fra.jsp](https://aliments-nutrition.canada.ca/cnf-fce/index-fra.jsp)\n* **Czech Republic** - Food Composition Database at National Institute of Public Health: [http://www.chpr.szu.cz/dbdata/foodcomp/nut2001.asp](http://www.chpr.szu.cz/dbdata/foodcomp/nut2001.asp)\n* **Denmark** - Danish Food Composition Databank: [https://frida.fooddata.dk/?lang=en](https://frida.fooddata.dk/?lang=en)\n* **Estonia** - Estonian Food Composition Database: [https://tka.nutridata.ee/en/](https://tka.nutridata.ee/en/)\n* **Finland** - Finnish Food Composition Database - FINELI: [https://fineli.fi/fineli/en/index](https://fineli.fi/fineli/en/index)\n* **France** - CIQUAL: [https://www.anses.fr/en/search/site/Table%20ciqual](https://www.anses.fr/en/search/site/Table%20ciqual)\n* **Germany** - Souci-Fachmann-Kraut Online Database: [https://www.sfk.online/#/home](https://www.sfk.online/#/home)\n* **Italy** - Banca Dati di Composizione degli Alimenti CREA: [https://www.crea.gov.it/web/alimenti-e-nutrizione/banche-dati](https://www.crea.gov.it/web/alimenti-e-nutrizione/banche-dati)\n* **Netherlands** - Dutch Food Composition Database: [https://www.rivm.nl/en/dutch-food-composition-database](https://www.rivm.nl/en/dutch-food-composition-database)\n* **Norway** - The Norwegian Food Composition Table 2006: [https://www.matvaretabellen.no/?language=en](https://www.matvaretabellen.no/?language=en)\n* **Poland** - Food Composition Tables: [http://www.izz.waw.pl/en/?lang=en](http://www.izz.waw.pl/en/?lang=en)\n* **Spain** - Spanish Food Composition Database - BEDCA: [https://www.bedca.net/bdpub/index.php](https://www.bedca.net/bdpub/index.php)\n* **Switzerland** - Swiss Food Composition Database: [https://www.naehrwertdaten.ch/de/](https://www.naehrwertdaten.ch/de/)\n* **UK** - Composition of foods integrated dataset (CoFID): [https://www.gov.uk/government/publications/composition-of-foods-integrated-dataset-cofid](https://www.gov.uk/government/publications/composition-of-foods-integrated-dataset-cofid)\n* **USA** - USDA: [https://ndb.nal.usda.gov/](https://ndb.nal.usda.gov/)\n \n\n* * *\n\n## String Normalization\n\nThe normalization process is different depending on the language:\n\n* `no_language` is used for strings that are not in a specific language (e.g. user names)\n* `default` is used for languages that do not have specified values\n* German: Umlauts are not converted (e.g. ä -> ae)\n* All languages: the parameters are converted to lowercase and unaccented. \n The following special characters are converted:\n * \\[à|á|â|ã|ä|å\\] -> a\n * \\[ç\\] -> c\n * \\[è|é|ê|ë\\] -> e\n * \\[ì|í|î|ï\\] -> i\n * \\[ñ\\] -> n\n * \\[ò|ó|ô|õ|ö\\] -> o\n * \\[ù|ú|û|ü\\] -> u\n * \\[ý|ÿ\\] -> y\n * \\[œ|Œ\\] -> oe\n * \\[æ|Æ\\] -> ae\n* Punctuation signs are changed to a dash -\n \n\n**Example of the normalization process for the product: coffee, brand: Nescafé**\n\nNon-taxonomized fields:\n\n* `brands`: Nescafé (as typed, no normalization)\n* `brands_tags`: nescafe (normalized = lower-case, unaccented, punctuation signs are changed to a dash - )\n \n\nTaxonomized fields:\n\n* `categories`: Café\n* `categories_tags`: en:coffees\n \n\nIn this case, the tags are an id in the relevant taxonomy.\n\n**WRITE API:**\n\n* Always use the raw unprocessed value (Nescafé). Do not try to provide the tag directly (taxonomized or not)\n \n\n**READ API:**\n\n* If the field is taxonomized, use the taxonomy file to translate the `_tag` value into the user's native language (see the **Taxonomies** section).\n* If the field is not taxonomized, use the raw unprocessed value.\n \n\n* * *\n\n## Which products are considered beverages in the NutriScore?\n\nThe following products are not considered beverages:\n\n```\nen:plant-milks\nen:milks\nen:dairy-drinks\nen:meal-replacement\nen:dairy-drinks-substitutes\nen:chocolate-powders\nen:soups\nen:coffees\nen:tea-bags\nen:herbal-teas\n\n```\n\nThe following products are considered beverages:\n\n```\nen:tea-based-beverages\nen:iced-teas\nen:herbal-tea-beverages\nen:coffee-beverages\nen:coffee-drinks\n\n```\n\nFor more information, see: [https://world.openfoodfacts.org/nutriscore](https://world.openfoodfacts.org/nutriscore)\n\n* * *\n\n## Which products are not taken into account for the NutriScore?\n\n```\nen:alcoholic-beverages\nen:aromatic-herbs\nen:baby-foods\nen:baby-milks\nen:chewing-gum\nen:coffees\nen:food-additives\nen:herbal-teas\nen:honeys\nen:meal-replacements\nen:salts\nen:spices\nen:sugar-substitutes\nen:vinegars\nen:pet-food\nen:non-food-products\n\n```\n\nThe information below has been taken from the Nutri-Score FAQ document, available online at: [https://www.santepubliquefrance.fr/content/download/150263/file/QR_scientifique_technique_EN_011119.pdf](https://www.santepubliquefrance.fr/content/download/150263/file/QR_scientifique_technique_EN_011119.pdf)\n\nFood products that are not covered by the mandatory nutritional declaration are listed in Appendix V of \nregulation no. 1169/2011. \nThey are:\n\n1. Unprocessed products that comprise a single ingredient or category of ingredients (such as fresh \n fruits or vegetables, cut raw meat, honey, etc.)\n2. Processed products where the only processing they have been subjected to is maturing and that \n comprise a single ingredient or category of ingredients \n Note: here the products in question are mainly meat products\n3. Waters intended for human consumption, including those where the only added ingredients are \n carbon dioxide and/or flavourings\n4. Herbs, spices or mixtures thereof\n5. Salt and salt substitutes\n6. Table top sweeteners\n7. Products covered by Directive 1999/4/EC of the European Parliament and of the Council of 22 \n February 1999 relating to coffee extracts and chicory extracts, whole or milled coffee beans, and \n whole or milled decaffeinated coffee beans\n8. Herbal and fruit infusions, tea, decaffeinated tea, instant or soluble tea or tea extract, decaffeinated \n instant or soluble tea or tea extract, which do not contain other added ingredients than flavourings \n which do not modify the nutritional value of the tea\n9. Fermented vinegars and substitutes for vinegar, including those where the only added ingredients \n are flavourings\n10. Flavourings\n11. Food additives\n12. Processing aids\n13. Food enzymes\n14. Gelatine\n15. Jam setting compounds\n16. Yeasts\n17. Chewing gums\n18. Food in packaging or containers the largest surface of which has an area of less than 25 cm²\n19. Food, including handcrafted food, directly supplied by the manufacturer of small quantities of \n products to the final consumer or to local retail establishments directly supplying the final consumer\n \n\n* * *\n\n## I've found a bug in the API, but I'm not sure if the issue has been already reported. Where can I find a list of existing issues? How can I create a new bug fix request?\n\nBefore creating a new bug fix request, make sure the issue has not been reported yet. The following link displays a full list of issues for the backend (in different states):\n\n[https://github.com/openfoodfacts/openfoodfacts-server/issues?utf8=✓&q=is:issue+is:open+label:api+](https://github.com/openfoodfacts/openfoodfacts-server/issues?utf8=✓&q=is:issue+is:open+label:api+)\n\nTo report a bug, inform us in the API channel o create a bug fix request on GitHub: [https://github.com/openfoodfacts/openfoodfacts-server/blob/master/CONTRIBUTING.md](https://github.com/openfoodfacts/openfoodfacts-server/blob/master/CONTRIBUTING.md)\n\n* * *\n\n## How can I set the main language of a product?\n\nThe `lang` parameter allows you to set the main language of the product. If not explicitly defined, the main language will be the first language added to the product.\n\nIn the case of a multilingual product, you can specify the main language of the product, and you can then specify values and images for different languages by suffixing the language code to the other fields.\n\n**Examples:**\n\n* `lang=fr`\n* `ingredients_text_with_allergens_fr`\n \n\n* * *\n\n## About Salt and Sodium\n\n\"salt\" is automatically converted to \"sodium\" and viceversa. Both values are stored in the database. Note that, if you want to delete \"sodium\", \"nutriment_salt\" has to be deleted as well.\n\n## What if information on Fibre is not present on the product?\n\nIn computing Nutri-score, fibre is really important. But some products do not provide any information on fibre whether it is present in the product. In a situation like this, using a dash or minus sign \"-\".\n\nFilling the fibre space with dash \"-\" helps the system know that the value is not stated on the product. This removes the warning message that pops up when fibre space is empty.", "event": [ { "listen": "prerequest",