Search buildings

  • The Solar API uses place data and satellite imagery to identify buildings and determine their solar potential, focusing on buildings classified as "premise" in Google Places.

  • The API primarily supports residential buildings with inclined roofs for accurate solar panel placement, while accuracy may vary for flat-roofed buildings.

  • If the solarPanelConfigs field is missing from the API response, it indicates the building was analyzed, but solar panel placement was not feasible due to roof size or shading.

  • Users can identify buildings for solar analysis by converting addresses to coordinates using Geocoding or Place Autocomplete APIs and passing the coordinates to the Solar API.

  • A complementary approach involves users selecting a building directly on a map using the Maps JavaScript API, and using the extracted coordinates for solar analysis.

The Solar API uses place data to determine building type and identifies buildings based on satellite imagery. This page describes how to determine which building's solar information is returned in a buildingInsights request.

Building types

The Solar API supports buildings of type premise. This type indicates a named location, usually a building or collection of buildings with a common name.

Other types, such as subpremise or compounds — for example, detached buildings located on a single property, unless registered as a premise — are not supported.

Building roofs

The Solar API identifies optimal rooftop solar panel placement based on satellite imagery. Residential buildings, particularly inclined or pitched roofs, are identified with a high degree of accuracy, while buildings with flat roofs (for example, apartment or commercial buildings) may vary in accuracy.

If the buildingInsights response does not include the field solarPanelConfigs, the building was processed correctly, but we were unable to put panels on the roof. This may happen if the roof is too small to place panels or too shaded for panels to generate significant energy.

Searching from an address

  1. You can convert an address to latitude and longitude coordinates using the Geocoding API or Place Autocomplete API.

    Use the place_id to refer to the matched place.

  2. Use the place latitude and longitude coordinates in your Solar API buildingInsights request.

    • If the Solar API finds a matching building, check that the place_id in the buildingInsights response matches the place_id from the Geocoding API or the Place Autocomplete API.
    • To limit results to places with type premise, add a place type filter to Geocoding API or Places API responses.
      {
      "name": "buildings/ChIJh0CMPQW7j4ARLrRiVvmg6Vs",
      "center": {
      "latitude": 37.4449739,
      "longitude": -122.13914659999998
      },...
      }

You can use the open source sample app or make a buildingInsights request to check the place_id for buildings covered by the Solar API.

Selecting a location on a map

You can also offer a complementary experience by enabling users to select the building on the map using the Maps JavaScript API. Extract the building's latitude and longitude from the mouse event, then pass in those coordinates in a buildingInsights request.

interactive map to point location.