HomeGuidesAPI ReferenceChangelog
Log In
Guides

Advanced Tariff Filtering

Learn advanced techniques for filtering tariffs by eligibility requirements, rate characteristics, and enrollment status to help customers find the right energy plans.

Advanced Tariff Filtering

Use these patterns to filter tariffs by eligibility requirements, rate characteristics, and enrollment availability.

Use the right approach for your use case:

  • Use eligibility filtering when tariff availability depends on customer attributes such as solar or electric vehicle ownership.
  • Use rate characteristic filtering when you need tariffs with specific rate structures such as time-of-use, tiered, net-metered, or contracted rates.
  • Use enrollment filtering when you want tariffs that are open to new customers on a specific date.

Filtering Tariffs with Additional Eligibility Requirements

Use eligibility filtering when a utility restricts a tariff based on customer attributes. Arcadia stores these requirements in tariff properties with a propertyType of APPLICABILITY.

When you call the Tariff endpoint, include these query parameters:

  1. populateProperties=true to return the property data used for filtering.
  2. filterByApplicability=true to apply applicability rules to the result set.
  3. applicabilityFilters[solarPvEligible]=true to return tariffs that match the eligibility requirement you need.

For an Electric Vehicle (EV) use case, use the EV-specific applicability filter key (hasElectricVehicle) instead of solarPvEligible.

Use this recipe for a full request example:

When you paginate with applicability filters enabled, do not rely on count to determine how many matching results remain. Continue requesting pages until a response returns fewer than pageSize results, including zero results.

Filtering Tariffs Based on Rate Characteristics

Use rate characteristic filters when you need tariffs with a specific pricing structure, such as time-of-use or contracted rates. These filters are explicit query parameters on the Tariff endpoint.

NameTypeDescription
hasNetMeteringBooleanReturn tariffs that have or do not have any net-metered tariff rates (Optional)
hasTimeOfUseRatesBooleanReturn tariffs that have or do not have any time-of-use rates (Optional)
hasTieredRatesBooleanReturn tariffs that have or do not have any tiered rates (Optional)
hasContractedRatesBooleanReturn tariffs that have or do not have any contracted rates (Optional)

Use this recipe for a full request example for currently effective and open California Commercial & Industrial (C&I) tariffs with a Direct Access component:

When you review the response:

  • Expect returned tariffs to have hasContractedRates set to true.
  • Include fields=ext in the request when you need hasContractedRates, because it is an extended field.
  • Add populateProperties=true if you want to inspect the Direct Access component directly in the response properties.
  • Look for the property keyName: isDirectAccessCustomer with propertyValue: true to confirm the Direct Access component is present.

You can learn more in our Tariffs API documentation.

Filtering Out Tariffs That Are Closed to New Enrollment

Use openOn when you want tariffs that a customer can still enroll in on a specific date. This is most useful when you are presenting a list of tariffs a customer could switch to.

To exclude tariffs that are closed to new enrollment:

  1. Pass a date value to the openOn query parameter.
  2. Use the same date for openOn and effectiveOn in most shopping and comparison flows.
  3. Omit openOn when you are identifying the tariff a customer is already on, because they may be grandfathered into a closed tariff.

Use this recipe for a full request example:

When you review the response:

  • closedDate should be null for returned tariffs. A populated closedDate means the tariff is closed to new customers, even if existing customers can remain on it.
  • endDate should be unset or later than the specified effectiveOn date. A null endDate means the tariff does not currently have a known end date.

Next steps

  • Review the Tariff endpoint for all supported query parameters.
  • Use the API Reference Guide when you need more detail about request and response structure.
  • Explore related Guides and How-Tos for additional tariff and utility data workflows.