ChEMBL ATC Classification API

WHO Anatomical Therapeutic Chemical classification for drugs.

OpenAPI Specification

chembl-atc-classification-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: ChEMBL Data REST Activity ATC Classification 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: ATC Classification
  description: WHO Anatomical Therapeutic Chemical classification for drugs.
paths:
  /atc_class:
    get:
      tags:
      - ATC Classification
      summary: List ATC classifications
      description: Retrieve WHO Anatomical Therapeutic Chemical (ATC) classification records.
      operationId: listAtcClasses
      parameters:
      - $ref: '#/components/parameters/format'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/offset'
      - name: who_atc_code
        in: query
        description: Filter by ATC code
        schema:
          type: string
          example: A10BA02
      responses:
        '200':
          description: Paginated list of ATC classifications
          content:
            application/json:
              schema:
                type: object
                properties:
                  meta:
                    $ref: '#/components/schemas/Meta'
                  atc_classifications:
                    type: array
                    items:
                      $ref: '#/components/schemas/AtcClass'
components:
  schemas:
    AtcClass:
      type: object
      description: WHO ATC classification entry
      properties:
        who_atc_code:
          type: string
          description: WHO ATC classification code
          example: A10BA02
        level1:
          type: string
          nullable: true
          description: First level ATC code (Anatomical main group)
        level1_description:
          type: string
          nullable: true
        level2:
          type: string
          nullable: true
          description: Second level ATC code (Therapeutic subgroup)
        level2_description:
          type: string
          nullable: true
        level3:
          type: string
          nullable: true
          description: Third level ATC code (Pharmacological subgroup)
        level3_description:
          type: string
          nullable: true
        level4:
          type: string
          nullable: true
          description: Fourth level ATC code (Chemical subgroup)
        level4_description:
          type: string
          nullable: true
        level5:
          type: string
          nullable: true
          description: Fifth level ATC code (Chemical substance)
        who_name:
          type: string
          nullable: true
          description: WHO recommended name for the substance
    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
  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
externalDocs:
  description: ChEMBL Web Services Documentation
  url: https://chembl.gitbook.io/chembl-interface-documentation/web-services/chembl-data-web-services