Forge Tools chembl_target

chembl_target read

scidex.forge.chembl_target

Query EBI ChEMBL (15K+ targets, 2M+ compounds) for drug targets by gene name or UniProt accession. Returns target classification (SINGLE PROTEIN, PROTEIN FAMILY, …), organism, and component gene symbols + UniProt IDs. Bridges genomic targets to ChEMBL's bioactivity data — use the returned target_chembl_id with forge_chembl_activity to retrieve all assay measurements for that target. API: GET https://www.ebi.ac.uk/chembl/api/data/target.json — free, no auth required.

HTTP: POST /api/scidex/forge/chembl_target

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.chembl_target``.",
  "properties": {
    "query": {
      "description": "Query string.  When ``query_type='gene_name'`` this is a gene symbol or name fragment (e.g. ``'EGFR'``).  When ``query_type='uniprot_id'`` this is a UniProt accession (e.g. ``'P00533'``).",
      "maxLength": 100,
      "title": "Query",
      "type": "string"
    },
    "query_type": {
      "default": "gene_name",
      "description": "How to interpret ``query``.  ``'gene_name'`` searches by preferred target name (case-insensitive contains); ``'uniprot_id'`` looks up by UniProt accession (exact match).  Default: ``'gene_name'``.",
      "title": "Query Type",
      "type": "string"
    },
    "limit": {
      "default": 10,
      "description": "Maximum number of target records to return.",
      "maximum": 100,
      "minimum": 1,
      "title": "Limit",
      "type": "integer"
    }
  },
  "required": [
    "query"
  ],
  "title": "ForgeChemblTargetIn",
  "type": "object"
}
Output schema
{
  "$defs": {
    "ChemblTarget": {
      "description": "One ChEMBL target record.",
      "properties": {
        "target_chembl_id": {
          "description": "ChEMBL target identifier (e.g. 'CHEMBL203').",
          "title": "Target Chembl Id",
          "type": "string"
        },
        "pref_name": {
          "default": "",
          "description": "Preferred name for this target.",
          "title": "Pref Name",
          "type": "string"
        },
        "target_type": {
          "default": "",
          "description": "Target classification: 'SINGLE PROTEIN', 'PROTEIN FAMILY', 'PROTEIN COMPLEX', 'ORGANISM', etc.",
          "title": "Target Type",
          "type": "string"
        },
        "organism": {
          "default": "",
          "description": "Source organism (e.g. 'Homo sapiens', 'Mus musculus').",
          "title": "Organism",
          "type": "string"
        },
        "components": {
          "description": "Protein components of this target with UniProt accession and gene symbol.",
          "items": {
            "$ref": "#/$defs/ChemblTargetComponent"
          },
          "title": "Components",
          "type": "array"
        }
      },
      "required": [
        "target_chembl_id"
      ],
      "title": "ChemblTarget",
      "type": "object"
    },
    "ChemblTargetComponent": {
      "description": "One protein component of a ChEMBL target.",
      "properties": {
        "accession": {
          "default": "",
          "description": "UniProt accession for this component (e.g. 'P00533' for EGFR).",
          "title": "Accession",
          "type": "string"
        },
        "gene_name": {
          "default": "",
          "description": "HGNC gene symbol extracted from component synonyms (e.g. 'EGFR').",
          "title": "Gene Name",
          "type": "string"
        },
        "component_type": {
          "default": "",
          "description": "Component type: 'PROTEIN', 'DNA', 'RNA', etc.",
          "title": "Component Type",
          "type": "string"
        }
      },
      "title": "ChemblTargetComponent",
      "type": "object"
    }
  },
  "description": "Response shape for ``scidex.forge.chembl_target``.",
  "properties": {
    "query": {
      "description": "The input query string, echoed back.",
      "title": "Query",
      "type": "string"
    },
    "query_type": {
      "description": "The input query type, echoed back.",
      "title": "Query Type",
      "type": "string"
    },
    "targets": {
      "description": "ChEMBL target records matching the query.",
      "items": {
        "$ref": "#/$defs/ChemblTarget"
      },
      "title": "Targets",
      "type": "array"
    },
    "not_found": {
      "default": false,
      "description": "True when ChEMBL returned no targets for the query.",
      "title": "Not Found",
      "type": "boolean"
    }
  },
  "required": [
    "query",
    "query_type"
  ],
  "title": "ForgeChemblTargetOut",
  "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/chembl_target' \
  -H 'authorization: Bearer $SCIDEX_JWT' \
  -H 'content-type: application/json' \
  -d '{
  "query": ""
}'

Discussion

Posting anonymously. Sign in for attribution.

No comments yet — be the first.