Ģeokodēšana
Serviss ļauj iegūt adreses informāciju un ģeotelpiskos datus no ievadītā adreses teksta lauka.
Servisa URL
Servisa saitei jāatbilst šādai formai:
https://api.kartes.lv/v3//geocoding?
Noklusētais atgriezto datu formāts - JSON (pieejami arī JSONP un XML).
HTTP metode ir GET.
Pieprasījuma parametri
Iespējams padot šādus GET parametrus:
| Parametrs | Skaidrojums | Vērtības | 
|---|---|---|
| address | Teksts, kurā ievadīta adrese vai tās hash. | Parametrs obligāts, ja nav izvēlēts address_code | 
| address_code | Teksts, kurā ievadīts adreses kods. | Parametrs obligāts, ja nav izvēlēts address | 
| limit | Parametrs nosaka rezultāta maksimālo objektu skaitu. | Parametra vērtība - no 1 līdz 25 (noklusētā vērtība). | 
| LVA | Ja parametrs netiek padots, tad dati tiek meklēti Baltijā. Ja nepieciešams meklēt tikai Latvijā, tad jāpadod šis parametrs. | |
| result_data_type | Nosaka atgriežamo datu formātu. | Pieejami 3 formāti:
  | 
| callback | Tiek izsaukta šī parametra funkcija. | Parametrs aktuāls, ja izvēlas result_data_type=jsonp | 
| historical | Atgriež vēsturiskās adreses | Ja parametrs nav norādīts, meklē tikai aktuālās adreses. Ja parametra vērtība nav norādīta, meklē vēsturiskajās adresēs, ja neatrod aktuālajās adresēs. Ja parametra vērtība ir only, meklē tikai vēsturiskajās adresēs | 
| strict | Precīza adreses meklēšana | 1 | 
Atbildes parametri
Atbildē tiek atgriezts masīvs ar objektiem, objektu parametri ir šādi:
| Parametrs | Skaidrojums | 
|---|---|
| rank | Atrastās adreses pareizuma ticamības vērtējums. | 
| gid | Datubāzes ieraksta identifikators. | 
| valsts | Valsts nosaukums. | 
| admin_vien | Administratīvā vienība. | 
| terit_vien | Teritoriālā vienība. | 
| apdz_vieta | Apdzīvota vieta. | 
| iela | Iela. | 
| maja | Māja. | 
| index | Pasta indekss. | 
| korpuss | Korpuss. | 
| x | Punkta X koordināta TM Baltic93 (EPSG:25884) koordinātu sistēmā. | 
| y | Punkta Y koordināta TM Baltic93 (EPSG:25884) koordinātu sistēmā. | 
| address_hash | Adreses hash. | 
| iso_code | Valsts ISO kods. | 
| vzd_id | adreses kods. | 
| lat | Ģeogrāfiskais platums WGS (EPSG:4326) formātā. | 
| lon | Ģeogrāfiskais garums WGS (EPSG:4326) formātā. | 
| adrese | Pilnā adrese. | 
Kļūdu kodi
| Kods | Skaidrojums | 
|---|---|
| 200 | Wrong input data. Tiek atgriezts, ja vaicājumā nav ievadīti vai nav korekti ievadīti pieprasījuma parametri. | 
| 404 | No location found. Tiek atgriezts, ja nekas nav ticis atrasts. | 
| 5xx | Servera kļūda. | 
Paraugi
Pieprasījums:
https://api.kartes.lv/v3//geocoding?address=Brīvības&limit=1
Atbilde:
[
    {
        "rank": "0.356207",
        "gid": "1076167001",
        "valsts": "Latvija",
        "admin_vien": "Rīga",
        "terit_vien": "Centra rajons",
        "apdz_vieta": "Rīga",
        "iela": "Brīvības laukums",
        "maja": "1",
        "index": "LV-1050",
        "korpuss": "",
        "x": "506837.133000",
        "y": "6311879.574000",
        "address_hash": "31359ac8dbaddecb21d2a938d37dcb16",
        "iso_code": "LVA",
        "vzd_id": "105546121",
        "lat": 57.398171,
        "lon": 21.574947,
        "adrese": "Brīvības laukums 1, Rīga, Centra raj., Latvija"
    }
]
Pielietošanas piemēri
Ģeokodēšanas klases definēšana JavaScript kodā:
class GeocodingApi {
    constructor() {
        this.apiKey = 'your_api_key_here'; // Replace with your actual API key
        this.baseUrl = 'https://api.kartes.lv/v3';
    }
    // Method to fetch geocoded data
    async getGeocodingData(address, limit = 1) {
        const url = `${this.baseUrl}/${this.apiKey}/geocoding?address=${encodeURIComponent(address)}&limit=${limit}`;
        try {
            const response = await fetch(url);
            // Check if the response is ok (status code 200-299)
            if (!response.ok) {
                throw new Error(`Error fetching data: ${response.statusText}`);
            }
            const data = await response.json();
            return { success: true, data };
        } catch (error) {
            console.error('Fetch error:', error);
            return { success: false, error: error.message };
        }
    }
}
Ģeokodēšanas klases pielietošana:
const api = new GeocodingAPI();
api.getGeocodingData('Brīvības')
    .then(result => {
        if (!result.success) {
            console.error('Error:', result.error); // Handle the error
            return;
        }
        console.log(result.data);
        // Use the data
    });