ACF Library

GetCityCoordinates

Back to List

Description: Return the geo coordinates for a given city or address

FileMaker Prototype:

Set Variable [$res; ACF_Run("GetCityCoordinates"; string_cityName)]

Category: REST API

Function source:

Function GetCityCoordinates ( string cityName ) // → float lat, float lon
    string baseUrl = "https://nominatim.openstreetmap.org/search";
    string url = format("%s?q=%s&format=json&limit=1", baseUrl, Url_Encode (cityName));

    string res = http_get(url,"User-Agent: MyACFapp/1.0");

    if (res == "" || HTTP_STATUS_CODE != 200) then
        throw "No response from Nominatim API";
    end if
     
    JSON js;
    js["a"] = res; 
   
    string latStr = js["a[1].lat"];
    string lonStr = js["a[1].lon"];

    if (latStr == "?" || lonStr == "?") then
        throw "City not found";
    end if
    float lat = float(latStr);
    float lon = float(lonStr);
    return json ("lat", lat, "lon", lon); 
End

Back to List