Version 2 of the ICP connection data API is scheduled to go live on Sunday 1 March 2020. The original ICP connection API will be deprecated but will continue to operate as it currently does so no systems relying on it will be interrupted. This original version of the API will be turned off in six months’ time on 1 September 2020.
Subscribers to the API will be able to migrate to version 2 and take advantage of the additional information at their convenience. Migrating to the new version should be a simple change to the URL call to include (v2) and handling on the additional fields and improved error responses. Users can test the API on the API platform when v2 becomes available.
These changes are being made as part of the Additional Consumer Choice of Electricity Services (ACCES) project and will be accompanied by changes to the process to request consumption data from retailers. Agents are reminded that they will need to sign up to the new terms of the registry transfer hub to use EIEP13s. The new terms and sign up process will be made available next week on the provide a service with electricity page.
Version 2 ICP connection data API release notes
The original ICP connection data API that was released in 2016 as part of the Authority's 'Retail Data Project (RDP)'.
This version (V2) was released on 1 March 2020 following further consultation in 2019 as part of the 'Additional Consumer Choice of Electricity Services (ACCES)' project. This version of the API includes additional fields along with some other enhancements.
'Get by ID' and 'Get by ID list' call changes
New fields released
- "PropertyNameOrDescription" (string) in the Address object (called "Property Name" in the registry functional spec)
- "InitialElectricallyConnectedDate" (string formatted as YYYY-MM-DD) in the Network object
- "TraderSwitchInProgress" (boolean) in the Trader object
- "ANZSICcode" (string) in the Trader object
- "ProfileCode" (string) in the Trader object
- "CertificationExpiryDate" (string formatted as YYYY-MM-DD) in the Meter installation object
- "ComponentType" (string) in the Meter component object
- "SwitchReadIndicator" (boolean) in the Meter channel object (called "Settlement Indicator" in the registry functional spec, but only indicates if the channel read may be needed in the switch process)
- "NetworkParticipantName" (string) in Network object (included via lookup of "NetworkParticipantID" field, will repeat the ID if not found)
- "TraderParticipantName" (string) in Trader object (included via lookup of "TraderParticipantID" field, will repeat the ID if not found)
- "MeteringEquipmentProviderParticipantName" (string) in Metering object (included via lookup of "MeteringEquipmentProviderParticipantID" field, will repeat the ID if not found)
Moved fields
- "ICPIdentifier" moved to first in the return order
- "ICPStatus" moved to second in the return order
Renamed fields
- "NetworkParticipantID" in the Network object renamed from "Network"
- "TraderParticipantID" in the Trader object renamed from "Trader"
- "MeteringEquipmentProviderParticipantID" in the Metering object renamed from "MeteringEquipmentProvider"
'Search' call changes
New fields released
- "PropertyNameOrDescription" (string) in Address object (called "Property Name" in the registry functional spec)
Gating and response code changes
- 400 'bad request' code included filtering ICPs not meeting the required format
- Messages will be returned in the messages object with the appropriate code where available
'Get by ID' call - successful response sample (The 'Get by ID list' call follows the same format)
{
"ICPIdentifier": "string",
"ICPStatus": 0,
"Address": {
"PropertyNameOrDescription": "string",
"PhysicalAddressUnit": "string",
"PhysicalAddressNumber": "string",
"PhysicalAddressStreet": "string",
"PhysicalAddressSuburb": "string",
"PhysicalAddressTown": "string",
"PhysicalAddressRegion": "string",
"PhysicalAddressPostCode": 0,
"GPS_Easting": 0.086597829994870867,
"GPS_Northing": 0.089592538769447838
},
"Network": {
"NetworkParticipantID": "string",
"NetworkParticipantName": "string",
"POC": "string",
"ReconciliationType": "string",
"InitialElectricallyConnectedDate": "string",
"GenerationCapacity": 0.59222133055867521,
"FuelType": "string",
"DirectBilledStatus": "string"
},
"Pricing": {
"DistributorPriceCategoryCode": "string",
"DistributorLossCategoryCode": "string",
"ChargeableCapacity": 0.74166837179270262,
"DistributorInstallationDetails": "string"
},
"Trader": {
"TraderSwitchInProgress": false,
"TraderParticipantID": "string",
"TraderParticipantName": "string",
"ProfileCode": "string",
"ANZSICcode": "string",
"DailyUnmeteredkWh": "string",
"UnmeteredLoadDetails": "string"
},
"Metering": {
"MeteringEquipmentProviderParticipantID": "string",
"MeteringEquipmentProviderParticipantName": "string",
"InstallationInformation": [
{
"MeteringInstallationCategory": 0,
"MeteringInstallationType": "string",
"CertificationExpiryDate": "string",
"ComponentInformation": [
{
"ComponentType": "string",
"MeteringComponentSerialNumber": "string",
"MeterType": "string",
"AMIFlag": false,
"CompensationFactor": 0.68670529385750934,
"ChannelInformation": [
{
"MeteringComponentSerialNumber": "string",
"ChannelNumber": 0,
"RegisterContentCode": "string",
"PeriodOfAvailability": "string",
"UnitOfMeasurement": "string",
"EnergyFlowDirection": "string",
"AccumulatorType": "string",
"SwitchReadIndicator": false
}
]
}
]
}
]
},
"Messages": [
"string"
]
}
'Search' call – successful response sample
{
"Address": {
"PropertyNameOrDescription": "string",
"PhysicalAddressStreet": "string",
"PhysicalAddressSuburb": "string",
"PhysicalAddressTown": "string",
"PhysicalAddressRegion": "string",
"PhysicalAddressPostCode": 0,
"GPS_Easting": 0.11158078265068716,
"GPS_Northing": 0.53635229909462989
},
"ICPIdentifier": "string",
"ICPStatus": 0,
"Messages": [
"string"
]
}