openapi: 3.0.2 info: title: Django Recipes version: 1.4.5 paths: /api/reset-food-inheritance/: get: operationId: listreset_food_inheritances description: function to reset inheritance from api, see food method for docs parameters: [] responses: '200': content: application/json: schema: type: array items: {} description: '' tags: - api /api/switch-active-space/{space_id}/: get: operationId: retrieveswitch_active_space description: api endpoint to switch space function parameters: - name: space_id in: path required: true description: '' schema: type: string responses: '200': content: application/json: schema: {} description: '' tags: - api /api/download-file/{file_id}/: get: operationId: retrievedownload_file description: 'function to download a user file securely (wrapping as zip to prevent any context based XSS problems) temporary solution until a real file manager is implemented' parameters: - name: file_id in: path required: true description: '' schema: type: string responses: '200': content: application/json: schema: {} description: '' tags: - api /api/automation/: get: operationId: listAutomations description: '' parameters: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Automation' description: '' tags: - api post: operationId: createAutomation description: '' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/Automation' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Automation' multipart/form-data: schema: $ref: '#/components/schemas/Automation' responses: '201': content: application/json: schema: $ref: '#/components/schemas/Automation' description: '' tags: - api /api/automation/{id}/: get: operationId: retrieveAutomation description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this automation. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/Automation' description: '' tags: - api put: operationId: updateAutomation description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this automation. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Automation' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Automation' multipart/form-data: schema: $ref: '#/components/schemas/Automation' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Automation' description: '' tags: - api patch: operationId: partialUpdateAutomation description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this automation. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Automation' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Automation' multipart/form-data: schema: $ref: '#/components/schemas/Automation' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Automation' description: '' tags: - api delete: operationId: destroyAutomation description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this automation. schema: type: string responses: '204': description: '' tags: - api /api/bookmarklet-import/: get: operationId: listBookmarkletImports description: '' parameters: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/BookmarkletImportList' description: '' tags: - api post: operationId: createBookmarkletImport description: '' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/BookmarkletImport' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/BookmarkletImport' multipart/form-data: schema: $ref: '#/components/schemas/BookmarkletImport' responses: '201': content: application/json: schema: $ref: '#/components/schemas/BookmarkletImport' description: '' tags: - api /api/bookmarklet-import/{id}/: get: operationId: retrieveBookmarkletImport description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this bookmarklet import. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/BookmarkletImport' description: '' tags: - api put: operationId: updateBookmarkletImport description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this bookmarklet import. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/BookmarkletImport' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/BookmarkletImport' multipart/form-data: schema: $ref: '#/components/schemas/BookmarkletImport' responses: '200': content: application/json: schema: $ref: '#/components/schemas/BookmarkletImport' description: '' tags: - api patch: operationId: partialUpdateBookmarkletImport description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this bookmarklet import. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/BookmarkletImport' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/BookmarkletImport' multipart/form-data: schema: $ref: '#/components/schemas/BookmarkletImport' responses: '200': content: application/json: schema: $ref: '#/components/schemas/BookmarkletImport' description: '' tags: - api delete: operationId: destroyBookmarkletImport description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this bookmarklet import. schema: type: string responses: '204': description: '' tags: - api /api/cook-log/: get: operationId: listCookLogs description: '' parameters: - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer responses: '200': content: application/json: schema: type: object properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/CookLog' description: '' tags: - api post: operationId: createCookLog description: '' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/CookLog' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/CookLog' multipart/form-data: schema: $ref: '#/components/schemas/CookLog' responses: '201': content: application/json: schema: $ref: '#/components/schemas/CookLog' description: '' tags: - api /api/cook-log/{id}/: get: operationId: retrieveCookLog description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this cook log. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/CookLog' description: '' tags: - api put: operationId: updateCookLog description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this cook log. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/CookLog' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/CookLog' multipart/form-data: schema: $ref: '#/components/schemas/CookLog' responses: '200': content: application/json: schema: $ref: '#/components/schemas/CookLog' description: '' tags: - api patch: operationId: partialUpdateCookLog description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this cook log. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/CookLog' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/CookLog' multipart/form-data: schema: $ref: '#/components/schemas/CookLog' responses: '200': content: application/json: schema: $ref: '#/components/schemas/CookLog' description: '' tags: - api delete: operationId: destroyCookLog description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this cook log. schema: type: string responses: '204': description: '' tags: - api /api/custom-filter/: get: operationId: listCustomFilters description: '' parameters: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CustomFilter' description: '' tags: - api post: operationId: createCustomFilter description: '' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/CustomFilter' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/CustomFilter' multipart/form-data: schema: $ref: '#/components/schemas/CustomFilter' responses: '201': content: application/json: schema: $ref: '#/components/schemas/CustomFilter' description: '' tags: - api /api/custom-filter/{id}/: get: operationId: retrieveCustomFilter description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this custom filter. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomFilter' description: '' tags: - api put: operationId: updateCustomFilter description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this custom filter. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/CustomFilter' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/CustomFilter' multipart/form-data: schema: $ref: '#/components/schemas/CustomFilter' responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomFilter' description: '' tags: - api patch: operationId: partialUpdateCustomFilter description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this custom filter. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/CustomFilter' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/CustomFilter' multipart/form-data: schema: $ref: '#/components/schemas/CustomFilter' responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomFilter' description: '' tags: - api delete: operationId: destroyCustomFilter description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this custom filter. schema: type: string responses: '204': description: '' tags: - api /api/food/: get: operationId: listFoods description: '' parameters: - name: query in: query required: false description: Query string matched against food name. schema: type: string - name: root in: query required: false description: Return first level children of food with ID [int]. Integer 0 will return root foods. schema: type: int - name: tree in: query required: false description: Return all self and children of food with ID [int]. schema: type: int - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer responses: '200': content: application/json: schema: type: object properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/Food' description: '' tags: - api post: operationId: createFood description: '' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/Food' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Food' multipart/form-data: schema: $ref: '#/components/schemas/Food' responses: '201': content: application/json: schema: $ref: '#/components/schemas/Food' description: '' tags: - api /api/food/{id}/: get: operationId: retrieveFood description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this food. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/Food' description: '' tags: - api put: operationId: updateFood description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this food. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Food' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Food' multipart/form-data: schema: $ref: '#/components/schemas/Food' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Food' description: '' tags: - api patch: operationId: partialUpdateFood description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this food. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Food' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Food' multipart/form-data: schema: $ref: '#/components/schemas/Food' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Food' description: '' tags: - api delete: operationId: destroyFood description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this food. schema: type: string responses: '204': description: '' tags: - api /api/food-inherit-field/: get: operationId: listFoodInheritFields description: '' parameters: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/FoodInheritField' description: '' tags: - api /api/food-inherit-field/{id}/: get: operationId: retrieveFoodInheritField description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this food inherit field. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/FoodInheritField' description: '' tags: - api /api/import-log/: get: operationId: listImportLogs description: '' parameters: - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer responses: '200': content: application/json: schema: type: object properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/ImportLog' description: '' tags: - api post: operationId: createImportLog description: '' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/ImportLog' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ImportLog' multipart/form-data: schema: $ref: '#/components/schemas/ImportLog' responses: '201': content: application/json: schema: $ref: '#/components/schemas/ImportLog' description: '' tags: - api /api/import-log/{id}/: get: operationId: retrieveImportLog description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this import log. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/ImportLog' description: '' tags: - api put: operationId: updateImportLog description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this import log. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/ImportLog' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ImportLog' multipart/form-data: schema: $ref: '#/components/schemas/ImportLog' responses: '200': content: application/json: schema: $ref: '#/components/schemas/ImportLog' description: '' tags: - api patch: operationId: partialUpdateImportLog description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this import log. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/ImportLog' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ImportLog' multipart/form-data: schema: $ref: '#/components/schemas/ImportLog' responses: '200': content: application/json: schema: $ref: '#/components/schemas/ImportLog' description: '' tags: - api delete: operationId: destroyImportLog description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this import log. schema: type: string responses: '204': description: '' tags: - api /api/export-log/: get: operationId: listExportLogs description: '' parameters: - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer responses: '200': content: application/json: schema: type: object properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/ExportLog' description: '' tags: - api post: operationId: createExportLog description: '' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/ExportLog' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ExportLog' multipart/form-data: schema: $ref: '#/components/schemas/ExportLog' responses: '201': content: application/json: schema: $ref: '#/components/schemas/ExportLog' description: '' tags: - api /api/export-log/{id}/: get: operationId: retrieveExportLog description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this export log. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/ExportLog' description: '' tags: - api put: operationId: updateExportLog description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this export log. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/ExportLog' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ExportLog' multipart/form-data: schema: $ref: '#/components/schemas/ExportLog' responses: '200': content: application/json: schema: $ref: '#/components/schemas/ExportLog' description: '' tags: - api patch: operationId: partialUpdateExportLog description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this export log. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/ExportLog' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ExportLog' multipart/form-data: schema: $ref: '#/components/schemas/ExportLog' responses: '200': content: application/json: schema: $ref: '#/components/schemas/ExportLog' description: '' tags: - api delete: operationId: destroyExportLog description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this export log. schema: type: string responses: '204': description: '' tags: - api /api/group/: get: operationId: listGroups description: '' parameters: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Group' description: '' tags: - api /api/group/{id}/: get: operationId: retrieveGroup description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this group. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/Group' description: '' tags: - api /api/ingredient/: get: operationId: listIngredients description: '' parameters: - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer responses: '200': content: application/json: schema: type: object properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/Ingredient' description: '' tags: - api post: operationId: createIngredient description: '' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/Ingredient' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Ingredient' multipart/form-data: schema: $ref: '#/components/schemas/Ingredient' responses: '201': content: application/json: schema: $ref: '#/components/schemas/Ingredient' description: '' tags: - api /api/ingredient/{id}/: get: operationId: retrieveIngredient description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this ingredient. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/Ingredient' description: '' tags: - api put: operationId: updateIngredient description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this ingredient. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Ingredient' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Ingredient' multipart/form-data: schema: $ref: '#/components/schemas/Ingredient' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Ingredient' description: '' tags: - api patch: operationId: partialUpdateIngredient description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this ingredient. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Ingredient' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Ingredient' multipart/form-data: schema: $ref: '#/components/schemas/Ingredient' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Ingredient' description: '' tags: - api delete: operationId: destroyIngredient description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this ingredient. schema: type: string responses: '204': description: '' tags: - api /api/invite-link/: get: operationId: listInviteLinks description: '' parameters: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/InviteLink' description: '' tags: - api post: operationId: createInviteLink description: '' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/InviteLink' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/InviteLink' multipart/form-data: schema: $ref: '#/components/schemas/InviteLink' responses: '201': content: application/json: schema: $ref: '#/components/schemas/InviteLink' description: '' tags: - api /api/invite-link/{id}/: get: operationId: retrieveInviteLink description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this invite link. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/InviteLink' description: '' tags: - api put: operationId: updateInviteLink description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this invite link. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/InviteLink' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/InviteLink' multipart/form-data: schema: $ref: '#/components/schemas/InviteLink' responses: '200': content: application/json: schema: $ref: '#/components/schemas/InviteLink' description: '' tags: - api patch: operationId: partialUpdateInviteLink description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this invite link. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/InviteLink' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/InviteLink' multipart/form-data: schema: $ref: '#/components/schemas/InviteLink' responses: '200': content: application/json: schema: $ref: '#/components/schemas/InviteLink' description: '' tags: - api delete: operationId: destroyInviteLink description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this invite link. schema: type: string responses: '204': description: '' tags: - api /api/keyword/: get: operationId: listKeywords description: '' parameters: - name: query in: query required: false description: Query string matched against keyword name. schema: type: string - name: root in: query required: false description: Return first level children of keyword with ID [int]. Integer 0 will return root keywords. schema: type: int - name: tree in: query required: false description: Return all self and children of keyword with ID [int]. schema: type: int - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer responses: '200': content: application/json: schema: type: object properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/Keyword' description: '' tags: - api post: operationId: createKeyword description: '' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/Keyword' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Keyword' multipart/form-data: schema: $ref: '#/components/schemas/Keyword' responses: '201': content: application/json: schema: $ref: '#/components/schemas/Keyword' description: '' tags: - api /api/keyword/{id}/: get: operationId: retrieveKeyword description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this keyword. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/Keyword' description: '' tags: - api put: operationId: updateKeyword description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this keyword. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Keyword' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Keyword' multipart/form-data: schema: $ref: '#/components/schemas/Keyword' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Keyword' description: '' tags: - api patch: operationId: partialUpdateKeyword description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this keyword. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Keyword' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Keyword' multipart/form-data: schema: $ref: '#/components/schemas/Keyword' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Keyword' description: '' tags: - api delete: operationId: destroyKeyword description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this keyword. schema: type: string responses: '204': description: '' tags: - api /api/meal-plan/: get: operationId: listMealPlans description: 'optional parameters - **from_date**: filter from (inclusive) a certain date onward - **to_date**: filter upward to (inclusive) certain date' parameters: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/MealPlan' description: '' tags: - api post: operationId: createMealPlan description: '' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/MealPlan' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/MealPlan' multipart/form-data: schema: $ref: '#/components/schemas/MealPlan' responses: '201': content: application/json: schema: $ref: '#/components/schemas/MealPlan' description: '' tags: - api /api/meal-plan/{id}/: get: operationId: retrieveMealPlan description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this meal plan. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/MealPlan' description: '' tags: - api put: operationId: updateMealPlan description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this meal plan. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/MealPlan' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/MealPlan' multipart/form-data: schema: $ref: '#/components/schemas/MealPlan' responses: '200': content: application/json: schema: $ref: '#/components/schemas/MealPlan' description: '' tags: - api patch: operationId: partialUpdateMealPlan description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this meal plan. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/MealPlan' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/MealPlan' multipart/form-data: schema: $ref: '#/components/schemas/MealPlan' responses: '200': content: application/json: schema: $ref: '#/components/schemas/MealPlan' description: '' tags: - api delete: operationId: destroyMealPlan description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this meal plan. schema: type: string responses: '204': description: '' tags: - api /api/meal-type/: get: operationId: listMealTypes description: 'returns list of meal types created by the requesting user ordered by the order field.' parameters: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/MealType' description: '' tags: - api post: operationId: createMealType description: 'returns list of meal types created by the requesting user ordered by the order field.' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/MealType' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/MealType' multipart/form-data: schema: $ref: '#/components/schemas/MealType' responses: '201': content: application/json: schema: $ref: '#/components/schemas/MealType' description: '' tags: - api /api/meal-type/{id}/: get: operationId: retrieveMealType description: 'returns list of meal types created by the requesting user ordered by the order field.' parameters: - name: id in: path required: true description: A unique integer value identifying this meal type. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/MealType' description: '' tags: - api put: operationId: updateMealType description: 'returns list of meal types created by the requesting user ordered by the order field.' parameters: - name: id in: path required: true description: A unique integer value identifying this meal type. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/MealType' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/MealType' multipart/form-data: schema: $ref: '#/components/schemas/MealType' responses: '200': content: application/json: schema: $ref: '#/components/schemas/MealType' description: '' tags: - api patch: operationId: partialUpdateMealType description: 'returns list of meal types created by the requesting user ordered by the order field.' parameters: - name: id in: path required: true description: A unique integer value identifying this meal type. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/MealType' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/MealType' multipart/form-data: schema: $ref: '#/components/schemas/MealType' responses: '200': content: application/json: schema: $ref: '#/components/schemas/MealType' description: '' tags: - api delete: operationId: destroyMealType description: 'returns list of meal types created by the requesting user ordered by the order field.' parameters: - name: id in: path required: true description: A unique integer value identifying this meal type. schema: type: string responses: '204': description: '' tags: - api /api/recipe/: get: operationId: listRecipes description: '' parameters: - name: query in: query required: false description: Query string matched (fuzzy) against recipe name. In the future also fulltext search. schema: type: string - name: keywords in: query required: false description: ID of keyword a recipe should have. For multiple repeat parameter. Equivalent to keywords_or schema: type: int - name: keywords_or in: query required: false description: Keyword IDs, repeat for multiple. Return recipes with any of the keywords schema: type: int - name: keywords_and in: query required: false description: Keyword IDs, repeat for multiple. Return recipes with all of the keywords. schema: type: int - name: keywords_or_not in: query required: false description: Keyword IDs, repeat for multiple. Exclude recipes with any of the keywords. schema: type: int - name: keywords_and_not in: query required: false description: Keyword IDs, repeat for multiple. Exclude recipes with all of the keywords. schema: type: int - name: foods in: query required: false description: ID of food a recipe should have. For multiple repeat parameter. schema: type: int - name: foods_or in: query required: false description: Food IDs, repeat for multiple. Return recipes with any of the foods schema: type: int - name: foods_and in: query required: false description: Food IDs, repeat for multiple. Return recipes with all of the foods. schema: type: int - name: foods_or_not in: query required: false description: Food IDs, repeat for multiple. Exclude recipes with any of the foods. schema: type: int - name: foods_and_not in: query required: false description: Food IDs, repeat for multiple. Exclude recipes with all of the foods. schema: type: int - name: units in: query required: false description: ID of unit a recipe should have. schema: type: int - name: rating in: query required: false description: Rating a recipe should have or greater. [0 - 5] Negative value filters rating less than. schema: type: int - name: books in: query required: false description: ID of book a recipe should be in. For multiple repeat parameter. schema: type: string - name: books_or in: query required: false description: Book IDs, repeat for multiple. Return recipes with any of the books schema: type: int - name: books_and in: query required: false description: Book IDs, repeat for multiple. Return recipes with all of the books. schema: type: int - name: books_or_not in: query required: false description: Book IDs, repeat for multiple. Exclude recipes with any of the books. schema: type: int - name: books_and_not in: query required: false description: Book IDs, repeat for multiple. Exclude recipes with all of the books. schema: type: int - name: internal in: query required: false description: If only internal recipes should be returned. [true/false] schema: type: string - name: random in: query required: false description: Returns the results in randomized order. [true/false] schema: type: string - name: new in: query required: false description: Returns new results first in search results. [true/false] schema: type: string - name: timescooked in: query required: false description: Filter recipes cooked X times or more. Negative values returns cooked less than X times schema: type: int - name: cookedon in: query required: false description: Filter recipes last cooked on or after YYYY-MM-DD. Prepending - filters on or before date. schema: type: string - name: createdon in: query required: false description: Filter recipes created on or after YYYY-MM-DD. Prepending - filters on or before date. schema: type: string - name: updatedon in: query required: false description: Filter recipes updated on or after YYYY-MM-DD. Prepending - filters on or before date. schema: type: string - name: viewedon in: query required: false description: Filter recipes lasts viewed on or after YYYY-MM-DD. Prepending - filters on or before date. schema: type: string - name: makenow in: query required: false description: Filter recipes that can be made with OnHand food. [true/false] schema: type: string - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer responses: '200': content: application/json: schema: type: object properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/RecipeOverview' description: '' tags: - api post: operationId: createRecipe description: '' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/Recipe' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Recipe' multipart/form-data: schema: $ref: '#/components/schemas/Recipe' responses: '201': content: application/json: schema: $ref: '#/components/schemas/Recipe' description: '' tags: - api /api/recipe/{id}/: get: operationId: retrieveRecipe description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this recipe. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/Recipe' description: '' tags: - api put: operationId: updateRecipe description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this recipe. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Recipe' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Recipe' multipart/form-data: schema: $ref: '#/components/schemas/Recipe' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Recipe' description: '' tags: - api patch: operationId: partialUpdateRecipe description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this recipe. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Recipe' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Recipe' multipart/form-data: schema: $ref: '#/components/schemas/Recipe' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Recipe' description: '' tags: - api delete: operationId: destroyRecipe description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this recipe. schema: type: string responses: '204': description: '' tags: - api /api/recipe/{id}/related/: get: operationId: relatedRecipe description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this recipe. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/RecipeSimple' description: '' tags: - api /api/recipe-book/: get: operationId: listRecipeBooks description: '' parameters: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RecipeBook' description: '' tags: - api post: operationId: createRecipeBook description: '' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/RecipeBook' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/RecipeBook' multipart/form-data: schema: $ref: '#/components/schemas/RecipeBook' responses: '201': content: application/json: schema: $ref: '#/components/schemas/RecipeBook' description: '' tags: - api /api/recipe-book/{id}/: get: operationId: retrieveRecipeBook description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this recipe book. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/RecipeBook' description: '' tags: - api put: operationId: updateRecipeBook description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this recipe book. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/RecipeBook' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/RecipeBook' multipart/form-data: schema: $ref: '#/components/schemas/RecipeBook' responses: '200': content: application/json: schema: $ref: '#/components/schemas/RecipeBook' description: '' tags: - api patch: operationId: partialUpdateRecipeBook description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this recipe book. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/RecipeBook' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/RecipeBook' multipart/form-data: schema: $ref: '#/components/schemas/RecipeBook' responses: '200': content: application/json: schema: $ref: '#/components/schemas/RecipeBook' description: '' tags: - api delete: operationId: destroyRecipeBook description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this recipe book. schema: type: string responses: '204': description: '' tags: - api /api/recipe-book-entry/: get: operationId: listRecipeBookEntrys description: 'optional parameters - **recipe**: id of recipe - only return books for that recipe - **book**: id of book - only return recipes in that book' parameters: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RecipeBookEntry' description: '' tags: - api post: operationId: createRecipeBookEntry description: '' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/RecipeBookEntry' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/RecipeBookEntry' multipart/form-data: schema: $ref: '#/components/schemas/RecipeBookEntry' responses: '201': content: application/json: schema: $ref: '#/components/schemas/RecipeBookEntry' description: '' tags: - api /api/recipe-book-entry/{id}/: get: operationId: retrieveRecipeBookEntry description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this recipe book entry. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/RecipeBookEntry' description: '' tags: - api put: operationId: updateRecipeBookEntry description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this recipe book entry. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/RecipeBookEntry' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/RecipeBookEntry' multipart/form-data: schema: $ref: '#/components/schemas/RecipeBookEntry' responses: '200': content: application/json: schema: $ref: '#/components/schemas/RecipeBookEntry' description: '' tags: - api patch: operationId: partialUpdateRecipeBookEntry description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this recipe book entry. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/RecipeBookEntry' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/RecipeBookEntry' multipart/form-data: schema: $ref: '#/components/schemas/RecipeBookEntry' responses: '200': content: application/json: schema: $ref: '#/components/schemas/RecipeBookEntry' description: '' tags: - api delete: operationId: destroyRecipeBookEntry description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this recipe book entry. schema: type: string responses: '204': description: '' tags: - api /api/shopping-list/: get: operationId: listShoppingLists description: '' parameters: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ShoppingList' description: '' tags: - api post: operationId: createShoppingList description: '' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/ShoppingList' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ShoppingList' multipart/form-data: schema: $ref: '#/components/schemas/ShoppingList' responses: '201': content: application/json: schema: $ref: '#/components/schemas/ShoppingList' description: '' tags: - api /api/shopping-list/{id}/: get: operationId: retrieveShoppingList description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this shopping list. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/ShoppingList' description: '' tags: - api put: operationId: updateShoppingList description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this shopping list. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/ShoppingList' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ShoppingList' multipart/form-data: schema: $ref: '#/components/schemas/ShoppingList' responses: '200': content: application/json: schema: $ref: '#/components/schemas/ShoppingList' description: '' tags: - api patch: operationId: partialUpdateShoppingList description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this shopping list. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/ShoppingList' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ShoppingList' multipart/form-data: schema: $ref: '#/components/schemas/ShoppingList' responses: '200': content: application/json: schema: $ref: '#/components/schemas/ShoppingList' description: '' tags: - api delete: operationId: destroyShoppingList description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this shopping list. schema: type: string responses: '204': description: '' tags: - api /api/shopping-list-entry/: get: operationId: listShoppingListEntrys description: '' parameters: - name: id in: query required: false description: Returns the shopping list entry with a primary key of id. Multiple values allowed. schema: type: int - name: checked in: query required: false description: Filter shopping list entries on checked. [true, false, both, recent]
- recent includes unchecked items and recently completed items. schema: type: string - name: supermarket in: query required: false description: Returns the shopping list entries sorted by supermarket category order. schema: type: int responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ShoppingListEntry' description: '' tags: - api post: operationId: createShoppingListEntry description: '' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/ShoppingListEntry' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ShoppingListEntry' multipart/form-data: schema: $ref: '#/components/schemas/ShoppingListEntry' responses: '201': content: application/json: schema: $ref: '#/components/schemas/ShoppingListEntry' description: '' tags: - api /api/shopping-list-entry/{id}/: get: operationId: retrieveShoppingListEntry description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this shopping list entry. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/ShoppingListEntry' description: '' tags: - api put: operationId: updateShoppingListEntry description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this shopping list entry. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/ShoppingListEntry' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ShoppingListEntry' multipart/form-data: schema: $ref: '#/components/schemas/ShoppingListEntry' responses: '200': content: application/json: schema: $ref: '#/components/schemas/ShoppingListEntry' description: '' tags: - api patch: operationId: partialUpdateShoppingListEntry description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this shopping list entry. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/ShoppingListEntry' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ShoppingListEntry' multipart/form-data: schema: $ref: '#/components/schemas/ShoppingListEntry' responses: '200': content: application/json: schema: $ref: '#/components/schemas/ShoppingListEntry' description: '' tags: - api delete: operationId: destroyShoppingListEntry description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this shopping list entry. schema: type: string responses: '204': description: '' tags: - api /api/shopping-list-recipe/: get: operationId: listShoppingListRecipes description: '' parameters: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ShoppingListRecipe' description: '' tags: - api post: operationId: createShoppingListRecipe description: '' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/ShoppingListRecipe' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ShoppingListRecipe' multipart/form-data: schema: $ref: '#/components/schemas/ShoppingListRecipe' responses: '201': content: application/json: schema: $ref: '#/components/schemas/ShoppingListRecipe' description: '' tags: - api /api/shopping-list-recipe/{id}/: get: operationId: retrieveShoppingListRecipe description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this shopping list recipe. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/ShoppingListRecipe' description: '' tags: - api put: operationId: updateShoppingListRecipe description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this shopping list recipe. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/ShoppingListRecipe' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ShoppingListRecipe' multipart/form-data: schema: $ref: '#/components/schemas/ShoppingListRecipe' responses: '200': content: application/json: schema: $ref: '#/components/schemas/ShoppingListRecipe' description: '' tags: - api patch: operationId: partialUpdateShoppingListRecipe description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this shopping list recipe. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/ShoppingListRecipe' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ShoppingListRecipe' multipart/form-data: schema: $ref: '#/components/schemas/ShoppingListRecipe' responses: '200': content: application/json: schema: $ref: '#/components/schemas/ShoppingListRecipe' description: '' tags: - api delete: operationId: destroyShoppingListRecipe description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this shopping list recipe. schema: type: string responses: '204': description: '' tags: - api /api/space/: get: operationId: listSpaces description: '' parameters: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Space' description: '' tags: - api /api/space/{id}/: get: operationId: retrieveSpace description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this space. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/Space' description: '' tags: - api patch: operationId: partialUpdateSpace description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this space. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Space' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Space' multipart/form-data: schema: $ref: '#/components/schemas/Space' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Space' description: '' tags: - api /api/step/: get: operationId: listSteps description: '' parameters: - name: recipe in: query required: false description: ID of recipe a step is part of. For multiple repeat parameter. schema: type: int - name: query in: query required: false description: Query string matched (fuzzy) against object name. schema: type: string - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer responses: '200': content: application/json: schema: type: object properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/Step' description: '' tags: - api post: operationId: createStep description: '' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/Step' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Step' multipart/form-data: schema: $ref: '#/components/schemas/Step' responses: '201': content: application/json: schema: $ref: '#/components/schemas/Step' description: '' tags: - api /api/step/{id}/: get: operationId: retrieveStep description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this step. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/Step' description: '' tags: - api put: operationId: updateStep description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this step. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Step' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Step' multipart/form-data: schema: $ref: '#/components/schemas/Step' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Step' description: '' tags: - api patch: operationId: partialUpdateStep description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this step. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Step' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Step' multipart/form-data: schema: $ref: '#/components/schemas/Step' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Step' description: '' tags: - api delete: operationId: destroyStep description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this step. schema: type: string responses: '204': description: '' tags: - api /api/storage/: get: operationId: listStorages description: '' parameters: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Storage' description: '' tags: - api post: operationId: createStorage description: '' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/Storage' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Storage' multipart/form-data: schema: $ref: '#/components/schemas/Storage' responses: '201': content: application/json: schema: $ref: '#/components/schemas/Storage' description: '' tags: - api /api/storage/{id}/: get: operationId: retrieveStorage description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this storage. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/Storage' description: '' tags: - api put: operationId: updateStorage description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this storage. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Storage' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Storage' multipart/form-data: schema: $ref: '#/components/schemas/Storage' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Storage' description: '' tags: - api patch: operationId: partialUpdateStorage description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this storage. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Storage' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Storage' multipart/form-data: schema: $ref: '#/components/schemas/Storage' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Storage' description: '' tags: - api delete: operationId: destroyStorage description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this storage. schema: type: string responses: '204': description: '' tags: - api /api/supermarket/: get: operationId: listSupermarkets description: '' parameters: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Supermarket' description: '' tags: - api post: operationId: createSupermarket description: '' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/Supermarket' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Supermarket' multipart/form-data: schema: $ref: '#/components/schemas/Supermarket' responses: '201': content: application/json: schema: $ref: '#/components/schemas/Supermarket' description: '' tags: - api /api/supermarket/{id}/: get: operationId: retrieveSupermarket description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this supermarket. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/Supermarket' description: '' tags: - api put: operationId: updateSupermarket description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this supermarket. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Supermarket' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Supermarket' multipart/form-data: schema: $ref: '#/components/schemas/Supermarket' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Supermarket' description: '' tags: - api patch: operationId: partialUpdateSupermarket description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this supermarket. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Supermarket' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Supermarket' multipart/form-data: schema: $ref: '#/components/schemas/Supermarket' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Supermarket' description: '' tags: - api delete: operationId: destroySupermarket description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this supermarket. schema: type: string responses: '204': description: '' tags: - api /api/supermarket-category/: get: operationId: listSupermarketCategorys description: '' parameters: - name: query in: query required: false description: Query string matched against supermarket-category name. schema: type: string responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/SupermarketCategory' description: '' tags: - api post: operationId: createSupermarketCategory description: '' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/SupermarketCategory' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/SupermarketCategory' multipart/form-data: schema: $ref: '#/components/schemas/SupermarketCategory' responses: '201': content: application/json: schema: $ref: '#/components/schemas/SupermarketCategory' description: '' tags: - api /api/supermarket-category/{id}/: get: operationId: retrieveSupermarketCategory description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this supermarket category. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/SupermarketCategory' description: '' tags: - api put: operationId: updateSupermarketCategory description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this supermarket category. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/SupermarketCategory' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/SupermarketCategory' multipart/form-data: schema: $ref: '#/components/schemas/SupermarketCategory' responses: '200': content: application/json: schema: $ref: '#/components/schemas/SupermarketCategory' description: '' tags: - api patch: operationId: partialUpdateSupermarketCategory description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this supermarket category. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/SupermarketCategory' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/SupermarketCategory' multipart/form-data: schema: $ref: '#/components/schemas/SupermarketCategory' responses: '200': content: application/json: schema: $ref: '#/components/schemas/SupermarketCategory' description: '' tags: - api delete: operationId: destroySupermarketCategory description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this supermarket category. schema: type: string responses: '204': description: '' tags: - api /api/supermarket-category-relation/: get: operationId: listSupermarketCategoryRelations description: '' parameters: - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer responses: '200': content: application/json: schema: type: object properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/SupermarketCategoryRelation' description: '' tags: - api post: operationId: createSupermarketCategoryRelation description: '' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/SupermarketCategoryRelation' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/SupermarketCategoryRelation' multipart/form-data: schema: $ref: '#/components/schemas/SupermarketCategoryRelation' responses: '201': content: application/json: schema: $ref: '#/components/schemas/SupermarketCategoryRelation' description: '' tags: - api /api/supermarket-category-relation/{id}/: get: operationId: retrieveSupermarketCategoryRelation description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this supermarket category relation. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/SupermarketCategoryRelation' description: '' tags: - api put: operationId: updateSupermarketCategoryRelation description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this supermarket category relation. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/SupermarketCategoryRelation' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/SupermarketCategoryRelation' multipart/form-data: schema: $ref: '#/components/schemas/SupermarketCategoryRelation' responses: '200': content: application/json: schema: $ref: '#/components/schemas/SupermarketCategoryRelation' description: '' tags: - api patch: operationId: partialUpdateSupermarketCategoryRelation description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this supermarket category relation. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/SupermarketCategoryRelation' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/SupermarketCategoryRelation' multipart/form-data: schema: $ref: '#/components/schemas/SupermarketCategoryRelation' responses: '200': content: application/json: schema: $ref: '#/components/schemas/SupermarketCategoryRelation' description: '' tags: - api delete: operationId: destroySupermarketCategoryRelation description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this supermarket category relation. schema: type: string responses: '204': description: '' tags: - api /api/sync/: get: operationId: listSyncs description: '' parameters: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Sync' description: '' tags: - api post: operationId: createSync description: '' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/Sync' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Sync' multipart/form-data: schema: $ref: '#/components/schemas/Sync' responses: '201': content: application/json: schema: $ref: '#/components/schemas/Sync' description: '' tags: - api /api/sync/{id}/: get: operationId: retrieveSync description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this sync. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/Sync' description: '' tags: - api put: operationId: updateSync description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this sync. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Sync' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Sync' multipart/form-data: schema: $ref: '#/components/schemas/Sync' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Sync' description: '' tags: - api patch: operationId: partialUpdateSync description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this sync. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Sync' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Sync' multipart/form-data: schema: $ref: '#/components/schemas/Sync' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Sync' description: '' tags: - api delete: operationId: destroySync description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this sync. schema: type: string responses: '204': description: '' tags: - api /api/sync-log/: get: operationId: listSyncLogs description: '' parameters: - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer responses: '200': content: application/json: schema: type: object properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/SyncLog' description: '' tags: - api /api/sync-log/{id}/: get: operationId: retrieveSyncLog description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this sync log. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/SyncLog' description: '' tags: - api /api/unit/: get: operationId: listUnits description: '' parameters: - name: query in: query required: false description: Query string matched against unit name. schema: type: string - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer responses: '200': content: application/json: schema: type: object properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/Unit' description: '' tags: - api post: operationId: createUnit description: '' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/Unit' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Unit' multipart/form-data: schema: $ref: '#/components/schemas/Unit' responses: '201': content: application/json: schema: $ref: '#/components/schemas/Unit' description: '' tags: - api /api/unit/{id}/: get: operationId: retrieveUnit description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this unit. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/Unit' description: '' tags: - api put: operationId: updateUnit description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this unit. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Unit' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Unit' multipart/form-data: schema: $ref: '#/components/schemas/Unit' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Unit' description: '' tags: - api patch: operationId: partialUpdateUnit description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this unit. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Unit' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Unit' multipart/form-data: schema: $ref: '#/components/schemas/Unit' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Unit' description: '' tags: - api delete: operationId: destroyUnit description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this unit. schema: type: string responses: '204': description: '' tags: - api /api/user-file/: get: operationId: listUserFiles description: '' parameters: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserFile' description: '' tags: - api post: operationId: createUserFile description: '' parameters: [] requestBody: content: multipart/form-data: schema: $ref: '#/components/schemas/UserFile' responses: '201': content: application/json: schema: $ref: '#/components/schemas/UserFile' description: '' tags: - api /api/user-file/{id}/: get: operationId: retrieveUserFile description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this user file. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserFile' description: '' tags: - api put: operationId: updateUserFile description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this user file. schema: type: string requestBody: content: multipart/form-data: schema: $ref: '#/components/schemas/UserFile' responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserFile' description: '' tags: - api patch: operationId: partialUpdateUserFile description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this user file. schema: type: string requestBody: content: multipart/form-data: schema: $ref: '#/components/schemas/UserFile' responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserFile' description: '' tags: - api delete: operationId: destroyUserFile description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this user file. schema: type: string responses: '204': description: '' tags: - api /api/user/: get: operationId: listUsers description: 'optional parameters - **filter_list**: array of user id''s to get names for' parameters: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/User' description: '' tags: - api /api/user/{id}/: get: operationId: retrieveUser description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this user. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/User' description: '' tags: - api patch: operationId: partialUpdateUser description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this user. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/User' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/User' multipart/form-data: schema: $ref: '#/components/schemas/User' responses: '200': content: application/json: schema: $ref: '#/components/schemas/User' description: '' tags: - api /api/user-preference/: get: operationId: listUserPreferences description: '' parameters: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserPreference' description: '' tags: - api /api/user-preference/{user}/: get: operationId: retrieveUserPreference description: '' parameters: - name: user in: path required: true description: A unique value identifying this user preference. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserPreference' description: '' tags: - api patch: operationId: partialUpdateUserPreference description: '' parameters: - name: user in: path required: true description: A unique value identifying this user preference. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/UserPreference' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/UserPreference' multipart/form-data: schema: $ref: '#/components/schemas/UserPreference' responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserPreference' description: '' tags: - api /api/user-space/: get: operationId: listUserSpaces description: '' parameters: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserSpace' description: '' tags: - api /api/user-space/{id}/: get: operationId: retrieveUserSpace description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this user space. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserSpace' description: '' tags: - api patch: operationId: partialUpdateUserSpace description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this user space. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/UserSpace' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/UserSpace' multipart/form-data: schema: $ref: '#/components/schemas/UserSpace' responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserSpace' description: '' tags: - api delete: operationId: destroyUserSpace description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this user space. schema: type: string responses: '204': description: '' tags: - api /api/view-log/: get: operationId: listViewLogs description: '' parameters: - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer responses: '200': content: application/json: schema: type: object properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/ViewLog' description: '' tags: - api post: operationId: createViewLog description: '' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/ViewLog' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ViewLog' multipart/form-data: schema: $ref: '#/components/schemas/ViewLog' responses: '201': content: application/json: schema: $ref: '#/components/schemas/ViewLog' description: '' tags: - api /api/view-log/{id}/: get: operationId: retrieveViewLog description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this view log. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/ViewLog' description: '' tags: - api put: operationId: updateViewLog description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this view log. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/ViewLog' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ViewLog' multipart/form-data: schema: $ref: '#/components/schemas/ViewLog' responses: '200': content: application/json: schema: $ref: '#/components/schemas/ViewLog' description: '' tags: - api patch: operationId: partialUpdateViewLog description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this view log. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/ViewLog' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ViewLog' multipart/form-data: schema: $ref: '#/components/schemas/ViewLog' responses: '200': content: application/json: schema: $ref: '#/components/schemas/ViewLog' description: '' tags: - api delete: operationId: destroyViewLog description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this view log. schema: type: string responses: '204': description: '' tags: - api /api/access-token/: get: operationId: listAccessTokens description: '' parameters: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AccessToken' description: '' tags: - api post: operationId: createAccessToken description: '' parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/AccessToken' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/AccessToken' multipart/form-data: schema: $ref: '#/components/schemas/AccessToken' responses: '201': content: application/json: schema: $ref: '#/components/schemas/AccessToken' description: '' tags: - api /api/access-token/{id}/: get: operationId: retrieveAccessToken description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this access token. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/AccessToken' description: '' tags: - api put: operationId: updateAccessToken description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this access token. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/AccessToken' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/AccessToken' multipart/form-data: schema: $ref: '#/components/schemas/AccessToken' responses: '200': content: application/json: schema: $ref: '#/components/schemas/AccessToken' description: '' tags: - api patch: operationId: partialUpdateAccessToken description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this access token. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/AccessToken' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/AccessToken' multipart/form-data: schema: $ref: '#/components/schemas/AccessToken' responses: '200': content: application/json: schema: $ref: '#/components/schemas/AccessToken' description: '' tags: - api delete: operationId: destroyAccessToken description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this access token. schema: type: string responses: '204': description: '' tags: - api /api/import/: post: operationId: createimport_files description: function to handle files passed by application importer parameters: [] requestBody: content: application/json: schema: {} application/x-www-form-urlencoded: schema: {} multipart/form-data: schema: {} responses: '201': content: application/json: schema: {} description: '' tags: - api /api/recipe-from-source/: post: operationId: createrecipe_from_source description: "function to retrieve a recipe from a given url or source string\n\ :param request: standard request with additional post parameters\n \ \ - url: url to use for importing recipe\n - data: if no url is given\ \ recipe is imported from provided source data\n - (optional) bookmarklet:\ \ id of bookmarklet import to use, overrides URL and data attributes\n:return:\ \ JsonResponse containing the parsed json and images" parameters: [] requestBody: content: application/json: schema: {} application/x-www-form-urlencoded: schema: {} multipart/form-data: schema: {} responses: '201': content: application/json: schema: {} description: '' tags: - api /api-token-auth/: post: operationId: createAuthToken description: '' parameters: [] requestBody: content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/AuthToken' multipart/form-data: schema: $ref: '#/components/schemas/AuthToken' application/json: schema: $ref: '#/components/schemas/AuthToken' responses: '201': content: application/json: schema: $ref: '#/components/schemas/AuthToken' description: '' tags: - api-token-auth /api/food/{id}/merge/{target}/: put: operationId: mergeFood description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this food. schema: type: string - name: target in: path required: true description: '' schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Food' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Food' multipart/form-data: schema: $ref: '#/components/schemas/Food' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Food' description: '' tags: - api /api/food/{id}/move/{parent}/: put: operationId: moveFood description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this food. schema: type: string - name: parent in: path required: true description: '' schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Food' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Food' multipart/form-data: schema: $ref: '#/components/schemas/Food' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Food' description: '' tags: - api /api/food/{id}/shopping/: put: operationId: shoppingFood description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this food. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/FoodShoppingUpdate' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/FoodShoppingUpdate' multipart/form-data: schema: $ref: '#/components/schemas/FoodShoppingUpdate' responses: '200': content: application/json: schema: $ref: '#/components/schemas/FoodShoppingUpdate' description: '' tags: - api /api/keyword/{id}/merge/{target}/: put: operationId: mergeKeyword description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this keyword. schema: type: string - name: target in: path required: true description: '' schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Keyword' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Keyword' multipart/form-data: schema: $ref: '#/components/schemas/Keyword' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Keyword' description: '' tags: - api /api/keyword/{id}/move/{parent}/: put: operationId: moveKeyword description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this keyword. schema: type: string - name: parent in: path required: true description: '' schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Keyword' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Keyword' multipart/form-data: schema: $ref: '#/components/schemas/Keyword' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Keyword' description: '' tags: - api /api/recipe/{id}/image/: put: operationId: imageRecipe description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this recipe. schema: type: string requestBody: content: multipart/form-data: schema: $ref: '#/components/schemas/RecipeImage' responses: '200': content: application/json: schema: $ref: '#/components/schemas/RecipeImage' description: '' tags: - api /api/recipe/{id}/shopping/: put: operationId: shoppingRecipe description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this recipe. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/RecipeShoppingUpdate' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/RecipeShoppingUpdate' multipart/form-data: schema: $ref: '#/components/schemas/RecipeShoppingUpdate' responses: '200': content: application/json: schema: $ref: '#/components/schemas/RecipeShoppingUpdate' description: '' tags: - api /api/unit/{id}/merge/{target}/: put: operationId: mergeUnit description: '' parameters: - name: id in: path required: true description: A unique integer value identifying this unit. schema: type: string - name: target in: path required: true description: '' schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Unit' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Unit' multipart/form-data: schema: $ref: '#/components/schemas/Unit' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Unit' description: '' tags: - api components: schemas: Automation: type: object properties: id: type: integer readOnly: true type: enum: - FOOD_ALIAS - UNIT_ALIAS - KEYWORD_ALIAS type: string name: type: string maxLength: 128 description: type: string nullable: true param_1: type: string nullable: true maxLength: 128 param_2: type: string nullable: true maxLength: 128 param_3: type: string nullable: true maxLength: 128 disabled: type: boolean created_by: type: string readOnly: true required: - type BookmarkletImportList: type: object properties: id: type: integer readOnly: true url: type: string nullable: true maxLength: 256 created_by: type: string readOnly: true created_at: type: string format: date-time readOnly: true BookmarkletImport: type: object properties: id: type: integer readOnly: true url: type: string nullable: true maxLength: 256 html: type: string created_by: type: string readOnly: true created_at: type: string format: date-time readOnly: true required: - html CookLog: type: object properties: id: type: integer readOnly: true recipe: type: integer servings: type: integer maximum: 2147483647 minimum: -2147483648 rating: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true created_by: type: string readOnly: true created_at: type: string format: date-time required: - recipe CustomFilter: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 search: type: string shared: type: array items: type: object properties: id: type: integer readOnly: true username: type: string readOnly: true description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only. first_name: type: string maxLength: 150 last_name: type: string maxLength: 150 display_name: type: string readOnly: true created_by: type: string readOnly: true required: - name - search Food: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 description: type: string shopping: type: string readOnly: true recipe: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 url: type: string readOnly: true required: - name nullable: true food_onhand: type: string nullable: true supermarket_category: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 description: type: string nullable: true required: - name nullable: true parent: type: string readOnly: true numchild: type: integer readOnly: true inherit_fields: type: array items: type: object properties: id: type: integer readOnly: true name: type: string nullable: true field: type: string nullable: true nullable: true full_name: type: string readOnly: true ignore_shopping: type: boolean substitute: type: array items: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 required: - name nullable: true substitute_siblings: type: boolean substitute_children: type: boolean substitute_onhand: type: string readOnly: true child_inherit_fields: type: array items: type: object properties: id: type: integer readOnly: true name: type: string nullable: true field: type: string nullable: true nullable: true required: - name FoodInheritField: type: object properties: id: type: integer readOnly: true name: type: string nullable: true field: type: string nullable: true ImportLog: type: object properties: id: type: integer readOnly: true type: type: string maxLength: 32 msg: type: string running: type: boolean keyword: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 64 icon: type: string nullable: true maxLength: 16 label: type: string readOnly: true description: type: string parent: type: string readOnly: true numchild: type: integer readOnly: true created_at: type: string format: date-time readOnly: true updated_at: type: string format: date-time readOnly: true full_name: type: string readOnly: true required: - name readOnly: true total_recipes: type: integer maximum: 2147483647 minimum: -2147483648 imported_recipes: type: integer maximum: 2147483647 minimum: -2147483648 created_by: type: string readOnly: true created_at: type: string format: date-time readOnly: true required: - type ExportLog: type: object properties: id: type: integer readOnly: true type: type: string maxLength: 32 msg: type: string running: type: boolean total_recipes: type: integer maximum: 2147483647 minimum: -2147483648 exported_recipes: type: integer maximum: 2147483647 minimum: -2147483648 cache_duration: type: integer maximum: 2147483647 minimum: -2147483648 possibly_not_expired: type: boolean created_by: type: string readOnly: true created_at: type: string format: date-time readOnly: true required: - type Group: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 150 required: - name Ingredient: type: object properties: id: type: integer readOnly: true food: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 description: type: string shopping: type: string readOnly: true recipe: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 url: type: string readOnly: true required: - name nullable: true food_onhand: type: string nullable: true supermarket_category: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 description: type: string nullable: true required: - name nullable: true parent: type: string readOnly: true numchild: type: integer readOnly: true inherit_fields: type: array items: type: object properties: id: type: integer readOnly: true name: type: string nullable: true field: type: string nullable: true nullable: true full_name: type: string readOnly: true ignore_shopping: type: boolean substitute: type: array items: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 required: - name nullable: true substitute_siblings: type: boolean substitute_children: type: boolean substitute_onhand: type: string readOnly: true child_inherit_fields: type: array items: type: object properties: id: type: integer readOnly: true name: type: string nullable: true field: type: string nullable: true nullable: true required: - name nullable: true unit: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 description: type: string nullable: true required: - name nullable: true amount: type: string note: type: string nullable: true maxLength: 256 order: type: integer maximum: 2147483647 minimum: -2147483648 is_header: type: boolean no_amount: type: boolean original_text: type: string nullable: true maxLength: 512 used_in_recipes: type: string readOnly: true required: - food - unit - amount InviteLink: type: object properties: id: type: integer readOnly: true uuid: type: string format: uuid readOnly: true email: type: string format: email maxLength: 254 group: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 150 required: - name valid_until: type: string format: date used_by: type: integer nullable: true reusable: type: boolean created_by: type: string readOnly: true created_at: type: string format: date-time readOnly: true required: - group Keyword: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 64 icon: type: string nullable: true maxLength: 16 label: type: string readOnly: true description: type: string parent: type: string readOnly: true numchild: type: integer readOnly: true created_at: type: string format: date-time readOnly: true updated_at: type: string format: date-time readOnly: true full_name: type: string readOnly: true required: - name MealPlan: type: object properties: id: type: integer readOnly: true title: type: string maxLength: 64 recipe: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 description: type: string nullable: true maxLength: 512 image: type: string format: binary readOnly: true nullable: true keywords: type: array items: type: object properties: id: type: integer readOnly: true label: type: string readOnly: true working_time: type: integer maximum: 2147483647 minimum: -2147483648 waiting_time: type: integer maximum: 2147483647 minimum: -2147483648 created_by: type: string readOnly: true created_at: type: string format: date-time readOnly: true updated_at: type: string format: date-time readOnly: true internal: type: boolean servings: type: integer maximum: 2147483647 minimum: -2147483648 servings_text: type: string maxLength: 32 rating: type: string nullable: true last_cooked: type: string format: date-time nullable: true new: type: string readOnly: true recent: type: string readOnly: true required: - name - keywords nullable: true servings: type: string note: type: string note_markdown: type: string readOnly: true date: type: string format: date meal_type: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 order: type: integer maximum: 2147483647 minimum: -2147483648 icon: type: string nullable: true maxLength: 16 color: type: string nullable: true maxLength: 7 default: type: boolean created_by: type: string readOnly: true required: - name created_by: type: string readOnly: true shared: type: array items: type: object properties: id: type: integer readOnly: true username: type: string readOnly: true description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only. first_name: type: string maxLength: 150 last_name: type: string maxLength: 150 display_name: type: string readOnly: true nullable: true recipe_name: type: string readOnly: true meal_type_name: type: string readOnly: true shopping: type: string readOnly: true required: - servings - date - meal_type MealType: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 order: type: integer maximum: 2147483647 minimum: -2147483648 icon: type: string nullable: true maxLength: 16 color: type: string nullable: true maxLength: 7 default: type: boolean created_by: type: string readOnly: true required: - name RecipeOverview: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 description: type: string nullable: true maxLength: 512 image: type: string format: binary readOnly: true nullable: true keywords: type: array items: type: object properties: id: type: integer readOnly: true label: type: string readOnly: true working_time: type: integer maximum: 2147483647 minimum: -2147483648 waiting_time: type: integer maximum: 2147483647 minimum: -2147483648 created_by: type: string readOnly: true created_at: type: string format: date-time readOnly: true updated_at: type: string format: date-time readOnly: true internal: type: boolean servings: type: integer maximum: 2147483647 minimum: -2147483648 servings_text: type: string maxLength: 32 rating: type: string nullable: true last_cooked: type: string format: date-time nullable: true new: type: string readOnly: true recent: type: string readOnly: true required: - name - keywords Recipe: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 description: type: string nullable: true maxLength: 512 image: type: string format: binary readOnly: true nullable: true keywords: type: array items: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 64 icon: type: string nullable: true maxLength: 16 label: type: string readOnly: true description: type: string parent: type: string readOnly: true numchild: type: integer readOnly: true created_at: type: string format: date-time readOnly: true updated_at: type: string format: date-time readOnly: true full_name: type: string readOnly: true required: - name steps: type: array items: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 instruction: type: string ingredients: type: array items: type: object properties: id: type: integer readOnly: true food: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 description: type: string shopping: type: string readOnly: true recipe: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 url: type: string readOnly: true required: - name nullable: true food_onhand: type: string nullable: true supermarket_category: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 description: type: string nullable: true required: - name nullable: true parent: type: string readOnly: true numchild: type: integer readOnly: true inherit_fields: type: array items: type: object properties: id: type: integer readOnly: true name: type: string nullable: true field: type: string nullable: true nullable: true full_name: type: string readOnly: true ignore_shopping: type: boolean substitute: type: array items: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 required: - name nullable: true substitute_siblings: type: boolean substitute_children: type: boolean substitute_onhand: type: string readOnly: true child_inherit_fields: type: array items: type: object properties: id: type: integer readOnly: true name: type: string nullable: true field: type: string nullable: true nullable: true required: - name nullable: true unit: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 description: type: string nullable: true required: - name nullable: true amount: type: string note: type: string nullable: true maxLength: 256 order: type: integer maximum: 2147483647 minimum: -2147483648 is_header: type: boolean no_amount: type: boolean original_text: type: string nullable: true maxLength: 512 used_in_recipes: type: string readOnly: true required: - food - unit - amount ingredients_markdown: type: string readOnly: true ingredients_vue: type: string readOnly: true time: type: integer maximum: 2147483647 minimum: -2147483648 order: type: integer maximum: 2147483647 minimum: -2147483648 show_as_header: type: boolean file: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 file_download: type: string readOnly: true preview: type: string readOnly: true required: - name nullable: true step_recipe: type: integer nullable: true step_recipe_data: type: string readOnly: true numrecipe: type: string readOnly: true required: - ingredients working_time: type: integer maximum: 2147483647 minimum: -2147483648 waiting_time: type: integer maximum: 2147483647 minimum: -2147483648 created_by: type: string readOnly: true created_at: type: string format: date-time readOnly: true updated_at: type: string format: date-time readOnly: true source_url: type: string nullable: true maxLength: 1024 internal: type: boolean show_ingredient_overview: type: boolean nutrition: type: object properties: id: type: integer readOnly: true carbohydrates: type: string fats: type: string proteins: type: string calories: type: string source: type: string nullable: true maxLength: 512 required: - carbohydrates - fats - proteins - calories nullable: true servings: type: integer maximum: 2147483647 minimum: -2147483648 file_path: type: string maxLength: 512 servings_text: type: string maxLength: 32 rating: type: string readOnly: true nullable: true last_cooked: type: string format: date-time readOnly: true nullable: true private: type: boolean shared: type: array items: type: object properties: id: type: integer readOnly: true username: type: string readOnly: true description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only. first_name: type: string maxLength: 150 last_name: type: string maxLength: 150 display_name: type: string readOnly: true required: - name - keywords - steps RecipeSimple: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 url: type: string readOnly: true required: - name RecipeBook: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 description: type: string icon: type: string nullable: true maxLength: 16 shared: type: array items: type: object properties: id: type: integer readOnly: true username: type: string readOnly: true description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only. first_name: type: string maxLength: 150 last_name: type: string maxLength: 150 display_name: type: string readOnly: true created_by: type: string readOnly: true filter: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 search: type: string shared: type: array items: type: object properties: id: type: integer readOnly: true username: type: string readOnly: true description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only. first_name: type: string maxLength: 150 last_name: type: string maxLength: 150 display_name: type: string readOnly: true created_by: type: string readOnly: true required: - name - search nullable: true required: - name - shared RecipeBookEntry: type: object properties: id: type: integer readOnly: true book: type: integer book_content: type: string readOnly: true recipe: type: integer recipe_content: type: string readOnly: true required: - book - recipe ShoppingList: type: object properties: id: type: integer readOnly: true uuid: type: string format: uuid note: type: string nullable: true recipes: type: array items: type: object properties: id: type: integer readOnly: true recipe_name: type: string readOnly: true name: type: string readOnly: true recipe: type: integer nullable: true mealplan: type: integer nullable: true servings: type: string mealplan_note: type: string readOnly: true required: - servings nullable: true entries: type: array items: type: object properties: id: type: integer readOnly: true list_recipe: type: integer nullable: true food: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 description: type: string shopping: type: string readOnly: true recipe: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 url: type: string readOnly: true required: - name nullable: true food_onhand: type: string nullable: true supermarket_category: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 description: type: string nullable: true required: - name nullable: true parent: type: string readOnly: true numchild: type: integer readOnly: true inherit_fields: type: array items: type: object properties: id: type: integer readOnly: true name: type: string nullable: true field: type: string nullable: true nullable: true full_name: type: string readOnly: true ignore_shopping: type: boolean substitute: type: array items: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 required: - name nullable: true substitute_siblings: type: boolean substitute_children: type: boolean substitute_onhand: type: string readOnly: true child_inherit_fields: type: array items: type: object properties: id: type: integer readOnly: true name: type: string nullable: true field: type: string nullable: true nullable: true required: - name nullable: true unit: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 description: type: string nullable: true required: - name nullable: true ingredient: type: integer nullable: true ingredient_note: type: string readOnly: true amount: type: string order: type: integer maximum: 2147483647 minimum: -2147483648 checked: type: boolean recipe_mealplan: type: object properties: id: type: integer readOnly: true recipe_name: type: string readOnly: true name: type: string readOnly: true recipe: type: integer nullable: true mealplan: type: integer nullable: true servings: type: string mealplan_note: type: string readOnly: true required: - servings readOnly: true created_by: type: object properties: id: type: integer readOnly: true username: type: string readOnly: true description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only. first_name: type: string maxLength: 150 last_name: type: string maxLength: 150 display_name: type: string readOnly: true readOnly: true created_at: type: string format: date-time readOnly: true completed_at: type: string format: date-time nullable: true delay_until: type: string format: date-time nullable: true required: - food - amount nullable: true shared: type: array items: type: object properties: id: type: integer readOnly: true username: type: string readOnly: true description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only. first_name: type: string maxLength: 150 last_name: type: string maxLength: 150 display_name: type: string readOnly: true finished: type: boolean supermarket: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 description: type: string nullable: true category_to_supermarket: type: array items: type: object properties: id: type: integer readOnly: true category: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 description: type: string nullable: true required: - name supermarket: type: integer order: type: integer maximum: 2147483647 minimum: -2147483648 required: - category - supermarket readOnly: true required: - name nullable: true created_by: type: string readOnly: true created_at: type: string format: date-time readOnly: true required: - recipes - entries - shared - supermarket ShoppingListEntry: type: object properties: id: type: integer readOnly: true list_recipe: type: integer nullable: true food: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 description: type: string shopping: type: string readOnly: true recipe: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 url: type: string readOnly: true required: - name nullable: true food_onhand: type: string nullable: true supermarket_category: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 description: type: string nullable: true required: - name nullable: true parent: type: string readOnly: true numchild: type: integer readOnly: true inherit_fields: type: array items: type: object properties: id: type: integer readOnly: true name: type: string nullable: true field: type: string nullable: true nullable: true full_name: type: string readOnly: true ignore_shopping: type: boolean substitute: type: array items: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 required: - name nullable: true substitute_siblings: type: boolean substitute_children: type: boolean substitute_onhand: type: string readOnly: true child_inherit_fields: type: array items: type: object properties: id: type: integer readOnly: true name: type: string nullable: true field: type: string nullable: true nullable: true required: - name nullable: true unit: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 description: type: string nullable: true required: - name nullable: true ingredient: type: integer nullable: true ingredient_note: type: string readOnly: true amount: type: string order: type: integer maximum: 2147483647 minimum: -2147483648 checked: type: boolean recipe_mealplan: type: object properties: id: type: integer readOnly: true recipe_name: type: string readOnly: true name: type: string readOnly: true recipe: type: integer nullable: true mealplan: type: integer nullable: true servings: type: string mealplan_note: type: string readOnly: true required: - servings readOnly: true created_by: type: object properties: id: type: integer readOnly: true username: type: string readOnly: true description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only. first_name: type: string maxLength: 150 last_name: type: string maxLength: 150 display_name: type: string readOnly: true readOnly: true created_at: type: string format: date-time readOnly: true completed_at: type: string format: date-time nullable: true delay_until: type: string format: date-time nullable: true required: - food - amount ShoppingListRecipe: type: object properties: id: type: integer readOnly: true recipe_name: type: string readOnly: true name: type: string readOnly: true recipe: type: integer nullable: true mealplan: type: integer nullable: true servings: type: string mealplan_note: type: string readOnly: true required: - servings Space: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 created_by: type: string readOnly: true nullable: true created_at: type: string format: date-time readOnly: true message: type: string maxLength: 512 max_recipes: type: integer readOnly: true max_file_storage_mb: type: integer readOnly: true description: Maximum file storage for space in MB. 0 for unlimited, -1 to disable file upload. max_users: type: integer readOnly: true allow_sharing: type: boolean readOnly: true demo: type: boolean readOnly: true food_inherit: type: array items: type: object properties: id: type: integer readOnly: true name: type: string nullable: true field: type: string nullable: true show_facet_count: type: boolean user_count: type: string readOnly: true recipe_count: type: string readOnly: true file_size_mb: type: string readOnly: true image: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 file_download: type: string readOnly: true preview: type: string readOnly: true required: - name nullable: true required: - food_inherit Step: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 instruction: type: string ingredients: type: array items: type: object properties: id: type: integer readOnly: true food: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 description: type: string shopping: type: string readOnly: true recipe: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 url: type: string readOnly: true required: - name nullable: true food_onhand: type: string nullable: true supermarket_category: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 description: type: string nullable: true required: - name nullable: true parent: type: string readOnly: true numchild: type: integer readOnly: true inherit_fields: type: array items: type: object properties: id: type: integer readOnly: true name: type: string nullable: true field: type: string nullable: true nullable: true full_name: type: string readOnly: true ignore_shopping: type: boolean substitute: type: array items: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 required: - name nullable: true substitute_siblings: type: boolean substitute_children: type: boolean substitute_onhand: type: string readOnly: true child_inherit_fields: type: array items: type: object properties: id: type: integer readOnly: true name: type: string nullable: true field: type: string nullable: true nullable: true required: - name nullable: true unit: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 description: type: string nullable: true required: - name nullable: true amount: type: string note: type: string nullable: true maxLength: 256 order: type: integer maximum: 2147483647 minimum: -2147483648 is_header: type: boolean no_amount: type: boolean original_text: type: string nullable: true maxLength: 512 used_in_recipes: type: string readOnly: true required: - food - unit - amount ingredients_markdown: type: string readOnly: true ingredients_vue: type: string readOnly: true time: type: integer maximum: 2147483647 minimum: -2147483648 order: type: integer maximum: 2147483647 minimum: -2147483648 show_as_header: type: boolean file: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 file_download: type: string readOnly: true preview: type: string readOnly: true required: - name nullable: true step_recipe: type: integer nullable: true step_recipe_data: type: string readOnly: true numrecipe: type: string readOnly: true required: - ingredients Storage: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 method: enum: - DB - NEXTCLOUD - LOCAL type: string username: type: string nullable: true maxLength: 128 password: type: string writeOnly: true nullable: true maxLength: 128 token: type: string writeOnly: true nullable: true maxLength: 512 created_by: type: string readOnly: true required: - name Supermarket: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 description: type: string nullable: true category_to_supermarket: type: array items: type: object properties: id: type: integer readOnly: true category: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 description: type: string nullable: true required: - name supermarket: type: integer order: type: integer maximum: 2147483647 minimum: -2147483648 required: - category - supermarket readOnly: true required: - name SupermarketCategory: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 description: type: string nullable: true required: - name SupermarketCategoryRelation: type: object properties: id: type: integer readOnly: true category: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 description: type: string nullable: true required: - name supermarket: type: integer order: type: integer maximum: 2147483647 minimum: -2147483648 required: - category - supermarket Sync: type: object properties: id: type: integer readOnly: true storage: type: integer path: type: string maxLength: 512 active: type: boolean last_checked: type: string format: date-time nullable: true created_at: type: string format: date-time readOnly: true updated_at: type: string format: date-time readOnly: true required: - storage SyncLog: type: object properties: id: type: integer readOnly: true sync: type: integer status: type: string maxLength: 32 msg: type: string created_at: type: string format: date-time readOnly: true required: - sync - status Unit: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 minLength: 1 description: type: string nullable: true required: - name UserFile: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 file: type: string format: binary writeOnly: true file_download: type: string readOnly: true preview: type: string readOnly: true file_size_kb: type: integer readOnly: true required: - name - file User: type: object properties: id: type: integer readOnly: true username: type: string readOnly: true description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only. first_name: type: string maxLength: 150 last_name: type: string maxLength: 150 display_name: type: string readOnly: true UserPreference: type: object properties: user: type: integer image: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 file_download: type: string readOnly: true preview: type: string readOnly: true required: - name nullable: true theme: enum: - TANDOOR - BOOTSTRAP - DARKLY - FLATLY - SUPERHERO type: string nav_color: enum: - PRIMARY - SECONDARY - SUCCESS - INFO - WARNING - DANGER - LIGHT - DARK type: string default_unit: type: string maxLength: 32 default_page: enum: - SEARCH - PLAN - BOOKS type: string use_fractions: type: boolean use_kj: type: boolean plan_share: type: array items: type: object properties: id: type: integer readOnly: true username: type: string readOnly: true description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only. first_name: type: string maxLength: 150 last_name: type: string maxLength: 150 display_name: type: string readOnly: true nullable: true sticky_navbar: type: boolean ingredient_decimals: type: integer maximum: 2147483647 minimum: -2147483648 comments: type: boolean shopping_auto_sync: type: integer maximum: 2147483647 minimum: -2147483648 mealplan_autoadd_shopping: type: boolean food_inherit_default: type: string readOnly: true default_delay: type: string format: decimal multipleOf: 0.0001 maximum: 10000 minimum: -10000 mealplan_autoinclude_related: type: boolean mealplan_autoexclude_onhand: type: boolean shopping_share: type: array items: type: object properties: id: type: integer readOnly: true username: type: string readOnly: true description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only. first_name: type: string maxLength: 150 last_name: type: string maxLength: 150 display_name: type: string readOnly: true nullable: true shopping_recent_days: type: integer maximum: 2147483647 minimum: 0 csv_delim: type: string maxLength: 2 csv_prefix: type: string maxLength: 10 filter_to_supermarket: type: boolean shopping_add_onhand: type: boolean left_handed: type: boolean food_children_exist: type: string readOnly: true required: - user UserSpace: type: object properties: id: type: integer readOnly: true user: type: object properties: id: type: integer readOnly: true username: type: string readOnly: true description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only. first_name: type: string maxLength: 150 last_name: type: string maxLength: 150 display_name: type: string readOnly: true readOnly: true space: type: string readOnly: true groups: type: array items: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 150 required: - name active: type: boolean created_at: type: string format: date-time readOnly: true updated_at: type: string format: date-time readOnly: true required: - groups ViewLog: type: object properties: id: type: integer readOnly: true recipe: type: integer created_by: type: string readOnly: true created_at: type: string format: date-time readOnly: true required: - recipe AccessToken: type: object properties: id: type: integer readOnly: true token: type: string readOnly: true expires: type: string format: date-time scope: type: string created: type: string format: date-time readOnly: true updated: type: string format: date-time readOnly: true required: - expires AuthToken: type: object properties: username: type: string writeOnly: true password: type: string writeOnly: true token: type: string readOnly: true required: - username - password FoodShoppingUpdate: type: object properties: id: type: integer readOnly: true amount: type: integer writeOnly: true nullable: true description: Amount of food to add to the shopping list unit: type: integer writeOnly: true nullable: true description: ID of unit to use for the shopping list delete: enum: - 'true' type: string writeOnly: true nullable: true description: When set to true will delete all food from active shopping lists. required: - delete RecipeImage: type: object properties: image: type: string format: binary nullable: true image_url: type: string nullable: true maxLength: 4096 RecipeShoppingUpdate: type: object properties: id: type: integer readOnly: true list_recipe: type: integer writeOnly: true nullable: true description: Existing shopping list to update ingredients: type: integer writeOnly: true nullable: true description: List of ingredient IDs from the recipe to add, if not provided all ingredients will be added. servings: type: integer writeOnly: true nullable: true default: 1 description: Providing a list_recipe ID and servings of 0 will delete that shopping list.