Skip to content

Commit 73de569

Browse files
committed
Enhance API documentation: Add summaries and response descriptions for variant endpoints
1 parent ee2d725 commit 73de569

File tree

1 file changed

+26
-3
lines changed

1 file changed

+26
-3
lines changed

src/mavedb/routers/variants.py

Lines changed: 26 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,19 +25,38 @@
2525
)
2626

2727
router = APIRouter(
28-
prefix="/api/v1", tags=["Variants"], responses={404: {"description": "Not found"}}, route_class=LoggedRoute
28+
prefix="/api/v1",
29+
tags=["Variants"],
30+
responses={
31+
404: {"description": "Not found"},
32+
500: {"description": "Internal server error"},
33+
},
34+
route_class=LoggedRoute,
2935
)
3036

3137
logger = logging.getLogger(__name__)
3238

3339

34-
@router.post("/variants/clingen-allele-id-lookups", response_model=list[ClingenAlleleIdVariantLookupResponse])
40+
@router.post(
41+
"/variants/clingen-allele-id-lookups",
42+
status_code=200,
43+
response_model=list[ClingenAlleleIdVariantLookupResponse],
44+
responses={
45+
400: {"description": "Bad request"},
46+
401: {"description": "Not authenticated"},
47+
403: {"description": "User lacks necessary permissions"},
48+
},
49+
summary="Lookup variants by ClinGen Allele IDs",
50+
)
3551
def lookup_variants(
3652
*,
3753
request: ClingenAlleleIdVariantLookupsRequest,
3854
db: Session = Depends(deps.get_db),
3955
user_data: UserData = Depends(get_current_user),
4056
):
57+
"""
58+
Lookup variants by ClinGen Allele IDs.
59+
"""
4160
save_to_logging_context({"requested_resource": "clingen-allele-id-lookups"})
4261
save_to_logging_context({"clingen_allele_ids_to_lookup": request.clingen_allele_ids})
4362
logger.debug(msg="Looking up variants by Clingen Allele IDs", extra=logging_context())
@@ -409,8 +428,12 @@ def lookup_variants(
409428
"/variants/{urn}",
410429
status_code=200,
411430
response_model=VariantEffectMeasurementWithScoreSet,
412-
responses={404: {}, 500: {}},
431+
responses={
432+
401: {"description": "Not authenticated"},
433+
403: {"description": "User lacks necessary permissions"},
434+
},
413435
response_model_exclude_none=True,
436+
summary="Fetch variant by URN",
414437
)
415438
def get_variant(*, urn: str, db: Session = Depends(deps.get_db), user_data: UserData = Depends(get_current_user)):
416439
"""

0 commit comments

Comments
 (0)