from .domain.models import IngestionRequest, SourceRef from .validation import validate_request def ingest_route(payload: dict, source): request = IngestionRequest(SourceRef(payload.get("repository", ""), payload.get("path", ""), payload.get("revision", "main")), payload.get("destination", "sharepoint")) errors = validate_request(request) if errors: return {"accepted": False, "errors": errors} return {"accepted": True, "documents": len(source.fetch(request))}