Forge Tools human_protein_atlas
human_protein_atlas read
scidex.forge.human_protein_atlas
Query the Human Protein Atlas for protein-level expression data. Returns tissue/cell-type expression (Not detected/Low/Medium/High) with antibody reliability scores, subcellular compartment locations, and protein class annotations. Complements GTEx (mRNA) with protein-level evidence. Free REST API — no auth required.
Invoke
Calls scidex.tool.invoke on the substrate with
this tool name. Edit the JSON below — it must match the
input schema. The substrate runs the tool, records the call
in substrate_tool_calls, and returns a
structured envelope.
Sign in to invoke this tool. Schema and curl snippet are visible to anyone.
Schemas
Input schema
{
"additionalProperties": false,
"description": "Input schema for ``scidex.forge.human_protein_atlas``.",
"properties": {
"gene_symbol": {
"description": "HGNC gene symbol to query (e.g. ``TP53``, ``BRCA1``, ``EGFR``). Case-insensitive — normalised to uppercase before lookup.",
"maxLength": 30,
"minLength": 1,
"title": "Gene Symbol",
"type": "string"
},
"data_types": {
"description": "Which HPA data sections to populate. Valid values: ``tissue`` (tissue/cell-type expression), ``subcellular`` (subcellular compartments), ``pathology`` (cancer pathology summary). Defaults to ``['tissue', 'subcellular']``.",
"items": {
"type": "string"
},
"title": "Data Types",
"type": "array"
},
"limit": {
"default": 20,
"description": "Maximum number of tissue expression rows to return (default 20).",
"maximum": 200,
"minimum": 1,
"title": "Limit",
"type": "integer"
}
},
"required": [
"gene_symbol"
],
"title": "ForgeHPAIn",
"type": "object"
}Output schema
{
"$defs": {
"HPAPathology": {
"description": "Cancer-pathology expression summary for one cancer type.",
"properties": {
"cancer": {
"description": "Cancer type label.",
"title": "Cancer",
"type": "string"
},
"high": {
"default": 0,
"description": "Samples with high expression.",
"title": "High",
"type": "integer"
},
"medium": {
"default": 0,
"description": "Samples with medium expression.",
"title": "Medium",
"type": "integer"
},
"low": {
"default": 0,
"description": "Samples with low expression.",
"title": "Low",
"type": "integer"
},
"not_detected": {
"default": 0,
"description": "Samples with no detected expression.",
"title": "Not Detected",
"type": "integer"
}
},
"required": [
"cancer"
],
"title": "HPAPathology",
"type": "object"
},
"HPATissueExpression": {
"description": "One tissue-level expression row in the response.",
"properties": {
"tissue": {
"description": "Tissue name (e.g. 'liver', 'brain').",
"title": "Tissue",
"type": "string"
},
"cell_type": {
"default": "",
"description": "Cell type within the tissue.",
"title": "Cell Type",
"type": "string"
},
"level": {
"default": "",
"description": "Protein expression level: 'Not detected', 'Low', 'Medium', or 'High'.",
"title": "Level",
"type": "string"
},
"reliability": {
"default": "",
"description": "Antibody reliability score: 'Enhanced', 'Supported', 'Approved', or 'Uncertain'.",
"title": "Reliability",
"type": "string"
}
},
"required": [
"tissue"
],
"title": "HPATissueExpression",
"type": "object"
}
},
"description": "Response shape for ``scidex.forge.human_protein_atlas``.",
"properties": {
"gene_symbol": {
"description": "Normalised (uppercase) gene symbol queried.",
"title": "Gene Symbol",
"type": "string"
},
"ensembl_gene_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Ensembl gene ID (e.g. ``ENSG00000141510``). ``None`` when not resolved.",
"title": "Ensembl Gene Id"
},
"tissues": {
"description": "Tissue and cell-type expression rows (populated when 'tissue' in data_types).",
"items": {
"$ref": "#/$defs/HPATissueExpression"
},
"title": "Tissues",
"type": "array"
},
"subcellular_locations": {
"description": "Subcellular compartments (populated when 'subcellular' in data_types). E.g. ['Nucleus', 'Cytoplasm'].",
"items": {
"type": "string"
},
"title": "Subcellular Locations",
"type": "array"
},
"protein_class": {
"description": "HPA functional protein class labels (e.g. 'Transcription factors').",
"items": {
"type": "string"
},
"title": "Protein Class",
"type": "array"
},
"pathology_data": {
"anyOf": [
{
"items": {
"$ref": "#/$defs/HPAPathology"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"description": "Cancer-pathology expression summary (populated when 'pathology' in data_types). ``None`` when not requested or no pathology data available.",
"title": "Pathology Data"
},
"took_ms": {
"description": "Wall-clock time for the upstream HPA call.",
"title": "Took Ms",
"type": "integer"
}
},
"required": [
"gene_symbol",
"took_ms"
],
"title": "ForgeHPAOut",
"type": "object"
}curl snippet
Replace $SCIDEX_JWT with a valid bearer token. Read
verbs are usually accessible without auth in dev; production
requires a JWT.
curl -sS -X POST '/api/scidex/forge/human_protein_atlas' \
-H 'authorization: Bearer $SCIDEX_JWT' \
-H 'content-type: application/json' \
-d '{
"gene_symbol": ""
}'Discussion
No comments yet — be the first.