Forge Tools regulome_db

regulome_db read

scidex.forge.regulome_db

Query ENCODE RegulomeDB for regulatory annotations at variant positions. For each rsID or chr:position, returns the RegulomeDB score (1a–7), functional category (functional / likely_functional / not_functional), TF ChIP-seq experiments, chromatin accessibility (DNase/ATAC), eQTL gene links, and nearby gene annotation. Bridges variant identification (dbSNP, gnomAD) with mechanistic interpretation of which regulatory elements are disrupted. Up to 20 variants per call, parallelised at 5 concurrent. API: https://regulomedb.org/regulome-search/ — free, no auth required.

HTTP: POST /api/scidex/forge/regulome_db

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
{
  "$defs": {
    "RegulomeVariantQuery": {
      "additionalProperties": false,
      "description": "A single variant to query in RegulomeDB.\n\nProvide either:\n\n* ``rsid`` — dbSNP rsID (e.g. ``rs10748017``)\n* ``chromosome`` + ``position`` — 1-based genomic coordinates",
      "properties": {
        "rsid": {
          "anyOf": [
            {
              "maxLength": 32,
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "dbSNP rsID (e.g. 'rs10748017'). Mutually exclusive with chromosome/position.",
          "title": "Rsid"
        },
        "chromosome": {
          "anyOf": [
            {
              "maxLength": 10,
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Chromosome designator (e.g. '1', 'X', 'MT'). Use with position; mutually exclusive with rsid.",
          "title": "Chromosome"
        },
        "position": {
          "anyOf": [
            {
              "minimum": 1,
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "1-based genomic position. Use with chromosome; mutually exclusive with rsid.",
          "title": "Position"
        }
      },
      "title": "RegulomeVariantQuery",
      "type": "object"
    }
  },
  "additionalProperties": false,
  "description": "Input schema for ``scidex.forge.regulome_db``.",
  "properties": {
    "variants": {
      "description": "Variant queries to annotate (1–20). Each must have either ``rsid`` or ``chromosome`` + ``position``.",
      "items": {
        "$ref": "#/$defs/RegulomeVariantQuery"
      },
      "title": "Variants",
      "type": "array"
    },
    "genome": {
      "default": "GRCh38",
      "description": "Reference genome assembly: 'GRCh38' (default) or 'GRCh37'.",
      "title": "Genome",
      "type": "string"
    }
  },
  "required": [
    "variants"
  ],
  "title": "ForgeRegulomeDBIn",
  "type": "object"
}
Output schema
{
  "$defs": {
    "RegulomeResult": {
      "description": "Regulatory annotation for one variant from RegulomeDB.",
      "properties": {
        "query": {
          "description": "Input variant identifier (rsID or chr:pos) that produced this result.",
          "title": "Query",
          "type": "string"
        },
        "rsids": {
          "description": "dbSNP rsIDs overlapping this variant position.",
          "items": {
            "type": "string"
          },
          "title": "Rsids",
          "type": "array"
        },
        "chromosome": {
          "default": "",
          "description": "Chromosome designator without 'chr' prefix (e.g. '1', 'X').",
          "title": "Chromosome",
          "type": "string"
        },
        "position": {
          "default": 0,
          "description": "1-based genomic position.",
          "title": "Position",
          "type": "integer"
        },
        "regulome_score": {
          "default": "0",
          "description": "RegulomeDB score string (e.g. '1a', '2b', '6'). '0' means no regulatory evidence found.",
          "title": "Regulome Score",
          "type": "string"
        },
        "score_category": {
          "default": "not_functional",
          "description": "Functional category derived from the RegulomeDB score: 'functional' (1a-1f), 'likely_functional' (2a-2c, 3a-3b, 4), or 'not_functional' (5-7, 0).",
          "title": "Score Category",
          "type": "string"
        },
        "tf_binding_experiments": {
          "description": "TF ChIP-seq experiments overlapping the variant, formatted as 'TARGET in BIOSAMPLE' (e.g. 'CTCF in K562').",
          "items": {
            "type": "string"
          },
          "title": "Tf Binding Experiments",
          "type": "array"
        },
        "chromatin_accessible": {
          "default": false,
          "description": "True if a DNase-seq or ATAC-seq peak covers this variant position.",
          "title": "Chromatin Accessible",
          "type": "boolean"
        },
        "eqtl_genes": {
          "description": "Gene symbols with an eQTL association at this variant locus.",
          "items": {
            "type": "string"
          },
          "title": "Eqtl Genes",
          "type": "array"
        },
        "nearby_genes": {
          "description": "Gene symbols in the ENCODE genomic vicinity annotation.",
          "items": {
            "type": "string"
          },
          "title": "Nearby Genes",
          "type": "array"
        },
        "regulomedb_url": {
          "description": "Direct URL to the RegulomeDB search page for this variant.",
          "title": "Regulomedb Url",
          "type": "string"
        }
      },
      "required": [
        "query",
        "regulomedb_url"
      ],
      "title": "RegulomeResult",
      "type": "object"
    }
  },
  "description": "Response shape for ``scidex.forge.regulome_db``.",
  "properties": {
    "results": {
      "description": "Regulatory annotation results, one per found variant.",
      "items": {
        "$ref": "#/$defs/RegulomeResult"
      },
      "title": "Results",
      "type": "array"
    },
    "not_found": {
      "description": "Query labels for variants with no data in RegulomeDB (e.g. unknown rsIDs or positions with no regulatory evidence).",
      "items": {
        "type": "string"
      },
      "title": "Not Found",
      "type": "array"
    },
    "took_ms": {
      "description": "Wall-clock time for all upstream API calls.",
      "title": "Took Ms",
      "type": "integer"
    }
  },
  "required": [
    "took_ms"
  ],
  "title": "ForgeRegulomeDBOut",
  "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/regulome_db' \
  -H 'authorization: Bearer $SCIDEX_JWT' \
  -H 'content-type: application/json' \
  -d '{
  "variants": []
}'

Discussion

Posting anonymously. Sign in for attribution.

No comments yet — be the first.