API — Sri Lanka (LK)

9 provinces, 25 districts, 339 divisional secretariats, 14,043 gn divisions.

Endpoints

GET /api/v1/countries/lk.json
Full dataset — all levels, all records
GET /api/v1/lk/province.json
All 9 provinces (පළාත)
GET /api/v1/lk/district.json
All 25 districts (දිස්ත්‍රික්කය)
GET /api/v1/lk/dsd.json
All 339 divisional secretariats (ප්‍රාදේශීය ලේකම් කොට්ඨාශය)
/api/v1/lk/dsd.json
GET /api/v1/lk/gnd.json
All 14,043 gn divisions (ග්‍රාම නිලධාරී කොට්ඨාශය)
/api/v1/lk/gnd.json
GET /api/v1/lk/province/{slug}.json
Single province with children

Quick Start

JavaScript

fetch('https://openadmindata.org/api/v1/countries/lk.json')
  .then(r => r.json())
  .then(data => {
    const levels = data.meta.levels.map(l => l.name_en);
    console.log('Sri Lanka:', levels.join(' → '));
    
    console.log(data.data.province.length, 'provinces');
  });

Python

import requests
data = requests.get('https://openadmindata.org/api/v1/countries/lk.json').json()
provinces = data['data']['province']
print(f"Sri Lanka: {len(provinces)} provinces")

cURL

curl -s https://openadmindata.org/api/v1/lk/province.json | jq '.count'

Schema

Each entity record contains:

FieldTypeDescription
idstringUnique identifier
name_localstringName in local script
name_enstringEnglish / romanized name
slugstringURL-safe slug
latnumberLatitude (WGS84)
lonnumberLongitude (WGS84)
parent_idstring?Parent entity ID (null for top level)
parent_name_localstring?Parent name in local script
parent_name_enstring?Parent English name
postal_codestring?Postal code (deepest level only, where available)