solar.buildingInsights.findClosest

enum_ExperimentsParameter := [ "EXPERIMENT_UNSPECIFIED", "EXPANDED_COVERAGE" ]
enum_RequiredQualityParameter := [ "IMAGERY_QUALITY_UNSPECIFIED", "HIGH", "MEDIUM", "LOW", "BASE" ]

valid {
    input.Qs.experiments == enum_ExperimentsParameter[_]
    input.Qs.location.latitude == NUMBER
    input.Qs.location.longitude == NUMBER
    input.Qs.requiredQuality == enum_RequiredQualityParameter[_]
    input.ProviderMetadata.Region == STRING
}

solar.dataLayers.get

enum_ExperimentsParameter := [ "EXPERIMENT_UNSPECIFIED", "EXPANDED_COVERAGE" ]
enum_RequiredQualityParameter := [ "IMAGERY_QUALITY_UNSPECIFIED", "HIGH", "MEDIUM", "LOW", "BASE" ]
enum_ViewParameter := [ "DATA_LAYER_VIEW_UNSPECIFIED", "DSM_LAYER", "IMAGERY_LAYERS", "IMAGERY_AND_ANNUAL_FLUX_LAYERS", "IMAGERY_AND_ALL_FLUX_LAYERS", "FULL_LAYERS" ]

valid {
    input.Qs.exactQualityRequired == BOOLEAN
    input.Qs.experiments == enum_ExperimentsParameter[_]
    input.Qs.location.latitude == NUMBER
    input.Qs.location.longitude == NUMBER
    input.Qs.pixelSizeMeters == NUMBER
    input.Qs.radiusMeters == NUMBER
    input.Qs.requiredQuality == enum_RequiredQualityParameter[_]
    input.Qs.view == enum_ViewParameter[_]
    input.ProviderMetadata.Region == STRING
}

solar.geoTiff.get

valid {
    input.Qs.id == STRING
    input.ProviderMetadata.Region == STRING
}