Skip to content

AI & TechnologyGoogle Places API Is Legacy: Fixing LegacyApiNotActivatedMapError

Simon Dziak
Simon Dziak
Founder & developer, App369
LinkedIn
October 18, 20267 min

Key takeaways

  • On March 1, 2025, Google moved the Places API, the Places SDKs for Android and iOS, the Maps JavaScript Places Service, the Directions API and the Distance Matrix API to Legacy status.
  • Google says Legacy services are not available in new Cloud projects but remain fully supported for existing ones. They are feature frozen, and Google promises at least 12 months of notice before turning them down.
  • LegacyApiNotActivatedMapError means your app called a Legacy API that isn't enabled on your project. Google's advice is to keep Legacy APIs off on new projects and use the new API instead: Places API (New) or the Routes API.
  • Google warns that many AI coding assistants generate code for the Legacy APIs by default, so apps built with them can hit this error on a fresh project.
  • The move is a real code change: the new Places APIs require a field mask, return a different JSON format and use a new pricing model, and the Routes API uses new endpoints with a request body instead of URL parameters.

Pricing an app? Try the free app cost calculator or get a range for your project in the instant quote.

If your app shows LegacyApiNotActivatedMapError, it is calling a Google Maps API that went Legacy on March 1, 2025, from a Cloud project where that API isn't available. The Places API, the Places SDKs, Directions and Distance Matrix are all Legacy now. Existing projects can keep using them for now, but new projects can't, and Google recommends keeping them off. The fix is to move the code to Places API (New) or the Routes API. That is a real code change, not a setting.

If you landed here from an old link to the Places SDK for Android docs, that page now returns 404. The dates and behavior below come from Google Maps Platform documentation, as listed in the sources. I checked each page on October 18, 2026.

Disclosure: App369 is my studio. I build and fix apps, including maps and location features, and the last section mentions what I sell. Google doesn't pay me for anything on this page.

What went Legacy, and what replaces it

Legacy serviceLegacy from (per Google)New service
Places APIMarch 1, 2025Places API (New)
Maps JavaScript API Places ServiceMarch 1, 2025Place class
Places SDK for AndroidMarch 1, 2025Places SDK for Android (New)
Places SDK for iOSMarch 1, 2025Places SDK for iOS (New)
Directions APIMarch 1, 2025Routes API (computeRoutes)
Distance Matrix APIMarch 1, 2025Routes API (computeRouteMatrix)
Maps JavaScript Directions and Distance Matrix servicesMarch 1, 2025Route and RouteMatrix classes

Source: Google Maps Platform, Legacy products, last updated October 16, 2026.

What "Legacy" means

Google describes Legacy as an intermediate step between generally available and deprecated:

  • Not available in new Cloud projects. This is what causes the error on a fresh project.
  • Fully supported for existing projects. Existing projects can keep using it.
  • Feature frozen. New features go only to the new services.
  • No turn-down date yet. Google says it expects to turn Legacy services down in the coming years and will give at least 12 months of notice first.

What the old addresses do today

Checked on October 18, 2026:

  • developers.google.com/places/android-sdk/intro, the old Places SDK for Android start page, returned 404.
  • Older Places SDK and Places API migration links now redirect into Google's legacy documentation section.

Fixing LegacyApiNotActivatedMapError

  1. Find which Legacy API is called. Search the app and backend for maps.googleapis.com/maps/api/place/, maps/api/directions/, maps/api/distancematrix/, the JavaScript PlacesService, DirectionsService and DistanceMatrixService, and Places.initialize( on Android. In a Flutter app, check which endpoints your places or directions package calls.
  2. Enable the new API and add it to your key. Google's Places migration guide says to enable Places API (New) in the Cloud project and add it to the API key your app uses. If you run both versions during the move, Google recommends a separate key for each.
  3. Move Places calls to the new API.
    • Web service: Place Details (New), Nearby Search (New) and Text Search (New) require a field mask that lists the fields you want, return only JSON, and use a new response format.
    • Android: initialize with Places.initializeWithNewPlacesApiEnabled(), and add field masks to the same three request types.
  4. Move Directions and Distance Matrix to the Routes API. Replace maps.googleapis.com/maps/api/directions/ with routes.googleapis.com/directions/v2:computeRoutes, and maps/api/distancematrix/ with routes.googleapis.com/distanceMatrix/v2:computeRouteMatrix. The parameters move from the URL into an HTTPS request body.
  5. Request only the fields you show. My advice: keep each field mask to what the screen actually uses. A wildcard is quicker to write, but you lose control of what each call returns and costs.
  6. Check the price before you switch. The new APIs use a new pricing model. Google's tip, for usage high enough to reach second-tier pricing: you're billed for a different SKU, so switch production close to the start of the month.
  7. Keep the API key restricted. My advice: restrict each key to the APIs it calls and to your app or domain, especially a key that ships inside a mobile app.

If an AI assistant wrote the code

Google's Legacy page warns that many AI coding assistants generate code for the Legacy APIs by default, and it publishes migration prompts for them. Code like that can work on an older project that still has the Legacy API enabled, then fail on a new one. Point the assistant at Google's migration guides, ask it to use the new API with field masks, and test on a brand-new Cloud project with no Legacy APIs enabled.

Need a hand?

If your app was built with Lovable, Bolt, Cursor or another AI tool and maps, places or routes stopped working, the AI-Built App Rescue starts with a $450 Launch Check of the whole app in 3 business days. For one broken feature in an app you already maintain, the App Fix Ticket covers it in two fixed-price steps. A $450 Diagnosis gives you the root cause with evidence and a fixed repair quote within 3 business days, credited toward the fix. If you go ahead, the $1,200 Fix takes 5 business days. Or send me a short description.

Frequently asked questions

What does LegacyApiNotActivatedMapError mean?
Google says it means your app is calling a Legacy API, such as the Places API (Legacy), the Directions API (Legacy) or the Distance Matrix API (Legacy), that isn't enabled on your Google Cloud project. Legacy APIs aren't available in new projects, so the fix is to call the new API instead: Places API (New) or the Routes API.
Is the Google Places API deprecated?
It is Legacy, which Google describes as a step before deprecation. Since March 1, 2025 the Places API (Legacy) is feature frozen and not available in new Cloud projects. Existing projects can keep using it, and Google says it will give at least 12 months of notice before turning it down. It has not set a date yet.
Can I still enable the legacy Places API?
Not in a new Cloud project. Google says Legacy services are not available in new projects and recommends keeping them disabled there. Existing projects can keep using Legacy services, according to Google. My advice: if an existing project can't, check that the Legacy API is still enabled and allowed on your key.
What replaced the Directions API and Distance Matrix API?
The Routes API. Directions requests move to routes.googleapis.com/directions/v2:computeRoutes and Distance Matrix requests to routes.googleapis.com/distanceMatrix/v2:computeRouteMatrix, with the parameters sent in an HTTPS request body instead of the URL.
Why does my AI-built app get LegacyApiNotActivatedMapError?
Google says many AI coding assistants generate code for the Legacy APIs by default. If the app runs on a new Cloud project, those APIs aren't available, so the calls fail. Ask the assistant to migrate to Places API (New) or the Routes API, and check the result against Google's migration guides.
Will the new Places API cost more?
It uses a new pricing model, so check the Google Maps Platform price list for the calls your app makes. Google also suggests that apps with usage high enough to reach second-tier pricing switch production traffic close to the start of a month, because the new API is billed under a different SKU.

Sources

  1. Google Maps Platform, Legacy products and features
  2. Google Maps Platform, migrate to Places API (New)
  3. Google Maps Platform, migrate to Places SDK for Android (New)
  4. Google Maps Platform, migrate from Directions API and Distance Matrix API to the Routes API
  5. Google Maps Platform, deprecations
Tags
#LegacyApiNotActivatedMapError #places api legacy #places api new migration #places sdk for android new #directions api legacy #distance matrix api legacy #routes api migration #google maps legacy api #places api field mask
Share:

Related Resources

Related guides