Files

2.6 KiB

title, task, lineage_type, upstream_source, upstream_sha, imported_at, prompt_class, upstream_changes, author, validated
title task lineage_type upstream_source upstream_sha imported_at prompt_class upstream_changes author validated
ChEMBL REST API import https://github.com/K-Dense-AI/scientific-agent-skills/blob/9c9bd2e9/skills/database-lookup/references/chembl.md 9c9bd2e9 2026-06-26 prompt accepted upstream false

ChEMBL REST API

Base URL

https://www.ebi.ac.uk/chembl/api/data

Auth

No API key required. Fully open and free.

Key Endpoints

Endpoint Description
/molecule/{chembl_id} Get molecule by ChEMBL ID
/molecule/search?q={query} Free-text molecule search
/target/{chembl_id} Get target by ChEMBL ID
/target/search?q={query} Free-text target search
/activity?molecule_chembl_id={id} Activities for a molecule
/activity?target_chembl_id={id} Activities for a target
/mechanism?molecule_chembl_id={id} Mechanism of action
/drug_indication?molecule_chembl_id={id} Drug indications
/similarity/{smiles}/{threshold} Similarity search (threshold 40-100)
/substructure/{smiles} Substructure search

Common Parameters

  • format=json — response format (default json)
  • limit — results per page (default 20, max 1000)
  • offset — pagination offset
  • order_by — sort field (prefix - for descending)
  • only — return only specified fields (comma-separated)

Filtering operators (append to field names)

__exact, __icontains, __gt, __gte, __lt, __lte, __in, __isnull, __startswith, __range, __regex

Example Calls

# Get molecule by ID
/molecule/CHEMBL25.json

# Search molecules by name
/molecule/search?q=aspirin&format=json

# Activities for a target with potency filter
/activity?target_chembl_id=CHEMBL240&pchembl_value__gte=6&format=json&limit=100

# Similarity search (80% threshold)
/similarity/CC(%3DO)Oc1ccccc1C(%3DO)O/80.json

# Approved drugs only
/molecule?max_phase=4&format=json

# Mechanism of action
/mechanism?molecule_chembl_id=CHEMBL25&format=json

Response Format (molecule)

{
  "page_meta": {"limit": 20, "offset": 0, "total_count": 150},
  "molecules": [{
    "molecule_chembl_id": "CHEMBL25",
    "pref_name": "ASPIRIN",
    "max_phase": 4,
    "molecule_properties": {
      "full_mwt": 180.16, "full_molformula": "C9H8O4",
      "alogp": 1.31, "hba": 3, "hbd": 1, "psa": 63.60
    },
    "molecule_structures": {
      "canonical_smiles": "CC(=O)Oc1ccccc1C(=O)O",
      "standard_inchi_key": "BSYNRYMUTXBXSQ-UHFFFAOYSA-N"
    }
  }]
}

Rate Limits

No strict limit. Keep under ~10 req/sec. No auth required.