# Entity: Message ```python from fastapi import APIRouter, Depends, HTTPException, status from sqlalchemy.orm import Session from typing import List from core.database import get_db from models.message import Message from schemas.message import MessageSchema, MessageCreate router = APIRouter() @router.get("/messages/{user_id}", response_model=List[MessageSchema]) async def get_user_messages( user_id: int, db: Session = Depends(get_db) ): messages = db.query(Message).filter( (Message.sender_id == user_id) | (Message.receiver_id == user_id) ).all() if not messages: raise HTTPException( status_code=status.HTTP_404_NOT_FOUND, detail="No messages found for this user" ) return messages ```