{"uid":"cap_cWK_X_0l1eVwUWEUgSaQC","slug":"google-solar-api-aerial-geotiff-data-layers-8d438284","name":"Google Solar API – Aerial GeoTIFF Data Layers","description":"Google Solar API - Aerial GeoTIFF data layers (rgbUrl, dsmUrl, fluxUrl) with imageryDate","url":"https://stable-enrich-git-stableenrich-solar-aerial-merit-systems.vercel.app/api/google-maps/solar/data-layers","method":"GET","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method"],"properties":{"type":{"type":"string","const":"http"},"method":{"enum":["GET","HEAD","DELETE"],"type":"string"},"queryParams":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["latitude","longitude","radiusMeters","view","requiredQuality","pixelSizeMeters","exactQualityRequired"],"properties":{"view":{"enum":["DSM_LAYER","IMAGERY_LAYERS","IMAGERY_AND_ANNUAL_FLUX_LAYERS","IMAGERY_AND_ALL_FLUX_LAYERS","FULL_LAYERS"],"type":"string","default":"FULL_LAYERS"},"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180},"radiusMeters":{"type":"number","default":50,"maximum":175,"minimum":0.1},"pixelSizeMeters":{"type":"number","default":0.25},"requiredQuality":{"enum":["LOW","MEDIUM","HIGH"],"type":"string","default":"HIGH"},"exactQualityRequired":{"type":"boolean","default":false}},"additionalProperties":false}},"additionalProperties":false}}},"responseSchema":null,"example":{"request":{"input":{"type":"http","method":"GET","queryParams":{"view":"FULL_LAYERS","latitude":37.4219983,"longitude":-122.084,"radiusMeters":50,"pixelSizeMeters":0.25,"requiredQuality":"HIGH","exactQualityRequired":false}}},"response":{"dsmUrl":"https://solar.googleapis.com/v1/geoTiff:get?id=NThiM2U4MGFhZWQ0NWU5MTVlODQ5ODFlNTYxNTIyMjYtMDM1OWIyNTZhNWZkMjdiZmM4YjVjYjBiNzlhMDY0ZGM6RFNNOkhJR0g","rgbUrl":"https://solar.googleapis.com/v1/geoTiff:get?id=ZDc4MGEzY2Q1MzQxMmQ1NWIwZGExYzk3Yjg4OTRiZGUtZjNjNjhkMDFmZjJhMjZjZTAyYzc5NjY3OWM5ZTFhMTU6UkdCOkhJR0g","maskUrl":"https://solar.googleapis.com/v1/geoTiff:get?id=NjYyOGYyNjU2NGUzMzEyODI3MTAzMzkxMzAxYWVjZmItN2YzNDQ2ZWMzNzdlZWI1MjA1ZjVlMGExYTBhMjU2NjM6TUFTSzpISUdI","imageryDate":{"day":24,"year":2024,"month":9},"annualFluxUrl":"https://solar.googleapis.com/v1/geoTiff:get?id=YTBmNTczMjc5MWZhMjY5NmM1MmY4OGNiMjg4MDM2NTItNGQ0MjdkMWY1YzQyMTZmNDc0ZmQ1NTY4ZDQ2MGNhZTY6QU5OVUFMX0ZMVVg6SElHSA","imageryQuality":"HIGH","monthlyFluxUrl":"https://solar.googleapis.com/v1/geoTiff:get?id=NmYxMDcyM2EzNjE3YzJmYzFiNDRkNjU4NmJkNTE3MDMtZmJmYTg5ZDZjNWI5Njc0ZGQ5YjBjNTM5OWJmM2JlOTc6TU9OVEhMWV9GTFVYOkhJR0g","hourlyShadeUrls":["https://solar.googleapis.com/v1/geoTiff:get?id=ZmFlMzM5OGIyNDYwMDQ3Njk1N2UwYmE5OTgwZTU0NTUtNzZhZDgwM2Q0NDUyZmI2MGI2MGM2NDBhMmE0NGJlYmY6SE9VUkxZX1NIQURFOkhJR0g","https://solar.googleapis.com/v1/geoTiff:get?id=MWY2MjJkMjM4Yjc2ZDg2ZTQwMmY0MTczZGE1YjgyODgtZGZjZDM1ZTM2ZDJkMTk5OGJjODRhZWExYzZkZjc4ODM6SE9VUkxZX1NIQURFOkhJR0g","https://solar.googleapis.com/v1/geoTiff:get?id=YTIwZTJhY2VkMmUwYjAxY2M1MDk5YThiNTQ3MWI5OGQtMzk1YWEwYTdlZDNhYWU2M2E5NmM5MDJlOGIwOGRmNTQ6SE9VUkxZX1NIQURFOkhJR0g","https://solar.googleapis.com/v1/geoTiff:get?id=ZGEyOGYzYjgwOWQ2NTc0YjJmYjdhZmFkMTgzYzM3ZGEtYTRlMDMwZjhhZjI2ZGJkZTNkZTY1YWZlNWJmYThiODE6SE9VUkxZX1NIQURFOkhJR0g","https://solar.googleapis.com/v1/geoTiff:get?id=NzM1MDcxMGE0ZWQzNGIzMDZlOWIyNjY4YWQ5YWE0YmUtZjA1MjdmMzkxOWFjNWM5ZTI5ZmIzZGM2NzY0OGU4YWQ6SE9VUkxZX1NIQURFOkhJR0g","https://solar.googleapis.com/v1/geoTiff:get?id=MjI2ODlhOTQwOTBhYjk4NTYzOTdkMGVhOWE3ZjVhZWItZjliZjk1MWY2NmJjMzcwMjk0NzBlNzlhYWYyZjRjYjM6SE9VUkxZX1NIQURFOkhJR0g","https://solar.googleapis.com/v1/geoTiff:get?id=MzJhMTIxMDQ4ZDI0YzUzZTJiYzgxOWViNDc2N2E3OWMtNGYxZDM3MWVmZWJiYzYyMzMxOTk1NmY5MTJjOWRlMzA6SE9VUkxZX1NIQURFOkhJR0g","https://solar.googleapis.com/v1/geoTiff:get?id=NzM0ZjA2ZGZjOTZjMTRhYTVkZmI2MDgyOTZmNDJhYzAtNmExOWRlZWE3ZjJmMjEyNGZlYzMwMzIxNmQyYzYxZWI6SE9VUkxZX1NIQURFOkhJR0g","https://solar.googleapis.com/v1/geoTiff:get?id=YjQ5MDFhYTBlOWIxMWFkNTZhNDg0MTg3YjY3MWJmODUtZDRhZTVjNWFlYmJmODE2OWQ2YmU3NDg0MjRmMmY4NmM6SE9VUkxZX1NIQURFOkhJR0g","https://solar.googleapis.com/v1/geoTiff:get?id=ODVlNTExODQ5MTc0YWQ2ODE2YmFlZWJjZWFiNGJlZjktMmFjZmJhM2Q5ZWI0MjIxOWE4YWI5Yzc2OWNiNzAyNjE6SE9VUkxZX1NIQURFOkhJR0g","https://solar.googleapis.com/v1/geoTiff:get?id=Y2M4MDVmYmRiODZmNTQxNTg5NmYzYmMyYjYzZTkxODEtMWUxNDA0OGEyODNiYjA2MmI1NjQxMjVmOWRlYzAwNzc6SE9VUkxZX1NIQURFOkhJR0g","https://solar.googleapis.com/v1/geoTiff:get?id=OWZhNGRkYzQyNDk2MWFhZjE5YmU5NjgzYzQ1ZjUxZTYtMTI1ZTY0OWFiMGYzY2ExMTdhMDM3OTE0N2JmZDUwMzg6SE9VUkxZX1NIQURFOkhJR0g"],"imageryProcessedDate":{"day":18,"year":2026,"month":4}}},"exampleRequest":{"view":"FULL_LAYERS","latitude":37.4219983,"longitude":-122.084,"radiusMeters":50,"pixelSizeMeters":0.25,"requiredQuality":"HIGH","exactQualityRequired":false},"tags":["x402"],"displayCostAmount":"0.08","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"settled","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.08/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.08","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.08","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_YRr49PX2mV19LePBGARfy","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.08","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Returns aerial GeoTIFF data layers (RGB, DSM, and solar flux maps) with imagery date for a given geographic location and radius","exampleAgentPrompt":"Pull the full solar GeoTIFF data layers — RGB, DSM, and flux maps — for the location at latitude 37.4219983, longitude -122.084, using a 100-meter radius, HIGH quality, and 0.25 meter pixel size.","exampleUseCases":[{"title":"Solar panel placement analysis for rooftops","prompt":"I need to analyze potential solar panel placements on a warehouse roof in downtown Denver. Can you grab the aerial imagery, elevation data, and solar flux maps for the building at 1500 Blake Street? I want high-quality data with detailed pixel resolution so I can identify the best roof sections."},{"title":"Climate resilience mapping for city planning","prompt":"We're assessing rooftop solar potential across our district to meet climate goals. Pull the full GeoTIFF layers — RGB, DSM, and solar irradiance maps — for all properties in a 500-meter radius around City Hall in Portland. Use the highest quality and finest pixel resolution available."},{"title":"Machine learning training data for solar detection","prompt":"I'm building a model to automatically detect suitable roofs for solar installation. Can you fetch the raw GeoTIFF raster data including RGB aerial shots, digital surface models, and solar flux maps for several test locations around San Francisco? I need pixel-level precision for training accuracy."}],"resultDescription":"Returns URLs to GeoTIFF files including an RGB aerial image (rgbUrl), a Digital Surface Model (dsmUrl), and a solar flux map (fluxUrl), along with an imageryDate indicating when the aerial imagery was captured.","failureModes":["Coordinates outside Google Solar API coverage area returns empty or low-quality data","radiusMeters exceeding 175 returns a validation error","Requesting HIGH quality for an area with only LOW quality data returns an error if exactQualityRequired is true","Invalid or out-of-range latitude/longitude values return a 400 bad request","Network or upstream Google API timeout returns a 5xx error"],"whenToPreferThis":"Use this endpoint when you need raw GeoTIFF raster data layers (RGB imagery, digital surface models, solar flux) for a specific location for downstream solar potential analysis, custom visualization, or ML pipelines. Prefer this over the building insights endpoint when you need pixel-level raster data rather than structured roof segment metrics.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-14T00:37:34.075Z","isFirstParty":false}