HomeGuidesAPI ReferenceChangelog
Log In
Guides

Handle Baseline Regions

Sometimes the rates on a Tariff vary by what baseline region, or sub-territory, a customer is located in. This how-to explains how to identify tariffs like this, and how to determine and set the baseline region once you do.

Does this tariff have baseline regions?

Each Tariff in our database includes a list of Tariff properties, which in the JSON can be found in the properties list. You can ask for these properties to be returned in the results of the Get Account Tariffs API endpoint by including populateProperties=true in your request. If you find a territoryId property in the list returned with a propertyTypes of RATE_CRITERIA then at least one rate on the tariff varies according to the customer’s location within the utility's service area. It has a baseline region.

📘

You can learn more about what the other types of Rate Criteria mean in this how-to.

When you see this, you can explicitly pass in a territoryId to the calculator, or can let the calculator default it. If you are using Switch, a territoryId will be defaulted on the account, and you can override this if you need to.

How to Know What Territories are Available for a Customer

You can retrieve a list of territories for a customer by using our Territory API. Here is an example to retrieve a list of territories for Southern California Edison (lseId: 1228) with the zip code 92407. Importantly, we are asking for only the baseline region Territories by including the request parameter usageType with a value of TARIFF (Tariff types denote baseline regions, as opposed to service areas, utility climate zones, and other types of territories):

GET /rest/public/territories?lseId=1228&zipCode=92407&country=US&usageType=TARIFF

The response returns Baseline Region 10 (territoryId: 5) and Baseline Region 16 (territoryId: 9):

        {  
            "territoryId": 5,  
            "territoryName": "Baseline Region 10",  
            "lseId": 1228,  
            "lseName": "Southern California Edison Co",  
            "parentTerritoryId": 1362,  
            "usageType": "TARIFF",  
            "itemTypes": "CITY",  
            "deregRes": false,  
            "deregCandi": false,  
            "centerPoint": {  
                "latitude": 33.93300848031497,  
                "longitude": -117.3344177637795  
            }  
        },  
        {  
            "territoryId": 9,  
            "territoryName": "Baseline Region 16",  
            "lseId": 1228,  
            "lseName": "Southern California Edison Co",  
            "parentTerritoryId": 1362,  
            "usageType": "TARIFF",  
            "itemTypes": "CITY",  
            "deregRes": false,  
            "deregCandi": false,  
            "centerPoint": {  
                "latitude": 34.71016330481286,  
                "longitude": -117.95372556684482  
            }  
        },  

In the case above, there are two returned. If you have a bill for your customer, you can often find the baseline region denoted on it.

How to Know What Territory was Defaulted

When a calculation requires a territory in order to select the correct subset of rates, a default territory is picked. The territoryId used is returned in the assumptions of the calculation. If its accuracy is less than 100 (percent) then you know the calculator defaulted it.

The territoryId set on the Account is returned in the response when you retrieve a list of the Accounts Tariffs. Here is the sample request to retrieve a list of an account’s Available Tariff Rate Plans:

GET /rest/v1/accounts/pid/{providerAccountId}/tariffs

Here is an example of the response where the territoryId has a "propertyValue" of "5", which represents Baseline Region 10:

{  
                    "keyName": "territoryId",  
                    "quantityKey": null,  
                    "displayName": "Territory",  
                    "family": "billing",  
                    "keyspace": "electricity",  
                    "description": "Territory where tariff is operational",  
                    "dataType": "CHOICE",  
                    "propertyTypes": "RATE_CRITERIA",  
                    "operator": null,  
                    "propertyValue": "5",  
                    "choices": [  
                        {  
                            "displayValue": "Baseline Region 10",  
                            "value": "5",  
                            "dataValue": "5",  
                            "likelihood": null  
                        },  
                        {  
                            "displayValue": "Baseline Region 13",  
                            "value": "6",  
                            "dataValue": "6",  
                            "likelihood": null  
                        },  
                        {  
                            "displayValue": "Baseline Region 14",  
                            "value": "7",  
                            "dataValue": "7",  
                            "likelihood": null  
                        },  
                        {  
                            "displayValue": "Baseline Region 15",  
                            "value": "8",  
                            "dataValue": "8",  
                            "likelihood": null  
                        },  
                        {  
                            "displayValue": "Baseline Region 16",  
                            "value": "9",  
                            "dataValue": "9",  
                            "likelihood": null  
                        },  
                        {  
                            "displayValue": "Baseline Region 5",  
                            "value": "1",  
                            "dataValue": "1",  
                            "likelihood": null  
                        },  
                        {  
                            "displayValue": "Baseline Region 6",  
                            "value": "2",  
                            "dataValue": "2",  
                            "likelihood": null  
                        },  
                        {  
                            "displayValue": "Baseline Region 8",  
                            "value": "3",  
                            "dataValue": "3",  
                            "likelihood": null  
                        },  
                        {  
                            "displayValue": "Baseline Region 9",  
                            "value": "4",  
                            "dataValue": "4",  
                            "likelihood": null  
                        }  
                    ],  
                    "isDefault": true  
                }  

In this example, the territory for a customer who resides in San Bernardino, CA 92407 was defaulted to SCE’s Baseline Region 10 (territoryId: 5).

Changing the Defaulted Territory

For CA zip codes that have multiple Baseline Regions, you can either have a separate drop-down to select the right territory or you can stick with the default.

If you would like to update the territory for a customer who resides in San Bernardino, CA 92407 from Baseline Region 10 (territoryId: 5) to Baseline Region 16 (territoryId: 9), you will update the territoryId under the Account Property.

PUT /rest/v1/accounts/pid/{providerAccountId}/properties
{  
    "keyName":"territoryId",  
    "dataValue":"9"  
}  

Please visit our documentation on how to Update an Account Property for more information.