{"openapi": "3.1.0", "info": {"title": "MONDEY API", "version": "0.1.0"}, "paths": {"/events/": {"get": {"tags": ["events"], "summary": "Get Events", "operationId": "get_events", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/CalendarEventRead"}, "type": "array", "title": "Response Get Events"}}}}}}}, "/documents/": {"get": {"tags": ["documents"], "summary": "Get Public Documents", "operationId": "get_public_documents", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/DocumentPublic"}, "type": "array", "title": "Response Get Public Documents"}}}}}}}, "/languages/": {"get": {"tags": ["milestones"], "summary": "Get Languages", "operationId": "get_languages", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"items": {"type": "string"}, "type": "array", "title": "Response Get Languages"}}}}}}}, "/milestones/": {"get": {"tags": ["milestones"], "summary": "Get Milestones", "operationId": "get_milestones", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/MilestonePublic"}, "type": "array", "title": "Response Get Milestones"}}}}}}}, "/milestones/{milestone_id}": {"get": {"tags": ["milestones"], "summary": "Get Milestone", "operationId": "get_milestone", "parameters": [{"name": "milestone_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Milestone Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/MilestonePublic"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/milestone-groups/{child_id}": {"get": {"tags": ["milestones"], "summary": "Get Milestone Groups", "operationId": "get_milestone_groups", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "child_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Child Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"type": "array", "items": {"$ref": "#/components/schemas/MilestoneGroupPublic"}, "title": "Response Get Milestone Groups"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/user-questions/": {"get": {"tags": ["questions"], "summary": "Get User Questions", "operationId": "get_user_questions", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/UserQuestionPublic"}, "type": "array", "title": "Response Get User Questions"}}}}}}}, "/child-questions/": {"get": {"tags": ["questions"], "summary": "Get Child Questions", "operationId": "get_child_questions", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/ChildQuestionPublic"}, "type": "array", "title": "Response Get Child Questions"}}}}}}}, "/admin/calendarevents/": {"post": {"tags": ["admin"], "summary": "Create Event", "operationId": "create_event", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/CalendarEventCreate"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CalendarEventRead"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}, "security": [{"APIKeyCookie": []}]}}, "/admin/calendarevents/{event_id}": {"put": {"tags": ["admin"], "summary": "Update Event", "operationId": "update_event", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "event_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Event Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CalendarEventUpdate"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CalendarEventRead"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}, "delete": {"tags": ["admin"], "summary": "Delete Event", "operationId": "delete_event", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "event_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Event Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/admin/documents/": {"get": {"tags": ["admin", "admin", "documents"], "summary": "Get Documents", "operationId": "get_documents", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/DocumentAdmin"}, "type": "array", "title": "Response Get Documents"}}}}}, "security": [{"APIKeyCookie": []}]}, "post": {"tags": ["admin", "admin", "documents"], "summary": "Create Document", "operationId": "create_document", "requestBody": {"content": {"multipart/form-data": {"schema": {"$ref": "#/components/schemas/Body_create_document"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/DocumentAdmin"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}, "security": [{"APIKeyCookie": []}]}}, "/admin/documents/{document_id}": {"put": {"tags": ["admin", "admin", "documents"], "summary": "Update Document", "operationId": "update_document", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "document_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Document Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/DocumentCreate"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/DocumentAdmin"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}, "delete": {"tags": ["admin", "admin", "documents"], "summary": "Delete Document", "operationId": "delete_document", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "document_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Document Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/admin/languages/": {"post": {"tags": ["admin"], "summary": "Create Language", "operationId": "create_language", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/Language"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Language"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}, "security": [{"APIKeyCookie": []}]}}, "/admin/languages/{language_id}": {"delete": {"tags": ["admin"], "summary": "Delete Language", "operationId": "delete_language", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "language_id", "in": "path", "required": true, "schema": {"type": "string", "title": "Language Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/admin/i18n/{language_id}": {"put": {"tags": ["admin"], "summary": "Update I18N", "operationId": "update_i18n", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "language_id", "in": "path", "required": true, "schema": {"type": "string", "title": "Language Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"type": "object", "additionalProperties": {"type": "object", "additionalProperties": {"type": "string"}}, "title": "I18Dict"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/admin/translate/": {"post": {"tags": ["admin"], "summary": "Translate", "operationId": "translate", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "text", "in": "query", "required": true, "schema": {"type": "string", "title": "Text"}}, {"name": "locale", "in": "query", "required": true, "schema": {"type": "string", "title": "Locale"}}, {"name": "source_lang", "in": "query", "required": false, "schema": {"type": "string", "default": "de", "title": "Source Lang"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"type": "string", "title": "Response Translate"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/admin/milestone-groups/": {"get": {"tags": ["admin"], "summary": "Get Milestone Groups Admin", "operationId": "get_milestone_groups_admin", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/MilestoneGroupAdmin"}, "type": "array", "title": "Response Get Milestone Groups Admin"}}}}}, "security": [{"APIKeyCookie": []}]}, "post": {"tags": ["admin"], "summary": "Create Milestone Group Admin", "operationId": "create_milestone_group_admin", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/MilestoneGroupAdmin"}}}}}, "security": [{"APIKeyCookie": []}]}}, "/admin/milestone-groups": {"put": {"tags": ["admin"], "summary": "Update Milestone Group Admin", "operationId": "update_milestone_group_admin", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/MilestoneGroupAdmin"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/MilestoneGroupAdmin"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}, "security": [{"APIKeyCookie": []}]}}, "/admin/milestone-groups/{milestone_group_id}": {"delete": {"tags": ["admin"], "summary": "Delete Milestone Group Admin", "operationId": "delete_milestone_group_admin", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "milestone_group_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Milestone Group Id"}}, {"name": "dry_run", "in": "query", "required": false, "schema": {"type": "boolean", "description": "When true, shows what would be deleted without actually deleting", "default": true, "title": "Dry Run"}, "description": "When true, shows what would be deleted without actually deleting"}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/DeleteResponse"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/admin/milestone-groups/order/": {"post": {"tags": ["admin"], "summary": "Order Milestone Groups Admin", "operationId": "order_milestone_groups_admin", "requestBody": {"content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/ItemOrder"}, "type": "array", "title": "Item Orders"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}, "security": [{"APIKeyCookie": []}]}}, "/admin/milestone-group-images/{milestone_group_id}": {"put": {"tags": ["admin"], "summary": "Upload Milestone Group Image", "operationId": "upload_milestone_group_image", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "milestone_group_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Milestone Group Id"}}], "requestBody": {"required": true, "content": {"multipart/form-data": {"schema": {"$ref": "#/components/schemas/Body_upload_milestone_group_image"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/admin/milestones/{milestone_group_id}": {"post": {"tags": ["admin"], "summary": "Create Milestone", "operationId": "create_milestone", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "milestone_group_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Milestone Group Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/MilestoneAdmin"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/admin/milestones/": {"put": {"tags": ["admin"], "summary": "Update Milestone", "operationId": "update_milestone", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/MilestoneAdmin"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/MilestoneAdmin"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}, "security": [{"APIKeyCookie": []}]}}, "/admin/milestones/{milestone_id}": {"delete": {"tags": ["admin"], "summary": "Delete Milestone", "operationId": "delete_milestone", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "milestone_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Milestone Id"}}, {"name": "dry_run", "in": "query", "required": false, "schema": {"type": "boolean", "description": "When true, shows what would be deleted without actually deleting", "default": true, "title": "Dry Run"}, "description": "When true, shows what would be deleted without actually deleting"}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/DeleteResponse"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/admin/milestones/order/": {"post": {"tags": ["admin"], "summary": "Order Milestones Admin", "operationId": "order_milestones_admin", "requestBody": {"content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/ItemOrder"}, "type": "array", "title": "Item Orders"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}, "security": [{"APIKeyCookie": []}]}}, "/admin/milestone-images/{milestone_id}": {"post": {"tags": ["admin"], "summary": "Upload Milestone Image", "operationId": "upload_milestone_image", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "milestone_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Milestone Id"}}], "requestBody": {"required": true, "content": {"multipart/form-data": {"schema": {"$ref": "#/components/schemas/Body_upload_milestone_image"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/MilestoneImage"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/admin/milestone-images/{milestone_image_id}": {"delete": {"tags": ["admin"], "summary": "Delete Milestone Image", "operationId": "delete_milestone_image", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "milestone_image_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Milestone Image Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/admin/milestone-age-scores/{milestone_id}": {"get": {"tags": ["admin"], "summary": "Get Milestone Age Scores", "operationId": "get_milestone_age_scores", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "milestone_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Milestone Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/MilestoneAgeScoreCollectionPublic"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/admin/milestone-age-scores/": {"post": {"tags": ["admin"], "summary": "Recalculate Milestone Age Scores", "description": "Re-derive the expected age and relevant age range of every milestone from the\nage curves that were fitted by the last statistics update, using the supplied\nparameters, which are saved as the parameters to use from now on.\n\nThis does not refit the curves, so it is cheap: the fits only change when the\nstatistics are updated. The derived ages are returned but not stored, and the\nages on the milestones themselves are not touched: applying them is a separate\nstep. A milestone whose curve could not be fitted has no automatic estimate at\nall, and keeps whatever ages an admin has set by hand.\n\nThe achieved threshold has to lie between the two relevant thresholds, so that\nthe expected age lies inside the range the milestone is asked about in.", "operationId": "recalculate_milestone_age_scores", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/MilestoneAgeCurveParams"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/MilestoneAgeScoreCollectionPublic"}, "type": "array", "title": "Response Recalculate Milestone Age Scores"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}, "security": [{"APIKeyCookie": []}]}}, "/admin/update-stats/": {"post": {"tags": ["admin"], "summary": "Admin Update Stats", "operationId": "admin_update_stats", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/StatisticsUpdateResult"}}}}}, "security": [{"APIKeyCookie": []}]}}, "/admin/milestone-answer-sessions/": {"get": {"tags": ["admin"], "summary": "Get Milestone Answer Sessions", "operationId": "get_milestone_answer_sessions", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/MilestoneAnswerSession"}, "type": "array", "title": "Response Get Milestone Answer Sessions"}}}}}, "security": [{"APIKeyCookie": []}]}}, "/admin/milestone-answer-sessions/{answer_session_id}": {"post": {"tags": ["admin"], "summary": "Modify Milestone Answer Session", "operationId": "modify_milestone_answer_session", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "answer_session_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Answer Session Id"}}, {"name": "suspicious", "in": "query", "required": true, "schema": {"type": "boolean", "title": "Suspicious"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/admin/milestone-answer-session-analysis/{answer_session_id}": {"get": {"tags": ["admin"], "summary": "Get Milestone Answer Session Analysis", "operationId": "get_milestone_answer_session_analysis", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "answer_session_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Answer Session Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/MilestoneAnswerSessionAnalysis"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/admin/user-questions/": {"get": {"tags": ["admin"], "summary": "Get User Questions Admin", "operationId": "get_user_questions_admin", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/UserQuestionAdmin"}, "type": "array", "title": "Response Get User Questions Admin"}}}}}, "security": [{"APIKeyCookie": []}]}, "put": {"tags": ["admin"], "summary": "Update User Question", "operationId": "update_user_question", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/UserQuestionAdmin"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/UserQuestionAdmin"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}, "security": [{"APIKeyCookie": []}]}, "post": {"tags": ["admin"], "summary": "Create User Question", "operationId": "create_user_question", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/UserQuestionAdmin"}}}}}, "security": [{"APIKeyCookie": []}]}}, "/admin/user-questions/{user_question_id}": {"delete": {"tags": ["admin"], "summary": "Delete User Question", "operationId": "delete_user_question", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "user_question_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "User Question Id"}}, {"name": "dry_run", "in": "query", "required": false, "schema": {"type": "boolean", "description": "When true, shows what would be deleted without actually deleting", "default": true, "title": "Dry Run"}, "description": "When true, shows what would be deleted without actually deleting"}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/DeleteResponse"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/admin/user-questions/order/": {"post": {"tags": ["admin"], "summary": "Order User Questions Admin", "operationId": "order_user_questions_admin", "requestBody": {"content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/ItemOrder"}, "type": "array", "title": "Item Orders"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}, "security": [{"APIKeyCookie": []}]}}, "/admin/child-questions/": {"get": {"tags": ["admin"], "summary": "Get Child Questions Admin", "operationId": "get_child_questions_admin", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/ChildQuestionAdmin"}, "type": "array", "title": "Response Get Child Questions Admin"}}}}}, "security": [{"APIKeyCookie": []}]}, "put": {"tags": ["admin"], "summary": "Update Child Question", "operationId": "update_child_question", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/ChildQuestionAdmin"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ChildQuestionAdmin"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}, "security": [{"APIKeyCookie": []}]}, "post": {"tags": ["admin"], "summary": "Create Child Question", "operationId": "create_child_question", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ChildQuestionAdmin"}}}}}, "security": [{"APIKeyCookie": []}]}}, "/admin/child-questions/{child_question_id}": {"delete": {"tags": ["admin"], "summary": "Delete Child Question", "operationId": "delete_child_question", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "child_question_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Child Question Id"}}, {"name": "dry_run", "in": "query", "required": false, "schema": {"type": "boolean", "description": "When true, shows what would be deleted without actually deleting", "default": true, "title": "Dry Run"}, "description": "When true, shows what would be deleted without actually deleting"}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/DeleteResponse"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/admin/child-questions/order/": {"post": {"tags": ["admin"], "summary": "Order Child Questions Admin", "operationId": "order_child_questions_admin", "requestBody": {"content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/ItemOrder"}, "type": "array", "title": "Item Orders"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}, "security": [{"APIKeyCookie": []}]}}, "/admin/settings/": {"get": {"tags": ["admin"], "summary": "Get Admin Settings", "description": "Get current admin settings.", "operationId": "get_admin_settings", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/AdminSettingsPublic"}}}}}, "security": [{"APIKeyCookie": []}]}, "put": {"tags": ["admin"], "summary": "Update Admin Settings", "description": "Update admin settings.", "operationId": "update_admin_settings", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/AdminSettingsUpdate"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/AdminSettingsPublic"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}, "security": [{"APIKeyCookie": []}]}}, "/admin/users/": {"get": {"tags": ["admin"], "summary": "Get Users", "operationId": "get_users", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/UserRead"}, "type": "array", "title": "Response Get Users"}}}}}, "security": [{"APIKeyCookie": []}]}}, "/admin/research-groups/": {"get": {"tags": ["admin"], "summary": "Get Research Groups", "operationId": "get_research_groups", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/ResearchGroup"}, "type": "array", "title": "Response Get Research Groups"}}}}}, "security": [{"APIKeyCookie": []}]}}, "/admin/research-groups/{user_id}": {"post": {"tags": ["admin"], "summary": "Create Research Group", "operationId": "create_research_group", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "user_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "User Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ResearchGroup"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/admin/research-groups/{research_group_id}": {"delete": {"tags": ["admin"], "summary": "Delete Research Group", "operationId": "delete_research_group", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "research_group_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Research Group Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/admin/research/import-csv/": {"post": {"tags": ["admin", "research-admin"], "summary": "Import Csv Data", "description": "Import CSV data with optional labels file.\n\nArgs:\n additional_data_file: The main data CSV file (required)\n labels_file: Optional labels CSV file\n research_group_id: Optional researcher code for all imported users\n\nReturns:\n dict: Message and count of imported children", "operationId": "import_csv_data", "requestBody": {"content": {"multipart/form-data": {"schema": {"$ref": "#/components/schemas/Body_import_csv_data"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ImportCsvResponse"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}, "security": [{"APIKeyCookie": []}]}}, "/users/me": {"get": {"tags": ["users"], "summary": "Users:Current User", "operationId": "users:current_user", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/UserRead"}}}}, "401": {"description": "Missing token or inactive user."}}, "security": [{"APIKeyCookie": []}]}, "patch": {"tags": ["users"], "summary": "Users:Patch Current User", "operationId": "users:patch_current_user", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/UserUpdate"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/UserRead"}}}}, "401": {"description": "Missing token or inactive user."}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ErrorModel"}, "examples": {"UPDATE_USER_EMAIL_ALREADY_EXISTS": {"summary": "A user with this email already exists.", "value": {"detail": "UPDATE_USER_EMAIL_ALREADY_EXISTS"}}, "UPDATE_USER_INVALID_PASSWORD": {"summary": "Password validation failed.", "value": {"detail": {"code": "UPDATE_USER_INVALID_PASSWORD", "reason": "Password should beat least 3 characters"}}}}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}, "security": [{"APIKeyCookie": []}]}}, "/users/{id}": {"get": {"tags": ["users"], "summary": "Users:User", "operationId": "users:user", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "id", "in": "path", "required": true, "schema": {"type": "string", "title": "Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/UserRead"}}}}, "401": {"description": "Missing token or inactive user."}, "403": {"description": "Not a superuser."}, "404": {"description": "The user does not exist."}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}, "patch": {"tags": ["users"], "summary": "Users:Patch User", "operationId": "users:patch_user", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "id", "in": "path", "required": true, "schema": {"type": "string", "title": "Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/UserUpdate"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/UserRead"}}}}, "401": {"description": "Missing token or inactive user."}, "403": {"description": "Not a superuser."}, "404": {"description": "The user does not exist."}, "400": {"content": {"application/json": {"examples": {"UPDATE_USER_EMAIL_ALREADY_EXISTS": {"summary": "A user with this email already exists.", "value": {"detail": "UPDATE_USER_EMAIL_ALREADY_EXISTS"}}, "UPDATE_USER_INVALID_PASSWORD": {"summary": "Password validation failed.", "value": {"detail": {"code": "UPDATE_USER_INVALID_PASSWORD", "reason": "Password should beat least 3 characters"}}}}, "schema": {"$ref": "#/components/schemas/ErrorModel"}}}, "description": "Bad Request"}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}, "delete": {"tags": ["users"], "summary": "Users:Delete User", "operationId": "users:delete_user", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "id", "in": "path", "required": true, "schema": {"type": "string", "title": "Id"}}], "responses": {"204": {"description": "Successful Response"}, "401": {"description": "Missing token or inactive user."}, "403": {"description": "Not a superuser."}, "404": {"description": "The user does not exist."}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/users/me/account": {"delete": {"tags": ["users"], "summary": "Delete Current User Account", "description": "Delete the current user's account and all of the data belonging to it.", "operationId": "delete_current_user_account", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "dry_run", "in": "query", "required": false, "schema": {"type": "boolean", "description": "When true, shows what would be deleted without actually deleting", "default": true, "title": "Dry Run"}, "description": "When true, shows what would be deleted without actually deleting"}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/AccountDeletion"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/DeleteResponse"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/users/children/": {"get": {"tags": ["users"], "summary": "Get Children", "operationId": "get_children", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/ChildSummaryPublic"}, "type": "array", "title": "Response Get Children"}}}}}, "security": [{"APIKeyCookie": []}]}, "put": {"tags": ["users"], "summary": "Update Child", "operationId": "update_child", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/ChildPublic"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ChildPublic"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}, "security": [{"APIKeyCookie": []}]}, "post": {"tags": ["users"], "summary": "Create Child", "operationId": "create_child", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/ChildCreate"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ChildPublic"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}, "security": [{"APIKeyCookie": []}]}}, "/users/children/{child_id}": {"get": {"tags": ["users"], "summary": "Get Child", "operationId": "get_child", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "child_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Child Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ChildPublic"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}, "delete": {"tags": ["users"], "summary": "Delete Child", "operationId": "delete_child", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "child_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Child Id"}}, {"name": "dry_run", "in": "query", "required": false, "schema": {"type": "boolean", "description": "When true, shows what would be deleted without actually deleting", "default": true, "title": "Dry Run"}, "description": "When true, shows what would be deleted without actually deleting"}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/DeleteResponse"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/users/children-images/{child_id}": {"get": {"tags": ["users"], "summary": "Get Child Image", "operationId": "get_child_image", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "child_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Child Id"}}], "responses": {"200": {"description": "Successful Response"}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}, "put": {"tags": ["users"], "summary": "Upload Child Image", "operationId": "upload_child_image", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "child_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Child Id"}}], "requestBody": {"required": true, "content": {"multipart/form-data": {"schema": {"$ref": "#/components/schemas/Body_upload_child_image"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}, "delete": {"tags": ["users"], "summary": "Delete Child Image", "operationId": "delete_child_image", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "child_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Child Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/users/milestone-answers/{child_id}": {"get": {"tags": ["users"], "summary": "Get Current Milestone Answer Session", "operationId": "get_current_milestone_answer_session", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "child_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Child Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/MilestoneAnswerSessionPublic"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/users/milestone-answers/{milestone_answer_session_id}": {"put": {"tags": ["users"], "summary": "Update Milestone Answer", "operationId": "update_milestone_answer", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "milestone_answer_session_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Milestone Answer Session Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/MilestoneAnswerPublic"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/MilestoneAnswerResponse"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/users/user-answers/": {"get": {"tags": ["users"], "summary": "Get Current User Answers", "operationId": "get_current_user_answers", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/UserAnswerPublic"}, "type": "array", "title": "Response Get Current User Answers"}}}}}, "security": [{"APIKeyCookie": []}]}, "put": {"tags": ["users"], "summary": "Update Current User Answers", "operationId": "update_current_user_answers", "requestBody": {"content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/UserAnswerPublic"}, "type": "array", "title": "New Answers"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/UserAnswerPublic"}, "type": "array", "title": "Response Update Current User Answers"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}, "security": [{"APIKeyCookie": []}]}}, "/users/children-answers/{child_id}": {"get": {"tags": ["users"], "summary": "Get Current Child Answers", "operationId": "get_current_child_answers", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "child_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Child Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"type": "object", "additionalProperties": {"$ref": "#/components/schemas/ChildAnswerPublic"}, "title": "Response Get Current Child Answers"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}, "put": {"tags": ["users"], "summary": "Update Current Child Answers", "operationId": "update_current_child_answers", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "child_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Child Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"type": "object", "additionalProperties": {"$ref": "#/components/schemas/ChildAnswerPublic"}, "title": "New Answers"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/users/milestone-answers-sessions/{child_id}": {"get": {"tags": ["users"], "summary": "Get Completed Milestone Answer Sessions", "operationId": "get_completed_milestone_answer_sessions", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "child_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Child Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"type": "object", "additionalProperties": {"$ref": "#/components/schemas/MilestoneAnswerSessionPublic"}, "title": "Response Get Completed Milestone Answer Sessions"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/users/feedback/answersession={answersession_id}": {"get": {"tags": ["users"], "summary": "Get Milestonegroups For Session", "operationId": "get_milestonegroups_for_session", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "answersession_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Answersession Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"type": "object", "additionalProperties": {"$ref": "#/components/schemas/MilestoneGroupPublic"}, "title": "Response Get Milestonegroups For Session"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/users/feedback/answersession={answersession_id}/summary": {"get": {"tags": ["users"], "summary": "Get Summary Feedback For Answersession", "operationId": "get_summary_feedback_for_answersession", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "answersession_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Answersession Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"type": "object", "additionalProperties": {"type": "integer"}, "title": "Response Get Summary Feedback For Answersession"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/users/feedback/answersession={answersession_id}/detailed": {"get": {"tags": ["users"], "summary": "Get Detailed Feedback For Answersession", "operationId": "get_detailed_feedback_for_answersession", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "answersession_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Answersession Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"type": "object", "additionalProperties": {"type": "object", "additionalProperties": {"type": "integer"}}, "title": "Response Get Detailed Feedback For Answersession"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/auth/login": {"post": {"tags": ["auth"], "summary": "Auth:Cookie.Login", "operationId": "auth:cookie.login", "requestBody": {"content": {"application/x-www-form-urlencoded": {"schema": {"$ref": "#/components/schemas/login"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ErrorModel"}, "examples": {"LOGIN_BAD_CREDENTIALS": {"summary": "Bad credentials or the user is inactive.", "value": {"detail": "LOGIN_BAD_CREDENTIALS"}}, "LOGIN_USER_NOT_VERIFIED": {"summary": "The user is not verified.", "value": {"detail": "LOGIN_USER_NOT_VERIFIED"}}}}}}, "204": {"description": "No Content"}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/auth/logout": {"post": {"tags": ["auth"], "summary": "Auth:Cookie.Logout", "operationId": "auth:cookie.logout", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "401": {"description": "Missing token or inactive user."}, "204": {"description": "No Content"}}, "security": [{"APIKeyCookie": []}]}}, "/auth/register": {"post": {"tags": ["auth"], "summary": "Register:Register", "operationId": "register:register", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/UserCreate"}}}, "required": true}, "responses": {"201": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/UserRead"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ErrorModel"}, "examples": {"REGISTER_USER_ALREADY_EXISTS": {"summary": "A user with this email already exists.", "value": {"detail": "REGISTER_USER_ALREADY_EXISTS"}}, "REGISTER_INVALID_PASSWORD": {"summary": "Password validation failed.", "value": {"detail": {"code": "REGISTER_INVALID_PASSWORD", "reason": "Password should beat least 3 characters"}}}}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/auth/forgot-password": {"post": {"tags": ["auth"], "summary": "Reset:Forgot Password", "operationId": "reset:forgot_password", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/Body_reset_forgot_password"}}}, "required": true}, "responses": {"202": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/auth/reset-password": {"post": {"tags": ["auth"], "summary": "Reset:Reset Password", "operationId": "reset:reset_password", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/Body_reset_reset_password"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ErrorModel"}, "examples": {"RESET_PASSWORD_BAD_TOKEN": {"summary": "Bad or expired token.", "value": {"detail": "RESET_PASSWORD_BAD_TOKEN"}}, "RESET_PASSWORD_INVALID_PASSWORD": {"summary": "Password validation failed.", "value": {"detail": {"code": "RESET_PASSWORD_INVALID_PASSWORD", "reason": "Password should be at least 3 characters"}}}}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/auth/request-verify-token": {"post": {"tags": ["auth"], "summary": "Verify:Request-Token", "operationId": "verify:request-token", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/Body_verify_request-token"}}}, "required": true}, "responses": {"202": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/auth/verify": {"post": {"tags": ["auth"], "summary": "Verify:Verify", "operationId": "verify:verify", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/Body_verify_verify"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/UserRead"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ErrorModel"}, "examples": {"VERIFY_USER_BAD_TOKEN": {"summary": "Bad token, not existing user or not the e-mail currently set for the user.", "value": {"detail": "VERIFY_USER_BAD_TOKEN"}}, "VERIFY_USER_ALREADY_VERIFIED": {"summary": "The user is already verified.", "value": {"detail": "VERIFY_USER_ALREADY_VERIFIED"}}}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/auth/session/reauthenticate": {"post": {"tags": ["auth"], "summary": "Reauthenticate Session", "operationId": "reauthenticate_session", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/SessionReauthentication"}}}, "required": true}, "responses": {"204": {"description": "Successful Response"}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}, "security": [{"APIKeyCookie": []}]}}, "/research/data/": {"get": {"tags": ["research"], "summary": "Get Research Data", "operationId": "get_research_data", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}}, "security": [{"APIKeyCookie": []}]}}, "/research/names/": {"get": {"tags": ["research"], "summary": "Get Research Names", "operationId": "get_research_names", "security": [{"APIKeyCookie": []}], "parameters": [{"name": "lang_id", "in": "query", "required": false, "schema": {"type": "string", "default": "de", "title": "Lang Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {"type": "object", "additionalProperties": {"type": "object", "additionalProperties": {"type": "string"}}, "title": "Response Get Research Names"}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}}, "components": {"schemas": {"AccountDeletion": {"properties": {"password": {"type": "string", "format": "password", "title": "Password", "writeOnly": true}}, "type": "object", "required": ["password"], "title": "AccountDeletion"}, "AdminSettingsPublic": {"properties": {"hide_milestone_feedback": {"type": "boolean", "title": "Hide Milestone Feedback"}, "hide_milestone_group_feedback": {"type": "boolean", "title": "Hide Milestone Group Feedback"}, "hide_all_feedback": {"type": "boolean", "title": "Hide All Feedback"}, "mean_answer_achieved": {"type": "number", "title": "Mean Answer Achieved"}, "mean_answer_relevant_min": {"type": "number", "title": "Mean Answer Relevant Min"}, "mean_answer_relevant_max": {"type": "number", "title": "Mean Answer Relevant Max"}, "min_relevant_age_margin_months": {"type": "integer", "title": "Min Relevant Age Margin Months"}}, "type": "object", "required": ["hide_milestone_feedback", "hide_milestone_group_feedback", "hide_all_feedback", "mean_answer_achieved", "mean_answer_relevant_min", "mean_answer_relevant_max", "min_relevant_age_margin_months"], "title": "AdminSettingsPublic"}, "AdminSettingsUpdate": {"properties": {"hide_milestone_feedback": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Hide Milestone Feedback"}, "hide_milestone_group_feedback": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Hide Milestone Group Feedback"}, "hide_all_feedback": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Hide All Feedback"}}, "type": "object", "title": "AdminSettingsUpdate"}, "Body_create_document": {"properties": {"title": {"type": "string", "title": "Title"}, "description": {"type": "string", "title": "Description"}, "file": {"type": "string", "contentMediaType": "application/octet-stream", "title": "File"}}, "type": "object", "required": ["title", "description", "file"], "title": "Body_create_document"}, "Body_import_csv_data": {"properties": {"additional_data_file": {"type": "string", "contentMediaType": "application/octet-stream", "title": "Additional Data File", "description": "Additional data CSV file"}, "labels_file": {"type": "string", "contentMediaType": "application/octet-stream", "title": "Labels File", "description": "Labels CSV file"}, "research_group_id": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Research Group Id", "description": "Researcher code applied to all imported users"}}, "type": "object", "required": ["additional_data_file"], "title": "Body_import_csv_data"}, "Body_reset_forgot_password": {"properties": {"email": {"type": "string", "format": "email", "title": "Email"}}, "type": "object", "required": ["email"], "title": "Body_reset:forgot_password"}, "Body_reset_reset_password": {"properties": {"token": {"type": "string", "title": "Token"}, "password": {"type": "string", "title": "Password"}}, "type": "object", "required": ["token", "password"], "title": "Body_reset:reset_password"}, "Body_upload_child_image": {"properties": {"file": {"type": "string", "contentMediaType": "application/octet-stream", "title": "File"}}, "type": "object", "required": ["file"], "title": "Body_upload_child_image"}, "Body_upload_milestone_group_image": {"properties": {"file": {"type": "string", "contentMediaType": "application/octet-stream", "title": "File"}}, "type": "object", "required": ["file"], "title": "Body_upload_milestone_group_image"}, "Body_upload_milestone_image": {"properties": {"file": {"type": "string", "contentMediaType": "application/octet-stream", "title": "File"}}, "type": "object", "required": ["file"], "title": "Body_upload_milestone_image"}, "Body_verify_request-token": {"properties": {"email": {"type": "string", "format": "email", "title": "Email"}}, "type": "object", "required": ["email"], "title": "Body_verify:request-token"}, "Body_verify_verify": {"properties": {"token": {"type": "string", "title": "Token"}}, "type": "object", "required": ["token"], "title": "Body_verify:verify"}, "CalendarEventCreate": {"properties": {"title": {"type": "string", "title": "Title", "default": ""}, "description": {"type": "string", "title": "Description", "default": ""}, "external_link": {"type": "string", "title": "External Link", "default": ""}, "event_date": {"type": "string", "format": "date-time", "title": "Event Date"}}, "type": "object", "required": ["event_date"], "title": "CalendarEventCreate"}, "CalendarEventRead": {"properties": {"title": {"type": "string", "title": "Title", "default": ""}, "description": {"type": "string", "title": "Description", "default": ""}, "external_link": {"type": "string", "title": "External Link", "default": ""}, "event_date": {"type": "string", "format": "date-time", "title": "Event Date"}, "id": {"type": "integer", "title": "Id"}}, "type": "object", "required": ["event_date", "id"], "title": "CalendarEventRead"}, "CalendarEventUpdate": {"properties": {"title": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Title"}, "description": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Description"}, "external_link": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "External Link"}, "event_date": {"anyOf": [{"type": "string", "format": "date-time"}, {"type": "null"}], "title": "Event Date"}}, "type": "object", "title": "CalendarEventUpdate"}, "ChildAnswerAnalysisFlag": {"properties": {"question_id": {"type": "integer", "title": "Question Id"}, "question": {"additionalProperties": {"type": "string"}, "type": "object", "title": "Question"}, "answer": {"type": "string", "title": "Answer"}, "additional_answer": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Additional Answer"}}, "type": "object", "required": ["question_id", "question", "answer", "additional_answer"], "title": "ChildAnswerAnalysisFlag"}, "ChildAnswerPublic": {"properties": {"answer": {"type": "string", "title": "Answer"}, "additional_answer": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Additional Answer"}, "question_id": {"type": "integer", "title": "Question Id"}}, "type": "object", "required": ["answer", "additional_answer", "question_id"], "title": "ChildAnswerPublic"}, "ChildCreate": {"properties": {"name": {"type": "string", "title": "Name", "default": ""}, "birth_year": {"type": "integer", "title": "Birth Year"}, "birth_month": {"type": "integer", "title": "Birth Month"}, "color": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Color"}}, "type": "object", "required": ["birth_year", "birth_month"], "title": "ChildCreate"}, "ChildPublic": {"properties": {"name": {"type": "string", "title": "Name", "default": ""}, "birth_year": {"type": "integer", "title": "Birth Year"}, "birth_month": {"type": "integer", "title": "Birth Month"}, "color": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Color"}, "id": {"type": "integer", "title": "Id"}, "has_image": {"type": "boolean", "title": "Has Image"}}, "type": "object", "required": ["birth_year", "birth_month", "id", "has_image"], "title": "ChildPublic"}, "ChildQuestionAdmin": {"properties": {"order": {"type": "integer", "title": "Order", "default": 0}, "component": {"type": "string", "title": "Component", "default": "select"}, "type": {"type": "string", "title": "Type", "default": "text"}, "options": {"type": "string", "title": "Options", "default": ""}, "additional_option": {"type": "string", "title": "Additional Option", "default": ""}, "required": {"type": "boolean", "title": "Required", "default": false}, "name": {"type": "string", "title": "Name", "default": ""}, "visibility": {"type": "boolean", "title": "Visibility", "default": false}, "depends_on_question_id": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Depends On Question Id"}, "show_if_answer": {"type": "string", "title": "Show If Answer", "default": ""}, "id": {"type": "integer", "title": "Id"}, "text": {"additionalProperties": {"$ref": "#/components/schemas/ChildQuestionText"}, "type": "object", "title": "Text", "default": {}}}, "type": "object", "required": ["id"], "title": "ChildQuestionAdmin"}, "ChildQuestionPublic": {"properties": {"id": {"type": "integer", "title": "Id"}, "component": {"type": "string", "title": "Component", "default": "select"}, "type": {"type": "string", "title": "Type", "default": "text"}, "text": {"additionalProperties": {"$ref": "#/components/schemas/QuestionTextPublic"}, "type": "object", "title": "Text", "default": {}}, "additional_option": {"type": "string", "title": "Additional Option", "default": ""}, "required": {"type": "boolean", "title": "Required", "default": false}, "name": {"type": "string", "title": "Name", "default": ""}, "depends_on_question_id": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Depends On Question Id"}, "show_if_answer": {"type": "string", "title": "Show If Answer", "default": ""}}, "type": "object", "required": ["id"], "title": "ChildQuestionPublic"}, "ChildQuestionText": {"properties": {"question": {"type": "string", "title": "Question", "default": ""}, "options_json": {"type": "string", "title": "Options Json", "default": ""}, "options": {"type": "string", "title": "Options", "default": ""}, "child_question_id": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Child Question Id"}, "lang_id": {"anyOf": [{"type": "string", "maxLength": 2}, {"type": "null"}], "title": "Lang Id"}}, "type": "object", "title": "ChildQuestionText"}, "ChildSummaryPublic": {"properties": {"name": {"type": "string", "title": "Name", "default": ""}, "birth_year": {"type": "integer", "title": "Birth Year"}, "birth_month": {"type": "integer", "title": "Birth Month"}, "color": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Color"}, "id": {"type": "integer", "title": "Id"}, "has_image": {"type": "boolean", "title": "Has Image"}, "active_answer_session": {"type": "boolean", "title": "Active Answer Session"}, "session_progress": {"type": "number", "title": "Session Progress"}, "session_remaining_seconds": {"type": "number", "title": "Session Remaining Seconds"}}, "type": "object", "required": ["birth_year", "birth_month", "id", "has_image", "active_answer_session", "session_progress", "session_remaining_seconds"], "title": "ChildSummaryPublic"}, "DeleteResponse": {"properties": {"ok": {"type": "boolean", "title": "Ok"}, "dry_run": {"type": "boolean", "title": "Dry Run"}, "children": {"additionalProperties": {"type": "integer"}, "type": "object", "title": "Children"}, "error": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Error", "description": "Error message when present"}}, "type": "object", "required": ["ok", "dry_run", "children"], "title": "DeleteResponse"}, "DocumentAdmin": {"properties": {"title": {"type": "string", "title": "Title", "default": ""}, "description": {"type": "string", "title": "Description", "default": ""}, "filename": {"type": "string", "title": "Filename", "default": ""}, "id": {"type": "integer", "title": "Id"}, "created_at": {"type": "string", "format": "date-time", "title": "Created At"}, "uploaded_by_user_id": {"type": "integer", "title": "Uploaded By User Id"}}, "type": "object", "required": ["id", "created_at", "uploaded_by_user_id"], "title": "DocumentAdmin"}, "DocumentCreate": {"properties": {"title": {"type": "string", "title": "Title", "default": ""}, "description": {"type": "string", "title": "Description", "default": ""}, "filename": {"type": "string", "title": "Filename", "default": ""}}, "type": "object", "title": "DocumentCreate"}, "DocumentPublic": {"properties": {"title": {"type": "string", "title": "Title", "default": ""}, "description": {"type": "string", "title": "Description", "default": ""}, "filename": {"type": "string", "title": "Filename", "default": ""}, "id": {"type": "integer", "title": "Id"}, "created_at": {"type": "string", "format": "date-time", "title": "Created At"}, "uploaded_by_user_id": {"type": "integer", "title": "Uploaded By User Id"}}, "type": "object", "required": ["id", "created_at", "uploaded_by_user_id"], "title": "DocumentPublic"}, "ErrorModel": {"properties": {"detail": {"anyOf": [{"type": "string"}, {"additionalProperties": {"type": "string"}, "type": "object"}], "title": "Detail"}}, "type": "object", "required": ["detail"], "title": "ErrorModel"}, "HTTPValidationError": {"properties": {"detail": {"items": {"$ref": "#/components/schemas/ValidationError"}, "type": "array", "title": "Detail"}}, "type": "object", "title": "HTTPValidationError"}, "ImportCsvResponse": {"properties": {"message": {"type": "string", "title": "Message"}, "children_imported": {"type": "integer", "title": "Children Imported"}}, "type": "object", "required": ["message", "children_imported"], "title": "ImportCsvResponse"}, "ItemOrder": {"properties": {"id": {"type": "integer", "title": "Id"}, "order": {"type": "integer", "title": "Order"}}, "type": "object", "required": ["id", "order"], "title": "ItemOrder"}, "Language": {"properties": {"id": {"type": "string", "maxLength": 2, "title": "Id"}}, "type": "object", "required": ["id"], "title": "Language"}, "MilestoneAdmin": {"properties": {"id": {"type": "integer", "title": "Id"}, "group_id": {"type": "integer", "title": "Group Id"}, "order": {"type": "integer", "title": "Order"}, "expected_age_months": {"type": "integer", "title": "Expected Age Months"}, "relevant_age_min": {"type": "integer", "title": "Relevant Age Min"}, "relevant_age_max": {"type": "integer", "title": "Relevant Age Max"}, "text": {"additionalProperties": {"$ref": "#/components/schemas/MilestoneText"}, "type": "object", "title": "Text"}, "images": {"items": {"$ref": "#/components/schemas/MilestoneImage"}, "type": "array", "title": "Images"}, "name": {"type": "string", "title": "Name"}}, "type": "object", "required": ["id", "group_id", "order", "expected_age_months", "relevant_age_min", "relevant_age_max", "text", "images", "name"], "title": "MilestoneAdmin"}, "MilestoneAgeCurveParams": {"properties": {"mean_answer_achieved": {"type": "number", "exclusiveMaximum": 3.0, "exclusiveMinimum": 0.0, "title": "Mean Answer Achieved", "default": 2.4}, "mean_answer_relevant_min": {"type": "number", "exclusiveMaximum": 3.0, "exclusiveMinimum": 0.0, "title": "Mean Answer Relevant Min", "default": 0.3}, "mean_answer_relevant_max": {"type": "number", "exclusiveMaximum": 3.0, "exclusiveMinimum": 0.0, "title": "Mean Answer Relevant Max", "default": 2.7}, "min_relevant_age_margin_months": {"type": "integer", "minimum": 0.0, "title": "Min Relevant Age Margin Months", "default": 2}}, "type": "object", "title": "MilestoneAgeCurveParams", "description": "How a milestone's expected age and relevant age range are derived from its fitted\nage curve, see `get_milestone_ages_from_curve`. The three thresholds are mean\nanswers on the same 0-3 scale as the curve itself; each is converted to the age at\nwhich the curve reaches it. The margin only widens the relevant age range at the\nend, and does not affect the expected age."}, "MilestoneAgeScore": {"properties": {"milestone_id": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Milestone Id"}, "age": {"type": "integer", "title": "Age"}, "c0": {"type": "integer", "title": "C0"}, "c1": {"type": "integer", "title": "C1"}, "c2": {"type": "integer", "title": "C2"}, "c3": {"type": "integer", "title": "C3"}}, "type": "object", "required": ["age", "c0", "c1", "c2", "c3"], "title": "MilestoneAgeScore"}, "MilestoneAgeScoreCollectionPublic": {"properties": {"milestone_id": {"type": "integer", "title": "Milestone Id"}, "expected_age": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Expected Age"}, "relevant_age_min": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Relevant Age Min"}, "relevant_age_max": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Relevant Age Max"}, "curve_midpoint": {"type": "number", "title": "Curve Midpoint"}, "curve_steepness": {"type": "number", "title": "Curve Steepness"}, "curve_fit_ok": {"type": "boolean", "title": "Curve Fit Ok"}, "curve_n_answers": {"type": "integer", "title": "Curve N Answers"}, "scores": {"items": {"$ref": "#/components/schemas/MilestoneAgeScore"}, "type": "array", "title": "Scores"}}, "type": "object", "required": ["milestone_id", "expected_age", "relevant_age_min", "relevant_age_max", "curve_midpoint", "curve_steepness", "curve_fit_ok", "curve_n_answers", "scores"], "title": "MilestoneAgeScoreCollectionPublic"}, "MilestoneAnswerAnalysis": {"properties": {"milestone_id": {"type": "integer", "title": "Milestone Id"}, "milestone_title": {"additionalProperties": {"type": "string"}, "type": "object", "title": "Milestone Title"}, "milestone_order": {"type": "integer", "title": "Milestone Order"}, "milestone_group_id": {"type": "integer", "title": "Milestone Group Id"}, "milestone_group_name": {"additionalProperties": {"type": "string"}, "type": "object", "title": "Milestone Group Name"}, "milestone_group_order": {"type": "integer", "title": "Milestone Group Order"}, "answer": {"type": "integer", "title": "Answer"}, "avg_answer": {"type": "number", "title": "Avg Answer"}, "stddev_answer": {"type": "number", "title": "Stddev Answer"}}, "type": "object", "required": ["milestone_id", "milestone_title", "milestone_order", "milestone_group_id", "milestone_group_name", "milestone_group_order", "answer", "avg_answer", "stddev_answer"], "title": "MilestoneAnswerAnalysis"}, "MilestoneAnswerPublic": {"properties": {"milestone_id": {"type": "integer", "title": "Milestone Id"}, "answer": {"type": "integer", "title": "Answer"}}, "type": "object", "required": ["milestone_id", "answer"], "title": "MilestoneAnswerPublic"}, "MilestoneAnswerResponse": {"properties": {"answer": {"$ref": "#/components/schemas/MilestoneAnswerPublic"}, "session_completed": {"type": "boolean", "title": "Session Completed"}}, "type": "object", "required": ["answer", "session_completed"], "title": "MilestoneAnswerResponse"}, "MilestoneAnswerSession": {"properties": {"id": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Id"}, "child_id": {"type": "integer", "title": "Child Id"}, "user_id": {"type": "integer", "title": "User Id"}, "created_at": {"type": "string", "format": "date-time", "title": "Created At"}, "expired": {"type": "boolean", "title": "Expired"}, "completed": {"type": "boolean", "title": "Completed"}, "included_in_statistics": {"type": "boolean", "title": "Included In Statistics"}, "suspicious_state": {"type": "string", "title": "Suspicious State"}}, "type": "object", "required": ["child_id", "user_id", "created_at", "expired", "completed", "included_in_statistics"], "title": "MilestoneAnswerSession"}, "MilestoneAnswerSessionAnalysis": {"properties": {"child_age": {"type": "integer", "title": "Child Age"}, "rms": {"type": "number", "title": "Rms"}, "answers": {"items": {"$ref": "#/components/schemas/MilestoneAnswerAnalysis"}, "type": "array", "title": "Answers"}, "child_answer_flags": {"items": {"$ref": "#/components/schemas/ChildAnswerAnalysisFlag"}, "type": "array", "title": "Child Answer Flags"}}, "type": "object", "required": ["child_age", "rms", "answers", "child_answer_flags"], "title": "MilestoneAnswerSessionAnalysis"}, "MilestoneAnswerSessionPublic": {"properties": {"id": {"type": "integer", "title": "Id"}, "child_id": {"type": "integer", "title": "Child Id"}, "created_at": {"type": "string", "format": "date-time", "title": "Created At"}, "answers": {"additionalProperties": {"$ref": "#/components/schemas/MilestoneAnswerPublic"}, "type": "object", "title": "Answers"}}, "type": "object", "required": ["id", "child_id", "created_at", "answers"], "title": "MilestoneAnswerSessionPublic"}, "MilestoneGroupAdmin": {"properties": {"id": {"type": "integer", "title": "Id"}, "order": {"type": "integer", "title": "Order"}, "text": {"additionalProperties": {"$ref": "#/components/schemas/MilestoneGroupText"}, "type": "object", "title": "Text"}, "milestones": {"items": {"$ref": "#/components/schemas/MilestoneAdmin"}, "type": "array", "title": "Milestones"}}, "type": "object", "required": ["id", "order", "text", "milestones"], "title": "MilestoneGroupAdmin"}, "MilestoneGroupPublic": {"properties": {"id": {"type": "integer", "title": "Id"}, "text": {"additionalProperties": {"$ref": "#/components/schemas/MilestoneGroupTextPublic"}, "type": "object", "title": "Text"}, "milestones": {"items": {"$ref": "#/components/schemas/MilestonePublic"}, "type": "array", "title": "Milestones"}}, "type": "object", "required": ["id", "text", "milestones"], "title": "MilestoneGroupPublic"}, "MilestoneGroupText": {"properties": {"title": {"type": "string", "title": "Title", "default": ""}, "desc": {"type": "string", "title": "Desc", "default": ""}, "group_id": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Group Id"}, "lang_id": {"anyOf": [{"type": "string", "maxLength": 2}, {"type": "null"}], "title": "Lang Id"}}, "type": "object", "title": "MilestoneGroupText"}, "MilestoneGroupTextPublic": {"properties": {"title": {"type": "string", "title": "Title", "default": ""}, "desc": {"type": "string", "title": "Desc", "default": ""}}, "type": "object", "title": "MilestoneGroupTextPublic"}, "MilestoneImage": {"properties": {"id": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Id"}, "milestone_id": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Milestone Id"}}, "type": "object", "title": "MilestoneImage"}, "MilestoneImagePublic": {"properties": {"id": {"type": "integer", "title": "Id"}}, "type": "object", "required": ["id"], "title": "MilestoneImagePublic"}, "MilestonePublic": {"properties": {"id": {"type": "integer", "title": "Id"}, "text": {"additionalProperties": {"$ref": "#/components/schemas/MilestoneTextPublic"}, "type": "object", "title": "Text"}, "images": {"items": {"$ref": "#/components/schemas/MilestoneImagePublic"}, "type": "array", "title": "Images"}, "name": {"type": "string", "title": "Name"}}, "type": "object", "required": ["id", "text", "images", "name"], "title": "MilestonePublic"}, "MilestoneText": {"properties": {"title": {"type": "string", "title": "Title", "default": ""}, "desc": {"type": "string", "title": "Desc", "default": ""}, "obs": {"type": "string", "title": "Obs", "default": ""}, "help": {"type": "string", "title": "Help", "default": ""}, "importance": {"type": "string", "title": "Importance", "default": ""}, "milestone_id": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Milestone Id"}, "lang_id": {"anyOf": [{"type": "string", "maxLength": 2}, {"type": "null"}], "title": "Lang Id"}}, "type": "object", "title": "MilestoneText"}, "MilestoneTextPublic": {"properties": {"title": {"type": "string", "title": "Title", "default": ""}, "desc": {"type": "string", "title": "Desc", "default": ""}, "obs": {"type": "string", "title": "Obs", "default": ""}, "help": {"type": "string", "title": "Help", "default": ""}, "importance": {"type": "string", "title": "Importance", "default": ""}}, "type": "object", "title": "MilestoneTextPublic"}, "QuestionTextPublic": {"properties": {"question": {"type": "string", "title": "Question", "default": ""}, "options_json": {"type": "string", "title": "Options Json", "default": ""}, "options": {"type": "string", "title": "Options", "default": ""}}, "type": "object", "title": "QuestionTextPublic"}, "ResearchGroup": {"properties": {"id": {"type": "integer", "title": "Id"}}, "type": "object", "required": ["id"], "title": "ResearchGroup"}, "SessionReauthentication": {"properties": {"password": {"type": "string", "format": "password", "title": "Password", "writeOnly": true}}, "type": "object", "required": ["password"], "title": "SessionReauthentication"}, "StatisticsUpdateResult": {"properties": {"answer_sessions": {"type": "integer", "title": "Answer Sessions"}, "answers": {"type": "integer", "title": "Answers"}, "runtime_seconds": {"type": "number", "title": "Runtime Seconds"}}, "type": "object", "required": ["answer_sessions", "answers", "runtime_seconds"], "title": "StatisticsUpdateResult", "description": "Result of a statistics recalculation, used to build a localized summary in the UI."}, "UserAnswerPublic": {"properties": {"answer": {"type": "string", "title": "Answer"}, "additional_answer": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Additional Answer"}, "question_id": {"type": "integer", "title": "Question Id"}}, "type": "object", "required": ["answer", "additional_answer", "question_id"], "title": "UserAnswerPublic"}, "UserCreate": {"properties": {"email": {"type": "string", "format": "email", "title": "Email"}, "password": {"type": "string", "title": "Password"}, "is_active": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is Active", "default": true}, "is_superuser": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is Superuser", "default": false}, "is_verified": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is Verified", "default": false}, "research_group_id": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Research Group Id", "default": 0}}, "type": "object", "required": ["email", "password"], "title": "UserCreate"}, "UserQuestionAdmin": {"properties": {"order": {"type": "integer", "title": "Order", "default": 0}, "component": {"type": "string", "title": "Component", "default": "select"}, "type": {"type": "string", "title": "Type", "default": "text"}, "options": {"type": "string", "title": "Options", "default": ""}, "additional_option": {"type": "string", "title": "Additional Option", "default": ""}, "required": {"type": "boolean", "title": "Required", "default": false}, "name": {"type": "string", "title": "Name", "default": ""}, "visibility": {"type": "boolean", "title": "Visibility", "default": false}, "depends_on_question_id": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Depends On Question Id"}, "show_if_answer": {"type": "string", "title": "Show If Answer", "default": ""}, "id": {"type": "integer", "title": "Id"}, "text": {"additionalProperties": {"$ref": "#/components/schemas/UserQuestionText"}, "type": "object", "title": "Text", "default": {}}}, "type": "object", "required": ["id"], "title": "UserQuestionAdmin"}, "UserQuestionPublic": {"properties": {"id": {"type": "integer", "title": "Id"}, "component": {"type": "string", "title": "Component", "default": "select"}, "type": {"type": "string", "title": "Type", "default": "text"}, "text": {"additionalProperties": {"$ref": "#/components/schemas/QuestionTextPublic"}, "type": "object", "title": "Text", "default": {}}, "additional_option": {"type": "string", "title": "Additional Option", "default": ""}, "required": {"type": "boolean", "title": "Required", "default": false}, "name": {"type": "string", "title": "Name", "default": ""}, "depends_on_question_id": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Depends On Question Id"}, "show_if_answer": {"type": "string", "title": "Show If Answer", "default": ""}}, "type": "object", "required": ["id"], "title": "UserQuestionPublic"}, "UserQuestionText": {"properties": {"question": {"type": "string", "title": "Question", "default": ""}, "options_json": {"type": "string", "title": "Options Json", "default": ""}, "options": {"type": "string", "title": "Options", "default": ""}, "user_question_id": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "User Question Id"}, "lang_id": {"anyOf": [{"type": "string", "maxLength": 2}, {"type": "null"}], "title": "Lang Id"}}, "type": "object", "title": "UserQuestionText"}, "UserRead": {"properties": {"id": {"type": "integer", "title": "Id"}, "email": {"type": "string", "format": "email", "title": "Email"}, "is_active": {"type": "boolean", "title": "Is Active", "default": true}, "is_superuser": {"type": "boolean", "title": "Is Superuser", "default": false}, "is_verified": {"type": "boolean", "title": "Is Verified", "default": false}, "is_researcher": {"type": "boolean", "title": "Is Researcher"}, "full_data_access": {"type": "boolean", "title": "Full Data Access"}, "research_group_id": {"type": "integer", "title": "Research Group Id"}}, "type": "object", "required": ["id", "email", "is_researcher", "full_data_access", "research_group_id"], "title": "UserRead"}, "UserUpdate": {"properties": {"password": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Password"}, "email": {"anyOf": [{"type": "string", "format": "email"}, {"type": "null"}], "title": "Email"}, "is_active": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is Active"}, "is_superuser": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is Superuser"}, "is_verified": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is Verified"}, "is_researcher": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is Researcher"}, "full_data_access": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Full Data Access"}, "research_group_id": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Research Group Id"}}, "type": "object", "title": "UserUpdate"}, "ValidationError": {"properties": {"loc": {"items": {"anyOf": [{"type": "string"}, {"type": "integer"}]}, "type": "array", "title": "Location"}, "msg": {"type": "string", "title": "Message"}, "type": {"type": "string", "title": "Error Type"}, "input": {"title": "Input"}, "ctx": {"type": "object", "title": "Context"}}, "type": "object", "required": ["loc", "msg", "type"], "title": "ValidationError"}, "login": {"properties": {"grant_type": {"anyOf": [{"type": "string", "pattern": "^password$"}, {"type": "null"}], "title": "Grant Type"}, "username": {"type": "string", "title": "Username"}, "password": {"type": "string", "format": "password", "title": "Password"}, "scope": {"type": "string", "title": "Scope", "default": ""}, "client_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Client Id"}, "client_secret": {"anyOf": [{"type": "string"}, {"type": "null"}], "format": "password", "title": "Client Secret"}}, "type": "object", "required": ["username", "password"], "title": "Body_auth:cookie.login"}}, "securitySchemes": {"APIKeyCookie": {"type": "apiKey", "in": "cookie", "name": "fastapiusersauth"}}}}