REST Countries

Asia · Southern Asia

Sri Lanka

Everything you need to work with Sri Lanka country data: capital, population, currencies, languages, and codes, sourced from the REST Countries API and ready to drop into your own project.

Sri Lanka flag

Country facts

Capital Sri Jayawardenepura Kotte
Population 21,756,000
Region Asia · Southern Asia
Codes LK · LKA
Currencies Sri Lankan rupee (LKR)
Languages Sinhala Tamil
More data These are just the highlights. The REST Countries API returns 85+ more fields for Sri Lanka, including borders, timezones, calling codes, native and translated names, and coordinates. See every field.

Call the Sri Lanka country API

Request the full Sri Lanka record from the REST Countries API. Copy the snippet for your language and drop in your own API key.

curl "https://api.restcountries.com/countries/v5/codes.alpha_2/LK?pretty=1" \
  -H "Authorization: Bearer YOUR_API_KEY"
const response = await fetch(
  'https://api.restcountries.com/countries/v5/codes.alpha_2/LK',
  { headers: { 'Authorization': 'Bearer YOUR_API_KEY' } }
);
const data = await response.json();
fetch(
  'https://api.restcountries.com/countries/v5/codes.alpha_2/LK',
  { headers: { 'Authorization': 'Bearer YOUR_API_KEY' } }
)
  .then(function (response) { return response.json(); })
  .then(function (data) { console.log(data); });
import requests
response = requests.get(
  'https://api.restcountries.com/countries/v5/codes.alpha_2/LK',
  headers={'Authorization': 'Bearer YOUR_API_KEY'}
)
data = response.json()
$ch = curl_init('https://api.restcountries.com/countries/v5/codes.alpha_2/LK');
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_API_KEY']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$data = json_decode(curl_exec($ch), true);
require 'net/http'
require 'json'
uri = URI('https://api.restcountries.com/countries/v5/codes.alpha_2/LK')
request = Net::HTTP::Get.new(uri)
request['Authorization'] = 'Bearer YOUR_API_KEY'
response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
  http.request(request)
end
data = JSON.parse(response.body)
package main
import (
  "encoding/json"
  "io"
  "net/http"
)
req, _ := http.NewRequest("GET", "https://api.restcountries.com/countries/v5/codes.alpha_2/LK", nil)
req.Header.Set("Authorization", "Bearer YOUR_API_KEY")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
var data map[string]interface{}
json.Unmarshal(body, &data)
use reqwest::blocking::Client;
use serde_json::Value;
let client = Client::new();
let response = client
  .get("https://api.restcountries.com/countries/v5/codes.alpha_2/LK")
  .header("Authorization", "Bearer YOUR_API_KEY")
  .send()?;
let data: Value = response.json()?;
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
  .uri(URI.create("https://api.restcountries.com/countries/v5/codes.alpha_2/LK"))
  .header("Authorization", "Bearer YOUR_API_KEY")
  .GET()
  .build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
String body = response.body();
using System.Net.Http;
using System.Net.Http.Json;
using System.Text.Json;
var client = new HttpClient();
client.DefaultRequestHeaders.Add("Authorization", "Bearer YOUR_API_KEY");
var data = await client.GetFromJsonAsync<JsonElement>(
  "https://api.restcountries.com/countries/v5/codes.alpha_2/LK");
import Foundation
var request = URLRequest(url: URL(string: "https://api.restcountries.com/countries/v5/codes.alpha_2/LK")!)
request.addValue("Bearer YOUR_API_KEY", forHTTPHeaderField: "Authorization")
let (data, _) = try await URLSession.shared.data(for: request)
let json = try JSONSerialization.jsonObject(with: data)

View flag assets

Integrate Sri Lanka data into your app

The REST Countries API returns Sri Lanka as structured JSON over HTTPS, ready to pull straight into web, mobile, and backend projects with no scraping and no manual data entry. Request only the fields you need and cache the response.

  • Populate country dropdowns, address forms, and checkout or shipping flows.
  • Localize your app with native names, languages, and currency details.
  • Enrich dashboards, CRMs, and analytics with region, population, and ISO codes.
  • Look up Sri Lanka by alpha-2 code, alpha-3 code, or country name.

Read the API docs