The Meniscus Analytics API comprises some 35 separate methods that control all aspects of configuring the underlying database, uploading raw data and downloading the calculated data. The following examples represent a few of the most commonly used methods. A full list, with associated examples, is included in the complete API documentation link. The API White Papers includes more technical information on the API including calculation syntax examples.

1 Access Login details

Access information to use the Meniscus Analytics API on a demonstration account

1.1. Login details

The following Methods are sufficient to load Raw Data and to retrieve Calculated Data from the Meniscus servers, to retrieve the overall data structure and to make some simple updates.

There is a full and comprehensive list of all Methods available here

The GET links below work with the Meniscus REST demo server and when asked the login credentials are:

Username: ipmsdemo@meniscus.co.uk

Password: ipmsdemo

This username and password only has read access so cannot use POST methods and so all POST methods are shown in italics

2 Group Methods – returns data structure

These methods return the overall data structure together with the properties for each Group and a list of the Properties is set out in section 6.0

2.1 Company - Returns the top level Group - Company

This returns the top level Group called Company that the user has access to

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/Groups?groupName

<Groups>
	<Group>
		<Alias></Alias>
		<Name>Demo</Name>
	</Group>
</Groups>

2.2 Sites - Returns the Sites for a Company

This returns the second Group level called Site from the Company called Demo

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/Groups?groupName=Demo

<Groups>
	<Group>
		<Alias>My Site</Alias>
		<Name>ipmsdemo-meniscus.co.uk</Name>
	</Group>
</Groups>

2.3 Groups – Returns a list of Groups for a Site

This returns a list of Groups under the specified Group name together with the properties for each Group.

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/Groups?groupName=Demo\ipmsdemo-meniscus.co.uk

This will return all the sub-groups for the Group Demo\ ipmsdemo-meniscus.co.uk

<Groups>
	<Group>
		<Alias></Alias>
		<Name>Electricity Meters</Name>
	</Group>
	<Group>
		<Alias></Alias>
		<Name>Summary</Name>
	</Group>
</Groups>

2.4 SubGroups – Returns a list of SubGroups for a Group

This returns a list of SubGroups associated to a Group

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/Groups?groupName=Demo\ipmsdemo-meniscus.co.uk\Electricity Meters

This will return all the SubGroups for the Group Demo\ipmsdemo-meniscus.co.uk\Electricity Meters

<Groups>
	<Group>
		<Alias></Alias>
		<Name>Half Hour</Name>
	</Group>
	<Group>
		<Alias></Alias>
		<Name>Daily</Name>
	</Group>
</Groups>

2.5 Items - Returns the list of Items for a SubGroup

This returns a list of Items associated to a SubGroup

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/Groups?groupName=Demo\ipmsdemo-meniscus.co.uk\Electricity Meters\Half Hour

This will return all the Items that are associated to the SubGroup Demo ipmsdemo-meniscus.co.uk\Electricity Meters\Half Hour

<Groups>
	<Group>
		<Alias></Alias>
		<Name>Electricity use - channel 1 - HH</Name>
	</Group>
	<Group>
		<Alias></Alias>
		<Name>Electricity use - channel 2 - HH</Name>
	</Group>
	<Group>
		<Alias></Alias>
		<Name>Electricity use - channel 3 - HH</Name>
	</Group>
</Groups>

2.6 Update Site – Updating the properties of a Site – POST method

This method updates the properties of a Site.  The example URL below shows how to update the property userKey1 for the Site Demo|ipms-meniscus.co.uk to “My Site”

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/UpdateSite?companyName=Demo&name=ipmsdemo-meniscus.co.uk&userKey1=My Site

2.7 Update Site - Updating the Site Name - POST method

This method updates the name of a Site.  The example URL below shows how to update the name from ipmsdemo-meniscus.co.uk to ipmsdemo2-meniscus.co.uk for the Site Demo|ipms-meniscus.co.uk

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/UpdateSite?companyName=Demo&name=ipmsdemo-meniscus.co.uk&newName=ipmsdemo2-meniscus.co.uk

2.8 Update Group and SubGroup - Updating the Properties of a Group or SubGroup - POST method

This method updates the properties of a Site. 

The example URL below shows how to update the property userKey1 for the Group Demo|ipms-meniscus.co.uk|Summary to “My Group”

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/UpdateGroup?groupName=Demo\ipmsdemo-meniscus.co.uk&name=Summary&userKey1=My Group

The example URL below shows how to update the property userKey1 for the SubGroup Demo|ipms-meniscus.co.uk|Summary|Carbon Use to “My SubGroup”

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/UpdateGroup?groupName=Demo\ipmsdemo-meniscus.co.uk\Summary&name=Carbon Use&userKey1=My SubGroup

2.9 Update Group and SubGroup - Updating the Name of a Group or SubGroup - POST method

This method changes the Name of a Group or SubGroup. 

The example URL below changes the Name of the Group for the Group Demo|ipms-meniscus.co.uk|Summary to Summary2

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/UpdateGroup?groupName=Demo\ipmsdemo-meniscus.co.uk&name=Summary&newName=Summary2

The example URL below changes the Name of the SubGroup for the SubGroup Demo|ipms-meniscus.co.uk|Summary|Carbon Use to Carbon Consumption

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/UpdateGroup?groupName=Demo\ipmsdemo-meniscus.co.uk\Summary&name=Carbon Use&newName=Carbon Consumption

3 Item Methods – returns Item Properties

This returns a list of Items and the properties of each Item for the specified Group. A list of these properties is set out in section 6.1.

3.1 Returning Item Names only for a SIte

This method returns just the Item Names for a Site

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/ItemGroups?groupName=Demo\ipmsdemo-meniscus.co.uk

This returns the following (only showing part of the list)

<Groups>
	<Group>
		<Alias></Alias>
		<Name>Electricity use - channel 1</Name>
	</Group>
	<Group>
		<Alias></Alias>
		<Name>Electricity use - channel 1 - HH</Name>
	</Group>
	<Group>
		<Alias></Alias>
		<Name>Electricity use - channel 2</Name>
	</Group>
	<Group>
		<Alias></Alias>
		<Name>Electricity use - channel 2 - HH</Name>
	</Group>
	<Group>
</Groups>

3.2 Returning Item Properties for Items in a Group

This method returns all the Item Properties for the Group Demo/ipmsdemo-meniscus.co.uk/Electricity Meters

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/Items?groupName=Demo\ipmsdemo-meniscus.co.uk\Electricity%20Meters

This will return the following list (only showing part of the list) of Items and their properties

<Items>
	<Item i:type="CalculatedItemInfo">
	<Name>Demo|ipmsdemo-meniscus.co.uk|Daily electricity use - channel 1|CALC</Name>
	<AggregationFunction>Sum</AggregationFunction>
	<AggregationPeriod>Day</AggregationPeriod>
	<Alias></Alias>
	<CalcDelay>0.5</CalcDelay>
	<CalcEndOffset></CalcEndOffset><CalcStartOffset></CalcStartOffset>
	<Cost>Electricity</Cost>
	<EndDate i:nil="true"></EndDate>
	<EntryUnits>None</EntryUnits>
	<Flags>0</Flags>
	<Id>20897</Id>
	<Notes></Notes>
	<Rounding>-1</Rounding>
	<StartDate>2013-08-31T23:00:00</StartDate>
	<StartValue>0</StartValue>
	<Type>Calculated</Type>
	<Units>kWh</Units>
	<UserKey1></UserKey1>
	<UserKey2></UserKey2>
	<UserKey3></UserKey3>
	<Calculation>sum(dataset(Electricity use - channel 1 - HH,today,today+1))</Calculation>
	</Item>
</Items>

3.3 Returning Item Properties for a SubGroup

span lang=”EN-US”>This method returns all the Item Properties for the Group Demo/ipmsdemo-meniscus.co.uk/Electricity Meters/Half Hour

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/Items?groupName=Demo\ipmsdemo-meniscus.co.uk\Electricity%20Meters\Half%20Hour

This will return the following list (only showing part of the list) of Items and their properties

<Items>
	<Item i:type="CalculatedItemInfo">
	<Name>Demo|ipmsdemo-meniscus.co.uk|Electricity use – channel 1 – HH|CALC </Name>
	<AggregationFunction>Sum</AggregationFunction>
	<AggregationPeriod>ThirtyMinutes</AggregationPeriod>
	<Alias></Alias>
	<CalcDelay>0.5</CalcDelay>
	<CalcEndOffset></CalcEndOffset><CalcStartOffset></CalcStartOffset>
	<Cost>Electricity</Cost>
	<EndDate i:nil="true"></EndDate>
	<EntryUnits>None</EntryUnits>
	<Flags>0</Flags>
	<Id>20892</Id>
	<Notes></Notes>
	<Rounding>-1</Rounding>
	<StartDate>2013-08-31T23:00:00</StartDate>
	<StartValue>0</StartValue>
	<Type>Calculated</Type>
	<Units>kWh</Units>
	<UserKey1></UserKey1>
	<UserKey2></UserKey2>
	<UserKey3></UserKey3>
	<Calculation>sum(dataset(Electricity use - channel 1 - HH,today,today+1))</Calculation>
	</Item>
</Items>

3.4 Create Item - POST method

This method is to be used when creating or updating Items. MCE will ensure that all the associated Item Types are created in correct order.

The available Item Types that that can be created for any Item are: CALC, LCALC, HCALC and TARGET. The COST and TARGETCOST Item Types are automatically created once the CALC and the TARGET Item Types are created and a Cost is assigned to the Item. The RAW Item Type is implicit and is always created for each Item.

A CALC Item has to be created before a LCALC, HCALC or TARGET Item Type can be created.

The example code will create a new Calculated Item called TestMeter with the following URL:

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/CreateItem?dataItemName=Demo|ipmsdemo-meniscus.co.uk|TestMeter|CALC&aggregationPeriod=Day&aggregationFunction=Sum&units=None&cost=None&type=Absolute

The parameters for each Item are set out in Section 6.0. Those parameters labelled with * have to added when creating a new Item.

To create a different Item type then replace the element labelled TestMeter|CALC with TestMeter |HCALCfor example. This would create a HCALC Item.

To create a TARGET Item Type the targetStartTime (labelled with ** in Appendix 6.0) has to be included as well. This parameter sets the date when the calculation of the TARGET will start. Multiple TARGET Item Types can be set for the same CALC Item. I.e. Can set multiple targets for an Item by specifying a new target StartTime.

3.5. Update an existing Item - POST method

When using the UpdateItem method only the Item property to be updated has to be included in the URL. The following call will set a value of “This is a test meter” in userkey1 for Item Pump1

The URL to be passed to the code to Update the TestMeter Item is:

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/UpdateItem?dataItemName=Demo|ipmsdemo-meniscus.co.uk|TestMeter|CALC&userkey1=This is a test meter

3.6. Delete Item – POST method

This method deletes the Item and all associated raw and calculated data related to this Item. This is permanent so be careful. The URL to be passed to the code to Delete the TestMeter Item is:

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/DeleteItem?dataItemName=Demo|ipmsdemo-meniscus.co.uk|TestMeter|CALC

Deleting the CALC Item Type deletes all CALC, HCALC, LCALC and TARGET data.

Deleting the HCALC or LCALC Item Type deletes the calculation for that Item

Deleting the TARGET requires that a targetStartTime is also included. This deletes the Target equation set at the targetStartTime.

3.7 Checking the syntax of a calculation

This method is used to confirm the calculation syntax and is relevant to the following ItemTypes: CALC, HCALC, LCALC, COST and TARGET

The method will return information to help identify errors in the syntax or will return OK if the syntax is valid.

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/EquationError?dataItemName=Demo|ipmsdemo-meniscus.co.uk|Daily electricity use – channel 1|CALC&templateName=StandardValueCalculatorTemplate&equation=sum(dataset(Electricity use – channel 1 – HH,today,today+1))

Important Please note that in accordance with RFC 3986 the “+” sign is a reserved character and must be encoded as %2B

4 Cost Methods – Updating a Cost

This method creates a new Cost is if the Costs is not already present. If the Cost is present then the method will create a new costTime entry into the relevant Cost. This is a POST method

4.1 Cost Method for returning all Costs

This is the method for returning all Costs

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/Costs?companyName=Demo&siteName=ipmsdemo-meniscus.co.uk

This will return XML that looks like (this is only part of the list)

<CostInfo>
	<CostData>
		<CostDataInfo>
			<CostCalculation i:nil="true"></CostCalculation>
			<Date>2013-09-04T00:00:00</Date>
			<ValueFrom i:nil="true"></ValueFrom>
		</CostDataInfo>
	</CostData>
	<Name>Electricity</Name>
	<UnitName>£</UnitName>
	<Updatable>true</Updatable>
</CostInfo>

4.2 Cost Method for creating a Cost - POST method

This is the Method for adding a Cost

This Method is the same as for adding costData but the costData properties can be excluded

This will create a Cost called MWh Cost

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/CreateCost?companyName=Demo&siteName=ipmsdemo-meniscus.co.uk&name=MWh Cost

4.3 Cost Method to list all costData for a Cost

This is the Method to list all costData for a Method

This is the same Method as that for listing all Costs

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/Costs?companyName=Demo&siteName=ipmsdemo-meniscus.co.uk

The XML returned will look like (this is only part of the list)

<CostInfo>
	<CostData>
		<CostDataInfo>
			<CostCalculation i:nil="true"></CostCalculation>
			<Date>2013-09-04T00:00:00</Date>
			<ValueFrom i:nil="true"></ValueFrom>
		</CostDataInfo>
	</CostData>
	<Name>Electricity</Name>
	<UnitName>£</UnitName>
	<Updatable>true</Updatable>
</CostInfo>

4.4 Cost Method to add new costData to a Cost - POST method

This is the Method to add costData (can think of costData as a unit cost) to a Cost.

This URL will add costData to the Cost called MWh Power Cost which has units of MWh and the costData will be applied from 05/12/2015 and will have a value of 20

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/UpdateCost?companyName=Demo&siteName=ipmsdemo-meniscus.co.uk&name=MWh Power Cost&units=MWh&costTime=05/12/2015&calculation=20

5 Data Methods – Uploading and downloading data

Methods are provided to set raw data and get data back from the Meniscus servers. The POST and GET Methods for Raw and Calculated Data will use JSON serialised responses

5.1 GET Data for a single Item

The full method for retrieving Data for a single Item (Electricity use – channel 1 – HH) within the date range 01/10/2013 to 31/10/2013.

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/Data?dataItemNameList=Demo|ipmsdemo-meniscus.co.uk|Electricity%20use%20-%20channel%201%20-%20HH|CALC&startTime=01/10/2013&endTime=31/10/2013&unitList=null&processeList=null&areaList=null&costList=null&userKey1List=null&userKey2List=null&userKey3List=null

The filters for this URL can be left off so simplify the URL for a single Item

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/Data?dataItemNameList=Demo|ipmsdemo-meniscus.co.uk|Electricity%20use%20-%20channel%201%20-%20HH|CALC&startTime=01/10/2013&endTime=31/10/2013

This call returns the following serialised JSON data:
[{“DataItemName”:”Demo|ipmsdemo-meniscus.co.uk|Electricity use – channel 1 – HH|CALC”,”Unit”:”kWh”,”Cost”:”None”,”Data”:[{“Time”:635161824000000000,”Value”:0.127285185,”Flags”:0},{“Time”:635161842000000000,”Value”:0.607988971,”Flags”:0},{“Time”:635161860000000000,”Value”:0.567901923,”Flags”:0},{“Time”:635161878000000000,”Value”:0.124543071,”Flags”:0},{“Time”:635161896000000000,”Value”:0.136596654,”Flags”:0},{“Time”:635161914000000000,”Value”:0.104829091,”Flags”:0}
….
{“Time”:635187654000000000,”Value”:0.487641975,”Flags”:1},{“Time”:635187672000000000,”Value”:0.487641975,”Flags”:1},{“Time”:635187690000000000,”Value”:0.487641975,”Flags”:1},{“Time”:635187708000000000,”Value”:0.487641975,”Flags”:1},{“Time”:635187726000000000,”Value”:0.487641975,”Flags”:1},{“Time”:635187744000000000,”Value”:0.487641975,”Flags”:1}],”Processes”:[“Electricity Meters”],”Areas”:[“Half Hour”]}]

So a range of additional data for the Item is returned to help in filtering and presenting the data. This includes

  • Units of the Item
  • Name of the Cost used by the Item
  • A list of all Groups (called Processes – this will change) that the Item is used in
  • A list of all SubGroups (called Areas – this will change) that the Item is used in

5.2 GET Data for multiple Items

To retrieve data for Multiple Items(Electricity use – channel 1 – HH and Electricity use – channel 3 – HH) within the date range 01/10/2013 to 31/10/2013 you need to create a dataItemList separated by commas

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/Data?dataItemNameList=Demo|ipmsdemo-meniscus.co.uk|Electricity%20use%20-%20channel%201%20-%20HH|CALC,Demo|ipmsdemo-meniscus.co.uk|Electricity%20use%20-%20channel%203%20-%20HH|CALC&startTime=01/10/2013&endTime=31/10/2013

The dataItemList must include the full name for the Item i.e. including the Company|Site

5.4 GET Data for Items using wildcards and filters

It is possible to use wildcards in the dataItemList to extract data and then apply the filters

So the following call will return CALC data for all Items between 01/10/2013 and 02/10/2013

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/Data?dataItemNameList=Demo|ipmsdemo-meniscus.co.uk|.*|CALC&startTime=01/10/2013&endTime=02/10/2013

To filter the data we can apply a wildcard filter into the dataItemName and then use one, or more, of the following filters. An example of a wildcard is Demo|ipmsdemo-meniscus.co.uk|.*|CALC this will return CALC data for all Items.

Examples of filters that can be added are:

  • unitList – filters on specified unit or list or units
  • processList – filters on specified Group or list or Groups
  • areaList – filters on specified SubGroup or list or SubGroups
  • costList – filters on specified cost or list or costs
  • userKey1List – filters on specified userKey1 field or list of userKey1 fields
  • userKey2List – filters on specified userKey2 field or list of userKey2 fields
  • userKey3List – filters on specified userKey3 field or list of userKey3 fields

so the following call will return CALC data for all Items between 01/10/2013 and 02/10/2013 where the Cost = Electricity (the wildcard dataItemName is Demo|ipmsdemo-meniscus.co.uk|.*|CALC )

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/Data?dataItemNameList=Demo|ipmsdemo-meniscus.co.uk|.*|CALC&startTime=01/10/2013&endTime=31/10/2013&costList=Electricity

To create a list for the filters then seperate the values with a comma

This will return all Items in the SubGroups Half Hour and Daily
http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/Data?dataItemNameList=Demo|ipmsdemo-meniscus.co.uk|.*|CALC&startTime=01/10/2013&endTime=31/10/2013&areaList=Half%20Hour,Daily

5.5 Data - Setting Raw Data - POST method

This method is used to POST raw data into an Item

The example code below shows how to update raw data for the item Demo|ipmsdemo-meniscus.co.uk|TestMeter|RAW for 4 values starting on the 01/07/2016 00:00 to 01/07/2016 01:30

http://restdemo.meniscus.co.uk/MCE/MeniscusRESTWebService/RawData/Demo|ipmsdemo-meniscus.co.uk|TestMeter|RAW

The BODY text for this method is:
[{“Time”:636029280000000000,”Value”:10},
{“Time”:636029298000000000,”Value”:20},
{“Time”:636029316000000000,”Value”:30},
{“Time”:636029334000000000,”Value”:40}]

Please note that this must use JSON and the time is in Ticks

Please note that the item name must be a RAW item otherwise the call will fail.

6 List of Properties

List of Group, Item and Cost Properties

6.1 Company Properties

6.1 Company Properties

Property Item Type Options Information
address1 Not Applicable Optional Any text
address2 Not Applicable> Optional Any text
country Not Applicable Optional Any text
name Not Applicable Compulsory Any text
phone Not Applicable Optional Any text
postcode Not Applicable Optional Any text
town Not Applicable Optional Any text
userKey1 Not Applicable Optional Any text
userKey2 Not Applicable Optional Any text
userKey3 Not Applicable Optional Any text

6.2 Site Properties

6.2. Site Properties

Property Item Type Options Information
address1 Not Applicable Optional Any text
address2 Not Applicable> Optional Any text
country Not Applicable Optional Any text
county Not Applicable Optional Any text
name Not Applicable Compulsory Any text
phone Not Applicable Optional Any text
postcode Not Applicable Optional Any text
town Not Applicable Optional Any text
userKey1 Not Applicable Optional Any text
userKey2 Not Applicable Optional Any text
userKey3 Not Applicable Optional Any text
currency Not Applicable Optional Currency to be used for the Site. Any text
emailAddressInfos Not Applicable Optional List of e-mail address that will receive e-mail alerts for this Site
endDate Not Applicable Optional Date in string format. Sets the date when the Site stops receiving data
startDate Not Applicable Compulsory Date ins string format. Sets the date when the Site starts receiving data

6.3 Group and SubGroup Properties

6.3. Group and SubGroup Properties

Property Item Type Options Information
groupName Not Applicable Compulsory Name of the Group or SubGroup
newName Not Applicable Optional Used to define the new Name for a Group or a SubGroup
userKey1 Not Applicable Any text Any text

6.4 Item Properties

6.4. Item Properties

Property Item Type Options Information
alias CALC Any text This is the reference that is to be used when importing data. The Import will look for an Item having the same alias as is included in the data upload
aggregationFunction CALC Sum and Average Sets the method of aggregation if the aggregation period of the data used in the calculation is different to the output aggregation period
aggregationPeriod CALC Hour, Day, FiveMinutes, TenMinutes, FifteenMinutes, ThirtyMinutes,None Sets the period between the Calculated Data points
calculation CALC, HCALC, LCALC and TARGET Reference to be made to the Meniscus Wiki for eamples of calculation syntax or to Blog article here A calculation to be used in the Item. This calculation defines the expression used in the relevant Item.
calcStartOffset CALC y=Year,M=Month, d=Day, h=Hour, m=Minute.

So M-1 will calculate data back 1 month

Leaving blank will calculate all data

How far back in time do the calculations go then processing new data
calcDelay CALC Multiplier of the aggregation Period

So value of 1/2 will calculate the data every 1/2 of the aggregation Period

Leaving blank, or 0, will calculate data as soon as it is imported

How often is the raw data processed in terms of aggregation periods. Value of 0 means data is processed as soon as it arrives

ie If the aggregation period is 30 minutes and calcDelay is 0.5, data is calculated 15 minutes after it has been imported

cost CALC Set to None if no cost is assigned Cost to be used
item CALC, HCALC, LCALC and TARGET Type of Item. Can be: CALC, HCALC, LCALC. Order of creation is CALC, HCALC, LCALC, TARGET (requires setting of TargetStart). RAW is created implicitly. COST and TARGETCOST created implicitly once a Cost is assigned
endTime CALC Optional Date in string format. Date the Item stops being used
flags CALC Optional This is an information field and cannot be updated.

Identifies if the data has been interpolated. I.e. if is based on actual RAW data on an assumptions from previous RAW data values – for data gaps etc.

newStartTime Not Applicable Optional Date in String format. The date from which an existing Item start time is to be changed to
notes CALC Optional Text field for including any relevant information
rounding CALC Optional. Defaults to 1. Values accepted from 0 to 5 Sets the rounding that the Calculated Data will be returned in
startTime CALC Defaults to date Item created Date in string format. Date the Item starts being used
startValue CALC Only used for type=Incrementing Used to define the initial start value for an Item of type = Incrementing
type CALC Compulsory. Absolute; Incrementing; Consumption; Level; Calculated Used to define the Type of Raw Data i.e Incrementing – this data where the value continually counts upwards – i.e. electricity meter. Other Types include: Absolute, Level, Consumption and Calculated.
units CALC Compulsory. Set to None if no units are to be defined Used to define the output units of the Calculated Data
userkey1 CALC Optional Any text
userkey2 CALC Optional Any text
userkey3 CALC Optional Any text

6.5 Cost Properties

6.5. Cost Properties

Property Item Type Options Information
costTime Not Applicable Compulsory Date in String format. The date from which the Cost is to be applied
calculation Not Applicable Compulsory A calculation to be used in the Cost. This calculation defines the expression used in the relevant Cost. Can be a complex expression or a simple integer
newCostTime Not Applicable Optional Date in String format. The date from which an existing Cost date is to be changed to
units Not Applicable Compulsory Name of the Units which the Costs is to be applied to. I.e. An electricity cost would be associated to units of kWh
updatable Not Applicable True of False This is an information field and cannot be updated.

True means that the user has the rights to update this Cost

False means that the user does not have rights to update this Cost