openapi: 3.2.0 info: title: ITU DataHub UMC API version: '2' summary: Undocumented public JSON API behind the ITU DataHub ICT statistics portal. description: 'ITU publishes **no** OpenAPI, no reference documentation, and no terms of programmatic use for this API. This document is an API Evangelist **observed-behaviour** description: every path, parameter, status code and response shape below was recorded from live, anonymous HTTP calls against `https://api.datahub.itu.int/v2` on 2026-07-25/26. Nothing here is invented — where a behaviour was not observed it is simply absent. The route templates were recovered from the DataHub Next.js client bundle (`datahub.itu.int/_next/static/chunks/*.js`), which hardcodes the base URL `https://api.datahub.itu.int/v2`, and each recovered route was then called to confirm it exists and to capture its real response. Treat this surface as an internal backend that happens to be public rather than as a supported product API: it can change without notice. No authentication of any kind is required. No API key, no `Referer`, no `Origin`, no `User-Agent`. `Access-Control-Allow-Origin: *` is returned on every response. The service runs on AWS API Gateway behind CloudFront (`x-amzn-requestid`, `x-amz-cf-id` response headers).' contact: name: ITU ICT Data & Analytics Division email: indicators@itu.int url: https://datahub.itu.int/ license: name: ITU Terms of Use url: https://www.itu.int/en/about/Pages/terms-of-use.aspx x-apievangelist-provenance: method: derived derived_from: live anonymous HTTP probes + the public DataHub client bundle probed: '2026-07-26' provider_published_spec: false note: Derived by API Evangelist from observed responses. ITU has not published, reviewed, or endorsed this description. servers: - url: https://api.datahub.itu.int/v2 description: Production (AWS API Gateway + CloudFront). Anonymous. tags: - name: UMC description: Universal and Meaningful Connectivity targets and scores. paths: /umc/dashboard/all: get: operationId: getUmcDashboard tags: - UMC summary: Get the Universal and Meaningful Connectivity dashboard description: Returns every UMC indicator with its target definition — the target name, description, minimum and maximum target values, units, source, and the topic and macro it rolls into. responses: '200': description: The UMC indicator and target definitions. content: application/json: schema: type: array items: $ref: '#/components/schemas/UmcIndicator' /umc/topic/all: get: operationId: listUmcTopics tags: - UMC summary: List UMC topics description: Returns the six UMC topics — People, Homes, Businesses, Affordability, Schools, Infrastructure. responses: '200': description: The topic list. content: application/json: schema: type: array items: $ref: '#/components/schemas/UmcTopic' examples: topics: value: - topicID: 1 label: People - topicID: 2 label: Homes - topicID: 3 label: Businesses - topicID: 4 label: Affordability - topicID: 5 label: Schools - topicID: 6 label: Infrastructure /umc/macro/all: get: operationId: listUmcMacros tags: - UMC summary: List UMC macro categories description: Returns the two UMC macro categories — Universal connectivity and Meaningful connectivity. responses: '200': description: The macro list. content: application/json: schema: type: array items: $ref: '#/components/schemas/UmcMacro' examples: macros: value: - macroID: 1 label: Universal connectivity - macroID: 2 label: Meaningful connectivity /umc/target/all: get: operationId: listUmcTargets tags: - UMC summary: List UMC target bands description: Returns the UMC scoring bands used to colour the dashboard — No data, Limited, Satisfactory, Advanced, Target met — with the numeric range each band covers. responses: '200': description: The target bands. content: application/json: schema: type: array items: $ref: '#/components/schemas/UmcTarget' examples: bands: value: - targetID: 0 min: -1 max: -1 label: No data - targetID: 1 min: 0 max: 50 label: Limited - targetID: 2 min: 50 max: 75 label: Satisfactory - targetID: 3 min: 75 max: 95 label: Advanced - targetID: 4 min: 95 max: 100 label: Target met /umc/bycountryid/{countryID}: get: operationId: getUmcByCountry tags: - UMC summary: Get UMC scores for one country description: Returns every UMC indicator scored for a single country, keyed by the ITU `CountryID`, with the observed value alongside the target definition it is measured against. parameters: - $ref: '#/components/parameters/countryID' responses: '200': description: The country's UMC scores. content: application/json: schema: type: array items: $ref: '#/components/schemas/UmcCountryScore' components: schemas: UmcCountryScore: type: object properties: codeID: type: integer code: type: string label: type: string units: type: string source: type: string archive: type: boolean topicID: type: integer topicTarget: type: string macroID: type: integer macroTarget: type: string targetName: type: string targetDesc: type: string targetMinValue: type: number targetMaxValue: type: number rawMinValue: type: number rawMaxValue: type: number answer: type: array items: type: object UmcTopic: type: object properties: topicID: type: integer label: type: string UmcTarget: type: object properties: targetID: type: integer min: type: number max: type: number label: type: string UmcMacro: type: object properties: macroID: type: integer label: type: string UmcIndicator: type: object properties: codeID: type: integer code: type: string label: type: string indicatorLabel: type: string codeDesc: type: string units: type: string source: type: string archive: type: boolean topicID: type: integer macroID: type: integer targetName: type: string targetDesc: type: string targetMinValue: type: number targetMaxValue: type: number createDate: type: integer description: Epoch milliseconds. updateDate: type: integer description: Epoch milliseconds. parameters: countryID: name: countryID in: path required: true description: The ITU numeric country identifier, from `listCountries`. schema: type: integer example: 244 externalDocs: description: ITU DataHub portal (the only human surface for this API) url: https://datahub.itu.int/