Shopify_AI / app /api /routes.py
Prerna43's picture
shopify_ai
80ef840
Raw
History Blame Contribute Delete
1.21 kB
from fastapi import APIRouter
from fastapi.responses import PlainTextResponse
from app.api.schemas import TicketRequest, TicketResponse
from app.rag.ingest import ingest_policies
from app.rag.vector_store import collection_count
from app.workflows.langgraph_workflow import CustomerSupportWorkflow
router = APIRouter(prefix="/api", tags=["support"])
workflow = CustomerSupportWorkflow()
@router.get("/health")
def health() -> dict:
return {"status": "ok"}
@router.get("/rag/status")
def rag_status() -> dict:
return {"collection_count": collection_count()}
@router.post("/rag/ingest")
def ingest_rag() -> dict:
return ingest_policies(reset=True)
@router.post("/tickets", response_model=TicketResponse)
def submit_ticket(request: TicketRequest) -> dict:
return workflow.run(
customer_id=request.customer_id,
message=request.message,
order_id=request.order_id,
)
@router.post("/tickets/text", response_class=PlainTextResponse)
def submit_ticket_text(request: TicketRequest) -> str:
result = workflow.run(
customer_id=request.customer_id,
message=request.message,
order_id=request.order_id,
)
return result["response"]