Skip to content

Tmy Data API

TMY (Typical Meteorological Year) is a collation of historical weather data for a specified location for a one year period. The dataset is derived from a multi-year time series specifically selected so that it presents the unique weather phenomena for the location, and provides annual averages that are consistent with long term averages.


The module TmyClient has the following available methods:

Endpoint Purpose API Docs
GetRadiationAndWeather Get the irradiance and weather for a Typical Meteorological Year (TMY) at a requested location, derived from satellite (clouds and irradiance over non-polar continental areas) and numerical weather models (other data). The TMY is calculated with data from 2007 to 2023. details
GetRooftopPvPower Get the basic rooftop PV power estimated actuals for a Typical Meteorological Year (TMY) at a requested location, derived from satellite (clouds and irradiance over non-polar continental areas) and numerical weather models (other data). The TMY is calculated with data from 2007 to 2023. details
GetAdvancedPvPower Get the irradiance and weather for a Typical Meteorological Year (TMY) at a requested location, derived from satellite (clouds and irradiance over non-polar continental areas) and numerical weather models (other data). The TMY is calculated with data from 2007 to 2023. details

GetRadiationAndWeather

Parameters: latitude, longitude, timeZone, period, ghiWeight, dniWeight, probability, tilt, azimuth, arrayType, outputParameters, terrainShading, format

Example Usage:

using Solcast.Clients;

var tmyClient = new TmyClient();
var response = await tmyClient.GetRadiationAndWeather(
    latitude: -33.856784,
    longitude: 151.215297,
    period: "PT30M",
    tilt: 30.0f,
    azimuth: 180.0f,
    format: "csv"
);
Console.WriteLine(response.RawResponse);
Sample Output:

ghi dni dhi azimuth zenith air_temp relative_humidity wind_speed_10m albedo period_end period
635 224 432 -71 25 23.5 84.2 3.5 0.08 2059-01-01T00:30:00+00:00 PT30M
570 73 500 -61 19 23.6 83.9 3.8 0.08 2059-01-01T01:00:00+00:00 PT30M
... ... ... ... ... ... ... ... ... ... ...
856 962 89 -84 37 23.8 78.3 4.3 0.09 2059-12-31T23:30:00+00:00 PT30M
931 980 90 -78 31 24.7 73.8 4.3 0.09 2060-01-01T00:00:00+00:00 PT30M

GetRooftopPvPower

Parameters: latitude, longitude, capacity, timeZone, period, ghiWeight, dniWeight, probability, tilt, azimuth, installDate, lossFactor, outputParameters, terrainShading, format

Example Usage:

using Solcast.Clients;

var tmyClient = new TmyClient();
var response = await tmyClient.GetRooftopPvPower(
    latitude: -33.856784,
    longitude: 151.215297,
    capacity: 5.0f,
    format: "csv"
);
Console.WriteLine(response.RawResponse);
Sample Output:

pv_power_rooftop period_end period
2.435 2059-01-01T01:00:00+00:00 PT1H
1.623 2059-01-01T02:00:00+00:00 PT1H
... ... ...
2.514 2059-12-31T23:00:00+00:00 PT1H
3.204 2060-01-01T00:00:00+00:00 PT1H

GetAdvancedPvPower

Parameters: resourceId, timeZone, period, ghiWeight, dniWeight, probability, outputParameters, applyAvailability, applyConstraint, applyDustSoiling, applySnowSoiling, applyTrackerInactive, terrainShading, format

Example Usage:

using Solcast.Clients;

var tmyClient = new TmyClient();
var response = await tmyClient.GetAdvancedPvPower(
    resourceId: "ba75-e17a-7374-95ed",
    format: "csv"
);
Console.WriteLine(response.RawResponse);
Sample Output:

pv_power_advanced period_end period
8.263 2059-01-01T01:00:00+00:00 PT1H
5.517 2059-01-01T02:00:00+00:00 PT1H
... ... ...
10 2059-12-31T23:00:00+00:00 PT1H
10 2060-01-01T00:00:00+00:00 PT1H