openfoodfacts 3.29.0
openfoodfacts: ^3.29.0 copied to clipboard
Dart package for the Open Food Facts API, a food products database made by everyone, for everyone.
Changelog #
3.29.0 - 2025-12-27 #
3.28.0 - 2025-12-07 #
3.27.0 - 2025-10-24 #
3.26.0 - 2025-10-07 #
Features #
- 1055 - API versions as decimal, Product.schemaVersion (#1139) (24dd1de)
- 1062 - prices get challenge methods (#1143) (74048f5)
- 1135 - getLocalizedNames, getCanonicalTags new taxonomy methods (#1136) (a8c3517)
- 905 - new units "% DV" and "IU" (#1146) (301eb90)
- knowledge-panels: Implement 2 new subcases for knowledge panels actions (#1121) (069a075)
Bug Fixes #
3.25.0 - 2025-09-05 #
3.24.0 - 2025-06-27 #
3.23.0 - 2025-06-09 #
3.22.0 - 2025-04-28 #
Features #
- 1066 - new parameters for proof upload (#1071) (53b2c42)
- add additional parameters to PriceUser model (#1065) (14174ef)
- Add flexibility to PriceTotalStats (#1059) (3f29110)
- Add iso3Code field to OpenFoodFactsCountry enum per #1067 (#1068) (03c0e4e)
- Added kind parameter to getPricesParameters and getProofsParameters (#1064) (cac6076)
3.21.0 - 2025-03-29 #
3.20.0 - 2025-03-04 #
3.19.0 - 2025-01-27 #
3.18.0 - 2024-11-29 #
3.17.0 - 2024-11-18 #
3.16.0 - 2024-10-04 #
3.14.0 - 2024-09-07 #
3.13.0 - 2024-08-13 #
3.12.0 - 2024-07-02 #
3.10.0 - 2024-05-22 #
3.9.0 - 2024-05-17 #
3.7.0 - 2024-05-03 #
3.6.0 - 2024-04-19 #
3.5.0 - 2024-04-07 #
Features #
- 831 - latest "prices" API changes (#897) (88dada6)
- 831 - more parameters for the "get prices" API query (#886) (820d145)
- 831 - new price methods like add price and upload proof (#884) (7615fcb)
- 831 - Prices getLocation, getPriceProduct, getStatus methods (#855) (e18080b)
- 891 - new "uploaded timestamp" field for raw images (#892) (56446da)
- 895 - added product field
'expiration_date'(#898) (7ec0a7e)
Bug Fixes #
3.4.0 - 2024-02-06 #
3.3.3 - 2024-01-31 #
3.3.0 - 2023-12-24 #
3.2.0 - 2023-11-28 #
Features #
- 620 - autocomplete for all taxonomy names and fuzziness levels (#835) (046c418)
- 620 - Elastic Search autocomplete for categories (#834) (1672f1a)
- 836 - localizable and clickable server error (#837) (a40101c)
- new field pageCount for searchResult (#823) (1d88bbf)
- new localized product fields for generic name (#828) (a98cfcb)
Bug Fixes #
3.1.0 - 2023-10-28 #
3.0.0 - 2023-09-30 #
⚠ BREAKING CHANGES #
- 801 - more url flexibility with non static UriHelper (#803)
- fix for the uk/gb country code case (#795)
- A valid user agent is now required (#790)
- removed deprecated code (#791)
- 742 - robotoff - countries instead of country (#792)
Features #
- 69 - method to get a server type from its off tag (#796) (0bd8f90)
- 801 - more url flexibility with non static UriHelper (#803) (7753cb0)
- 802 - new "get product" method specific to OBF OPF OPFF (#806) (e824de2)
- A valid user agent is now required (#790) (a26ec2a)
- insight - method to get an insight annotation from an int value (#797) (fdc6381)
- method to get the Uri host (e.g. for ping) (#800) (081f0b9)
- product "getAttribute" method (#799) (a179dc5)
- specified minimum size for uploaded images (for pre-checks) (#798) (3cf14f2)
Bug Fixes #
2.10.0 - 2023-08-12 #
2.9.0 - 2023-08-09 #
2.8.0 - 2023-08-08 #
2.7.0 - 2023-07-12 #
2.5.2 - 2023-06-03 #
2.5.0 - 2023-04-16 #
2.4.0 - 2023-03-08 #
2.3.0 - 2023-02-16 #
2.1.0 - 2023-01-05 #
2.0.0 - 2023-01-01 #
⚠ BREAKING CHANGES #
- 658 - api version is now required for barcode and search queries (#667)
- 450 - finalizing the breaking changes (#656)
- 450 - import only "openfoodfacts.dart"; all code in "src" folder (#655)
- 450 - Name source files using "lowercase_with_underscores" (#653)
Features #
- 450 - import only "openfoodfacts.dart"; all code in "src" folder (#655) (d05d49c)
- 450 - Name source files using "lowercase_with_underscores" (#653) (cc4eb2c)
- 659 - support of product field "packagingsComplete" (#664) (ddd61a3)
- 662 - new packaging fields "quantityPerUnit" and weightMeasured" (#665) (c5335b7)
Bug Fixes #
- 617 - user related queries now support api v3 (#666) (11f678a)
- 650 - less server demanding nova integration test (#668) (b6379ce)
Code Refactoring #
1.30.0 - 2022-12-25 #
1.29.0 - 2022-12-09 #
1.28.0 - 2022-11-22 #
Features #
- #596 - added Origin Taxonomy (#608) (bfe0f11)
- #605 - taxonomy - support of packaging materials and shapes (#610) (43f83a9)
- #614 - taxonomy - support of packaging recycling (#615) (716db4d)
Bug Fixes #
- #223 - deprecated method getIngredientSpellingCorrection (#627) (9da441f)
- #571 - last step of migration of enums to dart 2.17 (#623) (cc1b388)
- #571 - new enum upgrades to dart 2.17 (#621) (dc2dfc3)
- #609 - fix of failed getProduct integration test (#616) (067752e)
- #625 - no user credentials in header if null (#626) (8566fcf)
- integrationTest with packaging recycling (#622) (98a3deb)
1.27.0 - 2022-10-25 #
1.26.2 - 2022-10-23 #
1.26.0 - 2022-10-13 #
1.25.0 - 2022-09-23 #
1.24.0 - 2022-08-15 #
Features #
- #516 - API v2 for multi barcode search (#533) (2961310)
- #517 - added ECOSCORE and NUTRISCORE sort-by options (#522) (a39ba24)
- #524 - added ingredients analysis tags (vegan, vegetarian, palm oil free) (#525) (645d903)
- #526 - new AllergensParameter search filter (#527) (3872351)
- #531 - new StatesTagsParameter search filter (#532) (0fcd95d)
- new "Barcodes" parameter; deprecated configurations (#538) (582775b)
- new field Product.novaGroup (#540) (325c1e5)
Bug Fixes #
1.23.0 - 2022-07-15 #
1.22.0 - 2022-07-10 #
1.21.0 - 2022-07-06 #
1.20.0 - 2022-06-29 #
1.19.0 - 2022-06-22 #
1.18.1 - 2022-06-07 #
1.16.0 - 2022-04-23 #
1.15.0 - 2022-04-19 #
Features #
- Barcodes validation for EAN8 & EAN13 (#444) (0d3ac02)
- README.md with a list of known apps using the SDK (#435) (c25dece)
- Support for Product - No nutrition data field (#423) (c6ace40)
- Username max length (#442) (14eaec0)
Bug Fixes #
- #241 Added "energy-kj" (#418) (3f55bfa)
- #349 - removed irrelevant "create event" classes and methods (#424) (242c944)
- #414 - changed get request to post (#415) (e478837)
- #447 - new class "PageNumber" replacing ambiguous "Page" parameter (#449) (584dbcc)
- actually upload an image on a random product (#419) (bad6238)
- coordinates_image_size is no subtype of String (#443) (9a66b95)
- getProductRaw tests (#428) (e92a169)
- Removed deprecated Product field imgSmallUrl (#448) (8bb9d97)
- send user credentials in POST requests, fixes #420 (#421) (0be7396)
1.14.0 - 2022-03-15 #
1.13.0 - 2022-03-04 #
Features #
- #349 - added support for Events API (#386) (ea79ad0)
- #379 - added packaging_text_XX (#380) (cf492c5)
- #382 - added a "packaging" tag type (#383) (4479956)
- #394 - additional "root" and "all" configurations for taxonomies (#396) (4686ddb)
- #401 - added packaging taxonomy (#402) (c7dbebe)
- added the set of nutrient ids supported by Nutriments. (#385) (bf9f79b)
Bug Fixes #
1.12.0 - 2022-02-02 #
Features #
- #348 - new methods getTaxonomyTranslationUri and getCrowdinUri (#372) (057e0a3)
- #369 - more flexibility for product query version (#374) (51fdebc)
- #370 - added "uuid" to configuration (#378) (2be52e0)
- #370 - added app_name and app_version to http queries (as parameters) (#376) (d4c6ef9)
- new method getProductString, api V0 and V2, new product and ingredient fields (#371) (82547f6)
1.11.1 - 2022-01-16 #
1.8.0 - 2021-12-20 #
1.7.0 - 2021-12-15 #
1.6.0 - 2021-12-14 #
1.5.0 - 2021-12-09 #
1.4.0 - 2021-11-19 #
1.3.9 - 2021-11-17 #
Features #
- Add a taxonomy API for labels (#277)
- Add additives, countries, and languages taxonomy APIs (#278)
- Add queries to get the roots from the server (#287)
- Add support for the new "Image Refresh" API (#289)
- Add nutrient order and list (#272)
- Added eco-score and nutri-score categories (ProductImprovement) (#191)
Bug Fixes #
1.3.8 22.10.2021 #
- More updates to KnowledgePanel APIs
1.3.7 12.10.2021 #
- Update KnowledgePanel API to comply to the latest Backend changes.
1.3.6 10.10.2021 #
- Fix issue with
NutrimentsJSON conversion related to microgram units - Support password reset
- Add
page,pageSizeandsortOptioninProductListQueryConfiguration
1.3.5 26.09.2021 #
- Improve wrong username/password error messages in
Status
1.3.4 24.09.2021 #
- Add ability to check whether a product attribute is marked as important in user's personal preferences
1.3.3 16.09.2021 #
- Add ability to request the
product_name_languagesandingredients_text_languagesfields - Introduce
OpenFoodAPISettingsto improve API configuration support - Allow user agent to be passed via HTTP header
- Added
getProductImprovementsto the product model - Add missing
carbohydratesUnitandfatUnitfields in theNutriementsclass - Fix alchohol tags in the
Nutrimentsclass - Fix write API for nutrient fields
1.3.2 25.07.2021 #
- Fixed completely toJson and fromJson for the fields in multiple languages
1.3.1 22.07.2021 #
- Fixed toJson and fromJson for the fields in multiple languages
1.3.0 21.07.2021 #
- Added explicit parameter WithoutAdditives to replace ContainsAdditives (deprecated)
- Added new InvalidBarcodes class
- Simplified product search tests
- Added several nutrients
- Added ability to request and set multiple translated product fields at once (breaking change)
- Added support for product list queries
- Added PnnsGroup2 filter to ProductSearchQueryConfiguration, deprecated PnnsGroupQueryConfiguration
- Deprecated useless parameters OutputFormat and SearchSimple
- Added new feature to get the Ecoscore description in HTML
- Added comments to several classes and methods
1.2.0 08.07.2021 #
product_name_de,productNameEN, ... are now deprecated. UseproductNameTranslatedinstead- Added the
agribalysefield inEcoscoreData - Added support for the
missing_data_warningfield, to inform users that the ecoscore may be improved - Added support for user management
- Added dart-doc documentation
- Added suggestion for states, languages, labels, categories and more.
1.1.0-beta 30.03.2021 #
- Renamed SendImage imageUrl parameter to imageUri as it is an Uri (breaking change)
- New product preferences and matching classes for personalized search (thanks to monsieurtanuki)
- Added missing values for IngredientsAnalysisTags, and renamed some values to match API names (breaking change)
- Fixed image upload and added PACKAGING image type
1.0.2-beta 11.03.2021 #
- Added support for new fields (images URLs, vegan/vegetarian/from palm oil ingredients, categories, labels and packaging)
- Fixed test mode for addProductImage
1.0.1-beta 08.03.2021 #
- API method for searching products does not require a user being passed
1.0.0-beta 07.03.2021 #
- Migrated SDK to null safety
- Updated test instructions in README.md
- Improved Github Action validation
0.3.15+3 01.03.2021 #
- Greatly improved code quality and readability
0.3.15+2 08.02.2021 #
- fix additional issue with EcoScoreData JSON generation
- use Github action to test changes
- fix test output (avoid chatty tests)
- add support for OCR ingredients
0.3.15+1 04.02.2021 #
- fix issue with images URLs
0.3.15 04.02.2021 #
- Refactored tests to use the Open Food Facts test database (thanks to Mohamed Boussaid)
- Added packaging image type
- Allow setting the country code cc field
- Added countries and countries tags to Product (thanks to Mohamed Boussaid)
- Allow anonymous photo upload
- Fixed product JSON generation for Eco-Score data (thanks to Peter Tran-Jørgensen)
0.3.14+1 07.01.2021 #
- Refactored Attribute & AttributeGroup
- Removed ProductFields.ECOSCORE_ALPHA as deprecated
0.3.14 01.01.2021 #
- Added support for Ecoscore (thanks to Frédéric Julian)
0.3.13+2 2.12.2020 #
- nullable product name hotfix
0.3.13+1 24.11.2020 #
- product upload hotfix
0.3.13 20.11.2020 #
- Extended micronutrients support (thanks to Ilia (Elliot) Tikhomirov)
- product attribute: lastModified
0.3.12+2 26.10.2020 #
- Fixed save product. NULL values won't be sent.
0.3.12+1 27.09.2020 #
- Fixed image upload
0.3.12 27.09.2020 #
- Added AttributeGroups
0.3.11+1 19.09.2020 #
- Fixed SearchResult
0.3.11 19.09.2020 #
- Added userPreferences
- Product image upload fixed (Thanks to Peter Tran-Jørgensen)
0.3.10 02.08.2020 #
- Added energyKcal and energyKcal100g
0.3.9 30.07.2020 #
- Added EnvironmentImpactLevels
- Rewrote NutrientLevels
0.3.8 27.07.2020 #
- Fixed typos in PnnsGroup2 ids
0.3.7 17.07.2020 #
- Added allergens
- Introduced PNNS groups and PnnsGroup2 queries
0.3.6 12.07.2020 #
- fixed Json product generation (additives, selectedImages)
0.3.5 28.06.2020 #
- fixed servingQuantity issue introduced in 0.3.4
0.3.4 25.06.2020 #
- selectedImages toJson implementation
- codebase improvements
0.3.3 25.06.2020 #
- ingredient percentage parsing fixed
0.3.2 19.05.2020 #
- dart:ui - dependencies removed
- search result decoding and parsing errors fixed
0.3.1 30.04.2020 #
- Added documentation form version 0.3.0
- Updated README.md
0.3.0 30.04.2020 #
- Support for more than 180 languages
- New query / search principle - ProductQueryConfiguration : In order to optimize the queries you can now set the return language and fields list through ProductQueryConfiguration (Default Behaviour)
- getProductRaw() is still available (Old Behaviour)
0.2.1 14.04.2020 #
- expose robotoff and helper classes
0.2.0 13.04.2020 #
- added robotoff support, new service methods: getProductInsights(), getRobotoffQuestionsForProduct(), getRandomRobotoffQuestion(), postInsightAnnotation(), getIngredientSpellingCorrection(),
- added images field
- added documentation.md
0.1.16 05.03.2020 #
- added brandsTags to get brands as a list
0.1.15 24.02.2020 #
- added serving size and nutriment serving sizes
0.1.14 25.01.2020 #
- search products by tags
- search products with / without additives
- search products with keywords
0.1.13 24.11.2019 #
- added support for Spanish
0.1.12 18.11.2019 #
- nutrient levels added
0.1.11 9.10.2019 #
- additives management implemented
- added Nutriscore to product
- bugfix: ingredientText language dependent
0.1.10 5.10.2019 #
- nutriments management implemented
0.1.9 21.09.2019 #
- get product image by field, size and language
0.1.8 13.09.2019 #
- http: 0.12.0
0.1.7 13.09.2019 #
- Bugfix: search result page - json parse error fixed (string vs. int)
- json_annotation: 3.0.0
- build_runner: 1.6.9
- json_serializable: 3.2.2
0.1.6 06.06.2019 #
- Bugfix: ingredients percent json parse error fixed (string vs. int)
0.1.5 28.05.2019 #
- getProduct() fixed null-pointer for non existing product.
- searchProducts() english URL now working. (-> world)
0.1.4 19.05.2019 #
- getProduct() chooses a language dependent host (world, de, ..)
- Bugfix: getProduct() won't fail if no images are provided
0.1.3 5.05.2019 #
- searchProducts() with language support
0.1.2 5.05.2019 #
- Ingredients.dart more type safe (THX to dynamic)
0.1.1 5.05.2019 #
- class SearchResult now visible
0.1.0 4.05.2019. #
- service method searchProducts() implemented.
0.0.10 28.03.2019 #
the test package dependency has been moved to flutter_test.
0.0.9 16.03.2019. #
dependency version upgrade to:
- json_annotation: 2.0.0
- build_runner: 1.2.6
- json_serializable: 2.0.2
0.0.8 16.11.2018. #
- getProduct() provides ingredients and images for a given language.
- getProductRaw() provides all data fields without preparation.
0.0.6 27.10.2018. #
- set dependency versions as range
0.0.5 25.10.2018. #
- upgrade of http 0.12.0
- upgrade of build_runner 1.0.0
0.0.4 16.10.2018. #
- class Image changed to ProductImage for a easier namespace resolving.
0.0.3 12.10.2018. #
- model of selected product images changed.
0.0.2 3.10.2018. #
- Service saveProduct() can handle to add and to edit a product.
- Added traces to a product
0.0.1 18.09.2018. #
initial version with these API services:
- add a new product
- add a new product image
- get an existing product