Use Seasons to retrieve utility-defined date ranges used by seasonal tariff rates.
Use Seasons to retrieve utility-defined date ranges used by seasonal tariff rates.
Many Load Serving Entities (LSEs) charge different tariff rates depending on the time of year. For example, a utility might charge 8.5¢ during summer and 7¢ during winter. Each utility defines when those periods start and end.
Arcadia represents these periods as seasons. A Season belongs to an LSE, and one or more seasons are organized into a SeasonGroup. Together, the seasons in a season group span a full calendar year.
Seasons are part of the time-based tariff metadata model. Use Calendars for holidays, billing dates, and dynamic pricing events, and use Time of Uses for schedules that determine when time-of-use rates apply.
Seasons can start and end on fixed dates. seasonFromMonth and seasonFromDay define the start date. seasonToMonth and seasonToDay define the end date.
Some utilities define season boundaries relative to billing periods instead of fixed calendar dates. This behavior is represented by fromEdgePredominance and toEdgePredominance:
PREDOMINANTmeans the season boundary moves to the start of the bill.SUBSERVIENTmeans the season boundary moves to the end of the bill.nullmeans the boundary uses the fixed calendar date.
For example, consider a customer with a March 5 to April 4 bill. If the utility defines summer as starting at the beginning of the bill that includes March 15, and winter as ending at the start of that same bill, the customer pays summer rates for the entire billing period. The summer start date and winter end date are both dynamically overridden to March 5.
Data definitions
Season
The Season object has the following data structure.
| Name | Type | Fields | Description |
|---|---|---|---|
| seasonId | Long | Unique Arcadia ID (primary key) for each season. | |
| lseId | Long | The ID of the LSE this season belongs to. | |
| seasonGroupId | Long | The ID of the season group that contains this season. | |
| seasonName | String | The name of the season (i.e. "Summer" or "Winter") | |
| seasonFromMonth | Integer | Value from 1 to 12 representing the month this season begins. | |
| seasonFromDay | Integer | Value from 1 to 31, depending on the month, representing the day this season begins. | |
| fromEdgePredominance | String | E | Can be null (from date is a fixed date), PREDOMINANT (from date is the start of the bill the season starts in), or SUBSERVIENT (from date is the end of the bill the season starts in). |
| seasonToMonth | Integer | Value from 1 to 12 representing the month this season ends. | |
| seasonToDay | Integer | Value from 1 to 31, depending on the month, representing the day this season ends. | |
| toEdgePredominance | String | E | Can be null (to date is a fixed date), PREDOMINANT (to date is the start of the bill the season ends in), or SUBSERVIENT (to date is the end of the bill the season ends in). |
Season Group
The SeasonGroup object has the following data structure.
| Name | Type | Description |
|---|---|---|
| seasonGroupId | Long | Unique Arcadia ID (primary key) for each season group. |
| seasons | List of Season | A list of the seasons within this season group. |
This example shows one season group with two seasons that start and end on fixed dates:
{
"status":"success",
"count":1,
"type":"SeasonGroup",
"results":[
{
"seasonGroupId":1,
"seasons":[
{
"seasonId":3,
"seasonGroupId":1,
"lseId":1,
"seasonName":"Winter",
"seasonFromMonth":10,
"seasonFromDay":1,
"fromEdgePredominance":null,
"seasonToDay":31,
"seasonToMonth":5,
"toEdgePredominance":null
},
{
"seasonId":4,
"seasonGroupId":1,
"lseId":1,
"seasonName":"Summer",
"seasonFromMonth":6,
"seasonFromDay":1,
"fromEdgePredominance":null,
"seasonToDay":30,
"seasonToMonth":9,
"toEdgePredominance":null
}
]
}
]
}
Get Seasons
Retrieve season groups for a given LSE. The result set is a list of season group objects in the standard response format.
Resource URI
GET /rest/public/seasons
Request parameters
| Name | Type | Description |
|---|---|---|
| lseId | Long | LSE ID whose seasons you want to retrieve. Required. |
Example
GET /rest/public/seasons?lseId=734
{
"status":"success",
"count":1,
"type":"SeasonGroup",
"results":[
{
"seasonGroupId":1,
"seasons":[
{
"seasonId":3,
"seasonGroupId":1,
"lseId":1,
"seasonName":"Winter",
"seasonFromMonth":10,
"seasonFromDay":1,
"fromEdgePredominance":"SUBSERVIENT",
"seasonToDay":31,
"seasonToMonth":5,
"toEdgePredominance":"SUBSERVIENT"
},
{
"seasonId":4,
"seasonGroupId":1,
"lseId":1,
"seasonName":"Summer",
"seasonFromMonth":6,
"seasonFromDay":1,
"fromEdgePredominance":"PREDOMINANT",
"seasonToDay":30,
"seasonToMonth":9,
"toEdgePredominance":"PREDOMINANT"
}
]
}
]
}
