ChEMBL Drug API

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

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 email required.

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

OpenAPI Specification

chembl-drug-api-openapi.yml Raw ↑
openapi: 3.0.3
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:
  parameters:
    offset:
      name: offset
      in: query
      description: Number of records to skip for pagination
      schema:
        type: integer
        default: 0
        minimum: 0
    format:
      name: format
      in: query
      description: Response format
      schema:
        type: string
        enum:
        - json
        - xml
        - yaml
        - jsonp
        default: json
    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
  schemas:
    MoleculeStructures:
      type: object
      description: Structural representations of a molecule
      properties:
        canonical_smiles:
          type: string
          nullable: true
          description: Canonical SMILES representation
        molfile:
          type: string
          nullable: true
          description: MDL/Symyx molfile structure representation
        standard_inchi:
          type: string
          nullable: true
          description: Standard InChI representation
        standard_inchi_key:
          type: string
          nullable: true
          description: Standard InChIKey (27-character hash)
    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
          nullable: true
          description: URL for the next page of results
        offset:
          type: integer
          description: Number of records skipped
        previous:
          type: string
          nullable: true
          description: URL for the previous page of results
        total_count:
          type: integer
          description: Total number of records matching the query
    MoleculeProperties:
      type: object
      description: Calculated physicochemical properties of a molecule
      properties:
        alogp:
          type: number
          nullable: true
          description: Calculated ALogP
        aromatic_rings:
          type: integer
          nullable: true
          description: Number of aromatic rings
        cx_logd:
          type: number
          nullable: true
          description: ChemAxon LogD at pH 7.4
        cx_logp:
          type: number
          nullable: true
          description: ChemAxon LogP
        cx_most_apka:
          type: number
          nullable: true
          description: Most acidic pKa (ChemAxon)
        cx_most_bpka:
          type: number
          nullable: true
          description: Most basic pKa (ChemAxon)
        full_molformula:
          type: string
          nullable: true
          description: Molecular formula including all salt and solvent components
        full_mwt:
          type: number
          nullable: true
          description: Molecular weight of parent plus all salt and solvent components
        hba:
          type: integer
          nullable: true
          description: Number of hydrogen bond acceptors (Lipinski definition)
        hba_lipinski:
          type: integer
          nullable: true
          description: Number of hydrogen bond acceptors (Lipinski HBA definition)
        hbd:
          type: integer
          nullable: true
          description: Number of hydrogen bond donors (Lipinski definition)
        hbd_lipinski:
          type: integer
          nullable: true
          description: Number of hydrogen bond donors (Lipinski HBD definition)
        heavy_atoms:
          type: integer
          nullable: true
          description: Number of heavy (non-hydrogen) atoms
        molecular_species:
          type: string
          nullable: true
          description: Classification of the molecular species (ACID, BASE, NEUTRAL, ZWITTERION)
        mw_freebase:
          type: number
          nullable: true
          description: Molecular weight of the freebase/parent form
        mw_monoisotopic:
          type: number
          nullable: true
          description: Monoisotopic molecular weight
        np_likeness_score:
          type: number
          nullable: true
          description: Natural product-likeness score
        num_lipinski_ro5_violations:
          type: integer
          nullable: true
          description: Number of violations of Lipinski's Rule of Five
        num_ro5_violations:
          type: integer
          nullable: true
          description: Number of Lipinski Rule of Five violations
        psa:
          type: number
          nullable: true
          description: Polar surface area
        qed_weighted:
          type: number
          nullable: true
          description: Quantitative Estimate of Drug-likeness (QED) score
        ro3_pass:
          type: string
          nullable: true
          description: Indicates whether the compound satisfies the Rule of Three (fragment-like)
        rtb:
          type: integer
          nullable: true
          description: Number of rotatable bonds
    Metabolism:
      type: object
      description: Drug metabolism data linking substrate to metabolite via enzyme
      properties:
        met_id:
          type: integer
        drug_chembl_id:
          type: string
          nullable: true
          description: ChEMBL ID of the drug being metabolized
        enzyme_chembl_id:
          type: string
          nullable: true
          description: ChEMBL ID of the metabolizing enzyme
        enzyme_name:
          type: string
          nullable: true
        met_conversion:
          type: string
          nullable: true
          description: Description of the metabolic conversion
        metabolite_chembl_id:
          type: string
          nullable: true
          description: ChEMBL ID of the metabolite
        metabolite_name:
          type: string
          nullable: true
        organism:
          type: string
          nullable: true
        pathway_id:
          type: integer
          nullable: true
        pathway_key:
          type: string
          nullable: true
        refs:
          type: array
          items:
            type: object
        substrate_chembl_id:
          type: string
          nullable: true
          description: ChEMBL ID of the substrate molecule
        substrate_name:
          type: string
          nullable: true
        tax_id:
          type: string
          nullable: true
    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
          nullable: true
          description: Drug applicant/manufacturer name
        atc_classification:
          type: string
          nullable: true
          description: ATC classification code
        availability_type:
          type: integer
          nullable: true
          description: Availability type (0=discontinued, 1=prescription only, 2=over-the-counter)
        biotherapeutic:
          type: object
          nullable: true
        black_box:
          type: integer
          nullable: true
          description: Black box warning flag
        chirality:
          type: integer
          nullable: true
        development_phase:
          type: integer
          nullable: true
        drug_type:
          type: integer
          nullable: true
        first_approval:
          type: integer
          nullable: true
        helm_notation:
          type: string
          nullable: true
        indication_class:
          type: string
          nullable: true
        molecule_properties:
          $ref: '#/components/schemas/MoleculeProperties'
        molecule_structures:
          $ref: '#/components/schemas/MoleculeStructures'
        molecule_synonyms:
          type: array
          items:
            type: object
        natural_product:
          type: integer
          nullable: true
        oral:
          type: boolean
          nullable: true
        parenteral:
          type: boolean
          nullable: true
        patent_expire_date:
          type: string
          nullable: true
          format: date
        pref_name:
          type: string
          nullable: true
        prodrug:
          type: integer
          nullable: true
        research_codes:
          type: array
          items:
            type: string
          nullable: true
        sc_patent:
          type: string
          nullable: true
        synonyms:
          type: array
          items:
            type: string
        topical:
          type: boolean
          nullable: true
        usan_stem:
          type: string
          nullable: true
        usan_year:
          type: integer
          nullable: true
        withdrawn_class:
          type: string
          nullable: true
        withdrawn_country:
          type: string
          nullable: true
        withdrawn_flag:
          type: boolean
          nullable: true
        withdrawn_reason:
          type: string
          nullable: true
        withdrawn_year:
          type: integer
          nullable: true
  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