Properties are metadata associated with a tariff. They are frequently used to determine applicability for a particular set of rates within a tariff. For example, the property cityLimits is used when a tariff has different rates based on whether the consumer lives inside or outside the city limits.

Data Definitions

Property Key

PropertyKey has the following data structure.

Name Type Fields Description
keyName String M The unique name for this property.
subKeyName String M Sub-property name for this property.
displayName String M A string that can be used to display to users
family String M Second level of the categorization hierarchy, family groups keyNames together into logical areas, such as "billing", "generation", "load".
keyspace String M The top level of the categorization hierarchy, keyspace defines major groups of keyNames. e.g "electricity".
description String M A user friendly detailed description of the purpose of this property.
dataType String M The data type of this property. Possible values are STRING, CHOICE, BOOLEAN, DATE, DECIMAL, INTEGER, FORMULA, LOOKUP, and DEMAND.
choices Array of Choices   For properties of type CHOICE, this contains the possible choices to choose from.
formulaDetail String   For properties of type FORMULA, this contains the actual formula.
entityType String   The type of entity this property key belongs to. For example, for an LSE specific property this will be "LSE". For general properties this will be null.
entityId Integer   The ID of the entity this property key belongs to. For example, for an LSE specific property, this will be the LSE ID. For general properties, this will be null.

Here’s an example in JSON of a fully populated property key

{
    keyName: "​lEDDecorativeLamp",
    displayName: "LED Decorative Lamp",
    family: "incentiveQuantityKeys",
    keyspace: "tariff",
    description: "LED Decorative Lamp ",
    dataType: "INTEGER",
    quantityUnit: "unit",
    lookbackIntervalQuantity: 30,
    lookbackQuantity: 2013,
    lookbackPeriod: "30",
    privacy: "PUBLIC",
    entityId: 9999,
    lookbackTimeOfUseId: 2013,
   entityType: "LSE"
}

Get a List of Property Keys

This returns a list of property keys and subproperty keys (e.g. ISO zones) if exist, based on a search criteria. The result set is an array of PropertyKey objects in the standard response format.

Resource URI

GET /rest/public/properties

Request Parameters

Along with the standard pagination parameters, searching and sorting parameters, and the required security parameters, the following parameters are available as part of the request:

Name Type Description
entityId Long Filters the result set to only include properties that belong to this entityId. entityType must also be specified, otherwise this is ignored (Optional).
entityType String Filters the result set to only include properties that belong to this entityType. entityId must also be specified, otherwise this is ignored. Currently the only supported value is "LSE" (Optional)
family String Filters the result by the family. Examples of family include "billing", "metering" and "connection". Look at the properties to see more examples of the family (Optional).
keySpace String Filters the result by the key space. Possible values include "electricity" and "solarPv" (Optional)

Example

GET /rest/public/properties?entityId=734&entityType=LSE
{
	"status":"success",
	"count":24,
	"type":"PropertyKey",
	"results":[
	{
	   "keyName":"734formula1",
	   "displayName":"Formula for LSE 734",
	   "family":"tariff",
	   "keyspace":"electricity",
	   "description":"This is a specific formula for this LSE.",
	   "dataType":"FORMULA",
	   "formulaDetail":"#capacityReservationLevel  *  #tariffRateBand.consumptionUpperLimit",
	   "entityType":"LSE",
	   "entityId":734
	}]
}

Get One Property Key

This allows you to retrieve one property key and its subproperty keys (e.g. ISO zones) if present, using its keyname. This is particularly useful when using Calculate as it may require you to specify certain applicability values prior to making the calculation.

Resource URI

GET /rest/public/properties/{keyName}

Request Parameters

There are no additional query parameters; just use the keyName.

Example

GET /rest/public/properties/baseTariffGeneralRateRS
{
	status: "success",
	count: 1,
	type: "PropertyKey",
	results: [
    {
        keyName: "hourlyPricingRealTimeERCOT",
        displayName: "hourlyPricingRealTimeERCOT",
        family: "ercot",
        keyspace: "market",
        description: "hourlyPricingRealTimeERCOT",
        dataType: "LOOKUP",
        quantityUnit: "eac",
        privacy: "PUBLIC",
        choices: [
		{
			 displayValue: "LZ_AEN",
			 value: "AEN",
			 dataValue: "AEN",
			 likelihood: null
		},
		{
			displayValue: "LZ_CPS",
			value: "CPS",
			dataValue: "CPS",
			likelihood: null
		},
		{
			displayValue: "LZ_HOUSTON",
			value: "HOUSTON",
			dataValue: "HOUSTON",
			likelihood: null
		}]
	}
}