71:@router.post("/import-preview")
72:async def import_preview(file: UploadFile = File(...),
107:            "summary": rpt.summary(),
109:            "invalid_sample": rpt.invalid[:25],
110:            "duplicates_sample": rpt.duplicates[:10],
111:            "suppressed_sample": rpt.suppressed[:10],
117:async def import_commit(list_id: int = Form(...), file: UploadFile = File(...),
163:                    rpt.summary(), request.client.host if request else None)
164:    return {"ok": True, **rpt.summary(), "list_id": list_id}
197:    return {"ok": False, "summary": rpt.summary(),
198:            "invalid": rpt.invalid[:3], "duplicates": rpt.duplicates[:3],
199:            "suppressed": rpt.suppressed[:3]}
