curl -X GET 'https://api.countrystatecity.in/v1/countries/IN/states' \ -H 'X-CSCAPI-KEY: YOUR_API_KEY'
[ { "id": 4008, "name": "Maharashtra", "iso2": "MH" }, { "id": 4017, "name": "Karnataka", "iso2": "KA" }, { "id": 4030, "name": "Tamil Nadu", "iso2": "TN" } ]
Retrieve all states/provinces for a specific country
Cascading Address Forms
const populateStatesDropdown = async (countryCode) => { const states = await getStatesByCountry(countryCode); const select = document.getElementById('state-select'); // Clear existing options select.innerHTML = '<option value="">Select State...</option>'; states.forEach(state => { const option = document.createElement('option'); option.value = state.iso2; option.textContent = state.name; select.appendChild(option); }); }; // Listen for country changes document.getElementById('country-select').addEventListener('change', (e) => { populateStatesDropdown(e.target.value); });
Regional Validation
const validateStateForCountry = async (countryCode, stateCode) => { const states = await getStatesByCountry(countryCode); return states.some(state => state.iso2 === stateCode); };
Was this page helpful?