Forge Tools encode_epigenomics

encode_epigenomics read

scidex.forge.encode_epigenomics

Query the ENCODE Project for epigenomics datasets (ChIP-seq, ATAC-seq, Hi-C, RNA-seq) by gene target, assay type, biosample type, or cell line name. Returns experiment accessions, assay details, biosample information, file counts, and direct ENCODE URLs. ENCODE is the authoritative encyclopedia of regulatory DNA elements across human cell types.

HTTP: POST /api/scidex/forge/encode_epigenomics

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.encode_epigenomics``.",
  "properties": {
    "gene_symbol": {
      "anyOf": [
        {
          "maxLength": 30,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Gene target symbol (e.g. ``TP53``, ``CTCF``). Filters ChIP-seq and other target-enrichment experiments by the gene the assay is targeting. Optional but at least one of ``gene_symbol``, ``assay_type``, or ``biosample_term`` is required.",
      "title": "Gene Symbol"
    },
    "assay_type": {
      "anyOf": [
        {
          "maxLength": 50,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Assay type filter (e.g. ``ChIP-seq``, ``ATAC-seq``, ``Hi-C``, ``RNA-seq``). Matched against ENCODE's ``assay_title`` field. Optional but at least one of ``gene_symbol``, ``assay_type``, or ``biosample_term`` is required.",
      "title": "Assay Type"
    },
    "biosample_type": {
      "anyOf": [
        {
          "maxLength": 50,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Biosample type filter (e.g. ``cell line``, ``tissue``, ``primary cell``). Matches ENCODE's ``biosample_ontology.classification``.",
      "title": "Biosample Type"
    },
    "biosample_term": {
      "anyOf": [
        {
          "maxLength": 100,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Biosample term name (e.g. ``K562``, ``HepG2``, ``liver``). Matches ENCODE's ``biosample_ontology.term_name``. At least one of ``gene_symbol``, ``assay_type``, or ``biosample_term`` is required.",
      "title": "Biosample Term"
    },
    "limit": {
      "default": 10,
      "description": "Maximum number of experiments to return (1–100, default 10).",
      "maximum": 100,
      "minimum": 1,
      "title": "Limit",
      "type": "integer"
    }
  },
  "title": "ForgeENCODEIn",
  "type": "object"
}
Output schema
{
  "$defs": {
    "ENCODEExperiment": {
      "description": "One ENCODE experiment in the response.",
      "properties": {
        "accession": {
          "description": "ENCODE accession (e.g. ``ENCSR000AEM``).",
          "title": "Accession",
          "type": "string"
        },
        "assay_title": {
          "description": "Assay type (e.g. ``ChIP-seq``, ``ATAC-seq``).",
          "title": "Assay Title",
          "type": "string"
        },
        "target": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Gene target label for ChIP-seq experiments; ``None`` for untargeted assays.",
          "title": "Target"
        },
        "biosample_term": {
          "description": "Cell type or tissue name (e.g. ``K562``).",
          "title": "Biosample Term",
          "type": "string"
        },
        "biosample_type": {
          "description": "Biosample classification (e.g. ``cell line``, ``tissue``).",
          "title": "Biosample Type",
          "type": "string"
        },
        "status": {
          "description": "Release status (e.g. ``released``, ``archived``).",
          "title": "Status",
          "type": "string"
        },
        "file_count": {
          "description": "Number of data files associated with this experiment.",
          "title": "File Count",
          "type": "integer"
        },
        "lab": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Submitting lab name.",
          "title": "Lab"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Free-text experiment description.",
          "title": "Description"
        },
        "encode_url": {
          "description": "Direct URL to the ENCODE experiment page.",
          "title": "Encode Url",
          "type": "string"
        }
      },
      "required": [
        "accession",
        "assay_title",
        "biosample_term",
        "biosample_type",
        "status",
        "file_count",
        "encode_url"
      ],
      "title": "ENCODEExperiment",
      "type": "object"
    }
  },
  "description": "Response shape for ``scidex.forge.encode_epigenomics``.",
  "properties": {
    "experiments": {
      "description": "Matching ENCODE experiments, capped at ``limit``.",
      "items": {
        "$ref": "#/$defs/ENCODEExperiment"
      },
      "title": "Experiments",
      "type": "array"
    },
    "total_found": {
      "default": 0,
      "description": "Total ENCODE experiments matching the query (may exceed ``len(experiments)``).",
      "title": "Total Found",
      "type": "integer"
    },
    "took_ms": {
      "description": "Wall-clock time for the upstream call.",
      "title": "Took Ms",
      "type": "integer"
    }
  },
  "required": [
    "took_ms"
  ],
  "title": "ForgeENCODEOut",
  "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/encode_epigenomics' \
  -H 'authorization: Bearer $SCIDEX_JWT' \
  -H 'content-type: application/json' \
  -d '{}'

Discussion

Posting anonymously. Sign in for attribution.

No comments yet — be the first.