recipes
API routes for managing recipes (CRUD operations).
create_recipe
create_recipe(
recipe_in: RecipeCreate, service: RecipeManagementService, user_id: UUID
) -> RecipeResponse
Create a new recipe.
create_recipes
create_recipes(
batch_in: BatchRecipeCreate, service: RecipeManagementService, user_id: UUID
) -> BatchRecipeResponse
Create multiple recipes in a single atomic operation.
delete_recipe
delete_recipe(recipe_id: UUID, service: RecipeManagementService, user_id: UUID) -> None
Delete a recipe by ID. Only the owner can delete.
get_recipe_shares
get_recipe_shares(
recipe_id: UUID, service: RecipeShareService, user_id: UUID
) -> list[CollaboratorResponse]
List collaborators for a recipe. Only the owner can view this.
get_recipes
get_recipes(
service: RecipeManagementService,
user_id: UUID,
limit: int | None = None,
offset: int = 0,
ownership: str | None = None,
) -> PaginatedRecipeResponse
Retrieve recipes with optional pagination.
search_recipes
search_recipes(
service: RecipeManagementService,
user_id: UUID,
recipe_id: UUID | None = None,
title: str | None = None,
category: str | None = None,
is_veggie: bool | None = None,
season: str | None = None,
limit: int | None = None,
offset: int = 0,
ownership: str | None = None,
) -> PaginatedRecipeResponse
Search recipes with optional filters and pagination.