Deprecations

This page tracks deprecated endpoints and features, and their recommended replacements.

REST API

Legacy
Replacement
Status

Advisor threads (/nutrition-advisor/threads/...)

POST /napi/tools/nutritionAdvisor

Deprecated. Tools endpoint handles conversation context automatically.

Pre-built meal plans (/food/recommend/mealPlans, /food/suggest/mealTimes)

generateMealPlan, generateMealPlanPreview

Legacy plans not actively maintained. Use AI-generated endpoints instead.

extractFoodAndIngredients

extractIngredientsAutoTyped

Meal hierarchy (mealName, componentName) is now included by default.

SDK

Legacy
Replacement
Status

On-device detection (startFoodDetection, stopFoodDetection)

recognizeImageRemote

On-device models are deprecated. SDK now wraps the remote API by default.

recognizeImageRemoteWithGrouping

recognizeImageRemote

Meal hierarchy is now included by default.

Advisor (initConversation, sendMessage, sendImage)

Pending

Will migrate to tools endpoint in a future release.

Real-time nutrition facts detection (startNutritionFactsDetection, stopNutritionFactsDetection)

recognizeNutritionFactsRemote

Use the remote endpoint instead of real-time camera detection.

Legacy meal plans (fetchMealPlans, fetchMealPlanForDay)

generateMealPlan, generateMealPlanPreview

Use AI-generated endpoints instead.

Notes

  • On-device detection: The legacy startFoodDetection / stopFoodDetection flow with on-device models is deprecated. The current SDK uses remote API calls by default (recognizeImageRemote), which provides better accuracy and a larger food database. If you are still using on-device detection, migrate to recognizeImageRemote (SDK) or extractIngredientsAutoTyped (REST API).

  • Advisor: The thread-based advisor API is replaced by the simpler tools endpoint (nutritionAdvisor), which handles conversation context automatically. The SDK still uses the older advisor pattern and will be updated in a future release.

  • Meal Plans: The pre-built plans (/food/recommend/mealPlans) return static, curated plans. For personalized, AI-generated plans use generateMealPlan and generateMealPlanPreview instead.

  • Grouping endpoints: The extractFoodAndIngredients (REST API) and recognizeImageRemoteWithGrouping (SDK) were originally introduced to provide meal-level grouping -- returning a mealName for the overall dish and componentName for sub-groups of ingredients. This hierarchy is now included by default in the standard endpoints:

    • REST API: extractIngredientsAutoTyped returns mealName and componentName on every item in the response array. For example, scanning a bowl of fruit salad will return items with mealName: "Fruit Salad" and individual ingredients (strawberries, blueberries, etc.) as separate items. You can display the mealName as a single entry in your UI, or group by componentName for a structured breakdown.

    • SDK: recognizeImageRemote returns mealName and componentName on each PassioAdvisorFoodInfo object (iOS and Android as of 3.2.14; Flutter and React Native in an upcoming release).

    The separate grouping endpoints (extractFoodAndIngredients, recognizeImageRemoteWithGrouping) are no longer necessary and should not be used.

Last updated