from fastapi import FastAPI
from pydantic import BaseModel
from datetime import datetime

app = FastAPI(
    title="Chatbot API",
    version="1.0.0"
)


class ChatRequest(BaseModel):
    message: str


class ChatResponse(BaseModel):
    reply: str
    timestamp: str


@app.get("/")
def home():
    return {
        "status": "success",
        "message": "Chatbot API is running"
    }


@app.get("/health")
def health():
    return {
        "status": "healthy"
    }


@app.post("/chat", response_model=ChatResponse)
def chat(request: ChatRequest):

    user_message = request.message

    # TODO:
    # Add your actual chatbot / LLM logic here.

    reply = f"You said: {user_message}"

    return ChatResponse(
        reply=reply,
        timestamp=datetime.now().isoformat()
    )
