2025-10-18 05:44:36 +00:00
|
|
|
{
|
|
|
|
|
"openapi": "3.1.0",
|
|
|
|
|
"info": {
|
|
|
|
|
"title": "Doof API",
|
|
|
|
|
"description": "Doof Backend API",
|
|
|
|
|
"version": "1.0.0"
|
|
|
|
|
},
|
|
|
|
|
"paths": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"/api/v1/auth/register": {
|
2025-10-18 07:21:04 +00:00
|
|
|
"post": {
|
|
|
|
|
"tags": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"auth",
|
2025-11-01 06:24:15 +00:00
|
|
|
"auth"
|
2025-10-18 07:21:04 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"summary": "Register",
|
|
|
|
|
"operationId": "register",
|
2025-10-18 07:21:04 +00:00
|
|
|
"requestBody": {
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"$ref": "#/components/schemas/RegisterBody"
|
2025-10-18 07:21:04 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"required": true
|
|
|
|
|
},
|
|
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
|
|
|
|
"description": "Successful Response",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"$ref": "#/components/schemas/TokenResponse"
|
2025-10-18 07:21:04 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"422": {
|
|
|
|
|
"description": "Validation Error",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"/api/v1/auth/login": {
|
|
|
|
|
"post": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"tags": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"auth",
|
2025-11-01 06:24:15 +00:00
|
|
|
"auth"
|
2025-10-18 05:44:36 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"summary": "Login",
|
|
|
|
|
"operationId": "loginV2",
|
|
|
|
|
"requestBody": {
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/LoginBody"
|
|
|
|
|
}
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"required": true
|
|
|
|
|
},
|
2025-10-18 05:44:36 +00:00
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
|
|
|
|
"description": "Successful Response",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
2025-10-19 02:12:28 +00:00
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"$ref": "#/components/schemas/TokenResponse"
|
2025-10-19 02:12:28 +00:00
|
|
|
}
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"422": {
|
|
|
|
|
"description": "Validation Error",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
}
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"/api/v1/auth/refresh": {
|
|
|
|
|
"post": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"tags": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"auth",
|
2025-11-01 06:24:15 +00:00
|
|
|
"auth"
|
2025-10-18 05:44:36 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"summary": "Refresh",
|
|
|
|
|
"operationId": "refreshV2",
|
2025-10-18 05:44:36 +00:00
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
|
|
|
|
"description": "Successful Response",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"$ref": "#/components/schemas/RefreshResponse"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"422": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"$ref": "#/components/responses/Problem422"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"/api/v1/auth/logout": {
|
|
|
|
|
"post": {
|
|
|
|
|
"tags": [
|
|
|
|
|
"auth",
|
2025-11-01 06:24:15 +00:00
|
|
|
"auth"
|
2025-11-01 05:18:46 +00:00
|
|
|
],
|
|
|
|
|
"summary": "Logout",
|
|
|
|
|
"operationId": "logoutV2",
|
|
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
|
|
|
|
"description": "Successful Response",
|
2025-10-18 05:44:36 +00:00
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"schema": {}
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"422": {
|
|
|
|
|
"$ref": "#/components/responses/Problem422"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"/api/v1/users/me/households": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"get": {
|
|
|
|
|
"tags": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"households",
|
|
|
|
|
"households"
|
2025-10-18 05:44:36 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"summary": "List My Households",
|
|
|
|
|
"operationId": "list_my_households_api_v1_users_me_households_get",
|
2025-10-18 05:44:36 +00:00
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"description": "Successful Response",
|
2025-10-18 05:44:36 +00:00
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"items": {
|
|
|
|
|
"$ref": "#/components/schemas/HouseholdResponse"
|
|
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"title": "Response List My Households Api V1 Users Me Households Get"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"422": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"$ref": "#/components/responses/Problem422"
|
|
|
|
|
},
|
|
|
|
|
"403": {
|
|
|
|
|
"$ref": "#/components/responses/Problem403"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"security": [
|
2025-10-18 05:44:36 +00:00
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"bearerAuth": []
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
]
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"/api/v1/households": {
|
|
|
|
|
"post": {
|
|
|
|
|
"tags": [
|
|
|
|
|
"households",
|
|
|
|
|
"households"
|
2025-10-18 05:44:36 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"summary": "Create Household",
|
|
|
|
|
"operationId": "create_household_api_v1_households_post",
|
2025-10-18 05:44:36 +00:00
|
|
|
"requestBody": {
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"$ref": "#/components/schemas/CreateHouseholdBody"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"required": true
|
2025-10-18 05:44:36 +00:00
|
|
|
},
|
|
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
|
|
|
|
"description": "Successful Response",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
2025-10-19 02:12:28 +00:00
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"$ref": "#/components/schemas/HouseholdResponse"
|
2025-10-19 02:12:28 +00:00
|
|
|
}
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"422": {
|
|
|
|
|
"description": "Validation Error",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
}
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"/api/v1/invitations/accept": {
|
|
|
|
|
"post": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"tags": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"households",
|
|
|
|
|
"households"
|
2025-10-18 05:44:36 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"summary": "Accept Invitation",
|
|
|
|
|
"operationId": "accept_invitation_api_v1_invitations_accept_post",
|
|
|
|
|
"requestBody": {
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
2025-11-01 08:20:08 +00:00
|
|
|
"$ref": "#/components/schemas/AcceptInvitationBody"
|
2025-11-01 05:18:46 +00:00
|
|
|
}
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"required": true
|
|
|
|
|
},
|
2025-10-18 05:44:36 +00:00
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
|
|
|
|
"description": "Successful Response",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
2025-11-01 08:20:08 +00:00
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/AcceptInvitationResponse"
|
|
|
|
|
}
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"422": {
|
|
|
|
|
"description": "Validation Error",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"/api/v1/households/{householdSlug}/whoami": {
|
|
|
|
|
"get": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"tags": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"households"
|
2025-10-18 05:44:36 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"summary": "Whoami",
|
|
|
|
|
"operationId": "whoami_api_v1_households__householdSlug__whoami_get",
|
2025-10-18 05:44:36 +00:00
|
|
|
"parameters": [
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"name": "householdSlug",
|
2025-10-18 05:44:36 +00:00
|
|
|
"in": "path",
|
|
|
|
|
"required": true,
|
|
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"type": "string",
|
|
|
|
|
"title": "Householdslug"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
|
|
|
|
"description": "Successful Response",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
2025-10-19 02:12:28 +00:00
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"$ref": "#/components/schemas/WhoAmI"
|
2025-10-19 02:12:28 +00:00
|
|
|
}
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"422": {
|
|
|
|
|
"description": "Validation Error",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"403": {
|
|
|
|
|
"$ref": "#/components/responses/Problem403"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
2025-10-18 07:21:04 +00:00
|
|
|
},
|
|
|
|
|
"security": [
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"bearerAuth": []
|
2025-10-18 07:21:04 +00:00
|
|
|
}
|
|
|
|
|
]
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
},
|
2025-11-01 06:14:18 +00:00
|
|
|
"/api/v1/households/{householdSlug}/members": {
|
|
|
|
|
"get": {
|
|
|
|
|
"tags": [
|
|
|
|
|
"households"
|
|
|
|
|
],
|
|
|
|
|
"summary": "List Members",
|
|
|
|
|
"operationId": "list_members_api_v1_households__householdSlug__members_get",
|
|
|
|
|
"parameters": [
|
|
|
|
|
{
|
|
|
|
|
"name": "householdSlug",
|
|
|
|
|
"in": "path",
|
|
|
|
|
"required": true,
|
|
|
|
|
"schema": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Householdslug"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
|
|
|
|
"description": "Successful Response",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"type": "array",
|
|
|
|
|
"items": {
|
|
|
|
|
"$ref": "#/components/schemas/HouseholdMember"
|
|
|
|
|
},
|
|
|
|
|
"title": "Response List Members Api V1 Households Householdslug Members Get"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"422": {
|
|
|
|
|
"description": "Validation Error",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"403": {
|
|
|
|
|
"$ref": "#/components/responses/Problem403"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"security": [
|
|
|
|
|
{
|
|
|
|
|
"bearerAuth": []
|
|
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
}
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"/api/v1/households/{householdSlug}/invitations": {
|
|
|
|
|
"post": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"tags": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"households"
|
2025-10-18 05:44:36 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"summary": "Create Invitation",
|
|
|
|
|
"operationId": "create_invitation_api_v1_households__householdSlug__invitations_post",
|
2025-10-18 05:44:36 +00:00
|
|
|
"parameters": [
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"name": "householdSlug",
|
|
|
|
|
"in": "path",
|
2025-10-18 05:44:36 +00:00
|
|
|
"required": true,
|
|
|
|
|
"schema": {
|
|
|
|
|
"type": "string",
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Householdslug"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"requestBody": {
|
|
|
|
|
"required": true,
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/CreateInvitationBody"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
2025-10-18 05:44:36 +00:00
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
|
|
|
|
"description": "Successful Response",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"$ref": "#/components/schemas/InvitationResponse"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"422": {
|
|
|
|
|
"description": "Validation Error",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"403": {
|
|
|
|
|
"$ref": "#/components/responses/Problem403"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"security": [
|
|
|
|
|
{
|
|
|
|
|
"bearerAuth": []
|
|
|
|
|
}
|
|
|
|
|
]
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"/api/v1/households/{householdSlug}/recipes": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"get": {
|
|
|
|
|
"tags": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"recipes",
|
2025-11-01 06:11:09 +00:00
|
|
|
"recipes"
|
2025-10-18 05:44:36 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"summary": "List Recipes",
|
|
|
|
|
"operationId": "list_recipes_api_v1_households__householdSlug__recipes_get",
|
2025-10-18 05:44:36 +00:00
|
|
|
"parameters": [
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"name": "householdSlug",
|
2025-10-18 05:44:36 +00:00
|
|
|
"in": "path",
|
|
|
|
|
"required": true,
|
2025-11-01 05:18:46 +00:00
|
|
|
"schema": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Householdslug"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"name": "q",
|
|
|
|
|
"in": "query",
|
|
|
|
|
"required": false,
|
|
|
|
|
"schema": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "string"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"title": "Q"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"name": "cursor",
|
|
|
|
|
"in": "query",
|
|
|
|
|
"required": false,
|
|
|
|
|
"schema": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "string"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"title": "Cursor"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"name": "limit",
|
|
|
|
|
"in": "query",
|
|
|
|
|
"required": false,
|
2025-10-18 05:44:36 +00:00
|
|
|
"schema": {
|
|
|
|
|
"type": "integer",
|
2025-11-01 05:18:46 +00:00
|
|
|
"maximum": 200,
|
|
|
|
|
"minimum": 1,
|
|
|
|
|
"default": 50,
|
|
|
|
|
"title": "Limit"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
|
|
|
|
"description": "Successful Response",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
2025-10-18 07:21:04 +00:00
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"$ref": "#/components/schemas/Page_RecipeOut_"
|
2025-10-18 07:21:04 +00:00
|
|
|
}
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"422": {
|
|
|
|
|
"description": "Validation Error",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"403": {
|
|
|
|
|
"$ref": "#/components/responses/Problem403"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"security": [
|
|
|
|
|
{
|
|
|
|
|
"bearerAuth": []
|
|
|
|
|
}
|
|
|
|
|
]
|
2025-10-18 05:44:36 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"post": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"tags": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"recipes",
|
2025-11-01 06:11:09 +00:00
|
|
|
"recipes"
|
2025-10-18 05:44:36 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"summary": "Create Recipe",
|
|
|
|
|
"operationId": "create_recipe_api_v1_households__householdSlug__recipes_post",
|
2025-10-18 05:44:36 +00:00
|
|
|
"parameters": [
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"name": "householdSlug",
|
2025-10-18 05:44:36 +00:00
|
|
|
"in": "path",
|
|
|
|
|
"required": true,
|
|
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"type": "string",
|
|
|
|
|
"title": "Householdslug"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"requestBody": {
|
|
|
|
|
"required": true,
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"$ref": "#/components/schemas/RecipeCreate"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
|
|
|
|
"description": "Successful Response",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
2025-10-18 07:21:04 +00:00
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"$ref": "#/components/schemas/RecipeOut"
|
2025-10-18 07:21:04 +00:00
|
|
|
}
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"400": {
|
|
|
|
|
"$ref": "#/components/responses/Problem400"
|
|
|
|
|
},
|
|
|
|
|
"422": {
|
|
|
|
|
"description": "Validation Error",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"403": {
|
|
|
|
|
"$ref": "#/components/responses/Problem403"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"security": [
|
|
|
|
|
{
|
|
|
|
|
"bearerAuth": []
|
|
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"/api/v1/households/{householdSlug}/recipes/{recipe_id}": {
|
|
|
|
|
"get": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"tags": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"recipes",
|
2025-11-01 06:11:09 +00:00
|
|
|
"recipes"
|
2025-10-18 05:44:36 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"summary": "Get Recipe",
|
|
|
|
|
"operationId": "get_recipe_api_v1_households__householdSlug__recipes__recipe_id__get",
|
2025-10-18 05:44:36 +00:00
|
|
|
"parameters": [
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"name": "recipe_id",
|
2025-10-18 05:44:36 +00:00
|
|
|
"in": "path",
|
|
|
|
|
"required": true,
|
|
|
|
|
"schema": {
|
|
|
|
|
"type": "integer",
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Recipe Id"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"name": "householdSlug",
|
|
|
|
|
"in": "path",
|
2025-10-18 05:44:36 +00:00
|
|
|
"required": true,
|
|
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"type": "string",
|
|
|
|
|
"title": "Householdslug"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
|
|
|
|
"description": "Successful Response",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
2025-10-18 07:21:04 +00:00
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"$ref": "#/components/schemas/RecipeOut"
|
2025-10-18 07:21:04 +00:00
|
|
|
}
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"404": {
|
|
|
|
|
"$ref": "#/components/responses/Problem404"
|
|
|
|
|
},
|
|
|
|
|
"422": {
|
|
|
|
|
"description": "Validation Error",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"403": {
|
|
|
|
|
"$ref": "#/components/responses/Problem403"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
2025-10-18 07:21:04 +00:00
|
|
|
},
|
|
|
|
|
"security": [
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"bearerAuth": []
|
2025-10-18 07:21:04 +00:00
|
|
|
}
|
|
|
|
|
]
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"delete": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"tags": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"recipes",
|
2025-11-01 06:11:09 +00:00
|
|
|
"recipes"
|
2025-10-18 05:44:36 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"summary": "Delete Recipe",
|
|
|
|
|
"operationId": "delete_recipe_api_v1_households__householdSlug__recipes__recipe_id__delete",
|
|
|
|
|
"parameters": [
|
|
|
|
|
{
|
|
|
|
|
"name": "recipe_id",
|
|
|
|
|
"in": "path",
|
|
|
|
|
"required": true,
|
|
|
|
|
"schema": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Recipe Id"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
{
|
|
|
|
|
"name": "householdSlug",
|
|
|
|
|
"in": "path",
|
|
|
|
|
"required": true,
|
|
|
|
|
"schema": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Householdslug"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
],
|
2025-10-18 05:44:36 +00:00
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
|
|
|
|
"description": "Successful Response",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
2025-10-18 07:21:04 +00:00
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"$ref": "#/components/schemas/RecipeOut"
|
2025-10-18 07:21:04 +00:00
|
|
|
}
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"404": {
|
|
|
|
|
"$ref": "#/components/responses/Problem404"
|
2025-10-18 05:44:36 +00:00
|
|
|
},
|
|
|
|
|
"422": {
|
|
|
|
|
"description": "Validation Error",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"403": {
|
|
|
|
|
"$ref": "#/components/responses/Problem403"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"security": [
|
|
|
|
|
{
|
|
|
|
|
"bearerAuth": []
|
|
|
|
|
}
|
|
|
|
|
]
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"/api/v1/households/{householdSlug}/meals/upcoming": {
|
|
|
|
|
"get": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"tags": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"meals",
|
2025-11-01 06:11:09 +00:00
|
|
|
"meals"
|
2025-10-18 05:44:36 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"summary": "List upcoming meals in a date range (scoped)",
|
|
|
|
|
"operationId": "getUpcomingMealsV2",
|
2025-10-18 05:44:36 +00:00
|
|
|
"parameters": [
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"name": "householdSlug",
|
2025-10-18 05:44:36 +00:00
|
|
|
"in": "path",
|
|
|
|
|
"required": true,
|
|
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"type": "string",
|
|
|
|
|
"title": "Householdslug"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"name": "from",
|
2025-10-18 05:44:36 +00:00
|
|
|
"in": "query",
|
2025-11-01 05:18:46 +00:00
|
|
|
"required": true,
|
2025-10-18 05:44:36 +00:00
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"type": "string",
|
|
|
|
|
"format": "date-time",
|
|
|
|
|
"title": "From"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"name": "to",
|
|
|
|
|
"in": "query",
|
2025-10-18 05:44:36 +00:00
|
|
|
"required": true,
|
|
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"type": "string",
|
|
|
|
|
"format": "date-time",
|
|
|
|
|
"title": "To"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
|
|
|
|
"description": "Successful Response",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
2025-10-18 07:21:04 +00:00
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"type": "array",
|
|
|
|
|
"items": {
|
2025-11-01 05:58:34 +00:00
|
|
|
"$ref": "#/components/schemas/MealOut"
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"title": "Response Getupcomingmealsv2"
|
2025-10-18 07:21:04 +00:00
|
|
|
}
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"422": {
|
|
|
|
|
"description": "Validation Error",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"403": {
|
|
|
|
|
"$ref": "#/components/responses/Problem403"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
2025-10-18 07:21:04 +00:00
|
|
|
},
|
|
|
|
|
"security": [
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"bearerAuth": []
|
2025-10-18 07:21:04 +00:00
|
|
|
}
|
|
|
|
|
]
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"/api/v1/households/{householdSlug}/meals/{meal_id}": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"get": {
|
|
|
|
|
"tags": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"meals",
|
2025-11-01 06:11:09 +00:00
|
|
|
"meals"
|
2025-10-18 05:44:36 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"summary": "Get a meal by id (scoped)",
|
|
|
|
|
"operationId": "getMealV2",
|
2025-10-18 05:44:36 +00:00
|
|
|
"parameters": [
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"name": "meal_id",
|
2025-10-18 05:44:36 +00:00
|
|
|
"in": "path",
|
|
|
|
|
"required": true,
|
|
|
|
|
"schema": {
|
|
|
|
|
"type": "integer",
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Meal Id"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"name": "householdSlug",
|
|
|
|
|
"in": "path",
|
|
|
|
|
"required": true,
|
|
|
|
|
"schema": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Householdslug"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
|
|
|
|
"description": "Successful Response",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
2025-11-01 05:58:34 +00:00
|
|
|
"$ref": "#/components/schemas/MealOut"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"404": {
|
|
|
|
|
"$ref": "#/components/responses/Problem404"
|
|
|
|
|
},
|
|
|
|
|
"422": {
|
|
|
|
|
"description": "Validation Error",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"403": {
|
|
|
|
|
"$ref": "#/components/responses/Problem403"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"security": [
|
|
|
|
|
{
|
|
|
|
|
"bearerAuth": []
|
|
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
},
|
|
|
|
|
"put": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"tags": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"meals",
|
2025-11-01 06:11:09 +00:00
|
|
|
"meals"
|
2025-10-18 05:44:36 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"summary": "Update an existing meal (scoped)",
|
|
|
|
|
"operationId": "updateMealV2",
|
2025-10-18 05:44:36 +00:00
|
|
|
"parameters": [
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"name": "meal_id",
|
|
|
|
|
"in": "path",
|
2025-10-18 05:44:36 +00:00
|
|
|
"required": true,
|
|
|
|
|
"schema": {
|
|
|
|
|
"type": "integer",
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Meal Id"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"name": "householdSlug",
|
|
|
|
|
"in": "path",
|
|
|
|
|
"required": true,
|
|
|
|
|
"schema": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Householdslug"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"requestBody": {
|
|
|
|
|
"required": true,
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
2025-11-01 05:58:34 +00:00
|
|
|
"$ref": "#/components/schemas/MealIn"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
|
|
|
|
"description": "Successful Response",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
2025-11-01 05:58:34 +00:00
|
|
|
"$ref": "#/components/schemas/MealOut"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
2025-10-19 13:12:16 +00:00
|
|
|
"400": {
|
|
|
|
|
"$ref": "#/components/responses/Problem400"
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"404": {
|
|
|
|
|
"$ref": "#/components/responses/Problem404"
|
2025-10-19 13:12:16 +00:00
|
|
|
},
|
2025-10-18 05:44:36 +00:00
|
|
|
"422": {
|
|
|
|
|
"description": "Validation Error",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"403": {
|
|
|
|
|
"$ref": "#/components/responses/Problem403"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
2025-10-18 07:21:04 +00:00
|
|
|
},
|
|
|
|
|
"security": [
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"bearerAuth": []
|
2025-10-18 07:21:04 +00:00
|
|
|
}
|
|
|
|
|
]
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"delete": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"tags": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"meals",
|
2025-11-01 06:11:09 +00:00
|
|
|
"meals"
|
2025-10-18 05:44:36 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"summary": "Delete a meal (scoped)",
|
|
|
|
|
"operationId": "deleteMealV2",
|
2025-10-18 05:44:36 +00:00
|
|
|
"parameters": [
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"name": "meal_id",
|
|
|
|
|
"in": "path",
|
2025-10-18 05:44:36 +00:00
|
|
|
"required": true,
|
|
|
|
|
"schema": {
|
|
|
|
|
"type": "integer",
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Meal Id"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"name": "householdSlug",
|
|
|
|
|
"in": "path",
|
|
|
|
|
"required": true,
|
|
|
|
|
"schema": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Householdslug"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
|
|
|
|
"description": "Successful Response",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
2025-11-01 05:58:34 +00:00
|
|
|
"$ref": "#/components/schemas/MealOut"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"404": {
|
|
|
|
|
"$ref": "#/components/responses/Problem404"
|
|
|
|
|
},
|
2025-10-18 05:44:36 +00:00
|
|
|
"422": {
|
|
|
|
|
"description": "Validation Error",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"403": {
|
|
|
|
|
"$ref": "#/components/responses/Problem403"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
2025-10-18 07:21:04 +00:00
|
|
|
},
|
|
|
|
|
"security": [
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"bearerAuth": []
|
2025-10-18 07:21:04 +00:00
|
|
|
}
|
|
|
|
|
]
|
2025-11-01 05:18:46 +00:00
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"/api/v1/households/{householdSlug}/meals/{meal_id}/consumed": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"post": {
|
|
|
|
|
"tags": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"meals",
|
2025-11-01 06:11:09 +00:00
|
|
|
"meals"
|
2025-10-18 05:44:36 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"summary": "Mark a meal as consumed (scoped)",
|
|
|
|
|
"operationId": "markMealConsumedV2",
|
2025-10-18 05:44:36 +00:00
|
|
|
"parameters": [
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"name": "meal_id",
|
|
|
|
|
"in": "path",
|
2025-10-18 05:44:36 +00:00
|
|
|
"required": true,
|
|
|
|
|
"schema": {
|
|
|
|
|
"type": "integer",
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Meal Id"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"name": "householdSlug",
|
|
|
|
|
"in": "path",
|
|
|
|
|
"required": true,
|
|
|
|
|
"schema": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Householdslug"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"requestBody": {
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"$ref": "#/components/schemas/MarkConsumedBody"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"title": "Body"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
|
|
|
|
"description": "Successful Response",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
2025-11-01 05:58:34 +00:00
|
|
|
"$ref": "#/components/schemas/MealOut"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"400": {
|
|
|
|
|
"$ref": "#/components/responses/Problem400"
|
|
|
|
|
},
|
|
|
|
|
"404": {
|
|
|
|
|
"$ref": "#/components/responses/Problem404"
|
|
|
|
|
},
|
2025-10-18 05:44:36 +00:00
|
|
|
"422": {
|
|
|
|
|
"description": "Validation Error",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"403": {
|
|
|
|
|
"$ref": "#/components/responses/Problem403"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
2025-10-18 07:21:04 +00:00
|
|
|
},
|
|
|
|
|
"security": [
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"bearerAuth": []
|
2025-10-18 07:21:04 +00:00
|
|
|
}
|
|
|
|
|
]
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"/api/v1/households/{householdSlug}/meals": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"post": {
|
|
|
|
|
"tags": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"meals",
|
2025-11-01 06:11:09 +00:00
|
|
|
"meals"
|
2025-10-18 05:44:36 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"summary": "Create a new meal (scoped)",
|
|
|
|
|
"operationId": "createMealV2",
|
2025-10-18 05:44:36 +00:00
|
|
|
"parameters": [
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"name": "householdSlug",
|
|
|
|
|
"in": "path",
|
2025-10-18 05:44:36 +00:00
|
|
|
"required": true,
|
|
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"type": "string",
|
|
|
|
|
"title": "Householdslug"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"requestBody": {
|
|
|
|
|
"required": true,
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
2025-11-01 05:58:34 +00:00
|
|
|
"$ref": "#/components/schemas/MealIn"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
|
|
|
|
"description": "Successful Response",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
2025-10-19 09:24:23 +00:00
|
|
|
"schema": {
|
2025-11-01 05:58:34 +00:00
|
|
|
"$ref": "#/components/schemas/MealOut"
|
2025-10-19 09:24:23 +00:00
|
|
|
}
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"400": {
|
|
|
|
|
"$ref": "#/components/responses/Problem400"
|
2025-10-18 05:44:36 +00:00
|
|
|
},
|
|
|
|
|
"422": {
|
|
|
|
|
"description": "Validation Error",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"403": {
|
|
|
|
|
"$ref": "#/components/responses/Problem403"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
2025-10-18 07:21:04 +00:00
|
|
|
},
|
|
|
|
|
"security": [
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"bearerAuth": []
|
2025-10-18 07:21:04 +00:00
|
|
|
}
|
|
|
|
|
]
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"/api/v1/households/{householdSlug}/shopping/current": {
|
|
|
|
|
"get": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"tags": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"shopping",
|
2025-11-01 06:11:09 +00:00
|
|
|
"shopping"
|
2025-10-18 05:44:36 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"summary": "Get the current aggregated shopping list (scoped)",
|
|
|
|
|
"operationId": "getCurrentShoppingListV2",
|
2025-10-18 05:44:36 +00:00
|
|
|
"parameters": [
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"name": "householdSlug",
|
2025-10-18 05:44:36 +00:00
|
|
|
"in": "path",
|
|
|
|
|
"required": true,
|
|
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"type": "string",
|
|
|
|
|
"title": "Householdslug"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
|
|
|
|
"description": "Successful Response",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
2025-10-19 09:24:23 +00:00
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"$ref": "#/components/schemas/CurrentShoppingList"
|
2025-10-19 09:24:23 +00:00
|
|
|
}
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"422": {
|
|
|
|
|
"description": "Validation Error",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"403": {
|
|
|
|
|
"$ref": "#/components/responses/Problem403"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
2025-10-18 07:21:04 +00:00
|
|
|
},
|
|
|
|
|
"security": [
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"bearerAuth": []
|
2025-10-18 07:21:04 +00:00
|
|
|
}
|
|
|
|
|
]
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"/api/v1/households/{householdSlug}/shopping/{list_id}": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"get": {
|
|
|
|
|
"tags": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"shopping",
|
2025-11-01 06:11:09 +00:00
|
|
|
"shopping"
|
2025-10-18 05:44:36 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"summary": "Get a purchased shopping list by id (scoped)",
|
|
|
|
|
"operationId": "getShoppingListV2",
|
2025-10-18 05:44:36 +00:00
|
|
|
"parameters": [
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"name": "list_id",
|
|
|
|
|
"in": "path",
|
|
|
|
|
"required": true,
|
2025-10-18 05:44:36 +00:00
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"type": "integer",
|
|
|
|
|
"title": "List Id"
|
|
|
|
|
}
|
2025-10-18 05:44:36 +00:00
|
|
|
},
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"name": "householdSlug",
|
|
|
|
|
"in": "path",
|
|
|
|
|
"required": true,
|
2025-10-18 05:44:36 +00:00
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"type": "string",
|
|
|
|
|
"title": "Householdslug"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
|
|
|
|
"description": "Successful Response",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/PurchasedShoppingList"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"422": {
|
|
|
|
|
"description": "Validation Error",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"403": {
|
|
|
|
|
"$ref": "#/components/responses/Problem403"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"security": [
|
|
|
|
|
{
|
|
|
|
|
"bearerAuth": []
|
|
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"/api/v1/households/{householdSlug}/shopping": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"post": {
|
|
|
|
|
"tags": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"shopping",
|
2025-11-01 06:11:09 +00:00
|
|
|
"shopping"
|
2025-11-01 05:18:46 +00:00
|
|
|
],
|
|
|
|
|
"summary": "Purchase ingredients for a shopping list (scoped)",
|
|
|
|
|
"operationId": "purchaseIngredientsV2",
|
|
|
|
|
"parameters": [
|
|
|
|
|
{
|
|
|
|
|
"name": "householdSlug",
|
|
|
|
|
"in": "path",
|
|
|
|
|
"required": true,
|
|
|
|
|
"schema": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Householdslug"
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-10-18 05:44:36 +00:00
|
|
|
],
|
|
|
|
|
"requestBody": {
|
|
|
|
|
"required": true,
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"$ref": "#/components/schemas/PurchaseListIn"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
|
|
|
|
"description": "Successful Response",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"$ref": "#/components/schemas/PurchasedShoppingList"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"422": {
|
|
|
|
|
"description": "Validation Error",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"403": {
|
|
|
|
|
"$ref": "#/components/responses/Problem403"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"security": [
|
|
|
|
|
{
|
|
|
|
|
"bearerAuth": []
|
|
|
|
|
}
|
|
|
|
|
]
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"/api/v1/households/{householdSlug}/shopping/current/meals/me": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"post": {
|
|
|
|
|
"tags": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"shopping",
|
2025-11-01 06:11:09 +00:00
|
|
|
"shopping"
|
2025-11-01 05:18:46 +00:00
|
|
|
],
|
|
|
|
|
"summary": "Request a meal for shopping (scoped)",
|
|
|
|
|
"operationId": "requestMealV2",
|
|
|
|
|
"parameters": [
|
|
|
|
|
{
|
|
|
|
|
"name": "householdSlug",
|
|
|
|
|
"in": "path",
|
|
|
|
|
"required": true,
|
|
|
|
|
"schema": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Householdslug"
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-10-18 05:44:36 +00:00
|
|
|
],
|
|
|
|
|
"requestBody": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"required": true,
|
2025-10-18 05:44:36 +00:00
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"$ref": "#/components/schemas/MealIdWrapper"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
}
|
2025-10-18 05:44:36 +00:00
|
|
|
},
|
|
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
|
|
|
|
"description": "Successful Response",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
2025-10-19 09:24:23 +00:00
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"$ref": "#/components/schemas/RequestedMealItem"
|
2025-10-19 09:24:23 +00:00
|
|
|
}
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"422": {
|
|
|
|
|
"description": "Validation Error",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"403": {
|
|
|
|
|
"$ref": "#/components/responses/Problem403"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"security": [
|
|
|
|
|
{
|
|
|
|
|
"bearerAuth": []
|
|
|
|
|
}
|
|
|
|
|
]
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"/api/v1/households/{householdSlug}/shopping/current/meals/{meal_id}": {
|
|
|
|
|
"delete": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"tags": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"shopping",
|
2025-11-01 06:11:09 +00:00
|
|
|
"shopping"
|
2025-11-01 04:29:48 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"summary": "Remove a meal request (scoped)",
|
|
|
|
|
"operationId": "unrequestMealV2",
|
2025-11-01 04:29:48 +00:00
|
|
|
"parameters": [
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"name": "meal_id",
|
|
|
|
|
"in": "path",
|
2025-11-01 04:29:48 +00:00
|
|
|
"required": true,
|
|
|
|
|
"schema": {
|
|
|
|
|
"type": "integer",
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Meal Id"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"name": "householdSlug",
|
|
|
|
|
"in": "path",
|
|
|
|
|
"required": true,
|
|
|
|
|
"schema": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Householdslug"
|
2025-11-01 04:29:48 +00:00
|
|
|
}
|
|
|
|
|
}
|
2025-10-18 05:44:36 +00:00
|
|
|
],
|
|
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
|
|
|
|
"description": "Successful Response",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"$ref": "#/components/schemas/Ok"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"422": {
|
2025-11-01 04:29:48 +00:00
|
|
|
"description": "Validation Error",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"403": {
|
|
|
|
|
"$ref": "#/components/responses/Problem403"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
2025-10-18 07:21:04 +00:00
|
|
|
},
|
|
|
|
|
"security": [
|
|
|
|
|
{
|
2025-11-01 05:18:46 +00:00
|
|
|
"bearerAuth": []
|
2025-10-18 07:21:04 +00:00
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
}
|
|
|
|
|
},
|
2025-11-01 07:16:38 +00:00
|
|
|
"/api/v1/households/{householdSlug}/shopping/current/ingredients": {
|
|
|
|
|
"post": {
|
|
|
|
|
"tags": [
|
|
|
|
|
"shopping",
|
|
|
|
|
"shopping"
|
|
|
|
|
],
|
|
|
|
|
"summary": "Request an ingredient for shopping (scoped)",
|
|
|
|
|
"operationId": "requestIngredientV2",
|
|
|
|
|
"parameters": [
|
|
|
|
|
{
|
|
|
|
|
"name": "householdSlug",
|
|
|
|
|
"in": "path",
|
|
|
|
|
"required": true,
|
|
|
|
|
"schema": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Householdslug"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"requestBody": {
|
|
|
|
|
"required": true,
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/IngredientIdWrapper"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
|
|
|
|
"description": "Successful Response",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/ListIngredientItem"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"422": {
|
|
|
|
|
"description": "Validation Error",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"403": {
|
|
|
|
|
"$ref": "#/components/responses/Problem403"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"security": [
|
|
|
|
|
{
|
|
|
|
|
"bearerAuth": []
|
|
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
}
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"/healthz": {
|
|
|
|
|
"get": {
|
|
|
|
|
"summary": "Healthz",
|
|
|
|
|
"operationId": "healthz_healthz_get",
|
2025-11-01 02:44:00 +00:00
|
|
|
"responses": {
|
|
|
|
|
"200": {
|
|
|
|
|
"description": "Successful Response",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"$ref": "#/components/schemas/HealthStatus"
|
2025-11-01 02:44:00 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-11-01 05:18:46 +00:00
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"components": {
|
|
|
|
|
"schemas": {
|
2025-11-01 08:20:08 +00:00
|
|
|
"AcceptInvitationBody": {
|
|
|
|
|
"properties": {
|
|
|
|
|
"token": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Token"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"token"
|
|
|
|
|
],
|
|
|
|
|
"title": "AcceptInvitationBody"
|
|
|
|
|
},
|
|
|
|
|
"AcceptInvitationResponse": {
|
|
|
|
|
"properties": {
|
|
|
|
|
"status": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Status",
|
|
|
|
|
"default": "accepted"
|
|
|
|
|
},
|
|
|
|
|
"household": {
|
|
|
|
|
"$ref": "#/components/schemas/HouseholdResponse"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"household"
|
|
|
|
|
],
|
|
|
|
|
"title": "AcceptInvitationResponse"
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"CreateHouseholdBody": {
|
|
|
|
|
"properties": {
|
|
|
|
|
"name": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Name"
|
2025-11-01 04:29:48 +00:00
|
|
|
}
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"name"
|
2025-11-01 02:44:00 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "CreateHouseholdBody"
|
|
|
|
|
},
|
|
|
|
|
"CreateInvitationBody": {
|
|
|
|
|
"properties": {
|
|
|
|
|
"email": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Email"
|
2025-11-01 04:03:27 +00:00
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"email"
|
|
|
|
|
],
|
|
|
|
|
"title": "CreateInvitationBody"
|
|
|
|
|
},
|
|
|
|
|
"CurrentShoppingList": {
|
|
|
|
|
"properties": {
|
|
|
|
|
"outstandingItems": {
|
|
|
|
|
"items": {
|
|
|
|
|
"$ref": "#/components/schemas/ListIngredientItem"
|
|
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"minItems": 0,
|
|
|
|
|
"title": "Outstandingitems"
|
|
|
|
|
},
|
|
|
|
|
"requestedMeals": {
|
|
|
|
|
"items": {
|
|
|
|
|
"$ref": "#/components/schemas/RequestedMealItem"
|
|
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"minItems": 0,
|
|
|
|
|
"title": "Requestedmeals"
|
|
|
|
|
},
|
|
|
|
|
"purchasedItems": {
|
|
|
|
|
"items": {
|
|
|
|
|
"$ref": "#/components/schemas/ListIngredientItem"
|
|
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"minItems": 0,
|
|
|
|
|
"title": "Purchaseditems"
|
|
|
|
|
},
|
|
|
|
|
"ingredientsLookup": {
|
|
|
|
|
"additionalProperties": {
|
|
|
|
|
"$ref": "#/components/schemas/Ingredient"
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"title": "Ingredientslookup"
|
|
|
|
|
},
|
|
|
|
|
"mealsLookup": {
|
|
|
|
|
"additionalProperties": {
|
2025-11-01 05:58:34 +00:00
|
|
|
"$ref": "#/components/schemas/Meal"
|
2025-11-01 04:03:27 +00:00
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"title": "Mealslookup"
|
|
|
|
|
},
|
|
|
|
|
"shoppingListLookup": {
|
|
|
|
|
"additionalProperties": {
|
|
|
|
|
"$ref": "#/components/schemas/ShoppingListOut"
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"title": "Shoppinglistlookup"
|
|
|
|
|
},
|
|
|
|
|
"recipesLookup": {
|
|
|
|
|
"additionalProperties": {
|
2025-11-01 05:58:34 +00:00
|
|
|
"$ref": "#/components/schemas/Recipe"
|
2025-11-01 04:03:27 +00:00
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"title": "Recipeslookup"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"outstandingItems",
|
|
|
|
|
"requestedMeals",
|
|
|
|
|
"purchasedItems",
|
|
|
|
|
"ingredientsLookup",
|
|
|
|
|
"mealsLookup",
|
|
|
|
|
"shoppingListLookup",
|
|
|
|
|
"recipesLookup"
|
|
|
|
|
],
|
|
|
|
|
"title": "CurrentShoppingList"
|
|
|
|
|
},
|
|
|
|
|
"HTTPValidationError": {
|
|
|
|
|
"properties": {
|
|
|
|
|
"detail": {
|
|
|
|
|
"items": {
|
|
|
|
|
"$ref": "#/components/schemas/ValidationError"
|
|
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"title": "Detail"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"title": "HTTPValidationError"
|
|
|
|
|
},
|
|
|
|
|
"HealthStatus": {
|
|
|
|
|
"properties": {
|
|
|
|
|
"status": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Status",
|
|
|
|
|
"default": "ok"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"title": "HealthStatus"
|
|
|
|
|
},
|
2025-11-01 06:14:18 +00:00
|
|
|
"HouseholdMember": {
|
|
|
|
|
"properties": {
|
|
|
|
|
"id": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Id"
|
|
|
|
|
},
|
|
|
|
|
"displayName": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Displayname"
|
|
|
|
|
},
|
|
|
|
|
"role": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Role"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"id",
|
|
|
|
|
"displayName",
|
|
|
|
|
"role"
|
|
|
|
|
],
|
|
|
|
|
"title": "HouseholdMember"
|
|
|
|
|
},
|
2025-11-01 04:03:27 +00:00
|
|
|
"HouseholdResponse": {
|
|
|
|
|
"properties": {
|
|
|
|
|
"id": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Id"
|
|
|
|
|
},
|
|
|
|
|
"name": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Name"
|
|
|
|
|
},
|
|
|
|
|
"slug": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Slug"
|
2025-11-01 02:44:00 +00:00
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"id",
|
|
|
|
|
"name",
|
|
|
|
|
"slug"
|
|
|
|
|
],
|
|
|
|
|
"title": "HouseholdResponse"
|
|
|
|
|
},
|
2025-10-18 05:44:36 +00:00
|
|
|
"Ingredient": {
|
|
|
|
|
"properties": {
|
|
|
|
|
"id": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Id",
|
|
|
|
|
"default": -1
|
|
|
|
|
},
|
|
|
|
|
"name": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Name"
|
|
|
|
|
},
|
|
|
|
|
"line": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Line"
|
|
|
|
|
},
|
|
|
|
|
"unit": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"enum": [
|
|
|
|
|
"Items",
|
|
|
|
|
"Litre",
|
|
|
|
|
"Gram",
|
|
|
|
|
"Cup",
|
|
|
|
|
"Tablespoon",
|
|
|
|
|
"Teaspoon",
|
|
|
|
|
"Ounce",
|
|
|
|
|
"Pound",
|
|
|
|
|
"Fluid Ounce",
|
|
|
|
|
"Pint",
|
|
|
|
|
"Quart",
|
|
|
|
|
"Gallon",
|
|
|
|
|
"Millilitre",
|
|
|
|
|
"Milligram",
|
|
|
|
|
"Kilogram"
|
|
|
|
|
],
|
|
|
|
|
"title": "Unit",
|
|
|
|
|
"description": "Measurement unit (enum values are advisory; runtime accepts any string)"
|
|
|
|
|
},
|
|
|
|
|
"quantity": {
|
2025-10-19 09:24:23 +00:00
|
|
|
"type": "number",
|
2025-10-18 05:44:36 +00:00
|
|
|
"title": "Quantity"
|
|
|
|
|
},
|
|
|
|
|
"preparation": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Preparation"
|
|
|
|
|
},
|
|
|
|
|
"productId": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "integer"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"title": "Productid"
|
|
|
|
|
},
|
|
|
|
|
"recipeId": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "integer"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"title": "Recipeid"
|
|
|
|
|
},
|
|
|
|
|
"mealId": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "integer"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"title": "Mealid"
|
|
|
|
|
},
|
|
|
|
|
"product": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"$ref": "#/components/schemas/Product"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"name",
|
|
|
|
|
"line",
|
|
|
|
|
"unit",
|
|
|
|
|
"quantity",
|
|
|
|
|
"preparation"
|
|
|
|
|
],
|
|
|
|
|
"title": "Ingredient"
|
|
|
|
|
},
|
2025-11-01 07:16:38 +00:00
|
|
|
"IngredientIdWrapper": {
|
|
|
|
|
"properties": {
|
|
|
|
|
"ingredientId": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Ingredientid"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"ingredientId"
|
|
|
|
|
],
|
|
|
|
|
"title": "IngredientIdWrapper"
|
|
|
|
|
},
|
2025-10-26 04:14:05 +00:00
|
|
|
"IngredientPurchaseItemIn": {
|
|
|
|
|
"properties": {
|
|
|
|
|
"ingredientId": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Ingredientid"
|
|
|
|
|
},
|
|
|
|
|
"personId": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Personid"
|
|
|
|
|
},
|
|
|
|
|
"createdDate": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "string",
|
|
|
|
|
"format": "date-time"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"title": "Createddate"
|
|
|
|
|
},
|
|
|
|
|
"mealId": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "integer"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"title": "Mealid"
|
|
|
|
|
},
|
|
|
|
|
"recipeId": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "integer"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"title": "Recipeid"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"ingredientId",
|
|
|
|
|
"personId"
|
|
|
|
|
],
|
|
|
|
|
"title": "IngredientPurchaseItemIn"
|
|
|
|
|
},
|
2025-11-01 04:03:27 +00:00
|
|
|
"InvitationResponse": {
|
|
|
|
|
"properties": {
|
|
|
|
|
"token": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Token"
|
|
|
|
|
},
|
|
|
|
|
"status": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Status",
|
|
|
|
|
"default": "pending"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"token"
|
|
|
|
|
],
|
|
|
|
|
"title": "InvitationResponse"
|
|
|
|
|
},
|
2025-10-26 04:14:05 +00:00
|
|
|
"ListIngredientItem": {
|
|
|
|
|
"properties": {
|
|
|
|
|
"kind": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"enum": [
|
|
|
|
|
"ingredient"
|
|
|
|
|
],
|
|
|
|
|
"const": "ingredient",
|
|
|
|
|
"title": "Kind",
|
|
|
|
|
"default": "ingredient"
|
|
|
|
|
},
|
|
|
|
|
"id": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Id",
|
|
|
|
|
"default": -1
|
|
|
|
|
},
|
|
|
|
|
"ingredientId": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Ingredientid"
|
|
|
|
|
},
|
|
|
|
|
"personId": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Personid"
|
|
|
|
|
},
|
|
|
|
|
"createdDate": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"format": "date-time",
|
|
|
|
|
"title": "Createddate"
|
|
|
|
|
},
|
|
|
|
|
"listId": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "integer"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"title": "Listid"
|
|
|
|
|
},
|
|
|
|
|
"mealId": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "integer"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"title": "Mealid"
|
|
|
|
|
},
|
|
|
|
|
"recipeId": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "integer"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"title": "Recipeid"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"ingredientId",
|
|
|
|
|
"personId",
|
|
|
|
|
"createdDate"
|
|
|
|
|
],
|
|
|
|
|
"title": "ListIngredientItem"
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"LoginBody": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"properties": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"email": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"type": "string",
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Email"
|
2025-10-18 05:44:36 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"password": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Password"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"email",
|
|
|
|
|
"password"
|
|
|
|
|
],
|
|
|
|
|
"title": "LoginBody"
|
|
|
|
|
},
|
|
|
|
|
"MarkConsumedBody": {
|
|
|
|
|
"properties": {
|
|
|
|
|
"consumedDate": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "string",
|
|
|
|
|
"format": "date-time"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Consumeddate"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "MarkConsumedBody"
|
2025-10-18 05:44:36 +00:00
|
|
|
},
|
2025-11-01 05:58:34 +00:00
|
|
|
"Meal": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"properties": {
|
|
|
|
|
"id": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Id",
|
|
|
|
|
"default": -1
|
|
|
|
|
},
|
|
|
|
|
"suggestedDate": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"format": "date-time",
|
|
|
|
|
"title": "Suggesteddate"
|
|
|
|
|
},
|
|
|
|
|
"consumedDate": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "string",
|
|
|
|
|
"format": "date-time"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"title": "Consumeddate"
|
|
|
|
|
},
|
|
|
|
|
"chefs": {
|
|
|
|
|
"items": {
|
|
|
|
|
"$ref": "#/components/schemas/Person"
|
|
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"title": "Chefs"
|
|
|
|
|
},
|
|
|
|
|
"cleanup": {
|
|
|
|
|
"items": {
|
|
|
|
|
"$ref": "#/components/schemas/Person"
|
|
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"title": "Cleanup"
|
|
|
|
|
},
|
|
|
|
|
"consumers": {
|
|
|
|
|
"items": {
|
|
|
|
|
"$ref": "#/components/schemas/Person"
|
|
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"title": "Consumers"
|
|
|
|
|
},
|
|
|
|
|
"recipes": {
|
|
|
|
|
"items": {
|
2025-11-01 05:58:34 +00:00
|
|
|
"$ref": "#/components/schemas/MealRecipe"
|
2025-10-18 05:44:36 +00:00
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"title": "Recipes"
|
|
|
|
|
},
|
|
|
|
|
"extraIngredients": {
|
|
|
|
|
"items": {
|
|
|
|
|
"$ref": "#/components/schemas/Ingredient"
|
|
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"title": "Extraingredients"
|
|
|
|
|
},
|
|
|
|
|
"purchaseDate": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "string",
|
|
|
|
|
"format": "date-time"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"title": "Purchasedate"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"suggestedDate"
|
|
|
|
|
],
|
|
|
|
|
"title": "Meal"
|
|
|
|
|
},
|
2025-11-01 05:58:34 +00:00
|
|
|
"MealIdWrapper": {
|
|
|
|
|
"properties": {
|
|
|
|
|
"mealId": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Mealid"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"mealId"
|
|
|
|
|
],
|
|
|
|
|
"title": "MealIdWrapper"
|
|
|
|
|
},
|
|
|
|
|
"MealIn": {
|
2025-11-01 01:21:12 +00:00
|
|
|
"properties": {
|
|
|
|
|
"id": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Id",
|
|
|
|
|
"default": -1
|
|
|
|
|
},
|
|
|
|
|
"suggestedDate": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"format": "date-time",
|
|
|
|
|
"title": "Suggesteddate"
|
|
|
|
|
},
|
|
|
|
|
"consumedDate": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "string",
|
|
|
|
|
"format": "date-time"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"title": "Consumeddate"
|
|
|
|
|
},
|
|
|
|
|
"chefs": {
|
|
|
|
|
"items": {
|
2025-11-01 05:58:34 +00:00
|
|
|
"$ref": "#/components/schemas/MemberRef"
|
2025-11-01 01:21:12 +00:00
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"title": "Chefs"
|
|
|
|
|
},
|
|
|
|
|
"cleanup": {
|
|
|
|
|
"items": {
|
2025-11-01 05:58:34 +00:00
|
|
|
"$ref": "#/components/schemas/MemberRef"
|
2025-11-01 01:21:12 +00:00
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"title": "Cleanup"
|
|
|
|
|
},
|
|
|
|
|
"consumers": {
|
|
|
|
|
"items": {
|
2025-11-01 05:58:34 +00:00
|
|
|
"$ref": "#/components/schemas/MemberRef"
|
2025-11-01 01:21:12 +00:00
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"title": "Consumers"
|
|
|
|
|
},
|
|
|
|
|
"recipes": {
|
|
|
|
|
"items": {
|
2025-11-01 05:58:34 +00:00
|
|
|
"$ref": "#/components/schemas/MealRecipeIn"
|
|
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"title": "Recipes",
|
|
|
|
|
"default": []
|
|
|
|
|
},
|
|
|
|
|
"extraIngredients": {
|
|
|
|
|
"items": {
|
|
|
|
|
"$ref": "#/components/schemas/Ingredient"
|
|
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"title": "Extraingredients",
|
|
|
|
|
"default": []
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"suggestedDate",
|
|
|
|
|
"chefs",
|
|
|
|
|
"cleanup",
|
|
|
|
|
"consumers"
|
|
|
|
|
],
|
|
|
|
|
"title": "MealIn"
|
|
|
|
|
},
|
|
|
|
|
"MealOut": {
|
|
|
|
|
"properties": {
|
|
|
|
|
"id": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Id",
|
|
|
|
|
"default": -1
|
|
|
|
|
},
|
|
|
|
|
"suggestedDate": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"format": "date-time",
|
|
|
|
|
"title": "Suggesteddate"
|
|
|
|
|
},
|
|
|
|
|
"consumedDate": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "string",
|
|
|
|
|
"format": "date-time"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"title": "Consumeddate"
|
|
|
|
|
},
|
|
|
|
|
"chefs": {
|
|
|
|
|
"items": {
|
|
|
|
|
"$ref": "#/components/schemas/MemberRef"
|
|
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"title": "Chefs"
|
|
|
|
|
},
|
|
|
|
|
"cleanup": {
|
|
|
|
|
"items": {
|
|
|
|
|
"$ref": "#/components/schemas/MemberRef"
|
|
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"title": "Cleanup"
|
|
|
|
|
},
|
|
|
|
|
"consumers": {
|
|
|
|
|
"items": {
|
|
|
|
|
"$ref": "#/components/schemas/MemberRef"
|
|
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"title": "Consumers"
|
|
|
|
|
},
|
|
|
|
|
"recipes": {
|
|
|
|
|
"items": {
|
|
|
|
|
"$ref": "#/components/schemas/MealRecipe"
|
2025-11-01 01:21:12 +00:00
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"title": "Recipes"
|
|
|
|
|
},
|
|
|
|
|
"extraIngredients": {
|
|
|
|
|
"items": {
|
|
|
|
|
"$ref": "#/components/schemas/Ingredient"
|
|
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"title": "Extraingredients"
|
|
|
|
|
},
|
|
|
|
|
"purchaseDate": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "string",
|
|
|
|
|
"format": "date-time"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"title": "Purchasedate"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
2025-11-01 05:58:34 +00:00
|
|
|
"suggestedDate",
|
|
|
|
|
"chefs",
|
|
|
|
|
"cleanup",
|
|
|
|
|
"consumers",
|
|
|
|
|
"recipes",
|
|
|
|
|
"extraIngredients"
|
2025-11-01 01:21:12 +00:00
|
|
|
],
|
2025-11-01 05:58:34 +00:00
|
|
|
"title": "MealOut"
|
2025-11-01 01:21:12 +00:00
|
|
|
},
|
2025-11-01 05:58:34 +00:00
|
|
|
"MealRecipe": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"properties": {
|
|
|
|
|
"mealId": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Mealid"
|
|
|
|
|
},
|
|
|
|
|
"recipeId": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Recipeid"
|
|
|
|
|
},
|
|
|
|
|
"servings": {
|
|
|
|
|
"type": "number",
|
|
|
|
|
"title": "Servings"
|
|
|
|
|
},
|
|
|
|
|
"recipe": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
2025-11-01 05:58:34 +00:00
|
|
|
"$ref": "#/components/schemas/Recipe"
|
2025-10-18 05:44:36 +00:00
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"mealId",
|
|
|
|
|
"recipeId",
|
|
|
|
|
"servings"
|
|
|
|
|
],
|
|
|
|
|
"title": "MealRecipe"
|
|
|
|
|
},
|
2025-11-01 05:58:34 +00:00
|
|
|
"MealRecipeIn": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"properties": {
|
|
|
|
|
"mealId": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Mealid"
|
|
|
|
|
},
|
|
|
|
|
"recipeId": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Recipeid"
|
|
|
|
|
},
|
|
|
|
|
"servings": {
|
|
|
|
|
"type": "number",
|
|
|
|
|
"title": "Servings"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"mealId",
|
|
|
|
|
"recipeId",
|
|
|
|
|
"servings"
|
|
|
|
|
],
|
2025-11-01 05:58:34 +00:00
|
|
|
"title": "MealRecipeIn"
|
|
|
|
|
},
|
|
|
|
|
"MemberRef": {
|
|
|
|
|
"properties": {
|
|
|
|
|
"id": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Id"
|
|
|
|
|
},
|
|
|
|
|
"displayName": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Displayname"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"id",
|
|
|
|
|
"displayName"
|
|
|
|
|
],
|
|
|
|
|
"title": "MemberRef"
|
2025-10-18 05:44:36 +00:00
|
|
|
},
|
2025-10-19 09:24:23 +00:00
|
|
|
"Ok": {
|
|
|
|
|
"properties": {
|
|
|
|
|
"ok": {
|
|
|
|
|
"type": "boolean",
|
|
|
|
|
"title": "Ok",
|
|
|
|
|
"default": true
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"title": "Ok"
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"Page_RecipeOut_": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"properties": {
|
|
|
|
|
"items": {
|
|
|
|
|
"items": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"$ref": "#/components/schemas/RecipeOut"
|
2025-10-18 05:44:36 +00:00
|
|
|
},
|
|
|
|
|
"type": "array",
|
2025-11-01 01:21:12 +00:00
|
|
|
"minItems": 0,
|
2025-10-18 05:44:36 +00:00
|
|
|
"title": "Items"
|
|
|
|
|
},
|
|
|
|
|
"nextCursor": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "string"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"title": "Nextcursor"
|
|
|
|
|
},
|
|
|
|
|
"prevCursor": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "string"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"title": "Prevcursor"
|
|
|
|
|
},
|
|
|
|
|
"total": {
|
2025-10-21 08:42:23 +00:00
|
|
|
"type": "integer",
|
2025-10-18 05:44:36 +00:00
|
|
|
"title": "Total",
|
2025-10-21 08:42:23 +00:00
|
|
|
"description": "Total count",
|
|
|
|
|
"default": 0
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"items"
|
|
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Page[RecipeOut]"
|
2025-10-18 05:44:36 +00:00
|
|
|
},
|
|
|
|
|
"Person": {
|
|
|
|
|
"properties": {
|
|
|
|
|
"id": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Id",
|
|
|
|
|
"default": -1
|
|
|
|
|
},
|
|
|
|
|
"name": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Name"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"name"
|
|
|
|
|
],
|
|
|
|
|
"title": "Person"
|
|
|
|
|
},
|
|
|
|
|
"ProblemDetails": {
|
|
|
|
|
"properties": {
|
|
|
|
|
"type": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Type",
|
|
|
|
|
"default": "about:blank"
|
|
|
|
|
},
|
|
|
|
|
"title": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Title"
|
|
|
|
|
},
|
|
|
|
|
"status": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Status"
|
|
|
|
|
},
|
|
|
|
|
"detail": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "string"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"title": "Detail"
|
|
|
|
|
},
|
|
|
|
|
"instance": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "string"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"title": "Instance"
|
|
|
|
|
},
|
|
|
|
|
"errors": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "object"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"title": "Errors"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"title",
|
|
|
|
|
"status"
|
|
|
|
|
],
|
|
|
|
|
"title": "ProblemDetails"
|
|
|
|
|
},
|
|
|
|
|
"Product": {
|
|
|
|
|
"properties": {
|
|
|
|
|
"id": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Id",
|
|
|
|
|
"default": -1
|
|
|
|
|
},
|
|
|
|
|
"productId": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Productid"
|
|
|
|
|
},
|
|
|
|
|
"shopCode": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Shopcode"
|
|
|
|
|
},
|
|
|
|
|
"link": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Link"
|
|
|
|
|
},
|
|
|
|
|
"name": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Name"
|
|
|
|
|
},
|
|
|
|
|
"quantity": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Quantity"
|
|
|
|
|
},
|
|
|
|
|
"unit": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Unit"
|
|
|
|
|
},
|
|
|
|
|
"imgSmall": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Imgsmall"
|
|
|
|
|
},
|
|
|
|
|
"imgLarge": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Imglarge"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"productId",
|
|
|
|
|
"shopCode",
|
|
|
|
|
"link",
|
|
|
|
|
"name",
|
|
|
|
|
"quantity",
|
|
|
|
|
"unit",
|
|
|
|
|
"imgSmall",
|
|
|
|
|
"imgLarge"
|
|
|
|
|
],
|
|
|
|
|
"title": "Product"
|
|
|
|
|
},
|
2025-10-26 04:14:05 +00:00
|
|
|
"PurchaseListIn": {
|
|
|
|
|
"properties": {
|
|
|
|
|
"storeName": {
|
2025-11-01 01:21:12 +00:00
|
|
|
"$ref": "#/components/schemas/StoreNameOut"
|
2025-10-26 04:14:05 +00:00
|
|
|
},
|
|
|
|
|
"items": {
|
|
|
|
|
"items": {
|
|
|
|
|
"$ref": "#/components/schemas/IngredientPurchaseItemIn"
|
|
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"title": "Items"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"storeName",
|
|
|
|
|
"items"
|
|
|
|
|
],
|
|
|
|
|
"title": "PurchaseListIn"
|
|
|
|
|
},
|
2025-10-18 05:44:36 +00:00
|
|
|
"PurchasedShoppingList": {
|
|
|
|
|
"properties": {
|
|
|
|
|
"list": {
|
2025-10-26 04:14:05 +00:00
|
|
|
"$ref": "#/components/schemas/ShoppingListOut"
|
2025-10-18 05:44:36 +00:00
|
|
|
},
|
|
|
|
|
"mealsLookup": {
|
|
|
|
|
"additionalProperties": {
|
2025-11-01 05:58:34 +00:00
|
|
|
"$ref": "#/components/schemas/Meal"
|
2025-10-18 05:44:36 +00:00
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"title": "Mealslookup"
|
|
|
|
|
},
|
|
|
|
|
"ingredientsLookup": {
|
|
|
|
|
"additionalProperties": {
|
|
|
|
|
"$ref": "#/components/schemas/Ingredient"
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"title": "Ingredientslookup"
|
|
|
|
|
},
|
|
|
|
|
"recipesLookup": {
|
|
|
|
|
"additionalProperties": {
|
2025-11-01 05:58:34 +00:00
|
|
|
"$ref": "#/components/schemas/Recipe"
|
2025-10-18 05:44:36 +00:00
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"title": "Recipeslookup"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
2025-11-01 01:21:12 +00:00
|
|
|
"list",
|
|
|
|
|
"mealsLookup",
|
|
|
|
|
"ingredientsLookup",
|
|
|
|
|
"recipesLookup"
|
2025-10-18 05:44:36 +00:00
|
|
|
],
|
|
|
|
|
"title": "PurchasedShoppingList"
|
|
|
|
|
},
|
2025-11-01 05:58:34 +00:00
|
|
|
"Recipe": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"properties": {
|
|
|
|
|
"id": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Id",
|
|
|
|
|
"default": -1
|
|
|
|
|
},
|
|
|
|
|
"name": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Name"
|
|
|
|
|
},
|
|
|
|
|
"link": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Link"
|
|
|
|
|
},
|
|
|
|
|
"serves": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Serves"
|
|
|
|
|
},
|
|
|
|
|
"imageUrls": {
|
|
|
|
|
"items": {
|
|
|
|
|
"type": "string"
|
|
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"title": "Imageurls"
|
|
|
|
|
},
|
|
|
|
|
"ingredients": {
|
|
|
|
|
"items": {
|
|
|
|
|
"$ref": "#/components/schemas/Ingredient"
|
|
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"title": "Ingredients"
|
|
|
|
|
},
|
|
|
|
|
"basedOnRecipe": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "integer"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"title": "Basedonrecipe"
|
|
|
|
|
},
|
|
|
|
|
"dateCreated": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"format": "date-time",
|
|
|
|
|
"title": "Datecreated"
|
|
|
|
|
},
|
|
|
|
|
"createdById": {
|
2025-10-21 08:42:23 +00:00
|
|
|
"type": "integer",
|
2025-10-18 05:44:36 +00:00
|
|
|
"title": "Createdbyid"
|
|
|
|
|
},
|
|
|
|
|
"createdBy": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"$ref": "#/components/schemas/Person"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
2025-11-01 05:18:46 +00:00
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
},
|
|
|
|
|
"dateHidden": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "string",
|
|
|
|
|
"format": "date-time"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
2025-11-01 04:03:27 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Datehidden"
|
2025-11-01 04:03:27 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"hiddenById": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "integer"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"title": "Hiddenbyid"
|
2025-11-01 04:03:27 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"hiddenBy": {
|
2025-11-01 04:03:27 +00:00
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"$ref": "#/components/schemas/Person"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"name",
|
|
|
|
|
"link",
|
|
|
|
|
"serves",
|
|
|
|
|
"createdById"
|
2025-11-01 04:03:27 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Recipe"
|
2025-11-01 04:03:27 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"RecipeCreate": {
|
2025-11-01 04:03:27 +00:00
|
|
|
"properties": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"name": {
|
2025-11-01 04:03:27 +00:00
|
|
|
"type": "string",
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Name"
|
2025-11-01 04:03:27 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"link": {
|
2025-11-01 04:03:27 +00:00
|
|
|
"type": "string",
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Link"
|
2025-11-01 04:03:27 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"serves": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Serves"
|
|
|
|
|
},
|
|
|
|
|
"imageUrls": {
|
|
|
|
|
"items": {
|
|
|
|
|
"type": "string"
|
|
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"minItems": 0,
|
|
|
|
|
"title": "Imageurls"
|
|
|
|
|
},
|
|
|
|
|
"ingredients": {
|
|
|
|
|
"items": {
|
|
|
|
|
"$ref": "#/components/schemas/Ingredient"
|
|
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"minItems": 0,
|
|
|
|
|
"title": "Ingredients"
|
2025-11-01 04:03:27 +00:00
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"name",
|
|
|
|
|
"link",
|
|
|
|
|
"serves",
|
|
|
|
|
"imageUrls",
|
|
|
|
|
"ingredients"
|
2025-11-01 04:03:27 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "RecipeCreate"
|
2025-11-01 04:03:27 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"RecipeOut": {
|
2025-11-01 04:03:27 +00:00
|
|
|
"properties": {
|
|
|
|
|
"id": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Id",
|
|
|
|
|
"default": -1
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"name": {
|
2025-11-01 04:03:27 +00:00
|
|
|
"type": "string",
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Name"
|
2025-11-01 04:03:27 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"link": {
|
2025-11-01 04:03:27 +00:00
|
|
|
"type": "string",
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Link"
|
2025-11-01 04:03:27 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"serves": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Serves"
|
|
|
|
|
},
|
|
|
|
|
"imageUrls": {
|
2025-11-01 04:03:27 +00:00
|
|
|
"items": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"type": "string"
|
2025-11-01 04:03:27 +00:00
|
|
|
},
|
|
|
|
|
"type": "array",
|
2025-11-01 05:18:46 +00:00
|
|
|
"minItems": 0,
|
|
|
|
|
"title": "Imageurls"
|
2025-11-01 04:03:27 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"ingredients": {
|
|
|
|
|
"items": {
|
|
|
|
|
"$ref": "#/components/schemas/Ingredient"
|
|
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"minItems": 0,
|
|
|
|
|
"title": "Ingredients"
|
2025-11-01 06:50:33 +00:00
|
|
|
},
|
|
|
|
|
"createdById": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Createdbyid"
|
|
|
|
|
},
|
|
|
|
|
"createdBy": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"$ref": "#/components/schemas/MemberRef"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
]
|
2025-11-01 07:16:38 +00:00
|
|
|
},
|
|
|
|
|
"hiddenById": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "integer"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"title": "Hiddenbyid"
|
|
|
|
|
},
|
|
|
|
|
"hiddenBy": {
|
|
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"$ref": "#/components/schemas/MemberRef"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
]
|
2025-11-01 04:03:27 +00:00
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"name",
|
|
|
|
|
"link",
|
|
|
|
|
"serves",
|
|
|
|
|
"imageUrls",
|
2025-11-01 06:50:33 +00:00
|
|
|
"ingredients",
|
|
|
|
|
"createdById"
|
2025-11-01 04:03:27 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "RecipeOut"
|
2025-11-01 04:03:27 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"RefreshResponse": {
|
2025-11-01 04:03:27 +00:00
|
|
|
"properties": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"accessToken": {
|
2025-11-01 04:03:27 +00:00
|
|
|
"type": "string",
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Accesstoken"
|
|
|
|
|
},
|
|
|
|
|
"tokenType": {
|
2025-11-01 04:03:27 +00:00
|
|
|
"type": "string",
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Tokentype",
|
|
|
|
|
"default": "bearer"
|
2025-11-01 04:03:27 +00:00
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"accessToken"
|
2025-11-01 04:03:27 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "RefreshResponse"
|
2025-11-01 04:03:27 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"RegisterBody": {
|
2025-11-01 04:03:27 +00:00
|
|
|
"properties": {
|
|
|
|
|
"email": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Email"
|
|
|
|
|
},
|
|
|
|
|
"password": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Password"
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"displayName": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Displayname"
|
2025-11-01 04:03:27 +00:00
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"email",
|
2025-11-01 05:18:46 +00:00
|
|
|
"password",
|
|
|
|
|
"displayName"
|
2025-11-01 04:03:27 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "RegisterBody"
|
2025-11-01 04:03:27 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"RequestedMealItem": {
|
2025-11-01 04:03:27 +00:00
|
|
|
"properties": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"kind": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"enum": [
|
|
|
|
|
"requestedMeal"
|
|
|
|
|
],
|
|
|
|
|
"const": "requestedMeal",
|
|
|
|
|
"title": "Kind",
|
|
|
|
|
"default": "requestedMeal"
|
|
|
|
|
},
|
2025-11-01 04:03:27 +00:00
|
|
|
"id": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Id",
|
|
|
|
|
"default": -1
|
|
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"personId": {
|
2025-11-01 04:03:27 +00:00
|
|
|
"type": "integer",
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Personid"
|
2025-11-01 04:03:27 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"mealId": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Mealid"
|
|
|
|
|
},
|
|
|
|
|
"createdDate": {
|
2025-11-01 01:21:12 +00:00
|
|
|
"type": "string",
|
2025-11-01 04:03:27 +00:00
|
|
|
"format": "date-time",
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Createddate"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"personId",
|
|
|
|
|
"mealId",
|
|
|
|
|
"createdDate"
|
|
|
|
|
],
|
|
|
|
|
"title": "RequestedMealItem"
|
|
|
|
|
},
|
|
|
|
|
"ShoppingListOut": {
|
|
|
|
|
"properties": {
|
|
|
|
|
"id": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"type": "integer",
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Id"
|
2025-10-18 05:44:36 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"createdDate": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"format": "date-time",
|
|
|
|
|
"title": "Createddate"
|
2025-10-18 05:44:36 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"storeName": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"enum": [
|
|
|
|
|
"woolworths",
|
|
|
|
|
"coles",
|
|
|
|
|
"home"
|
2025-11-01 04:03:27 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Storename"
|
2025-11-01 04:03:27 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"purchasedById": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Purchasedbyid"
|
2025-11-01 04:03:27 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"purchasedBy": {
|
2025-11-01 04:03:27 +00:00
|
|
|
"anyOf": [
|
|
|
|
|
{
|
2025-11-01 06:53:07 +00:00
|
|
|
"$ref": "#/components/schemas/MemberRef"
|
2025-11-01 04:03:27 +00:00
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
]
|
2025-11-01 05:18:46 +00:00
|
|
|
},
|
|
|
|
|
"items": {
|
|
|
|
|
"items": {
|
|
|
|
|
"$ref": "#/components/schemas/ListIngredientItem"
|
|
|
|
|
},
|
|
|
|
|
"type": "array",
|
|
|
|
|
"minItems": 0,
|
|
|
|
|
"title": "Items"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
2025-10-26 04:14:05 +00:00
|
|
|
"required": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"id",
|
|
|
|
|
"createdDate",
|
|
|
|
|
"storeName",
|
|
|
|
|
"purchasedById",
|
|
|
|
|
"items"
|
2025-10-18 05:44:36 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "ShoppingListOut"
|
|
|
|
|
},
|
|
|
|
|
"StoreEnum": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"enum": [
|
|
|
|
|
"woolworths",
|
|
|
|
|
"coles",
|
|
|
|
|
""
|
|
|
|
|
],
|
|
|
|
|
"title": "StoreEnum"
|
2025-10-18 05:44:36 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"TokenResponse": {
|
2025-11-01 02:44:00 +00:00
|
|
|
"properties": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"accessToken": {
|
2025-11-01 02:44:00 +00:00
|
|
|
"type": "string",
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Accesstoken"
|
2025-11-01 02:44:00 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"tokenType": {
|
2025-11-01 02:44:00 +00:00
|
|
|
"type": "string",
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Tokentype",
|
|
|
|
|
"default": "bearer"
|
2025-11-01 04:03:27 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"user": {
|
|
|
|
|
"$ref": "#/components/schemas/User"
|
2025-11-01 02:44:00 +00:00
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"accessToken",
|
|
|
|
|
"user"
|
2025-11-01 02:44:00 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "TokenResponse"
|
2025-11-01 02:44:00 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"User": {
|
2025-11-01 02:44:00 +00:00
|
|
|
"properties": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"id": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"title": "Id",
|
|
|
|
|
"default": -1
|
2025-11-01 02:44:00 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"email": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Email"
|
2025-11-01 02:44:00 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"displayName": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Displayname"
|
|
|
|
|
},
|
|
|
|
|
"profilePhotoUrl": {
|
2025-11-01 02:44:00 +00:00
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "string"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "null"
|
|
|
|
|
}
|
|
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Profilephotourl"
|
2025-11-01 02:44:00 +00:00
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"email",
|
|
|
|
|
"displayName"
|
2025-11-01 02:44:00 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "User"
|
2025-11-01 02:44:00 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"ValidationError": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"properties": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"loc": {
|
2025-10-18 05:44:36 +00:00
|
|
|
"items": {
|
2025-11-01 05:18:46 +00:00
|
|
|
"anyOf": [
|
|
|
|
|
{
|
|
|
|
|
"type": "string"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"type": "integer"
|
|
|
|
|
}
|
|
|
|
|
]
|
2025-10-18 05:44:36 +00:00
|
|
|
},
|
|
|
|
|
"type": "array",
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Location"
|
2025-10-18 05:44:36 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"msg": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Message"
|
2025-11-01 02:44:00 +00:00
|
|
|
},
|
2025-11-01 05:18:46 +00:00
|
|
|
"type": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Error Type"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
|
|
|
|
"loc",
|
|
|
|
|
"msg",
|
|
|
|
|
"type"
|
|
|
|
|
],
|
|
|
|
|
"title": "ValidationError"
|
|
|
|
|
},
|
|
|
|
|
"WhoAmI": {
|
|
|
|
|
"properties": {
|
|
|
|
|
"householdId": {
|
2025-11-01 04:03:27 +00:00
|
|
|
"type": "integer",
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "Householdid"
|
|
|
|
|
},
|
|
|
|
|
"householdSlug": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"title": "Householdslug"
|
2025-11-01 02:44:00 +00:00
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"type": "object",
|
|
|
|
|
"required": [
|
2025-11-01 05:18:46 +00:00
|
|
|
"householdId",
|
|
|
|
|
"householdSlug"
|
2025-11-01 02:44:00 +00:00
|
|
|
],
|
2025-11-01 05:18:46 +00:00
|
|
|
"title": "WhoAmI"
|
2025-11-01 02:44:00 +00:00
|
|
|
},
|
2025-11-01 01:21:12 +00:00
|
|
|
"StoreNameOut": {
|
|
|
|
|
"type": "string",
|
|
|
|
|
"enum": [
|
|
|
|
|
"woolworths",
|
|
|
|
|
"coles",
|
|
|
|
|
"home"
|
|
|
|
|
],
|
|
|
|
|
"title": "StoreNameOut"
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"responses": {
|
|
|
|
|
"Problem400": {
|
|
|
|
|
"description": "Bad Request",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/problem+json": {},
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/ProblemDetails"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"Problem404": {
|
|
|
|
|
"description": "Not Found",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/problem+json": {},
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/ProblemDetails"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"Problem422": {
|
|
|
|
|
"description": "Validation Error",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/problem+json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/ProblemDetails"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/ProblemDetails"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-11-01 04:03:27 +00:00
|
|
|
},
|
|
|
|
|
"Problem403": {
|
|
|
|
|
"description": "Forbidden",
|
|
|
|
|
"content": {
|
|
|
|
|
"application/problem+json": {},
|
|
|
|
|
"application/json": {
|
|
|
|
|
"schema": {
|
|
|
|
|
"$ref": "#/components/schemas/ProblemDetails"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
2025-10-18 07:21:04 +00:00
|
|
|
},
|
|
|
|
|
"securitySchemes": {
|
2025-11-01 04:03:27 +00:00
|
|
|
"bearerAuth": {
|
|
|
|
|
"type": "http",
|
|
|
|
|
"scheme": "bearer",
|
|
|
|
|
"bearerFormat": "JWT",
|
|
|
|
|
"description": "JWT access token in Authorization header"
|
2025-10-18 07:21:04 +00:00
|
|
|
}
|
2025-10-18 05:44:36 +00:00
|
|
|
}
|
|
|
|
|
}
|
2025-11-01 08:20:08 +00:00
|
|
|
}
|