File size: 662 Bytes
5b6700c
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# genesis/api_clients/bioportal_api.py
import requests
import os

BIOPORTAL_API_KEY = os.getenv("BIOPORTAL_API_KEY")
BASE_URL = "https://data.bioontology.org"

def search_bioportal(query: str):
    """Search BioPortal for ontologies, classes, or terms."""
    url = f"{BASE_URL}/search"
    params = {"q": query, "apikey": BIOPORTAL_API_KEY}
    r = requests.get(url, params=params)
    r.raise_for_status()
    return r.json()

def get_ontology_list():
    """Get list of available ontologies."""
    url = f"{BASE_URL}/ontologies"
    params = {"apikey": BIOPORTAL_API_KEY}
    r = requests.get(url, params=params)
    r.raise_for_status()
    return r.json()