openapi: 3.2.0 info: title: 'Mealie Households: Shopping List Items API' description: ' Mealie is a web application for managing your recipes, meal plans, and shopping lists. This is the Restful API interactive documentation that can be used to explore the API. If you''re justing getting started with the API and want to get started quickly, you can use the [API Usage | Mealie Docs](https://docs.mealie.io/documentation/getting-started/api-usage/) as a reference for how to get started. If you have any questions or comments about mealie, please use the discord server to talk to the developers or other community members. If you''d like to file an issue, please use the [GitHub Issue Tracker | Mealie](https://github.com/mealie-recipes/mealie/issues/new/choose) ## Helpful Links - [Home Page](https://mealie.io) - [Documentation](https://docs.mealie.io) - [Discord](https://discord.gg/QuStdQGSGK) - [Demo](https://demo.mealie.io) ' version: nightly tags: - name: 'Households: Shopping List Items' paths: /api/households/shopping/items: get: tags: - 'Households: Shopping List Items' summary: Get All operationId: get_all_api_households_shopping_items_get security: - OAuth2PasswordBearer: [] parameters: - name: orderBy in: query required: false schema: anyOf: - type: string - type: 'null' title: Orderby - name: orderByNullPosition in: query required: false schema: anyOf: - $ref: '#/components/schemas/OrderByNullPosition' - type: 'null' title: Orderbynullposition - name: orderDirection in: query required: false schema: $ref: '#/components/schemas/OrderDirection' default: desc - name: queryFilter in: query required: false schema: anyOf: - type: string - type: 'null' title: Queryfilter - name: paginationSeed in: query required: false schema: anyOf: - type: string - type: 'null' title: Paginationseed - name: page in: query required: false schema: type: integer default: 1 title: Page - name: perPage in: query required: false schema: type: integer default: 50 title: Perpage - name: accept-language in: header required: false schema: anyOf: - type: string - type: 'null' title: Accept-Language responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ShoppingListItemPagination' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' post: tags: - 'Households: Shopping List Items' summary: Create One operationId: create_one_api_households_shopping_items_post security: - OAuth2PasswordBearer: [] parameters: - name: accept-language in: header required: false schema: anyOf: - type: string - type: 'null' title: Accept-Language requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ShoppingListItemCreate' responses: '201': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ShoppingListItemsCollectionOut' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' put: tags: - 'Households: Shopping List Items' summary: Update Many operationId: update_many_api_households_shopping_items_put security: - OAuth2PasswordBearer: [] parameters: - name: accept-language in: header required: false schema: anyOf: - type: string - type: 'null' title: Accept-Language requestBody: required: true content: application/json: schema: type: array items: $ref: '#/components/schemas/ShoppingListItemUpdateBulk' title: Data responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ShoppingListItemsCollectionOut' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' delete: tags: - 'Households: Shopping List Items' summary: Delete Many operationId: delete_many_api_households_shopping_items_delete security: - OAuth2PasswordBearer: [] parameters: - name: ids in: query required: false schema: type: array items: type: string format: uuid4 title: Ids - name: accept-language in: header required: false schema: anyOf: - type: string - type: 'null' title: Accept-Language responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/SuccessResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/households/shopping/items/create-bulk: post: tags: - 'Households: Shopping List Items' summary: Create Many operationId: create_many_api_households_shopping_items_create_bulk_post security: - OAuth2PasswordBearer: [] parameters: - name: accept-language in: header required: false schema: anyOf: - type: string - type: 'null' title: Accept-Language requestBody: required: true content: application/json: schema: type: array items: $ref: '#/components/schemas/ShoppingListItemCreate' title: Data responses: '201': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ShoppingListItemsCollectionOut' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/households/shopping/items/{item_id}: get: tags: - 'Households: Shopping List Items' summary: Get One operationId: get_one_api_households_shopping_items__item_id__get security: - OAuth2PasswordBearer: [] parameters: - name: item_id in: path required: true schema: type: string format: uuid4 title: Item Id - name: accept-language in: header required: false schema: anyOf: - type: string - type: 'null' title: Accept-Language responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ShoppingListItemOut-Output' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' put: tags: - 'Households: Shopping List Items' summary: Update One operationId: update_one_api_households_shopping_items__item_id__put security: - OAuth2PasswordBearer: [] parameters: - name: item_id in: path required: true schema: type: string format: uuid4 title: Item Id - name: accept-language in: header required: false schema: anyOf: - type: string - type: 'null' title: Accept-Language requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ShoppingListItemUpdate' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ShoppingListItemsCollectionOut' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' delete: tags: - 'Households: Shopping List Items' summary: Delete One operationId: delete_one_api_households_shopping_items__item_id__delete security: - OAuth2PasswordBearer: [] parameters: - name: item_id in: path required: true schema: type: string format: uuid4 title: Item Id - name: accept-language in: header required: false schema: anyOf: - type: string - type: 'null' title: Accept-Language responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/SuccessResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' components: schemas: CreateIngredientFoodAlias: properties: name: type: string title: Name type: object required: - name title: CreateIngredientFoodAlias IngredientUnit-Input: properties: id: type: string format: uuid4 title: Id name: type: string title: Name pluralName: anyOf: - type: string - type: 'null' title: Pluralname description: type: string title: Description default: '' extras: anyOf: - additionalProperties: true type: object - type: 'null' title: Extras default: {} fraction: type: boolean title: Fraction default: true abbreviation: type: string title: Abbreviation default: '' pluralAbbreviation: anyOf: - type: string - type: 'null' title: Pluralabbreviation default: '' useAbbreviation: type: boolean title: Useabbreviation default: false aliases: items: $ref: '#/components/schemas/IngredientUnitAlias' type: array title: Aliases default: [] standardQuantity: anyOf: - type: number - type: 'null' title: Standardquantity standardUnit: anyOf: - type: string - type: 'null' title: Standardunit createdAt: anyOf: - type: string format: date-time - type: 'null' title: Createdat update_at: anyOf: - type: string format: date-time - type: 'null' title: Update At type: object required: - id - name title: IngredientUnit MultiPurposeLabelSummary: properties: name: type: string title: Name color: type: string title: Color default: '#959595' groupId: type: string format: uuid4 title: Groupid id: type: string format: uuid4 title: Id type: object required: - name - groupId - id title: MultiPurposeLabelSummary ShoppingListItemPagination: properties: page: type: integer title: Page default: 1 per_page: type: integer title: Per Page default: 10 total: type: integer title: Total default: 0 total_pages: type: integer title: Total Pages default: 0 items: items: $ref: '#/components/schemas/ShoppingListItemOut-Output' type: array title: Items next: anyOf: - type: string - type: 'null' title: Next previous: anyOf: - type: string - type: 'null' title: Previous type: object required: - items title: ShoppingListItemPagination RecipeTool: properties: id: type: string format: uuid4 title: Id groupId: anyOf: - type: string format: uuid4 - type: 'null' title: Groupid name: type: string title: Name slug: type: string title: Slug recipeCount: type: integer title: Recipecount default: 0 householdsWithTool: items: type: string type: array title: Householdswithtool default: [] type: object required: - id - name - slug title: RecipeTool ShoppingListItemRecipeRefUpdate: properties: recipeId: type: string format: uuid4 title: Recipeid recipeQuantity: type: number title: Recipequantity default: 0 recipeScale: anyOf: - type: number - type: 'null' title: Recipescale default: 1 recipeNote: anyOf: - type: string - type: 'null' title: Recipenote id: type: string format: uuid4 title: Id shoppingListItemId: type: string format: uuid4 title: Shoppinglistitemid type: object required: - recipeId - id - shoppingListItemId title: ShoppingListItemRecipeRefUpdate ShoppingListItemOut-Output: properties: quantity: type: number title: Quantity default: 1 unit: anyOf: - $ref: '#/components/schemas/IngredientUnit-Output' - type: 'null' food: anyOf: - $ref: '#/components/schemas/IngredientFood-Output' - type: 'null' referencedRecipe: anyOf: - $ref: '#/components/schemas/Recipe-Output' - type: 'null' note: anyOf: - type: string - type: 'null' title: Note default: '' display: type: string title: Display default: '' shoppingListId: type: string format: uuid4 title: Shoppinglistid checked: type: boolean title: Checked default: false position: type: integer title: Position default: 0 foodId: anyOf: - type: string format: uuid4 - type: 'null' title: Foodid labelId: anyOf: - type: string format: uuid4 - type: 'null' title: Labelid unitId: anyOf: - type: string format: uuid4 - type: 'null' title: Unitid extras: anyOf: - additionalProperties: true type: object - type: 'null' title: Extras default: {} id: type: string format: uuid4 title: Id groupId: type: string format: uuid4 title: Groupid householdId: type: string format: uuid4 title: Householdid label: anyOf: - $ref: '#/components/schemas/MultiPurposeLabelSummary' - type: 'null' recipeReferences: items: $ref: '#/components/schemas/ShoppingListItemRecipeRefOut' type: array title: Recipereferences default: [] createdAt: anyOf: - type: string format: date-time - type: 'null' title: Createdat updatedAt: anyOf: - type: string format: date-time - type: 'null' title: Updatedat type: object required: - shoppingListId - id - groupId - householdId title: ShoppingListItemOut ShoppingListItemsCollectionOut: properties: createdItems: items: $ref: '#/components/schemas/ShoppingListItemOut-Output' type: array title: Createditems default: [] updatedItems: items: $ref: '#/components/schemas/ShoppingListItemOut-Output' type: array title: Updateditems default: [] deletedItems: items: $ref: '#/components/schemas/ShoppingListItemOut-Output' type: array title: Deleteditems default: [] type: object title: ShoppingListItemsCollectionOut description: Container for bulk shopping list item changes ShoppingListItemUpdateBulk: properties: quantity: type: number title: Quantity default: 1 unit: anyOf: - $ref: '#/components/schemas/IngredientUnit-Input' - $ref: '#/components/schemas/CreateIngredientUnit' - type: 'null' title: Unit food: anyOf: - $ref: '#/components/schemas/IngredientFood-Input' - $ref: '#/components/schemas/CreateIngredientFood' - type: 'null' title: Food referencedRecipe: anyOf: - $ref: '#/components/schemas/Recipe-Input' - type: 'null' note: anyOf: - type: string - type: 'null' title: Note default: '' display: type: string title: Display default: '' shoppingListId: type: string format: uuid4 title: Shoppinglistid checked: type: boolean title: Checked default: false position: type: integer title: Position default: 0 foodId: anyOf: - type: string format: uuid4 - type: 'null' title: Foodid labelId: anyOf: - type: string format: uuid4 - type: 'null' title: Labelid unitId: anyOf: - type: string format: uuid4 - type: 'null' title: Unitid extras: anyOf: - additionalProperties: true type: object - type: 'null' title: Extras default: {} recipeReferences: items: anyOf: - $ref: '#/components/schemas/ShoppingListItemRecipeRefCreate' - $ref: '#/components/schemas/ShoppingListItemRecipeRefUpdate' type: array title: Recipereferences default: [] id: type: string format: uuid4 title: Id type: object required: - shoppingListId - id title: ShoppingListItemUpdateBulk description: Only used for bulk update operations where the shopping list item id isn't already supplied Recipe-Output: properties: id: anyOf: - type: string format: uuid4 - type: 'null' title: Id userId: type: string format: uuid4 title: Userid householdId: type: string format: uuid4 title: Householdid groupId: type: string format: uuid4 title: Groupid name: anyOf: - type: string - type: 'null' title: Name slug: type: string title: Slug default: '' image: anyOf: - {} - type: 'null' title: Image recipeServings: type: number title: Recipeservings default: 0 recipeYieldQuantity: type: number title: Recipeyieldquantity default: 0 recipeYield: anyOf: - type: string - type: 'null' title: Recipeyield totalTime: anyOf: - type: string - type: 'null' title: Totaltime prepTime: anyOf: - type: string - type: 'null' title: Preptime cookTime: anyOf: - type: string - type: 'null' title: Cooktime performTime: anyOf: - type: string - type: 'null' title: Performtime description: anyOf: - type: string - type: 'null' title: Description default: '' recipeCategory: anyOf: - items: $ref: '#/components/schemas/RecipeCategory' type: array - type: 'null' title: Recipecategory default: [] tags: anyOf: - items: $ref: '#/components/schemas/RecipeTag' type: array - type: 'null' title: Tags default: [] tools: items: $ref: '#/components/schemas/RecipeTool' type: array title: Tools default: [] rating: anyOf: - type: number - type: 'null' title: Rating orgURL: anyOf: - type: string - type: 'null' title: Orgurl dateAdded: anyOf: - type: string format: date - type: 'null' title: Dateadded dateUpdated: anyOf: - type: string format: date-time - type: 'null' title: Dateupdated createdAt: anyOf: - type: string format: date-time - type: 'null' title: Createdat updatedAt: anyOf: - type: string format: date-time - type: 'null' title: Updatedat lastMade: anyOf: - type: string format: date-time - type: 'null' title: Lastmade recipeIngredient: items: $ref: '#/components/schemas/RecipeIngredient-Output' type: array title: Recipeingredient default: [] recipeInstructions: anyOf: - items: $ref: '#/components/schemas/RecipeStep' type: array - type: 'null' title: Recipeinstructions default: [] nutrition: anyOf: - $ref: '#/components/schemas/Nutrition' - type: 'null' settings: anyOf: - $ref: '#/components/schemas/RecipeSettings' - type: 'null' assets: anyOf: - items: $ref: '#/components/schemas/RecipeAsset' type: array - type: 'null' title: Assets default: [] notes: anyOf: - items: $ref: '#/components/schemas/RecipeNote' type: array - type: 'null' title: Notes default: [] extras: anyOf: - additionalProperties: true type: object - type: 'null' title: Extras default: {} comments: anyOf: - items: $ref: '#/components/schemas/RecipeCommentOut-Output' type: array - type: 'null' title: Comments default: [] type: object title: Recipe IngredientFood-Output: properties: id: type: string format: uuid4 title: Id name: type: string title: Name pluralName: anyOf: - type: string - type: 'null' title: Pluralname description: type: string title: Description default: '' extras: anyOf: - additionalProperties: true type: object - type: 'null' title: Extras default: {} labelId: anyOf: - type: string format: uuid4 - type: 'null' title: Labelid aliases: items: $ref: '#/components/schemas/IngredientFoodAlias' type: array title: Aliases default: [] householdsWithIngredientFood: items: type: string type: array title: Householdswithingredientfood default: [] label: anyOf: - $ref: '#/components/schemas/MultiPurposeLabelSummary' - type: 'null' createdAt: anyOf: - type: string format: date-time - type: 'null' title: Createdat updatedAt: anyOf: - type: string format: date-time - type: 'null' title: Updatedat type: object required: - id - name title: IngredientFood IngredientReferences: properties: referenceId: anyOf: - type: string format: uuid4 - type: 'null' title: Referenceid type: object title: IngredientReferences description: A list of ingredient references. RecipeCommentOut-Input: properties: recipeId: type: string format: uuid4 title: Recipeid text: type: string title: Text id: type: string format: uuid4 title: Id createdAt: type: string format: date-time title: Createdat update_at: type: string format: date-time title: Update At userId: type: string format: uuid4 title: Userid user: $ref: '#/components/schemas/mealie__schema__recipe__recipe_comments__UserBase' type: object required: - recipeId - text - id - createdAt - update_at - userId - user title: RecipeCommentOut ShoppingListItemRecipeRefCreate: properties: recipeId: type: string format: uuid4 title: Recipeid recipeQuantity: type: number title: Recipequantity default: 0 recipeScale: anyOf: - type: number - type: 'null' title: Recipescale default: 1 recipeNote: anyOf: - type: string - type: 'null' title: Recipenote type: object required: - recipeId title: ShoppingListItemRecipeRefCreate ValidationError: properties: loc: items: anyOf: - type: string - type: integer type: array title: Location msg: type: string title: Message type: type: string title: Error Type input: title: Input ctx: type: object title: Context type: object required: - loc - msg - type title: ValidationError RecipeIngredient-Input: properties: quantity: anyOf: - type: number - type: 'null' title: Quantity default: 0 unit: anyOf: - $ref: '#/components/schemas/IngredientUnit-Input' - $ref: '#/components/schemas/CreateIngredientUnit' - type: 'null' title: Unit food: anyOf: - $ref: '#/components/schemas/IngredientFood-Input' - $ref: '#/components/schemas/CreateIngredientFood' - type: 'null' title: Food referencedRecipe: anyOf: - $ref: '#/components/schemas/Recipe-Input' - type: 'null' note: anyOf: - type: string - type: 'null' title: Note default: '' display: type: string title: Display default: '' title: anyOf: - type: string - type: 'null' title: Title originalText: anyOf: - type: string - type: 'null' title: Originaltext referenceId: type: string format: uuid title: Referenceid type: object title: RecipeIngredient CreateIngredientFood: properties: id: anyOf: - type: string format: uuid4 - type: 'null' title: Id name: type: string title: Name pluralName: anyOf: - type: string - type: 'null' title: Pluralname description: type: string title: Description default: '' extras: anyOf: - additionalProperties: true type: object - type: 'null' title: Extras default: {} labelId: anyOf: - type: string format: uuid4 - type: 'null' title: Labelid aliases: items: $ref: '#/components/schemas/CreateIngredientFoodAlias' type: array title: Aliases default: [] householdsWithIngredientFood: items: type: string type: array title: Householdswithingredientfood default: [] type: object required: - name title: CreateIngredientFood IngredientFoodAlias: properties: name: type: string title: Name type: object required: - name title: IngredientFoodAlias Recipe-Input: properties: id: anyOf: - type: string format: uuid4 - type: 'null' title: Id userId: type: string format: uuid4 title: Userid householdId: type: string format: uuid4 title: Householdid groupId: type: string format: uuid4 title: Groupid name: anyOf: - type: string - type: 'null' title: Name slug: type: string title: Slug default: '' image: anyOf: - {} - type: 'null' title: Image recipeServings: type: number title: Recipeservings default: 0 recipeYieldQuantity: type: number title: Recipeyieldquantity default: 0 recipeYield: anyOf: - type: string - type: 'null' title: Recipeyield totalTime: anyOf: - type: string - type: 'null' title: Totaltime prepTime: anyOf: - type: string - type: 'null' title: Preptime cookTime: anyOf: - type: string - type: 'null' title: Cooktime performTime: anyOf: - type: string - type: 'null' title: Performtime description: anyOf: - type: string - type: 'null' title: Description default: '' recipeCategory: anyOf: - items: $ref: '#/components/schemas/RecipeCategory' type: array - type: 'null' title: Recipecategory default: [] tags: anyOf: - items: $ref: '#/components/schemas/RecipeTag' type: array - type: 'null' title: Tags default: [] tools: items: $ref: '#/components/schemas/RecipeTool' type: array title: Tools default: [] rating: anyOf: - type: number - type: 'null' title: Rating orgURL: anyOf: - type: string - type: 'null' title: Orgurl dateAdded: anyOf: - type: string format: date - type: 'null' title: Dateadded dateUpdated: anyOf: - type: string format: date-time - type: 'null' title: Dateupdated createdAt: anyOf: - type: string format: date-time - type: 'null' title: Createdat update_at: anyOf: - type: string format: date-time - type: 'null' title: Update At lastMade: anyOf: - type: string format: date-time - type: 'null' title: Lastmade recipeIngredient: items: $ref: '#/components/schemas/RecipeIngredient-Input' type: array title: Recipeingredient default: [] recipeInstructions: anyOf: - items: $ref: '#/components/schemas/RecipeStep' type: array - type: 'null' title: Recipeinstructions default: [] nutrition: anyOf: - $ref: '#/components/schemas/Nutrition' - type: 'null' settings: anyOf: - $ref: '#/components/schemas/RecipeSettings' - type: 'null' assets: anyOf: - items: $ref: '#/components/schemas/RecipeAsset' type: array - type: 'null' title: Assets default: [] notes: anyOf: - items: $ref: '#/components/schemas/RecipeNote' type: array - type: 'null' title: Notes default: [] extras: anyOf: - additionalProperties: true type: object - type: 'null' title: Extras default: {} comments: anyOf: - items: $ref: '#/components/schemas/RecipeCommentOut-Input' type: array - type: 'null' title: Comments default: [] type: object title: Recipe RecipeCommentOut-Output: properties: recipeId: type: string format: uuid4 title: Recipeid text: type: string title: Text id: type: string format: uuid4 title: Id createdAt: type: string format: date-time title: Createdat updatedAt: type: string format: date-time title: Updatedat userId: type: string format: uuid4 title: Userid user: $ref: '#/components/schemas/UserBase-Output' type: object required: - recipeId - text - id - createdAt - updatedAt - userId - user title: RecipeCommentOut IngredientUnit-Output: properties: id: type: string format: uuid4 title: Id name: type: string title: Name pluralName: anyOf: - type: string - type: 'null' title: Pluralname description: type: string title: Description default: '' extras: anyOf: - additionalProperties: true type: object - type: 'null' title: Extras default: {} fraction: type: boolean title: Fraction default: true abbreviation: type: string title: Abbreviation default: '' pluralAbbreviation: anyOf: - type: string - type: 'null' title: Pluralabbreviation default: '' useAbbreviation: type: boolean title: Useabbreviation default: false aliases: items: $ref: '#/components/schemas/IngredientUnitAlias' type: array title: Aliases default: [] standardQuantity: anyOf: - type: number - type: 'null' title: Standardquantity standardUnit: anyOf: - type: string - type: 'null' title: Standardunit createdAt: anyOf: - type: string format: date-time - type: 'null' title: Createdat updatedAt: anyOf: - type: string format: date-time - type: 'null' title: Updatedat type: object required: - id - name title: IngredientUnit ShoppingListItemCreate: properties: quantity: type: number title: Quantity default: 1 unit: anyOf: - $ref: '#/components/schemas/IngredientUnit-Input' - $ref: '#/components/schemas/CreateIngredientUnit' - type: 'null' title: Unit food: anyOf: - $ref: '#/components/schemas/IngredientFood-Input' - $ref: '#/components/schemas/CreateIngredientFood' - type: 'null' title: Food referencedRecipe: anyOf: - $ref: '#/components/schemas/Recipe-Input' - type: 'null' note: anyOf: - type: string - type: 'null' title: Note default: '' display: type: string title: Display default: '' shoppingListId: type: string format: uuid4 title: Shoppinglistid checked: type: boolean title: Checked default: false position: type: integer title: Position default: 0 foodId: anyOf: - type: string format: uuid4 - type: 'null' title: Foodid labelId: anyOf: - type: string format: uuid4 - type: 'null' title: Labelid unitId: anyOf: - type: string format: uuid4 - type: 'null' title: Unitid extras: anyOf: - additionalProperties: true type: object - type: 'null' title: Extras default: {} id: anyOf: - type: string format: uuid4 - type: 'null' title: Id recipeReferences: items: $ref: '#/components/schemas/ShoppingListItemRecipeRefCreate' type: array title: Recipereferences default: [] type: object required: - shoppingListId title: ShoppingListItemCreate RecipeAsset: properties: name: type: string title: Name icon: type: string title: Icon fileName: anyOf: - type: string - type: 'null' title: Filename type: object required: - name - icon title: RecipeAsset mealie__schema__recipe__recipe_comments__UserBase: properties: id: type: string format: uuid4 title: Id username: anyOf: - type: string - type: 'null' title: Username admin: type: boolean title: Admin fullName: anyOf: - type: string - type: 'null' title: Fullname type: object required: - id - admin title: UserBase ShoppingListItemRecipeRefOut: properties: recipeId: type: string format: uuid4 title: Recipeid recipeQuantity: type: number title: Recipequantity default: 0 recipeScale: anyOf: - type: number - type: 'null' title: Recipescale default: 1 recipeNote: anyOf: - type: string - type: 'null' title: Recipenote id: type: string format: uuid4 title: Id shoppingListItemId: type: string format: uuid4 title: Shoppinglistitemid type: object required: - recipeId - id - shoppingListItemId title: ShoppingListItemRecipeRefOut RecipeTag: properties: id: anyOf: - type: string format: uuid4 - type: 'null' title: Id groupId: anyOf: - type: string format: uuid4 - type: 'null' title: Groupid name: type: string title: Name slug: type: string title: Slug recipeCount: type: integer title: Recipecount default: 0 type: object required: - name - slug title: RecipeTag RecipeSettings: properties: public: type: boolean title: Public default: false showNutrition: type: boolean title: Shownutrition default: false showAssets: type: boolean title: Showassets default: false landscapeView: type: boolean title: Landscapeview default: false disableComments: type: boolean title: Disablecomments default: true locked: type: boolean title: Locked default: false type: object title: RecipeSettings SuccessResponse: properties: message: type: string title: Message error: type: boolean title: Error default: false type: object required: - message title: SuccessResponse CreateIngredientUnitAlias: properties: name: type: string title: Name type: object required: - name title: CreateIngredientUnitAlias IngredientFood-Input: properties: id: type: string format: uuid4 title: Id name: type: string title: Name pluralName: anyOf: - type: string - type: 'null' title: Pluralname description: type: string title: Description default: '' extras: anyOf: - additionalProperties: true type: object - type: 'null' title: Extras default: {} labelId: anyOf: - type: string format: uuid4 - type: 'null' title: Labelid aliases: items: $ref: '#/components/schemas/IngredientFoodAlias' type: array title: Aliases default: [] householdsWithIngredientFood: items: type: string type: array title: Householdswithingredientfood default: [] label: anyOf: - $ref: '#/components/schemas/MultiPurposeLabelSummary' - type: 'null' createdAt: anyOf: - type: string format: date-time - type: 'null' title: Createdat update_at: anyOf: - type: string format: date-time - type: 'null' title: Update At type: object required: - id - name title: IngredientFood CreateIngredientUnit: properties: id: anyOf: - type: string format: uuid4 - type: 'null' title: Id name: type: string title: Name pluralName: anyOf: - type: string - type: 'null' title: Pluralname description: type: string title: Description default: '' extras: anyOf: - additionalProperties: true type: object - type: 'null' title: Extras default: {} fraction: type: boolean title: Fraction default: true abbreviation: type: string title: Abbreviation default: '' pluralAbbreviation: anyOf: - type: string - type: 'null' title: Pluralabbreviation default: '' useAbbreviation: type: boolean title: Useabbreviation default: false aliases: items: $ref: '#/components/schemas/CreateIngredientUnitAlias' type: array title: Aliases default: [] standardQuantity: anyOf: - type: number - type: 'null' title: Standardquantity standardUnit: anyOf: - type: string - type: 'null' title: Standardunit type: object required: - name title: CreateIngredientUnit RecipeNote: properties: title: type: string title: Title text: type: string title: Text type: object required: - title - text title: RecipeNote RecipeIngredient-Output: properties: quantity: anyOf: - type: number - type: 'null' title: Quantity default: 0 unit: anyOf: - $ref: '#/components/schemas/IngredientUnit-Output' - $ref: '#/components/schemas/CreateIngredientUnit' - type: 'null' title: Unit food: anyOf: - $ref: '#/components/schemas/IngredientFood-Output' - $ref: '#/components/schemas/CreateIngredientFood' - type: 'null' title: Food referencedRecipe: anyOf: - $ref: '#/components/schemas/Recipe-Output' - type: 'null' note: anyOf: - type: string - type: 'null' title: Note default: '' display: type: string title: Display default: '' title: anyOf: - type: string - type: 'null' title: Title originalText: anyOf: - type: string - type: 'null' title: Originaltext referenceId: type: string format: uuid title: Referenceid type: object title: RecipeIngredient IngredientUnitAlias: properties: name: type: string title: Name type: object required: - name title: IngredientUnitAlias Nutrition: properties: calories: anyOf: - type: string - type: 'null' title: Calories carbohydrateContent: anyOf: - type: string - type: 'null' title: Carbohydratecontent cholesterolContent: anyOf: - type: string - type: 'null' title: Cholesterolcontent fatContent: anyOf: - type: string - type: 'null' title: Fatcontent fiberContent: anyOf: - type: string - type: 'null' title: Fibercontent proteinContent: anyOf: - type: string - type: 'null' title: Proteincontent saturatedFatContent: anyOf: - type: string - type: 'null' title: Saturatedfatcontent sodiumContent: anyOf: - type: string - type: 'null' title: Sodiumcontent sugarContent: anyOf: - type: string - type: 'null' title: Sugarcontent transFatContent: anyOf: - type: string - type: 'null' title: Transfatcontent unsaturatedFatContent: anyOf: - type: string - type: 'null' title: Unsaturatedfatcontent type: object title: Nutrition ShoppingListItemUpdate: properties: quantity: type: number title: Quantity default: 1 unit: anyOf: - $ref: '#/components/schemas/IngredientUnit-Input' - $ref: '#/components/schemas/CreateIngredientUnit' - type: 'null' title: Unit food: anyOf: - $ref: '#/components/schemas/IngredientFood-Input' - $ref: '#/components/schemas/CreateIngredientFood' - type: 'null' title: Food referencedRecipe: anyOf: - $ref: '#/components/schemas/Recipe-Input' - type: 'null' note: anyOf: - type: string - type: 'null' title: Note default: '' display: type: string title: Display default: '' shoppingListId: type: string format: uuid4 title: Shoppinglistid checked: type: boolean title: Checked default: false position: type: integer title: Position default: 0 foodId: anyOf: - type: string format: uuid4 - type: 'null' title: Foodid labelId: anyOf: - type: string format: uuid4 - type: 'null' title: Labelid unitId: anyOf: - type: string format: uuid4 - type: 'null' title: Unitid extras: anyOf: - additionalProperties: true type: object - type: 'null' title: Extras default: {} recipeReferences: items: anyOf: - $ref: '#/components/schemas/ShoppingListItemRecipeRefCreate' - $ref: '#/components/schemas/ShoppingListItemRecipeRefUpdate' type: array title: Recipereferences default: [] type: object required: - shoppingListId title: ShoppingListItemUpdate HTTPValidationError: properties: detail: items: $ref: '#/components/schemas/ValidationError' type: array title: Detail type: object title: HTTPValidationError OrderDirection: type: string enum: - asc - desc title: OrderDirection RecipeCategory: properties: id: anyOf: - type: string format: uuid4 - type: 'null' title: Id groupId: anyOf: - type: string format: uuid4 - type: 'null' title: Groupid name: type: string title: Name slug: type: string title: Slug recipeCount: type: integer title: Recipecount default: 0 type: object required: - name - slug title: RecipeCategory UserBase-Output: properties: id: type: string format: uuid4 title: Id username: anyOf: - type: string - type: 'null' title: Username admin: type: boolean title: Admin fullName: anyOf: - type: string - type: 'null' title: Fullname type: object required: - id - admin title: UserBase OrderByNullPosition: type: string enum: - first - last title: OrderByNullPosition RecipeStep: properties: id: anyOf: - type: string format: uuid - type: 'null' title: Id title: anyOf: - type: string - type: 'null' title: Title default: '' summary: anyOf: - type: string - type: 'null' title: Summary default: '' text: type: string title: Text ingredientReferences: items: $ref: '#/components/schemas/IngredientReferences' type: array title: Ingredientreferences default: [] type: object required: - text title: RecipeStep securitySchemes: OAuth2PasswordBearer: type: oauth2 flows: password: scopes: {} tokenUrl: /api/auth/token