Cities & Municipalities Database
PSGC Cities & Municipalities API
Query across both cities and municipalities in one unified collection or traverse via parent provinces and regions.
GET
/api/v1/cities-municipalities
List all (paginated) cities & municipalities
Params:
q (name search), province_code, region_code, per_page, page, type (=city|municipality).
GET
/api/v1/cities-municipalities/{locality}
Show a city or municipality
GET
/api/v1/cities-municipalities/{locality}/barangays
Barangays of the city/municipality
Developer Code Samples
List Cities & Municipalities
cURL
curl -s https://psgc.cloud/api/v1/cities-municipalities
fetch API
fetch('https://psgc.cloud/api/v1/cities-municipalities')
.then(res => res.json())
.then(console.log)
Axios
import axios from 'axios';
axios.get('https://psgc.cloud/api/v1/cities-municipalities')
.then(res => console.log(res.data))
PHP (Guzzle)
<?php
$client = new \GuzzleHttp\Client(['base_uri' => 'https://psgc.cloud']);
$res = $client->get('/api/v1/cities-municipalities');
$body = json_decode($res->getBody(), true);
print_r($body);
Show Locality
cURL
curl -s https://psgc.cloud/api/v1/cities-municipalities/012801
fetch API
fetch('https://psgc.cloud/api/v1/cities-municipalities/012801')
.then(res => res.json())
.then(console.log)
Axios
import axios from 'axios';
axios.get('https://psgc.cloud/api/v1/cities-municipalities/012801')
.then(res => console.log(res.data))
PHP (Guzzle)
<?php
$client = new \GuzzleHttp\Client(['base_uri' => 'https://psgc.cloud']);
$res = $client->get('/api/v1/cities-municipalities/012801');
$body = json_decode($res->getBody(), true);
print_r($body);