authorised access

This commit is contained in:
Krishav Raj Singh 2025-07-02 15:35:32 +05:30
parent d506b0b63b
commit 01605a99bf
1 changed files with 11 additions and 2 deletions

View File

@ -1,6 +1,7 @@
from pydantic import BaseModel, Field from pydantic import BaseModel, Field
from fastapi import APIRouter, HTTPException from fastapi import APIRouter, Depends, HTTPException
from services.supabase import DBConnection from services.supabase import DBConnection
from utils.auth_utils import get_current_user_id_from_jwt, verify_thread_access
router = APIRouter(prefix="/feedback", tags=["feedback"]) router = APIRouter(prefix="/feedback", tags=["feedback"])
@ -11,9 +12,17 @@ class FeedbackRequest(BaseModel):
db = DBConnection() db = DBConnection()
@router.post("/") @router.post("/")
async def submit_feedback(request: FeedbackRequest): async def submit_feedback(request: FeedbackRequest, user_id: str = Depends(get_current_user_id_from_jwt)):
try: try:
client = await db.client client = await db.client
thread = await client.table('messages').select('thread_id').eq('message_id', request.message_id).single().execute()
if not thread.data:
raise HTTPException(status_code=404, detail="Message not found")
thread_id = thread.data['thread_id']
await verify_thread_access(client, thread_id, user_id)
feedback_data = { feedback_data = {
'message_id': request.message_id, 'message_id': request.message_id,