File size: 844 Bytes
1ce499f
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import json
from fastapi import APIRouter, Depends, HTTPException
from app.database import get_db
from app.repository import list_objects, get_object, object_pairs
router=APIRouter(prefix="/api/v1/objects", tags=["objects"])
@router.get("")
def get_objects(limit:int=100, db=Depends(get_db)): return list_objects(db, limit)
@router.get("/{object_id}")
def get_object_detail(object_id:str, db=Depends(get_db)):
    obj=get_object(db, object_id)
    if not obj: raise HTTPException(status_code=404, detail="Object not found")
    return obj
@router.get("/{object_id}/pairs")
def get_object_related_pairs(object_id:str, limit:int=25, db=Depends(get_db)):
    rows=object_pairs(db, object_id, limit)
    return [{"pair_id":r.pair_id,"final_score":r.final_score,"risk_label":r.risk_label,"top_factors":json.loads(r.top_factors_json)} for r in rows]