Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Interfejs Solar API korzysta z danych o miejscach, aby określić typ budynku, i identyfikuje budynki na podstawie zdjęć satelitarnych. Na tej stronie dowiesz się, jak określić, które informacje o energii słonecznej budynku są zwracane w odpowiedzi na żądanie buildingInsights.
Typy budynków
Interfejs Solar API obsługuje budynki typu premise. Ten typ
wskazuje nazwaną lokalizację, zwykle budynek lub zespół budynków o wspólnej nazwie.
Inne typy, takie jak subpremise lub kompleksy budynków – na przykład wolnostojące budynki znajdujące się na jednej posesji, chyba że są zarejestrowane jako premise – nie są obsługiwane.
Budowanie dachów
Interfejs Solar API określa optymalne miejsca instalacji paneli słonecznych na dachu na podstawie zdjęć satelitarnych. Budynki mieszkalne, zwłaszcza te z dachami skośnymi, są identyfikowane z dużą dokładnością, natomiast w przypadku budynków z płaskimi dachami (np. budynków mieszkalnych lub komercyjnych) dokładność może być różna.
Jeśli odpowiedź buildingInsights nie zawiera pola solarPanelConfigs, budynek został przetworzony prawidłowo, ale nie udało się umieścić paneli na dachu. Może się tak zdarzyć, jeśli dach jest zbyt mały, aby umieścić na nim panele, lub zbyt zacieniony, aby panele mogły generować znaczną ilość energii.
Użyj elementu place_id, aby odwołać się do dopasowanego miejsca.
W żądaniu interfejsu Solar API użyj współrzędnych geograficznych miejsca.buildingInsights
Jeśli interfejs Solar API znajdzie pasujący budynek, sprawdź, czy place_id w odpowiedzi buildingInsights pasuje do place_id z interfejsu Geocoding API lub Place Autocomplete API.
Aby ograniczyć wyniki do miejsc typu premise, dodaj filtr typu miejsca do odpowiedzi interfejsu Geocoding API lub Places API.
Możesz też zaoferować dodatkowe funkcje, umożliwiając użytkownikom wybieranie budynku na mapie za pomocą interfejsu Maps JavaScript API. Wyodrębnij szerokość i długość geograficzną budynku z zdarzenia myszy, a następnie przekaż te współrzędne w żądaniu buildingInsights.
[[["Łatwo zrozumieć","easyToUnderstand","thumb-up"],["Rozwiązało to mój problem","solvedMyProblem","thumb-up"],["Inne","otherUp","thumb-up"]],[["Brak potrzebnych mi informacji","missingTheInformationINeed","thumb-down"],["Zbyt skomplikowane / zbyt wiele czynności do wykonania","tooComplicatedTooManySteps","thumb-down"],["Nieaktualne treści","outOfDate","thumb-down"],["Problem z tłumaczeniem","translationIssue","thumb-down"],["Problem z przykładami/kodem","samplesCodeIssue","thumb-down"],["Inne","otherDown","thumb-down"]],["Ostatnia aktualizacja: 2025-08-29 UTC."],[[["\u003cp\u003eThe 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.\u003c/p\u003e\n"],["\u003cp\u003eThe API primarily supports residential buildings with inclined roofs for accurate solar panel placement, while accuracy may vary for flat-roofed buildings.\u003c/p\u003e\n"],["\u003cp\u003eIf the \u003ccode\u003esolarPanelConfigs\u003c/code\u003e 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.\u003c/p\u003e\n"],["\u003cp\u003eUsers 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.\u003c/p\u003e\n"],["\u003cp\u003eA complementary approach involves users selecting a building directly on a map using the Maps JavaScript API, and using the extracted coordinates for solar analysis.\u003c/p\u003e\n"]]],["The Solar API utilizes place data and satellite imagery to identify buildings and determine solar potential. It primarily supports `premise` type buildings, excluding `subpremise` types. Optimal solar panel placement is assessed, with higher accuracy for residential pitched roofs; flat roofs may vary. The API can be used by converting an address to coordinates via the Geocoding or Place Autocomplete APIs, or by using a location selected on a map. The results can be filtered to places of type premise, and the results from the building insights api can be compared to the results from the geocoding or places API.\n"],null,["# Search buildings\n\nThe Solar API uses place data to determine building type and identifies\nbuildings based on satellite imagery. This page describes how to determine which\nbuilding's solar information is returned in a\n[`buildingInsights`](/maps/documentation/solar/reference/rest/v1/buildingInsights)\nrequest.\n\nBuilding types\n--------------\n\nThe Solar API supports buildings of type\n[`premise`](/maps/documentation/places/web-service/place-types). This type\nindicates a named location, usually a building or collection of buildings with a\ncommon name.\n\nOther types, such as\n[`subpremise`](/maps/documentation/places/web-service/place-types#table-b) or\ncompounds --- for example, detached buildings located on a single property, unless\nregistered as a [`premise`](/maps/documentation/places/web-service/place-types) ---\nare **not** supported.\n\nBuilding roofs\n--------------\n\nThe Solar API identifies optimal rooftop solar panel placement based on\nsatellite imagery. Residential buildings, particularly inclined or pitched\nroofs, are identified with a high degree of accuracy, while buildings with flat\nroofs (for example, apartment or commercial buildings) may vary in accuracy.\n\nIf the\n[`buildingInsights`](/maps/documentation/solar/building-insights#example_response_object) 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.\n| **Tip:** Based on other selection approaches, including manual user selection or a custom programmatical selection, you can use the Solar API [`dataLayers`](/maps/documentation/solar/reference/rest/v1/dataLayers) endpoint to create your own solar potential calculations and panel placement.\n\nSearching from an address\n-------------------------\n\n1. You can convert an address to latitude and longitude coordinates using the\n [Geocoding API](/maps/documentation/geocoding/requests-geocoding#Types) or\n [Place Autocomplete API](/maps/documentation/places/web-service/autocomplete).\n\n Use the `place_id` to refer to the matched place.\n2. Use the place latitude and longitude coordinates in your Solar API\n [`buildingInsights`](/maps/documentation/solar/reference/rest/v1/buildingInsights)\n request.\n\n - 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.\n - To limit results to places with type `premise`, add a place type filter to Geocoding API or Places API responses. \n\n ```json\n {\n \"name\": \"buildings/ChIJh0CMPQW7j4ARLrRiVvmg6Vs\",\n \"center\": {\n \"latitude\": 37.4449739,\n \"longitude\": -122.13914659999998\n },...\n }\n ```\n\n| **Note:** Sometimes the place IDs will not match, which means the searched (lat, lng) does not resolve to the same address or building. Even if the [Geocoding\n| API](/maps/documentation/geocoding/overview) response is of granularity [`ROOFTOP`](/maps/documentation/geocoding/requests-geocoding#results), the `place_id` may have a type other than `premise`.\n\nYou can use the [open source sample\napp](https://solar-potential-296769475687.us-central1.run.app/) or make a\n[`buildingInsights`](/maps/documentation/solar/building-insights) request to\ncheck the `place_id` for buildings covered by the Solar API.\n\nSelecting a location on a map\n-----------------------------\n\nYou can also offer a complementary experience by enabling users to select the\nbuilding on the map using the [Maps JavaScript\nAPI](/maps/documentation/javascript/overview). Extract the building's latitude\nand longitude from the [mouse\nevent](/maps/documentation/javascript/examples/event-click-latlng), then pass in\nthose coordinates in a\n[`buildingInsights`](/maps/documentation/solar/building-insights) request."]]