Forge Tools ensembl_regulatory
ensembl_regulatory read
scidex.forge.ensembl_regulatory
Query the Ensembl Regulatory Build for regulatory features (promoters, enhancers, open chromatin, CTCF binding sites) overlapping a gene or genomic region. Integrates ENCODE, Roadmap Epigenomics, and Blueprint data, pre-mapped to Ensembl gene coordinates. Input: Ensembl gene ID (e.g. ENSG00000012048 for BRCA1) or genomic region (e.g. 17:41196312-41277500), species (default: human), feature_types filter (promoter/enhancer/ctcf/open_chromatin/all), activity filter (active/inactive/any), and limit. Distinct from forge_encode_epigenomics (raw ENCODE experiments) and forge_jaspar_tfbs (TF binding motif PWMs). REST API: https://rest.ensembl.org/ — free, 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.ensembl_regulatory``.",
"properties": {
"gene_id": {
"anyOf": [
{
"maxLength": 30,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Ensembl gene ID to query (e.g. ``ENSG00000012048`` for BRCA1). Mutually exclusive with ``region``; exactly one is required.",
"title": "Gene Id"
},
"region": {
"anyOf": [
{
"maxLength": 100,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Genomic region in ``chr:start-end`` format (e.g. ``17:41196312-41277500``). Mutually exclusive with ``gene_id``.",
"title": "Region"
},
"species": {
"default": "human",
"description": "Species — common name (``human``, ``mouse``) or Ensembl slug (``homo_sapiens``, ``mus_musculus``). Defaults to ``human``. Required for region queries; ignored for gene_id queries (species is inferred from the Ensembl gene ID).",
"maxLength": 64,
"title": "Species",
"type": "string"
},
"feature_types": {
"description": "List of feature types to include. Supported values: ``all``, ``promoter``, ``enhancer``, ``ctcf``, ``open_chromatin``, ``tf_binding``. ``all`` (default) returns all feature types.",
"items": {
"type": "string"
},
"title": "Feature Types",
"type": "array"
},
"activity": {
"default": "active",
"description": "Activity filter. ``active`` (default) returns features with ACTIVE or unset activity; ``inactive`` returns INACTIVE/POISED/REPRESSED; ``any`` applies no filter.",
"enum": [
"active",
"inactive",
"any"
],
"title": "Activity",
"type": "string"
},
"limit": {
"default": 50,
"description": "Maximum number of regulatory features to return (default 50, max 500).",
"maximum": 500,
"minimum": 1,
"title": "Limit",
"type": "integer"
}
},
"title": "ForgeEnsemblRegulatoryIn",
"type": "object"
}Output schema
{
"$defs": {
"RegulatoryFeature": {
"description": "One regulatory feature from the Ensembl Regulatory Build.",
"properties": {
"id": {
"description": "Ensembl Regulatory Build ID (ENSR...).",
"title": "Id",
"type": "string"
},
"feature_type": {
"description": "Regulatory feature type: Promoter, Enhancer, CTCF Binding Site, TF Binding Site, Open Chromatin, Promoter Flanking Region.",
"title": "Feature Type",
"type": "string"
},
"chromosome": {
"description": "Chromosome / sequence region name.",
"title": "Chromosome",
"type": "string"
},
"start": {
"description": "Genomic start coordinate (1-based, inclusive).",
"title": "Start",
"type": "integer"
},
"end": {
"description": "Genomic end coordinate (1-based, inclusive).",
"title": "End",
"type": "integer"
},
"strand": {
"default": 0,
"description": "Strand: 1 (forward), -1 (reverse), 0 (unstranded).",
"title": "Strand",
"type": "integer"
},
"activity": {
"default": "",
"description": "Activity state from Ensembl Regulatory Build (e.g. ACTIVE, INACTIVE, POISED, REPRESSED, NA).",
"title": "Activity",
"type": "string"
},
"cell_type": {
"default": "",
"description": "Cell type or tissue context for the activity annotation.",
"title": "Cell Type",
"type": "string"
},
"description": {
"default": "",
"description": "Free-text description when available.",
"title": "Description",
"type": "string"
}
},
"required": [
"id",
"feature_type",
"chromosome",
"start",
"end"
],
"title": "RegulatoryFeature",
"type": "object"
}
},
"description": "Response shape for ``scidex.forge.ensembl_regulatory``.",
"properties": {
"query": {
"description": "The gene ID or region that was queried.",
"title": "Query",
"type": "string"
},
"species": {
"description": "Ensembl species slug used for the query.",
"title": "Species",
"type": "string"
},
"results": {
"description": "Regulatory features matching the query and filters.",
"items": {
"$ref": "#/$defs/RegulatoryFeature"
},
"title": "Results",
"type": "array"
},
"total_found": {
"default": 0,
"description": "Number of features returned after filtering.",
"title": "Total Found",
"type": "integer"
},
"not_found": {
"default": false,
"description": "True when no features matched the query and filters.",
"title": "Not Found",
"type": "boolean"
},
"source": {
"default": "Ensembl Regulatory Build",
"description": "Data source: 'Ensembl Regulatory Build'.",
"title": "Source",
"type": "string"
},
"took_ms": {
"default": 0,
"description": "Wall-clock time in milliseconds for the upstream call.",
"title": "Took Ms",
"type": "integer"
}
},
"required": [
"query",
"species"
],
"title": "ForgeEnsemblRegulatoryOut",
"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/ensembl_regulatory' \
-H 'authorization: Bearer $SCIDEX_JWT' \
-H 'content-type: application/json' \
-d '{}'Discussion
No comments yet — be the first.