World Bank Classifications API

The Classifications API from World Bank — 2 operation(s) for classifications.

OpenAPI Specification

worldbank-classifications-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  version: 2.0.0
  title: World Bank Indicators Classifications API
  description: 'The World Bank Indicators API provides programmatic access to nearly 16,000 time series development indicators. These indicators include data such as total population, gross domestic product, energy use, poverty rates, health metrics, education statistics, and demographic data across countries and regions. Most data series date back over 50 years. No authentication is required. Supports filtering by date range, country, region, income level, and lending type. Returns data in JSON format with pagination support.

    '
  contact:
    name: World Bank Data Help Desk
    url: https://datahelpdesk.worldbank.org
    email: data@worldbank.org
  license:
    name: Creative Commons Attribution 4.0
    url: https://creativecommons.org/licenses/by/4.0/
servers:
- url: https://api.worldbank.org/v2
  description: World Bank API v2
tags:
- name: Classifications
paths:
  /incomelevel:
    get:
      summary: List income levels
      description: Returns a list of World Bank income level classifications.
      operationId: listIncomeLevels
      tags:
      - Classifications
      parameters:
      - name: format
        in: query
        description: Response format
        required: false
        schema:
          type: string
          enum:
          - json
          - xml
          default: json
      - name: page
        in: query
        description: Page number
        required: false
        schema:
          type: integer
          default: 1
      - name: per_page
        in: query
        description: Records per page
        required: false
        schema:
          type: integer
          default: 50
      responses:
        '200':
          description: List of income levels
          content:
            application/json:
              schema:
                type: array
                items:
                  oneOf:
                  - $ref: '#/components/schemas/PaginationData'
                  - type: array
                    items:
                      $ref: '#/components/schemas/IncomeLevel'
  /lendingtype:
    get:
      summary: List lending types
      description: Returns a list of World Bank lending type classifications.
      operationId: listLendingTypes
      tags:
      - Classifications
      parameters:
      - name: format
        in: query
        description: Response format
        required: false
        schema:
          type: string
          enum:
          - json
          - xml
          default: json
      - name: page
        in: query
        description: Page number
        required: false
        schema:
          type: integer
          default: 1
      - name: per_page
        in: query
        description: Records per page
        required: false
        schema:
          type: integer
          default: 50
      responses:
        '200':
          description: List of lending types
          content:
            application/json:
              schema:
                type: array
                items:
                  oneOf:
                  - $ref: '#/components/schemas/PaginationData'
                  - type: array
                    items:
                      $ref: '#/components/schemas/LendingType'
components:
  schemas:
    IncomeLevel:
      type: object
      description: World Bank income level classification
      properties:
        id:
          type: string
          description: Income level code
          example: HIC
        iso2code:
          type: string
          description: ISO 2-character code
          example: XD
        value:
          type: string
          description: Income level name
          example: High income
    LendingType:
      type: object
      description: World Bank lending type classification
      properties:
        id:
          type: string
          description: Lending type code
          example: IBD
        iso2code:
          type: string
          description: ISO 2-character code
          example: XF
        value:
          type: string
          description: Lending type name
          example: IBRD
    PaginationData:
      type: object
      description: Pagination metadata returned as the first element of the response array
      properties:
        page:
          type: integer
          description: Current page number
          example: 1
        pages:
          type: integer
          description: Total number of pages
          example: 10
        per_page:
          type: integer
          description: Records per page
          example: 50
        total:
          type: integer
          description: Total number of records
          example: 500
        sourceid:
          type: string
          nullable: true
          description: Source identifier
          example: '2'
        sourcename:
          type: string
          nullable: true
          description: Source name
          example: World Development Indicators
        lastupdated:
          type: string
          nullable: true
          description: Date of last data update
          example: '2024-06-28'