f1tness_parser/app/api/v1/endpoints/parser.py

27 lines
No EOL
863 B
Python

from fastapi import APIRouter, HTTPException
from typing import List
from app.schemas.parser import ParseRequest, ParseResponse
from app.core.services.parser_service import ParserService
router = APIRouter()
parser_service = ParserService()
@router.post("/parse", response_model=List[ParseResponse])
async def parse_training_data(request: ParseRequest):
try:
result = await parser_service.parse_data(request)
return result
except Exception as e:
raise HTTPException(status_code=500, detail=str(e))
@router.get("/supported-formats")
async def get_supported_formats():
return {
"formats": [
{"name": "apple", "description": "Apple Notes format"},
{"name": "obsidian", "description": "Obsidian Markdown format"},
{"name": "text", "description": "Plain text format"}
]
}