Bing Maps REST Services drop-in replacement

Microsoft is retiring Bing Maps for Enterprise. Free and basic keys stopped working on 30 June 2025 and enterprise agreements end on 30 June 2028. If you have code built on the Locations, Autosuggest, Time Zone or Elevation REST services, point it at bing.mygeocode.com and keep the same response parsing.

Change one hostname

Original host
  • dev.virtualearth.net
Use insteadbing.mygeocode.com
Key parameterkey (put your My Geocode key here, or leave it out for the free 2,500 a day)
Before
curl "https://dev.virtualearth.net/REST/v1/Locations?q=1%20Microsoft%20Way%2C%20Redmond%2C%20WA&key=YOUR_BING_KEY"
After
curl "https://bing.mygeocode.com/REST/v1/Locations?q=1%20Microsoft%20Way%2C%20Redmond%2C%20WA&key=YOUR_MYGEOCODE_KEY"

Why people move

The Bing endpoints are going away on a fixed schedule. Migrating to Azure Maps means new response shapes and new client code. Changing one hostname does not.

Try it before you sign up for anything. Requests to bing.mygeocode.com count toward the same 2,500 a day you get on our own endpoints, with no key and no account. Above that, credits at $0.001 per request or €50 a month unlimited. Signing up takes an email address and nothing else.

See pricing Sign up with an email

Endpoints

Path on bing.mygeocode.comWhat it doesBacked by
/REST/v1/Locations?q=...Find a location by queryForward geocoding
/REST/v1/Locations?countryRegion=...&locality=...&addressLine=...Find a location by structured addressForward geocoding
/REST/v1/Locations/{lat},{lon}Find a location by point (reverse)Reverse geocoding
/REST/v1/Autosuggest?query=...AutosuggestAddress autocomplete
/REST/v1/TimeZone/{lat},{lon}Time zone by pointTimezone lookup
/REST/v1/Elevation/List?points=lat,lon,lat,lonElevations for a list of pointsElevation lookup

Example response

This is what the request above returns. Field names, nesting and types follow Bing Maps. Only the data behind them is ours.

Response from bing.mygeocode.com
{
  "authenticationResultCode": "ValidCredentials",
  "brandLogoUri": "https://mygeocode.com/assets/img/logo.svg",
  "copyright": "Copyright My Geocode",
  "resourceSets": [
    {
      "estimatedTotal": 1,
      "resources": [
        {
          "__type": "Location:http://schemas.microsoft.com/search/local/ws/rest/v1",
          "bbox": [47.635742, -122.140518, 47.643468, -122.125237],
          "name": "1 Microsoft Way, Redmond, WA 98052",
          "point": { "type": "Point", "coordinates": [47.639605, -122.129877] },
          "address": {
            "addressLine": "1 Microsoft Way",
            "adminDistrict": "WA",
            "adminDistrict2": "King County",
            "countryRegion": "United States",
            "formattedAddress": "1 Microsoft Way, Redmond, WA 98052",
            "locality": "Redmond",
            "postalCode": "98052"
          },
          "confidence": "High",
          "entityType": "Address",
          "geocodePoints": [
            { "type": "Point", "coordinates": [47.639605, -122.129877], "calculationMethod": "Rooftop", "usageTypes": ["Display"] }
          ],
          "matchCodes": ["Good"]
        }
      ]
    }
  ],
  "statusCode": 200,
  "statusDescription": "OK",
  "traceId": "mg-7f2a9c1e4b"
}

Details and differences

  • The response envelope (resourceSets, resources, statusCode, traceId) is kept so that the Bing Maps .NET, Java and JavaScript REST toolkits parse it without changes.
  • confidence is High, Medium or Low, and matchCodes uses Good, Ambiguous and UpHierarchy, mapped from our precision and confidence values.
  • The maxResults, culture, userRegion and includeNeighborhood parameters are honoured. Session keys and the Spatial Data Services are not part of this.
  • The Bing Maps V8 Web Control has a drop-in loader as well. See the JavaScript drop-ins page.

If your client depends on a field or behaviour that is not listed here, tell us. Compatibility gaps get fixed quickly because they are usually small.

Other drop-in hosts

All REST drop-ins and JavaScript library drop-ins.