ChEMBL Drug API

Approved drug information including applicants, patent numbers, and research codes.

Operations 2

GET /drug List approved drugs #
GET /metabolism List metabolism data #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/chembl-drug-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

chembl-drug-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: ChEMBL Data REST Activity Drug API
  description: ChEMBL is a manually curated database of bioactive molecules with drug-like properties, maintained by the EMBL-EBI. This REST API provides programmatic access to bioactive molecules, drug targets, bioactivity measurements, approved drugs, assay data, and clinical trial compound information. ChEMBL_37 contains over 2.9 million distinct compounds, 24.5 million activities, and 18,552 targets.
  version: ChEMBL_37
  contact:
    name: ChEMBL Team
    email: chembl-help@ebi.ac.uk
    url: https://www.ebi.ac.uk/chembl/
  license:
    name: Creative Commons Attribution-ShareAlike 3.0 Unported
    url: https://creativecommons.org/licenses/by-sa/3.0/
  termsOfService: https://www.ebi.ac.uk/about/terms-of-use/
  x-logo:
    url: https://www.ebi.ac.uk/chembl/static/chembl/img/chembl_logo.png
servers:
- url: https://www.ebi.ac.uk/chembl/api/data
  description: ChEMBL Production API Server
tags:
- name: Drug
  description: Approved drug information including applicants, patent numbers, and research codes.
paths:
  /drug:
    get:
      tags:
      - Drug
      summary: List approved drugs
      description: Retrieve a paginated list of approved drugs with information on applicants, patent numbers, research codes, and regulatory data.
      operationId: listDrugs
      parameters:
      - $ref: '#/components/parameters/format'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/offset'
      - name: molecule_chembl_id
        in: query
        description: Filter by molecule ChEMBL ID
        schema:
          type: string
      - name: applicants
        in: query
        description: Filter by drug applicant name
        schema:
          type: string
      responses:
        '200':
          description: Paginated list of drugs
          content:
            application/json:
              schema:
                type: object
                properties:
                  meta:
                    $ref: '#/components/schemas/Meta'
                  drugs:
                    type: array
                    items:
                      $ref: '#/components/schemas/Drug'
        '400':
          $ref: '#/components/responses/BadRequest'
        '404':
          $ref: '#/components/responses/NotFound'
  /metabolism:
    get:
      tags:
      - Drug
      summary: List metabolism data
      description: Retrieve metabolic pathway data with substrate, product, and enzyme references.
      operationId: listMetabolism
      parameters:
      - $ref: '#/components/parameters/format'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/offset'
      - name: substrate_molecule_chembl_id
        in: query
        description: Filter by substrate molecule ChEMBL ID
        schema:
          type: string
      responses:
        '200':
          description: Paginated list of metabolism records
          content:
            application/json:
              schema:
                type: object
                properties:
                  meta:
                    $ref: '#/components/schemas/Meta'
                  metabolisms:
                    type: array
                    items:
                      $ref: '#/components/schemas/Metabolism'
components:
  schemas:
    MoleculeStructures:
      type: object
      description: Structural representations of a molecule
      properties:
        canonical_smiles:
          type:
          - string
          - 'null'
          description: Canonical SMILES representation
        molfile:
          type:
          - string
          - 'null'
          description: MDL/Symyx molfile structure representation
        standard_inchi:
          type:
          - string
          - 'null'
          description: Standard InChI representation
        standard_inchi_key:
          type:
          - string
          - 'null'
          description: Standard InChIKey (27-character hash)
    Drug:
      type: object
      description: An approved drug with regulatory and patent information
      properties:
        molecule_chembl_id:
          type: string
          description: ChEMBL ID of the drug molecule
        applicants:
          type:
          - string
          - 'null'
          description: Drug applicant/manufacturer name
        atc_classification:
          type:
          - string
          - 'null'
          description: ATC classification code
        availability_type:
          type:
          - integer
          - 'null'
          description: Availability type (0=discontinued, 1=prescription only, 2=over-the-counter)
        biotherapeutic:
          type:
          - object
          - 'null'
        black_box:
          type:
          - integer
          - 'null'
          description: Black box warning flag
        chirality:
          type:
          - integer
          - 'null'
        development_phase:
          type:
          - integer
          - 'null'
        drug_type:
          type:
          - integer
          - 'null'
        first_approval:
          type:
          - integer
          - 'null'
        helm_notation:
          type:
          - string
          - 'null'
        indication_class:
          type:
          - string
          - 'null'
        molecule_properties:
          $ref: '#/components/schemas/MoleculeProperties'
        molecule_structures:
          $ref: '#/components/schemas/MoleculeStructures'
        molecule_synonyms:
          type: array
          items:
            type: object
        natural_product:
          type:
          - integer
          - 'null'
        oral:
          type:
          - boolean
          - 'null'
        parenteral:
          type:
          - boolean
          - 'null'
        patent_expire_date:
          type:
          - string
          - 'null'
          format: date
        pref_name:
          type:
          - string
          - 'null'
        prodrug:
          type:
          - integer
          - 'null'
        research_codes:
          type:
          - array
          - 'null'
          items:
            type: string
        sc_patent:
          type:
          - string
          - 'null'
        synonyms:
          type: array
          items:
            type: string
        topical:
          type:
          - boolean
          - 'null'
        usan_stem:
          type:
          - string
          - 'null'
        usan_year:
          type:
          - integer
          - 'null'
        withdrawn_class:
          type:
          - string
          - 'null'
        withdrawn_country:
          type:
          - string
          - 'null'
        withdrawn_flag:
          type:
          - boolean
          - 'null'
        withdrawn_reason:
          type:
          - string
          - 'null'
        withdrawn_year:
          type:
          - integer
          - 'null'
    Error:
      type: object
      properties:
        error_message:
          type: string
        status:
          type: string
    Meta:
      type: object
      description: Pagination metadata for list responses
      properties:
        limit:
          type: integer
          description: Number of records returned per page
        next:
          type:
          - string
          - 'null'
          description: URL for the next page of results
        offset:
          type: integer
          description: Number of records skipped
        previous:
          type:
          - string
          - 'null'
          description: URL for the previous page of results
        total_count:
          type: integer
          description: Total number of records matching the query
    Metabolism:
      type: object
      description: Drug metabolism data linking substrate to metabolite via enzyme
      properties:
        met_id:
          type: integer
        drug_chembl_id:
          type:
          - string
          - 'null'
          description: ChEMBL ID of the drug being metabolized
        enzyme_chembl_id:
          type:
          - string
          - 'null'
          description: ChEMBL ID of the metabolizing enzyme
        enzyme_name:
          type:
          - string
          - 'null'
        met_conversion:
          type:
          - string
          - 'null'
          description: Description of the metabolic conversion
        metabolite_chembl_id:
          type:
          - string
          - 'null'
          description: ChEMBL ID of the metabolite
        metabolite_name:
          type:
          - string
          - 'null'
        organism:
          type:
          - string
          - 'null'
        pathway_id:
          type:
          - integer
          - 'null'
        pathway_key:
          type:
          - string
          - 'null'
        refs:
          type: array
          items:
            type: object
        substrate_chembl_id:
          type:
          - string
          - 'null'
          description: ChEMBL ID of the substrate molecule
        substrate_name:
          type:
          - string
          - 'null'
        tax_id:
          type:
          - string
          - 'null'
    MoleculeProperties:
      type: object
      description: Calculated physicochemical properties of a molecule
      properties:
        alogp:
          type:
          - number
          - 'null'
          description: Calculated ALogP
        aromatic_rings:
          type:
          - integer
          - 'null'
          description: Number of aromatic rings
        cx_logd:
          type:
          - number
          - 'null'
          description: ChemAxon LogD at pH 7.4
        cx_logp:
          type:
          - number
          - 'null'
          description: ChemAxon LogP
        cx_most_apka:
          type:
          - number
          - 'null'
          description: Most acidic pKa (ChemAxon)
        cx_most_bpka:
          type:
          - number
          - 'null'
          description: Most basic pKa (ChemAxon)
        full_molformula:
          type:
          - string
          - 'null'
          description: Molecular formula including all salt and solvent components
        full_mwt:
          type:
          - number
          - 'null'
          description: Molecular weight of parent plus all salt and solvent components
        hba:
          type:
          - integer
          - 'null'
          description: Number of hydrogen bond acceptors (Lipinski definition)
        hba_lipinski:
          type:
          - integer
          - 'null'
          description: Number of hydrogen bond acceptors (Lipinski HBA definition)
        hbd:
          type:
          - integer
          - 'null'
          description: Number of hydrogen bond donors (Lipinski definition)
        hbd_lipinski:
          type:
          - integer
          - 'null'
          description: Number of hydrogen bond donors (Lipinski HBD definition)
        heavy_atoms:
          type:
          - integer
          - 'null'
          description: Number of heavy (non-hydrogen) atoms
        molecular_species:
          type:
          - string
          - 'null'
          description: Classification of the molecular species (ACID, BASE, NEUTRAL, ZWITTERION)
        mw_freebase:
          type:
          - number
          - 'null'
          description: Molecular weight of the freebase/parent form
        mw_monoisotopic:
          type:
          - number
          - 'null'
          description: Monoisotopic molecular weight
        np_likeness_score:
          type:
          - number
          - 'null'
          description: Natural product-likeness score
        num_lipinski_ro5_violations:
          type:
          - integer
          - 'null'
          description: Number of violations of Lipinski's Rule of Five
        num_ro5_violations:
          type:
          - integer
          - 'null'
          description: Number of Lipinski Rule of Five violations
        psa:
          type:
          - number
          - 'null'
          description: Polar surface area
        qed_weighted:
          type:
          - number
          - 'null'
          description: Quantitative Estimate of Drug-likeness (QED) score
        ro3_pass:
          type:
          - string
          - 'null'
          description: Indicates whether the compound satisfies the Rule of Three (fragment-like)
        rtb:
          type:
          - integer
          - 'null'
          description: Number of rotatable bonds
  parameters:
    offset:
      name: offset
      in: query
      description: Number of records to skip for pagination
      schema:
        type: integer
        default: 0
        minimum: 0
    limit:
      name: limit
      in: query
      description: Number of records to return per page (default 20, max 1000)
      schema:
        type: integer
        default: 20
        maximum: 1000
        minimum: 1
    format:
      name: format
      in: query
      description: Response format
      schema:
        type: string
        enum:
        - json
        - xml
        - yaml
        - jsonp
        default: json
  responses:
    BadRequest:
      description: Bad request - invalid query parameters
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    NotFound:
      description: Resource not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
externalDocs:
  description: ChEMBL Web Services Documentation
  url: https://chembl.gitbook.io/chembl-interface-documentation/web-services/chembl-data-web-services