{"openapi":"3.1.0","info":{"title":"Malaysia Statistics API","version":"1.0.0","description":"Official Malaysian economic statistics straight from the Department of Statistics Malaysia (DOSM) via its OpenDOSM open-data API — no key, read live. The cpi endpoint returns the headline Consumer Price Index (overall, all items, base 2010=100) for the latest month with the index level plus the month-on-month and year-on-year inflation rates, computed from the official series. The cpi/series endpoint returns the historical monthly CPI index and year-on-year rate over the last N months, ready to chart. The cpi/divisions endpoint breaks the latest CPI down across all thirteen COICOP divisions (food, housing, transport and so on) with the index for each. The dataset endpoint is a thin live gateway to any OpenDOSM data-catalogue id, returning its most recent rows, so you can reach DOSM's wider catalogue (labour, trade, population and more) beyond inflation. The meta endpoint documents the source. Live data from OpenDOSM, lightly cached. Live. 5 endpoints. This serves Malaysian national statistics; for the ringgit exchange rate or Bursa Malaysia equities use an FX / stock-exchange API.","contact":{"name":"PremiumApi","url":"https://www.oanor.com/by/premiumapi"}},"servers":[{"url":"https://api.oanor.com/malaysia-stats-api","description":"oanor gateway"}],"tags":[{"name":"Inflation"},{"name":"Catalogue"},{"name":"Meta"}],"components":{"securitySchemes":{"oanorKey":{"type":"apiKey","in":"header","name":"x-oanor-key","description":"Get your key at https://www.oanor.com/developer/keys"}}},"security":[{"oanorKey":[]}],"paths":{"/v1/cpi":{"get":{"operationId":"get_v1_cpi","tags":["Inflation"],"summary":"Malaysia CPI (latest month): index, MoM and YoY","description":"","parameters":[],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"base":"2010 = 100","index":136.9,"period":"2026-04-01","source":"Department of Statistics Malaysia (OpenDOSM, cpi_headline)","country":"Malaysia","indicator":"Consumer Price Index (overall, all items)","change_mom_pct":0.37,"change_yoy_pct":1.94},"meta":{"timestamp":"2026-06-15T20:40:36.275Z","request_id":"058b7430-1ea1-4624-9d0a-3045a7aa4f68"},"status":"ok","message":"Malaysia CPI retrieved","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/cpi/divisions":{"get":{"operationId":"get_v1_cpi_divisions","tags":["Inflation"],"summary":"Latest CPI across all 13 COICOP divisions","description":"","parameters":[],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"base":"2010 = 100","count":13,"period":"2026-04-01","source":"OpenDOSM cpi_headline","country":"Malaysia","divisions":[{"index":159.6,"label":"Food & non-alcoholic beverages","division":"01"},{"index":178.1,"label":"Alcoholic beverages & tobacco","division":"02"},{"index":93,"label":"Clothing & footwear","division":"03"},{"index":132.5,"label":"Housing, water, electricity, gas & fuels","division":"04"},{"index":127.1,"label":"Furnishings & household equipment","division":"05"},{"index":133.5,"label":"Health","division":"06"},{"index":127.3,"label":"Transport","division":"07"},{"index":91.3,"label":"Communication","division":"08"},{"index":121.6,"label":"Recreation services & culture","division":"09"},{"index":132.1,"label":"Education","division":"10"},{"index":159.6,"label":"Restaurants & hotels","division":"11"},{"index":117.3,"label":"Miscellaneous goods & services","division":"12"},{"index":136.6,"label":"Personal care, social protection & misc","division":"13"}],"indicator":"CPI by COICOP division"},"meta":{"timestamp":"2026-06-15T20:40:36.344Z","request_id":"6146f495-7d44-40ab-8574-4011541b4e96"},"status":"ok","message":"Malaysia CPI by division retrieved","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/cpi/series":{"get":{"operationId":"get_v1_cpi_series","tags":["Inflation"],"summary":"Historical CPI index + YoY series","description":"","parameters":[{"name":"months","in":"query","required":false,"description":"Number of recent months (default 24, max 240)","schema":{"type":"string"},"example":"24"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"base":"2010 = 100","count":24,"series":[{"index":132.8,"period":"2024-05-01","change_yoy_pct":2},{"index":133,"period":"2024-06-01","change_yoy_pct":1.99},{"index":133.1,"period":"2024-07-01","change_yoy_pct":1.99},{"index":133.2,"period":"2024-08-01","change_yoy_pct":1.91},{"index":133.2,"period":"2024-09-01","change_yoy_pct":1.83},{"index":133.4,"period":"2024-10-01","change_yoy_pct":1.91},{"index":133.3,"period":"2024-11-01","change_yoy_pct":1.83},{"index":133.4,"period":"2024-12-01","change_yoy_pct":1.68},{"index":133.6,"period":"2025-01-01","change_yoy_pct":1.67},{"index":134.1,"period":"2025-02-01","change_yoy_pct":1.51},{"index":134.1,"period":"2025-03-01","change_yoy_pct":1.44},{"index":134.3,"period":"2025-04-01","change_yoy_pct":1.44},{"index":134.4,"period":"2025-05-01","change_yoy_pct":1.2},{"index":134.5,"period":"2025-06-01","change_yoy_pct":1.13},{"index":134.7,"period":"2025-07-01","change_yoy_pct":1.2},{"index":134.9,"period":"2025-08-01","change_yoy_pct":1.28},{"index":135.2,"period":"2025-09-01","change_yoy_pct":1.5},{"index":135.1,"period":"2025-10-01","change_yoy_pct":1.27},{"index":135.1,"period":"2025-11-01","change_yoy_pct":1.35},{"index":135.5,"period":"2025-12-01","change_yoy_pct":1.57},{"index":135.7,"period":"2026-01-01","change_yoy_pct":1.57},{"index":136,"period":"2026-02-01","change_yoy_pct":1.42},{"index":136.4,"period":"2026-03-01","change_yoy_pct":1.72},{"index":136.9,"period":"2026-04-01","change_yoy_pct":1.94}],"source":"OpenDOSM cpi_headline","country":"Malaysia","indicator":"CPI overall monthly series"},"meta":{"timestamp":"2026-06-15T20:40:36.425Z","request_id":"c46068af-aa14-4662-a4e9-31bb3e246b0f"},"status":"ok","message":"Malaysia CPI series retrieved","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/dataset":{"get":{"operationId":"get_v1_dataset","tags":["Catalogue"],"summary":"Fetch any OpenDOSM data-catalogue id","description":"","parameters":[{"name":"id","in":"query","required":false,"description":"OpenDOSM catalogue id (default cpi_headline)","schema":{"type":"string"},"example":"cpi_headline"},{"name":"limit","in":"query","required":false,"description":"Rows to return (default 50, max 1000)","schema":{"type":"string"},"example":"50"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"rows":[{"date":"2026-04-01","index":132.5,"division":"04"},{"date":"2026-04-01","index":121.6,"division":"09"},{"date":"2026-04-01","index":178.1,"division":"02"},{"date":"2026-04-01","index":159.6,"division":"01"},{"date":"2026-04-01","index":136.6,"division":"13"},{"date":"2026-04-01","index":127.3,"division":"07"},{"date":"2026-04-01","index":127.1,"division":"05"},{"date":"2026-04-01","index":159.6,"division":"11"},{"date":"2026-04-01","index":91.3,"division":"08"},{"date":"2026-04-01","index":117.3,"division":"12"},{"date":"2026-04-01","index":93,"division":"03"},{"date":"2026-04-01","index":136.9,"division":"overall"},{"date":"2026-04-01","index":132.1,"division":"10"},{"date":"2026-04-01","index":133.5,"division":"06"},{"date":"2026-03-01","index":133.3,"division":"06"},{"date":"2026-03-01","index":132.6,"division":"04"},{"date":"2026-03-01","index":121.2,"division":"09"},{"date":"2026-03-01","index":159.6,"division":"01"},{"date":"2026-03-01","index":93,"division":"03"},{"date":"2026-03-01","index":131.9,"division":"10"},{"date":"2026-03-01","index":137.6,"division":"13"},{"date":"2026-03-01","index":89.9,"division":"08"},{"date":"2026-03-01","index":117.3,"division":"12"},{"date":"2026-03-01","index":126.8,"division":"05"},{"date":"2026-03-01","index":124.2,"division":"07"},{"date":"2026-03-01","index":159,"division":"11"},{"date":"2026-03-01","index":136.4,"division":"overall"},{"date":"2026-03-01","index":177.8,"division":"02"},{"date":"2026-02-01","index":121,"division":"09"},{"date":"2026-02-01","index":177.6,"division":"02"},{"date":"2026-02-01","index":136,"division":"overall"},{"date":"2026-02-01","index":133.1,"division":"06"},{"date":"2026-02-01","index":93.1,"division":"03"},{"date":"2026-02-01","index":159.8,"division":"01"},{"date":"2026-02-01","index":126.9,"division":"05"},{"date":"2026-02-01","index":89.2,"division":"08"},{"date":"2026-02-01","index":159.1,"division":"11"},{"date":"2026-02-01","index":117,"division":"12"},{"date":"2026-02-01","index":132.5,"division":"04"},{"date":"2026-02-01","index":121.7,"division":"07"},{"date":"2026-02-01","index":131.7,"division":"10"},{"date":"2026-02-01","index":137,"division":"13"},{"date":"2026-01-01","index":177.4,"division":"02"},{"date":"2026-01-01","index":121,"division":"09"},{"date":"2026-01-01","index":93,"division":"03"},{"date":"2026-01-01","index":135.7,"division":"overall"},{"date":"2026-01-01","index":117,"division":"12"},{"date":"2026-01-01","index":89.4,"division":"08"},{"date":"2026-01-01","index":131.6,"division":"04"},{"date":"2026-01-01","index":158.9,"division":"11"}],"count":50,"source":"Department of Statistics Malaysia (OpenDOSM)","catalogue_id":"cpi_headline"},"meta":{"timestamp":"2026-06-15T20:40:36.511Z","request_id":"9d36952d-aebd-4799-b1a4-300d605b19c5"},"status":"ok","message":"OpenDOSM dataset retrieved","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/meta":{"get":{"operationId":"get_v1_meta","tags":["Meta"],"summary":"API metadata","description":"","parameters":[],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"api":"Statistics Malaysia (OpenDOSM) API","notes":"Live data from OpenDOSM; year-on-year and month-on-month computed from the index series. The dataset endpoint fetches any OpenDOSM data-catalogue id.","source":"Department of Statistics Malaysia — OpenDOSM open-data API (api.data.gov.my)","country":"Malaysia","endpoints":["/v1/cpi","/v1/cpi/series","/v1/cpi/divisions","/v1/dataset","/v1/meta"],"documentation":"https://malaysia-stats-api.oanor.dev","primary_indicator":"CPI headline (cpi_headline, monthly, base 2010=100, overall + 13 COICOP divisions)"},"meta":{"timestamp":"2026-06-15T20:40:36.593Z","request_id":"12464c42-7c5d-4dd6-a929-3590d9b847e6"},"status":"ok","message":"Meta","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}}},"x-oanor-pricing":[{"slug":"free","name":"Free","price_cents_month":0,"monthly_call_quota":290,"rps_limit":2,"hard_limit":true},{"slug":"basic","name":"Basic","price_cents_month":1060,"monthly_call_quota":18800,"rps_limit":6,"hard_limit":true},{"slug":"pro","name":"Pro","price_cents_month":2820,"monthly_call_quota":96500,"rps_limit":22,"hard_limit":true},{"slug":"mega","name":"Mega","price_cents_month":6360,"monthly_call_quota":438000,"rps_limit":55,"hard_limit":true}],"x-oanor-marketplace-url":"https://www.oanor.com/api/malaysia-stats-api"}