3.16.0 (2024-10-04)
3.15.0 (2024-09-18)
3.14.0 (2024-09-07)
3.13.0 (2024-08-13)
- 893 - 4 new fields for user (#903) (a7e195b)
- 951 - new method User.getUserWikiPage (#955) (f57e51c)
- 956 - added product owner fields (#961) (bd3202b)
- 962 - link to add a discussion topic on the wiki (#963) (1e357ce)
- 937 - removed home-made user agent header when for web (#950) (b7da12b)
- 941 - respect rate-limits during integration tests (#943) (881dc5b)
3.12.0 (2024-07-02)
3.11.0 (2024-06-07)
- 900 - for KnowledgePanelActionElement html is now optional (#901) (e4ec263)
- 927 - minimum forced query version is now 2 (#936) (260e482)
- added "app_name" parameter for prices methods uploadProof and createPrice (#938) (e4bd1ed)
3.10.0 (2024-05-22)
3.9.0 (2024-05-17)
- 831 - prices methods getProofs, getProof and getUsers + fixed uploadProof (#926) (baa1258)
- add localized additives and allergens (#929) (9d17073)
3.8.0 (2024-05-10)
3.7.0 (2024-05-03)
3.6.1 (2024-04-23)
3.6.0 (2024-04-19)
3.5.0 (2024-04-07)
- 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)
- folksonomy getProductTag may return 404 (#881) (990cc67)
- new format for the labeler (#899) (d3ca5ea)
- unit tests around category "beverages" (#896) (40e8966)
3.4.0 (2024-02-06)
- 773 - new method "getProductNameBrandQuantity" (#844) (2167bf9)
- 878 - added the "obsolete" product field (#879) (4cc49cd)
- autocomplete manager for both TagTypes and TaxonomyNames (#851) (6bb8deb)
3.3.3 (2024-01-31)
3.3.2 (2024-01-12)
3.3.1 (2024-01-07)
3.3.0 (2023-12-24)
- 831 - Open Prices API - "get prices" (#845) (eaeb1aa)
- simplified access to raw product images (#839) (3350251)
- If
product.images
isnull
,getProductImageIds
shouldn't crash (#857) (02abab3) - unit test with updated expected values (#858) (0482f63)
3.2.1 (2023-12-03)
3.2.0 (2023-11-28)
- 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)
3.1.0 (2023-10-28)
3.0.0 (2023-09-30)
- 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)
- 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)
- 742 - robotoff - countries instead of country (#792) (8582519)
- fix for the uk/gb country code case (#795) (fc2e907)
- removed deprecated code (#791) (8d01168)
2.10.1 (2023-08-17)
2.10.0 (2023-08-12)
2.9.0 (2023-08-09)
2.8.0 (2023-08-08)
2.7.4 (2023-08-03)
2.7.3 (2023-07-20)
2.7.2 (2023-07-19)
2.7.1 (2023-07-12)
2.7.0 (2023-07-12)
- Allow to pass
insight_types
toapi/v1/questions/$barcode
(#748) (cf9dd14) - Allow to pass a country and/or a language to the
register
user method (#754) (05c5c12)
2.6.0 (2023-06-14)
2.5.2 (2023-06-03)
2.5.1 (2023-05-21)
2.5.0 (2023-04-16)
- 715 - downgraded "path" in order to match "flutter_test" (#725) (58d9a10)
- Refactor Robotoff methods (#723) (7a71cbb)
- robotoff deprecated method calls in tests (#724) (1cc8f18)
2.4.0 (2023-03-08)
2.3.1 (2023-02-18)
2.3.0 (2023-02-16)
- 695 - New API V3 suggestions for taxonomies (#696) (c0ffe94)
- 699 - new class MatchedScoreV2 with better perf than MatchedProductV2 (#702) (5a3dba9)
2.2.1 (2023-01-27)
2.2.0 (2023-01-26)
2.1.2 (2023-01-09)
2.1.1 (2023-01-09)
2.1.0 (2023-01-05)
- Start new documentation (Check out here) (#663) (7d12409)
2.0.1 (2023-01-03)
2.0.0 (2023-01-01)
- 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)
- 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)
- 617 - user related queries now support api v3 (#666) (11f678a)
- 650 - less server demanding nova integration test (#668) (b6379ce)
- 450 - finalizing the breaking changes (#656) (c8e8e37)
- 658 - api version is now required for barcode and search queries (#667) (c7f3b1d)
1.30.1 (2022-12-25)
1.30.0 (2022-12-25)
- 539 - specific test for nova group filter (#646) (44dfd2d)
- 539 - taxonomy for Nova groups (#645) (5bf2959)
- 548 - License "refactoring" (#642) (18f5c6f)
- 617 - new "save packagings V3" feature (#640) (55ffbf2)
- 648 - new method "Nutriments.isEmpty" (#649) (d04e9eb)
1.29.0 (2022-12-09)
- 618 - added 6 contribution fields (#636) (fcfa446)
- API V3 now supported for "get product" (#633) (e118386)
1.28.0 (2022-11-22)
- #596 - added Origin Taxonomy (#608) (bfe0f11)
- #605 - taxonomy - support of packaging materials and shapes (#610) (43f83a9)
- #614 - taxonomy - support of packaging recycling (#615) (716db4d)
- #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.1 (2022-11-06)
1.27.0 (2022-10-25)
- #596 - implemented autocomplete for ORIGINS (#597) (f39e398)
- #602 - added the "website" product field (#603) (e9fe00a)
- #507 - no more parameters in product URI (#601) (313fd28)
- #598 - deprecated 2 "environment" fields (#600) (5cb3ea3)
1.26.2 (2022-10-23)
- #565 - added product field "nutrition data", better null value management (#595) (6e2df43)
- #592 - KnowledgePanelTextElement - 'type' instead of 'text_type' (#593) (10f51cc)
- Sending credentials to robotff (#590) (2b09926)
1.26.1 (2022-10-16)
1.26.0 (2022-10-13)
- #566 - refactored Nutriments as Map with new Nutrient class (#570) (d30108f)
- #573 - getRandomRobotoffQuestion with optional insight types (#574) (c8692c1)
- #579 - new method to log in, that returns data about user (#583) (7994f45)
- #565 - added 'nutrition_data' flag and energy fields (#568) (bbb149f)
- ImageHelper - new methods with ImageSize parameters + minor fix (#572) (24ec991)
- KP panel groups sometimes have null title (#576) (bf66f28)
- make GitHub Projects more resilient (#558) (fe319e0)
1.25.0 (2022-09-23)
- #560 - optionally adding user credentials for POST requests (#561) (d5cd14c)
- add funding links (#547) (e52018a)
- imageHelper - minor fix about Windows; deprecated methods (#545) (eb0ac81)
- integration tests around "getTaxonomy" (#563) (a826add)
1.24.0 (2022-08-15)
- #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)
1.23.0 (2022-07-15)
1.22.0 (2022-07-10)
1.21.0 (2022-07-06)
1.20.0 (2022-06-29)
- #465 - new "limit" parameter for autocomplete suggestions (#498) (4fd1f75)
- #488 - new user-related queries (#499) (1ee5184)
- #494 - added OCR for packaging (#497) (4c14abb)
- #495 - new "action" element for knowledge panels (#496) (317bee4)
1.19.0 (2022-06-22)
- #481 - added product fields embCodes and manufacturingPlaces (#490) (a30e7a5)
- saveProduct with language and country (#491) (6e7d60e)
1.18.2 (2022-06-17)
1.18.1 (2022-06-07)
1.18.0 (2022-06-03)
1.17.1 (2022-05-26)
1.17.0 (2022-05-20)
1.16.0 (2022-04-23)
1.15.0 (2022-04-19)
- 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)
- #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)
- #410 - refactored TaxonomyCountry with simplified fields (#412) (dc77db3)
- Support for source fields in the Knowledge panel API (#409) (6a065fd)
- #407 - getProductList now works with unlimited number of barcodes (#413) (fd7ddbc)
- #410 - removed failing tests about TaxonomyCountry (#411) (25f7a4b)
- changelog order (#405) (ca4669c)
1.13.0 (2022-03-04)
- #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)
1.12.0 (2022-02-02)
- #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.11.0 (2022-01-15)
1.10.0 (2022-01-13)
1.9.1 (2022-01-08)
1.9.0 (2022-01-07)
1.8.1 (2021-12-28)
1.8.0 (2021-12-20)
- Initial support for Folksonomy Engine (Beta) (#332) (f7b254e)
- Added globalUser to OpenFoodAPIConfiguration (#329) (e246d9e)
- Added missing product fields to ProductField enum (#331) (4bbd66c)
- Don't pass country code if it's null (#324) (5f9447c)
1.7.0 (2021-12-15)
1.6.0 (2021-12-14)
- #307 - added 21 enum values for advanced search parameters (#313) (55f3fa5)
- Allow to get OpenFoodFactsCountry from countryCode (#314) (8b6c9bc)
1.5.0 (2021-12-09)
- #301 - new method getProductUri (#302) (85169f0)
- #304 - new method setProductImageAngle and setProductImageCrop (#309) (c69f3f6)
1.4.0 (2021-11-19)
1.3.9 (2021-11-17)
- 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)
- Update to latest KnowledgePanel API changes (#294) (5163db5)
- Add additives, countries, and languages taxonomy APIs (#274)
- Allow to send deviceId to InsightAnnotations API and allow anonymous user (#286)
- More updates to KnowledgePanel APIs
- Update KnowledgePanel API to comply to the latest Backend changes.
- Fix issue with
Nutriments
JSON conversion related to microgram units - Support password reset
- Add
page
,pageSize
andsortOption
inProductListQueryConfiguration
- Improve wrong username/password error messages in
Status
- Add ability to check whether a product attribute is marked as important in user's personal preferences
- Add ability to request the
product_name_languages
andingredients_text_languages
fields - Introduce
OpenFoodAPISettings
to improve API configuration support - Allow user agent to be passed via HTTP header
- Added
getProductImprovements
to the product model - Add missing
carbohydratesUnit
andfatUnit
fields in theNutriements
class - Fix alchohol tags in the
Nutriments
class - Fix write API for nutrient fields
- Fixed completely toJson and fromJson for the fields in multiple languages
- Fixed toJson and fromJson for the fields in multiple languages
- 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
product_name_de
,productNameEN
, ... are now deprecated. UseproductNameTranslated
instead- Added the
agribalyse
field inEcoscoreData
- Added support for the
missing_data_warning
field, 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.
- 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
- Added support for new fields (images URLs, vegan/vegetarian/from palm oil ingredients, categories, labels and packaging)
- Fixed test mode for addProductImage
- API method for searching products does not require a user being passed
- Migrated SDK to null safety
- Updated test instructions in README.md
- Improved Github Action validation
- Greatly improved code quality and readability
- fix additional issue with EcoScoreData JSON generation
- use Github action to test changes
- fix test output (avoid chatty tests)
- add support for OCR ingredients
- fix issue with images URLs
- 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)
- Refactored Attribute & AttributeGroup
- Removed ProductFields.ECOSCORE_ALPHA as deprecated
- Added support for Ecoscore (thanks to Frédéric Julian)
- nullable product name hotfix
- product upload hotfix
- Extended micronutrients support (thanks to Ilia (Elliot) Tikhomirov)
- product attribute: lastModified
- Fixed save product. NULL values won't be sent.
- Fixed image upload
- Added AttributeGroups
- Fixed SearchResult
- Added userPreferences
- Product image upload fixed (Thanks to Peter Tran-Jørgensen)
- Added energyKcal and energyKcal100g
- Added EnvironmentImpactLevels
- Rewrote NutrientLevels
- Fixed typos in PnnsGroup2 ids
- Added allergens
- Introduced PNNS groups and PnnsGroup2 queries
- fixed Json product generation (additives, selectedImages)
- fixed servingQuantity issue introduced in 0.3.4
- selectedImages toJson implementation
- codebase improvements
- ingredient percentage parsing fixed
- dart:ui - dependencies removed
- search result decoding and parsing errors fixed
- Added documentation form version 0.3.0
- Updated README.md
- 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)
- expose robotoff and helper classes
- added robotoff support, new service methods: getProductInsights(), getRobotoffQuestionsForProduct(), getRandomRobotoffQuestion(), postInsightAnnotation(), getIngredientSpellingCorrection(),
- added images field
- added documentation.md
- added brandsTags to get brands as a list
- added serving size and nutriment serving sizes
- search products by tags
- search products with / without additives
- search products with keywords
- added support for Spanish
- nutrient levels added
- additives management implemented
- added Nutriscore to product
- bugfix: ingredientText language dependent
- nutriments management implemented
- get product image by field, size and language
- http: 0.12.0
- 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
- Bugfix: ingredients percent json parse error fixed (string vs. int)
- getProduct() fixed null-pointer for non existing product.
- searchProducts() english URL now working. (-> world)
- getProduct() chooses a language dependent host (world, de, ..)
- Bugfix: getProduct() won't fail if no images are provided
- searchProducts() with language support
- Ingredients.dart more type safe (THX to dynamic)
- class SearchResult now visible
- service method searchProducts() implemented.
the test package dependency has been moved to flutter_test.
dependency version upgrade to:
- json_annotation: 2.0.0
- build_runner: 1.2.6
- json_serializable: 2.0.2
- getProduct() provides ingredients and images for a given language.
- getProductRaw() provides all data fields without preparation.
- set dependency versions as range
- upgrade of http 0.12.0
- upgrade of build_runner 1.0.0
- class Image changed to ProductImage for a easier namespace resolving.
- model of selected product images changed.
- Service saveProduct() can handle to add and to edit a product.
- Added traces to a product
initial version with these API services:
- add a new product
- add a new product image
- get an existing product