EnergyAustralia · Schema

EnergyServicePointDetailResponseV2

EnergyAustraliaUtilitiesElectricityGasEnergy RetailerConsumer Data RightCDRProduct Reference DataSmart MeteringEnergy MarketsRenewables

Properties

Name Type Description
data object
links object
meta object
View JSON Schema on GitHub

JSON Schema

energyaustralia-energy-service-point-detail-response-v2-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/energyaustralia/main/json-schema/energyaustralia-energy-service-point-detail-response-v2-schema.json",
  "title": "EnergyServicePointDetailResponseV2",
  "x-generated": "2026-10-21",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/energyaustralia-electricity-service-points-api-openapi.yml#/components/schemas/EnergyServicePointDetailResponseV2",
  "properties": {
    "data": {
      "$ref": "#/$defs/EnergyServicePointDetailV2"
    },
    "links": {
      "$ref": "#/$defs/Links"
    },
    "meta": {
      "$ref": "#/$defs/Meta"
    }
  },
  "required": [
    "data",
    "links"
  ],
  "type": "object",
  "$defs": {
    "CommonPAFAddress": {
      "description": "Australian address formatted according to the file format defined by the [PAF file format](https://auspost.com.au/content/dam/auspost_corp/media/documents/australia-post-data-guide.pdf). Required if _addressUType_ is set to `paf`.",
      "properties": {
        "dpid": {
          "description": "Unique identifier for an address as defined by Australia Post. Also known as Delivery Point Identifier.",
          "type": "string"
        },
        "thoroughfareNumber1": {
          "description": "Thoroughfare number for a property (first number in a property ranged address).",
          "type": "integer",
          "x-cds-type": "PositiveInteger"
        },
        "thoroughfareNumber1Suffix": {
          "description": "Suffix for the thoroughfare number. Only relevant if _thoroughfareNumber1_ is populated.",
          "type": "string"
        },
        "thoroughfareNumber2": {
          "description": "Second thoroughfare number (only used if the property has a ranged address e.g., 23-25).",
          "type": "integer",
          "x-cds-type": "PositiveInteger"
        },
        "thoroughfareNumber2Suffix": {
          "description": "Suffix for the second thoroughfare number. Only relevant if _thoroughfareNumber2_ is populated.",
          "type": "string"
        },
        "flatUnitType": {
          "description": "Type of flat or unit for the address.",
          "type": "string"
        },
        "flatUnitNumber": {
          "description": "Unit number (including suffix, if applicable).",
          "type": "string"
        },
        "floorLevelType": {
          "description": "Type of floor or level for the address.",
          "type": "string"
        },
        "floorLevelNumber": {
          "description": "Floor or level number (including alpha characters).",
          "type": "string"
        },
        "lotNumber": {
          "description": "Allotment number for the address.",
          "type": "string"
        },
        "buildingName1": {
          "description": "Building/Property name 1.",
          "type": "string"
        },
        "buildingName2": {
          "description": "Building/Property name 2.",
          "type": "string"
        },
        "streetName": {
          "description": "The name of the street.",
          "type": "string"
        },
        "streetType": {
          "description": "The street type. Valid enumeration defined by Australia Post PAF code file.",
          "type": "string"
        },
        "streetSuffix": {
          "description": "The street type suffix. Valid enumeration defined by Australia Post PAF code file.",
          "type": "string"
        },
        "postalDeliveryType": {
          "description": "Postal delivery type. (e.g., PO BOX). Valid enumeration defined by Australia Post PAF code file.",
          "type": "string"
        },
        "postalDeliveryNumber": {
          "description": "Postal delivery number if the address is a postal delivery type.",
          "type": "integer",
          "x-cds-type": "PositiveInteger"
        },
        "postalDeliveryNumberPrefix": {
          "description": "Postal delivery number prefix related to the postal delivery number.",
          "type": "string"
        },
        "postalDeliveryNumberSuffix": {
          "description": "Postal delivery number suffix related to the postal delivery number.",
          "type": "string"
        },
        "localityName": {
          "description": "Full name of locality.",
          "type": "string"
        },
        "postcode": {
          "description": "Postcode for the locality.",
          "type": "string"
        },
        "state": {
          "description": "State in which the address belongs. Valid enumeration defined by Australia Post PAF code file [State Type Abbreviation](https://auspost.com.au/content/dam/auspost_corp/media/documents/australia-post-data-guide.pdf). `NSW`, `QLD`, `VIC`, `NT`, `WA`, `SA`, `TAS`, `ACT`, `AAT`.",
          "type": "string"
        }
      },
      "required": [
        "localityName",
        "postcode",
        "state"
      ],
      "type": "object"
    },
    "CommonPhysicalAddress": {
      "properties": {
        "addressUType": {
          "description": "The type of address object present.",
          "enum": [
            "paf",
            "simple"
          ],
          "type": "string"
        },
        "simple": {
          "$ref": "#/$defs/CommonSimpleAddress"
        },
        "paf": {
          "$ref": "#/$defs/CommonPAFAddress"
        }
      },
      "required": [
        "addressUType"
      ],
      "type": "object",
      "x-conditional": [
        "simple",
        "paf"
      ]
    },
    "CommonSimpleAddress": {
      "description": "Required if _addressUType_ is set to `simple`.",
      "properties": {
        "mailingName": {
          "description": "Name of the individual or business formatted for inclusion in an address used for physical mail.",
          "type": "string"
        },
        "addressLine1": {
          "description": "First line of the standard address object.",
          "type": "string"
        },
        "addressLine2": {
          "description": "Second line of the standard address object.",
          "type": "string"
        },
        "addressLine3": {
          "description": "Third line of the standard address object.",
          "type": "string"
        },
        "postcode": {
          "description": "Mandatory for Australian addresses.",
          "type": "string"
        },
        "city": {
          "description": "Name of the city or locality.",
          "type": "string"
        },
        "state": {
          "description": "Free text if the country is not Australia. If country is Australia then must be one of the values defined by the [State Type Abbreviation](https://auspost.com.au/content/dam/auspost_corp/media/documents/australia-post-data-guide.pdf) in the PAF file format. `NSW`, `QLD`, `VIC`, `NT`, `WA`, `SA`, `TAS`, `ACT`, `AAT`.",
          "type": "string"
        },
        "country": {
          "default": "AUS",
          "description": "A valid [ISO 3166 Alpha-3](https://www.iso.org/iso-3166-country-codes.html) country code. Australia (`AUS`) is assumed if country is not present.",
          "type": "string",
          "x-cds-type": "ExternalRef"
        }
      },
      "required": [
        "addressLine1",
        "city",
        "state"
      ],
      "type": "object",
      "x-conditional": [
        "postcode"
      ]
    },
    "EnergyServicePointDetailV2": {
      "allOf": [
        {
          "$ref": "#/$defs/EnergyServicePointV2"
        },
        {
          "$ref": "#/$defs/EnergyServicePointDetailV2_allOf"
        }
      ]
    },
    "EnergyServicePointDetailV2_allOf": {
      "properties": {
        "distributionLossFactor": {
          "$ref": "#/$defs/EnergyServicePointDetailV2_allOf_distributionLossFactor"
        },
        "relatedParticipants": {
          "items": {
            "$ref": "#/$defs/EnergyServicePointDetailV2_allOf_relatedParticipants"
          },
          "type": "array"
        },
        "location": {
          "allOf": [
            {
              "$ref": "#/$defs/CommonPhysicalAddress"
            }
          ],
          "description": "Location of the servicepoint."
        },
        "meters": {
          "description": "The meters associated with the service point. This may be empty where there are no meters physically installed at the service point.",
          "items": {
            "$ref": "#/$defs/EnergyServicePointDetailV2_allOf_meters"
          },
          "type": "array"
        }
      },
      "required": [
        "distributionLossFactor",
        "location",
        "relatedParticipants"
      ]
    },
    "EnergyServicePointDetailV2_allOf_distributionLossFactor": {
      "properties": {
        "code": {
          "description": "A code used to identify data loss factor for the service point values. Refer to AEMO distribution loss factor documents for each financial year to interpret.",
          "type": "string"
        },
        "description": {
          "description": "Description of the data loss factor code and value.",
          "type": "string"
        },
        "lossValue": {
          "description": "The value associated with the loss factor code.",
          "type": "string"
        }
      },
      "required": [
        "code",
        "description",
        "lossValue"
      ],
      "type": "object"
    },
    "EnergyServicePointDetailV2_allOf_meters": {
      "properties": {
        "meterId": {
          "description": "The meter ID uniquely identifies a meter for a given service point. It is unique in the context of the service point. It is not globally unique.",
          "type": "string"
        },
        "specifications": {
          "$ref": "#/$defs/EnergyServicePointDetailV2_allOf_specifications"
        },
        "registers": {
          "description": "Usage data registers available from the meter. This may be empty where there are no meters physically installed at the service point.",
          "items": {
            "$ref": "#/$defs/EnergyServicePointDetailV2_allOf_registers"
          },
          "type": "array"
        }
      },
      "required": [
        "meterId",
        "specifications"
      ],
      "type": "object"
    },
    "EnergyServicePointDetailV2_allOf_registers": {
      "properties": {
        "registerId": {
          "description": "Unique identifier of the register within this service point. Is not globally unique.",
          "type": "string"
        },
        "registerSuffix": {
          "description": "Register suffix of the meter register where the meter reads are obtained.",
          "type": "string"
        },
        "averagedDailyLoad": {
          "description": "The energy delivered through a connection point or metering point over an extended period normalised to a 'per day' basis (kWh). This value is calculated annually.",
          "type": "number"
        },
        "registerConsumptionType": {
          "description": "Indicates the consumption type of register.",
          "enum": [
            "INTERVAL",
            "BASIC",
            "PROFILE_DATA",
            "ACTIVE_IMPORT",
            "ACTIVE",
            "REACTIVE_IMPORT",
            "REACTIVE"
          ],
          "type": "string"
        },
        "networkTariffCode": {
          "description": "The Network Tariff Code is a free text field containing a code supplied and published by the local network service provider.",
          "type": "string"
        },
        "unitOfMeasure": {
          "description": "The unit of measure for data held in this register.",
          "type": "string"
        },
        "timeOfDay": {
          "description": "Code to identify the time validity of register contents.",
          "enum": [
            "ALLDAY",
            "INTERVAL",
            "PEAK",
            "BUSINESS",
            "SHOULDER",
            "EVENING",
            "OFFPEAK",
            "CONTROLLED",
            "DEMAND"
          ],
          "type": "string"
        },
        "multiplier": {
          "description": "Multiplier required to take a register value and turn it into a value representing billable energy.",
          "type": "number"
        },
        "controlledLoad": {
          "description": "Indicates whether the energy recorded by this register is created under a Controlled Load regime.",
          "type": "boolean"
        },
        "consumptionType": {
          "description": "Actual/Subtractive Indicator. Note the details of enumeration values below: <ul><li>`ACTUAL`: implies volume of energy actually metered between two dates</li><li>`CUMULATIVE`: indicates a meter reading for a specific date. A second Meter Reading is required to determine the consumption between those two Meter Reading dates.</li></ul>",
          "enum": [
            "ACTUAL",
            "CUMULATIVE"
          ],
          "type": "string"
        }
      },
      "required": [
        "registerConsumptionType",
        "registerId"
      ],
      "type": "object"
    },
    "EnergyServicePointDetailV2_allOf_relatedParticipants": {
      "properties": {
        "party": {
          "description": "The name of the party/organisation related to this service point.",
          "type": "string"
        },
        "role": {
          "description": "The role performed by this participant in relation to the service point. Note the details of enumeration values below: <ul><li>`FRMP`: Financially Responsible Market Participant</li><li>`LNSP`: Local Network Service Provider or Embedded Network Manager for child connection points</li><li>`DRSP`: wholesale Demand Response and/or market ancillary Service Provider and note that where it is not relevant for a NMI it will not be included.</li></ul>",
          "enum": [
            "FRMP",
            "LNSP",
            "DRSP"
          ],
          "type": "string"
        }
      },
      "required": [
        "party",
        "role"
      ],
      "type": "object"
    },
    "EnergyServicePointDetailV2_allOf_specifications": {
      "description": "Technical characteristics of the meter.",
      "properties": {
        "status": {
          "description": "A code to denote the status of the meter. Note the details of enumeration values below: <ul><li>`CURRENT`: Applies when a meter is current and not disconnected</li><li>`DISCONNECTED`: Applies when a meter is present but has been remotely disconnected.</li></ul>",
          "enum": [
            "CURRENT",
            "DISCONNECTED"
          ],
          "type": "string"
        },
        "installationType": {
          "description": "The metering Installation type code indicates whether the metering installation has to be manually read. Note the details of enumeration values below: <ul><li>`BASIC`: Accumulation Meter – Type 6</li><li>`COMMS1`: Interval Meter with communications – Type 1</li><li>`COMMS2`: Interval Meter with communications – Type 2</li><li>`COMMS3`: Interval Meter with communications – Type 3</li><li>`COMMS4`: Interval Meter with communications – Type 4</li><li>`COMMS4C`: CT connected metering installation that meets the minimum services specifications</li><li>`COMMS4D`: Whole current metering installation that meets the minimum services specifications</li><li>`MRAM`: Small customer metering installation – Type 4A</li><li>`MRIM`: Manually Read Interval Meter – Type 5</li><li>`UMCP`: Unmetered Supply – Type 7</li><li>`VICAMI`: A relevant metering installation as defined in clause 9.9C of the NER</li><li>`NCONUML`: Non-contestable unmeter load - Introduced as part of Global Settlement.</li></ul>",
          "enum": [
            "BASIC",
            "COMMS1",
            "COMMS2",
            "COMMS3",
            "COMMS4",
            "COMMS4C",
            "COMMS4D",
            "MRAM",
            "MRIM",
            "PROF",
            "SAMPLE",
            "UMCP",
            "VICAMI",
            "NCOLNUML"
          ],
          "type": "string"
        },
        "manufacturer": {
          "description": "Free text field to identify the manufacturer of the installed meter.",
          "type": "string"
        },
        "model": {
          "description": "Free text field to identify the meter manufacturer's designation for the meter model.",
          "type": "string"
        },
        "readType": {
          "description": "Code to denote the method and frequency of Meter Reading. The value is formatted as follows: <ul><li>First Character = Remote (`R`) or Manual (`M`)</li><li>Second Character = Mode: `T` = telephone, `W` = wireless, `P` = powerline, `I` = infra-red, `G` = galvanic, `V` = visual</li><li>Third Character = Frequency of Scheduled Meter Readings: `1` = Twelve times per year, `2` = Six times per year, `3` = Four times per year, `D` = Daily or weekly</li><li>Optional Fourth Character = to identify what interval length the meter is capable of reading. This includes five, 15 and 30 minute granularity as the following: `A` = 5 minute, `B` = 15 minute, `C` = 30 minute, `D` = Cannot convert to 5 minute (i.e. due to metering installation de-energised), `M` = Manually Read Accumulation Meter.</li></ul>For example, <ul><li>`MV3` = Manual, Visual, Quarterly</li><li>`MV3M` = Manual, Visual, Quarterly, Manually Read Accumulation Meter</li><li>`RWDC` = Remote, Wireless, Daily, 30 minutes interval.</li></ul>",
          "type": "string"
        },
        "nextScheduledReadDate": {
          "description": "This date is the next scheduled meter read date (NSRD) if a manual Meter Reading is required.",
          "type": "string",
          "x-cds-type": "DateString"
        }
      },
      "required": [
        "installationType",
        "status"
      ],
      "type": "object"
    },
    "EnergyServicePointId": {
      "description": "A unique identifier for an Energy service point, generated according to [CDR ID Permanence](#id-permanence) requirements.",
      "type": "string",
      "x-cds-type": "ASCIIString"
    },
    "EnergyServicePointV2": {
      "properties": {
        "servicePointId": {
          "allOf": [
            {
              "$ref": "#/$defs/EnergyServicePointId"
            }
          ],
          "description": "Unique identifier for the service point."
        },
        "nationalMeteringId": {
          "description": "The independent ID of the service point, known in the industry as the NMI.",
          "type": "string"
        },
        "servicePointClassification": {
          "description": "The classification of the service point as defined in MSATS procedures.",
          "enum": [
            "EXTERNAL_PROFILE",
            "GENERATOR",
            "LARGE",
            "SMALL",
            "WHOLESALE",
            "NON_CONTEST_UNMETERED_LOAD",
            "NON_REGISTERED_EMBEDDED_GENERATOR",
            "DISTRIBUTION_WHOLESALE"
          ],
          "type": "string"
        },
        "servicePointStatus": {
          "description": "Code used to indicate the status of the service point. Note the details for the enumeration values below:<ul><li>`ACTIVE`: An active, energised, service point</li><li>`DE_ENERGISED`: The service point exists but is deenergised</li><li>`EXTINCT`: The service point has been permanently decommissioned</li><li>`GREENFIELD`: Applies to a service point that has never been energised</li><li>`OFF_MARKET`: Applies when the service point is no longer settled in the NEM.</li></ul>",
          "enum": [
            "ACTIVE",
            "DE_ENERGISED",
            "EXTINCT",
            "GREENFIELD",
            "OFF_MARKET"
          ],
          "type": "string"
        },
        "jurisdictionCode": {
          "description": "Jurisdiction code to which the service point belongs.This code defines the jurisdictional rules which apply to the service point. Note the details of enumeration values below:<ul><li>`ALL`: All Jurisdictions</li><li>`ACT`: Australian Capital Territory</li><li>`NEM`: National Electricity Market</li><li>`NSW`: New South Wales</li><li>`QLD`: Queensland</li><li>`SA`: South Australia</li><li>`TAS`: Tasmania</li><li>`VIC`: Victoria.</li></ul>",
          "enum": [
            "ALL",
            "ACT",
            "NEM",
            "NSW",
            "QLD",
            "SA",
            "TAS",
            "VIC"
          ],
          "type": "string"
        },
        "isGenerator": {
          "default": false,
          "description": "This flag determines whether the energy at this connection point is to be treated as consumer load or as a generating unit (this may include generator auxiliary loads). If absent defaults to `false`. <br>**Note:** Only applicable for scheduled or semischeduled generators, does not indicate on site generation by consumer.",
          "type": "boolean"
        },
        "validFromDate": {
          "description": "The latest start date from which the constituent data sets of this service point became valid.",
          "type": "string",
          "x-cds-type": "DateString"
        },
        "lastUpdateDateTime": {
          "description": "The date and time that the information for this service point was modified.",
          "type": "string",
          "x-cds-type": "DateTimeString"
        },
        "lastConsumerChangeDate": {
          "description": "The date the account holder changed for the NMI.",
          "type": "string",
          "x-cds-type": "DateString"
        },
        "consumerProfile": {
          "$ref": "#/$defs/EnergyServicePointV2_consumerProfile"
        }
      },
      "required": [
        "jurisdictionCode",
        "lastUpdateDateTime",
        "nationalMeteringId",
        "servicePointClassification",
        "servicePointId",
        "servicePointStatus",
        "validFromDate"
      ],
      "type": "object"
    },
    "EnergyServicePointV2_consumerProfile": {
      "properties": {
        "classification": {
          "description": "A code that defines the consumer class as defined in the National Energy Retail Regulations, or in overriding Jurisdictional instruments.",
          "enum": [
            "BUSINESS",
            "RESIDENTIAL"
          ],
          "type": "string"
        },
        "threshold": {
          "description": "A code that defines the consumption threshold as defined in the National Energy Retail Regulations, or in overriding Jurisdictional instruments. Note the details of enumeration values below: <ul><li>`LOW`: Consumption is less than the 'lower consumption threshold' as defined in the National Energy Retail Regulations</li><li>`MEDIUM`: Consumption is equal to or greater than the 'lower consumption threshold', but less than the 'upper consumption threshold', as defined in the National Energy Retail Regulations</li><li>`HIGH`: Consumption is equal to or greater than the 'upper consumption threshold' as defined in the National Energy Retail Regulations.</li></ul>",
          "enum": [
            "LOW",
            "MEDIUM",
            "HIGH"
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "Links": {
      "properties": {
        "self": {
          "description": "Fully qualified link that generated the current response document.",
          "type": "string",
          "x-cds-type": "URIString"
        }
      },
      "required": [
        "self"
      ],
      "type": "object"
    },
    "Meta": {
      "type": "object"
    }
  }
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/energyaustralia-energy-service-point-detail-response-v2"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.