ChEMBL HPO API

HPO Resource

Operations 1

GET /hpo Get HPO phenotypes 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:chembl-hpo-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-hpo-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: '# About CROssBAR & data

    **CROssBAR**: Comprehensive Resource of Biomedical Relations with Deep Learning Applications and Knowledge Graph Representations

    CROssBAR is a comprehensive system that integrates large-scale biomedical data from various resources e.g UniProt, ChEMBL, Drugbank, EFO, HPO, InterPro & PubChem and stores them in a new NoSQL database, enrich these data with deep learning based prediction of relations between numerous biomedical entities, rigorously analyse the enriched data to obtain biologically meaningful modules and display them to the user via easy to interpret, interactive and heterogeneous knowledge graphs.

    CROssBAR platform exposes a set of 12 endpoints to query data stored in the CROssBAR database. These endpoints help the user to find data of interest using different parameters provided by the API endpoint.

    For example,

    https://www.ebi.ac.uk/tools/crossbar/proteins?accession=A0A023GRW5 -> will provide protein information about accession ''A0A023GRW5'' including its interactions, functions, cross-references, variations and more.

    https://www.ebi.ac.uk/tools/crossbar/activities?moleculeChemblId=CHEMBL465983 -> will provide ChEMBL bio-interactions related information including targets and bio-activity measurements associated with molecule chembl id ''CHEMBL465983''


    **Knowledge graphs**

    Another use case of CROssBAR''s API endpoints is in building knowledge graphs. These endpoints can be *weaved* together (output from one API endpoint fed as input to another API endpoint) programmatically to link nodes like protein, disease, drugs etc. as nodes of the graph. The endpoints are designed to be independent from each other which allows users the flexibility to drive biological networks from any facet e.g drug-centric, disease-centric, gene-centric etc. Our service for knowledge graph construction is available at https://crossbar.kansil.org.

    An example for the part of the background queries on the CROssBAR API during the construction of a knowledge graph,

    (with the aim of keeping the example simple, we have only included the processes related to pathways, genes/proteins and drugs/compounds)

    In this example, we would like to find bio-active compounds (with a pChEMBL value threshold of at least 6.0) & drugs targeting all proteins belonging to "WNT ligand biogenesis and trafficking" pathway (based on Reactome pathway annotations).

    This can be achieved by using endpoints listed on this swagger documentation as illustrated in following steps-

    Find bio-active compounds (with a pChEMBL value threshold of at least 6.0) & drugs targeting all proteins belonging to "WNT ligand biogenesis and trafficking" pathway (based on Reactome annotations)

    This can be achieved by using endpoints listed on this swagger documentation as illustrated in following steps-

    1. Get all proteins from “/proteins” API endpoint which have a reactome pathway name equal to "WNT ligand biogenesis and trafficking".

    2. From the collection of uniprot protein accessions collected from step 1 above, we query “/targets” API endpoint to obtain the ‘target_chembl_id’s of these proteins.

    3. From the collection of target_chembl_ids collected from step 2 above, we query “/activities” API endpoint with pChEMBL value >=6, to obtain the ’molecule_chembl_id’s of the molecules that we need.

    4. From the collection of uniprot protein accessions collected from step 1 above, we find out Drug names and ids from the “/drugs” API endpoint that targets our proteins.

    5. From the collection of ’molecule_chembl_id’s obtained in step3, we query “/molecules” endpoint to get the compounds that are interacting with the genes/proteins belonging to the “WNT ligand biogenesis and trafficking” pathway.'
  version: '1.0'
  title: CROssBAR Data HPO API
  contact:
    name: API support
    email: crossbar_dev@ebi.ac.uk
servers:
- url: https://www.ebi.ac.uk/Tools/crossbar
tags:
- name: HPO
  description: HPO Resource
paths:
  /hpo:
    get:
      tags:
      - HPO
      summary: Get HPO phenotypes data
      operationId: getHpoUsingGET
      parameters:
      - name: genesymbol
        in: query
        description: genesymbol
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: hpotermname
        in: query
        description: hpotermname
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: limit
        in: query
        description: limit
        required: false
        schema:
          type: integer
          format: int32
          default: 10
      - name: page
        in: query
        description: page
        required: false
        schema:
          type: integer
          format: int32
          default: 0
      - name: synonym
        in: query
        description: synonym
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HpoEntities'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
      deprecated: false
components:
  schemas:
    Gene:
      type: object
      properties:
        id:
          type: string
        symbol:
          type: string
      title: Gene
    HPOEntity:
      type: object
      properties:
        db_references:
          type: array
          items:
            type: string
        gene:
          type: array
          items:
            $ref: '#/components/schemas/Gene'
        hpo_id:
          type: string
        synonyms:
          type: array
          items:
            type: string
        term_name:
          type: string
      title: HPOEntity
    PageMeta:
      type: object
      properties:
        currentElements:
          type: integer
          format: int64
        currentPage:
          type: integer
          format: int32
        limit:
          type: integer
          format: int32
        totalElements:
          type: integer
          format: int64
        totalPages:
          type: integer
          format: int32
      title: PageMeta
    HpoEntities:
      type: object
      properties:
        hpo:
          type: array
          items:
            $ref: '#/components/schemas/HPOEntity'
        pageMeta:
          $ref: '#/components/schemas/PageMeta'
      title: HpoEntities
x-provenance:
  method: harvested
  publisher: ChEMBL
  source: https://www.ebi.ac.uk/Tools/crossbar/v2/api-docs
  note: split by refine-openapis from the provider's own published document, verified by fetch (openapi/_original/*.fetch.json);
    stamped by stamp-openapi-provenance.py (roadmap#793)