# Get TMY Advanced PV

`GET /data/tmy/advanced_pv_power`

Get the Advanced PV power estimated actuals for a Typical Meteorological Year (TMY) at a requested advanced PV power site, 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 2025.

## Parameters

### Query Parameters

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `resource_id` | string | yes | The resource id of the resource. |
| `period` | string | no | Length of the averaging period in ISO 8601 duration format. Default is PT60M. |
| `apply_availability` | number (double) | no | Percentage of the site’s total AC (inverter) capacity that is currently generating or expected to be generating during the forecast request period. E.g. if you specify a 50% availability, your returned power will be half of what it otherwise would be. |
| `apply_constraint` | number (double) | no | Constraint on site’s total AC production, applied as a cap in the same way as the metadata parameter Site Export Limit. This will constrain all Solcast power values to be no higher than the apply_constraint value you specify. If you need an unconstrained forecast, you should not use this parameter. |
| `apply_dust_soiling` | number (double) | no | A user-override for dust_soiling_average. If you specify this parameter in your API call, we will replace the site's annual or monthly average dust soiling values with the value you specify in your API call.E.g. if you specify a 0.7 dust soiling, your returned power will be reduced by 70%. |
| `apply_snow_soiling` | number (double) | no | A user-override for Solcast’s dynamic snow soiling, which is based on global snow cover and weather forecast data, and changes from hour to hour. If you specify this parameter in your API call (e.g. if snow clearing has just been performed), we will replace the Solcast dynamic hour to hour value with the single value you specify. E.g. if you specify a 0.7 snow soiling, your returned power will be reduced by 70%. |
| `apply_tracker_inactive` | boolean | no | Indicating if trackers are inactive. If True, panels are assumed all facing up (i.e. zero rotation). Only has effect if your site has a tracking_type that is not “fixed”. |
| `dni_weight` | number (double) | no | When creating the TMY, the weighting of DNI to use in the target parameter. Note that ghi_weight + dni_weight must equal 1. |
| `format` | string | no | Response format. Default is HTML if not supplied. |
| `ghi_weight` | number (double) | no | When creating the TMY, the weighting of GHI to use in the target parameter. Note that ghi_weight + dni_weight must equal 1. |
| `output_parameters` | string[] | no | The output parameters to include in the response. |
| `probability` | string | no | The probability percentile for the TMY. |
| `terrain_shading` | boolean | no | If true, irradiance parameters are modified based on the surrounding terrain from a 90m-horizontal-resolution digital elevation model. The direct component of irradiance is set to zero when the beam from the sun is blocked by the terrain. The diffuse component of irradiance is reduced throughout the day if the sky view at the location is significantly reduced by the surrounding terrain. Global irradiance incorporates both effects. |
| `time_zone` | string | no | Timezone to return in data set. Accepted values are utc, longitudinal, or a range from -13 to 13 in 0.25 hour increments for utc offset. |

## Example request

### cURL

```bash
curl -X GET "https://api.solcast.com.au/data/tmy/advanced_pv_power?resource_id=ba75-e17a-7374-95ed&output_parameters=pv_power_advanced&time_zone=<time_zone>&period=PT60M" \
  -H "Authorization: Bearer $API_KEY"
```

### Python

```python
import requests

params = {
    "output_parameters": "pv_power_advanced",
    "resource_id": "ba75-e17a-7374-95ed",
}

response = requests.get(
    "https://api.solcast.com.au/data/tmy/advanced_pv_power", params=params,
    headers={"Authorization": "Bearer API_KEY"},
)
data = response.json()
```

## Example response (200)

```json
{
  "estimated_actuals": [
    {
      "pv_power_advanced": 10,
      "period_end": "2059-01-01T01:00:00+00:00",
      "period": "PT60M"
    },
    {
      "pv_power_advanced": 10,
      "period_end": "2059-01-01T02:00:00+00:00",
      "period": "PT60M"
    },
    {
      "pv_power_advanced": 10,
      "period_end": "2059-01-01T03:00:00+00:00",
      "period": "PT60M"
    }
  ]
}
```

## Responses

### 200 — OK

Schema: `TmyAdvancedPvPowerResponse`

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `estimated_actuals` | object[] | no |  |

Source: /docs/section/advanced-pv-power#getDataTmyAdvancedPvPower
