Identifier Semantics

  • normalized_gene_id is the final NCBI Gene ID.
  • normalized_gene_name is the normalized gene symbol/name used to group gene cards.
  • Function-level data comes from protein_functions; normalized identifiers come from normalized_protein_functions; publication metadata comes from papers.

Endpoints

MethodEndpointPurpose
GET/api/schemaValidate required tables and columns.
GET/api/statsCounts, distributions, and top summaries.
GET/api/searchReturn grouped gene cards.
GET/api/functionsReturn function-level records.
GET/api/gene/id/<gene_id>Function rows by exact NCBI Gene ID.
GET/api/gene/name/<gene_name>Gene card by normalized gene name.
POST/api/batchBatch search over gene names and NCBI Gene IDs.
POST/api/advancedRule-based filtering over allowed fields.
GET/api/normalized/external-db-annotationCross-database presence check using gene-group IDs, mapped UniProt accessions, and name/synonym terms.
GET/api/functions/wordcloudPNG bigram wordcloud for function_name only or name+description.
GET/api/export/searchExport filtered function rows as CSV, TSV, or JSON.

Parameters

Search filters

gene_name, normalized_gene_name: exact normalized gene-name match.

gene_id, normalized_gene_id, ncbi_gene_id: exact NCBI Gene ID match.

q: broad text search across gene, function, evidence, PMID/DOI, and paper fields.

function_type, species, localization, switching_mechanism, tumour_related: optional filters.

Advanced fields

Allowed fields include normalized_gene_name, normalized_gene_id, gene_name, protein_name, function_name, function_description, function_type, species, localization, switching_mechanism, tissues, tumour_context, source_sentences, go_slims, pmid, doi, title, abstract, and journal.

External DB annotation and wordcloud parameters

/api/normalized/external-db-annotation: accepts gene_name and/or gene_id.

The resolver expands to all gene IDs in the same normalized gene card, maps all related UniProt accessions, and then checks MoonProt, MoonDB (curated + predicted), and MultiTaskProtDB caches.

MoonDB returns both combined presence (moondb) and source detail IDs (moondb_curated_ids, moondb_predicted_ids).

/api/functions/wordcloud: type=canonical|moonlighting|all, mode=name_only|name_plus_description, optional gene_name.

Examples

Gene-card search
curl '/api/search?gene_name=TP53&function_type=moonlighting&species=Homo%20sapiens'
Batch search
curl -X POST '/api/batch' \
  -H 'Content-Type: application/json' \
  -d '{"genes":["TP53","BRCA1","7157"],"function_type":"all"}'
Advanced search
curl -X POST '/api/advanced' \
  -H 'Content-Type: application/json' \
  -d '{
    "logic":"AND",
    "conditions":[
      {"field":"localization","operator":"contains","value":"nucleus"},
      {"field":"function_type","operator":"equals","value":"moonlighting"}
    ],
    "limit":1000
  }'
External DB annotation
curl '/api/normalized/external-db-annotation?gene_name=GAPDH'
Wordcloud (name + description)
curl '/api/functions/wordcloud?type=all&mode=name_plus_description&gene_name=GAPDH' --output cloud.png

Exports

The export endpoint returns function rows, not grouped cards. Supported formats are csv, tsv, and json.

Export example
curl '/api/export/search?gene_id=7157&format=csv'