Skip to main content

MPAN Schema Reference

This page summarizes the request and response contract for MPAN API endpoints.

Constraint notation:

  • "Not specified" means no explicit min/max/pattern constraint is documented for the endpoint response/request schema.
  • MPAN values are represented as 13-digit numbers in API requests and responses.

Request Parameters

FieldLocationRequiredTypeLength / FormatNotes
X-API-KEYHeaderYesstringUUID formatAuthentication header required for both endpoints.
mpidPathYesstringNot specifiedSupplier MPID used for tenant/supplier authorization checks.
mpan_idQuery (GET /mpan/v1/{mpid})Yesinteger13 digitsMPAN core identifier.

List Response Schema (MpanResponseSchema)

Top-level

FieldRequiredTypeLength / FormatNotes
mpansYesarray of MpanResponseSchemaBaseN/AEmpty list is returned when no MPANs exist.

Item schema: MpanResponseSchemaBase

FieldRequiredTypeLength / FormatNotes
idYesinteger13 digitsMPAN core.
address_line_1Nostring or nullNot specifiedAddress line 1.
address_line_2Nostring or nullNot specifiedAddress line 2.
address_line_3Nostring or nullNot specifiedAddress line 3.
address_line_4Nostring or nullNot specifiedAddress line 4.
address_line_5Nostring or nullNot specifiedAddress line 5.
address_line_6Nostring or nullNot specifiedAddress line 6.
address_line_7Nostring or nullNot specifiedAddress line 7.
address_line_8Nostring or nullNot specifiedAddress line 8.
address_line_9Nostring or nullNot specifiedAddress line 9.
postcodeNostring or nullNot specifiedMetering point postcode.
registration_idNostring(UUID) or UUID or nullUUID (typically 36 characters when serialized as string)CSS registration identifier.
supply_start_dateNostring(datetime) or nullISO 8601 datetimeSupply effective from date.
registration_statusNostring or nullEnum values: Pending, Confirmed, Cancelled, SecuredActive, SecuredInactive, Active, InactiveCurrent registration status.

Single MPAN Response Schema (MpanSchema)

Base fields (MpanSchemaBase)

FieldRequiredTypeLength / FormatNotes
idYesinteger13 digitsMPAN core.
address_line_1Nostring or nullNot specifiedAddress line 1.
address_line_2Nostring or nullNot specifiedAddress line 2.
address_line_3Nostring or nullNot specifiedAddress line 3.
address_line_4Nostring or nullNot specifiedAddress line 4.
address_line_5Nostring or nullNot specifiedAddress line 5.
address_line_6Nostring or nullNot specifiedAddress line 6.
address_line_7Nostring or nullNot specifiedAddress line 7.
address_line_8Nostring or nullNot specifiedAddress line 8.
address_line_9Nostring or nullNot specifiedAddress line 9.
postcodeNostring or nullNot specifiedMetering point postcode.
gsp_group_idNostring or nullNot specifiedGSP Group identifier.
distributor_dip_idNostring or nullNot specifiedDistributor DIP ID.
distributor_mpidNostring or nullMax length 4Distributor MPID.
domestic_indicatorNoboolean or nullN/ADomestic premise indicator.
domestic_indicator_efdNostring(datetime) or nullISO 8601 datetimeDomestic indicator effective from date.
energy_directionNostring or nullNot specifiedEnergy direction code/value.
metered_indicatorNoboolean or nullN/AMetered indicator.
duos_tariff_idNostring or nullNot specifiedDUoS tariff identifier.
duos_tariff_efdNostring(datetime) or nullISO 8601 datetimeDUoS tariff effective from date.
energisation_statusNostring or nullNot specifiedEnergisation status.
energisation_status_efdNostring(datetime) or nullISO 8601 datetimeEnergisation status effective from date.
connection_type_indicatorNostring(enum) or nullEnum: W, L, H, E, UConnection type indicator.
connection_type_indicator_efdNostring(datetime) or nullISO 8601 datetimeConnection type effective from date.
market_segmentNostring or nullNot specifiedMarket segment indicator.
market_segment_efdNostring(datetime) or nullISO 8601 datetimeMarket segment effective from date.
annual_consumptionNostring or nullNot specifiedAnnual consumption value as stored.
annual_consumption_efdNostring(datetime) or nullISO 8601 datetimeAnnual consumption effective from date.
annual_consumption_quality_indicatorNostring(enum) or nullEnum: A, 1, 2, 3, 4, 5, DQuality indicator for annual consumption.
metering_service_dip_idNostring or nullNot specifiedCurrent metering service DIP ID.
metering_service_mpidNostring or nullNot specifiedCurrent metering service MPID.
metering_service_efdNostring(datetime) or nullISO 8601 datetimeMetering service effective from date.
metering_service_etdNostring(datetime) or nullISO 8601 datetimeMetering service effective to date.
data_service_dip_idNostring or nullNot specifiedCurrent data service DIP ID.
data_service_mpidNostring or nullNot specifiedCurrent data service MPID.
data_service_efdNostring(datetime) or nullISO 8601 datetimeData service effective from date.
data_service_etdNostring(datetime) or nullISO 8601 datetimeData service effective to date.
mdr_dip_idNostring or nullNot specifiedMeter data retriever DIP ID.
mdr_mpidNostring or nullNot specifiedMeter data retriever MPID.
mdr_efdNostring(datetime) or nullISO 8601 datetimeMeter data retriever effective from date.
customer_direct_contract_metering_serviceNoboolean or nullN/ACustomer direct contract metering service flag.
customer_direct_contract_metering_service_mpidNostring or nullNot specifiedCustomer contracted metering service MPID.
customer_direct_contract_metering_service_dip_idNostring or nullNot specifiedCustomer contracted metering service DIP ID.
customer_direct_contract_metering_service_efdNostring(datetime) or nullISO 8601 datetimeCustomer contracted metering service effective from date.
customer_direct_contract_metering_service_etdNostring(datetime) or nullISO 8601 datetimeCustomer contracted metering service effective to date.
customer_direct_contract_data_serviceNoboolean or nullN/ACustomer direct contract data service flag.
customer_direct_contract_data_service_mpidNostring or nullNot specifiedCustomer contracted data service MPID.
customer_direct_contract_data_service_dip_idNostring or nullNot specifiedCustomer contracted data service DIP ID.
customer_direct_contract_data_service_efdNostring(datetime) or nullISO 8601 datetimeCustomer contracted data service effective from date.
customer_direct_contract_data_service_etdNostring(datetime) or nullISO 8601 datetimeCustomer contracted data service effective to date.
dcc_service_flagNostring or nullNot specifiedDCC service flag.
dcc_service_flag_efdNostring(datetime) or nullISO 8601 datetimeDCC service flag effective from date.
ihd_install_statusNostring or nullNot specifiedIHD install status.
ihd_install_status_efdNostring(datetime) or nullISO 8601 datetimeIHD install status effective from date.
smso_idNostring or nullNot specifiedSMSO identifier.
smso_id_efdNostring(datetime) or nullISO 8601 datetimeSMSO effective from date.
profile_classNostring or nullNot specifiedProfile class.
profile_class_efdNostring(datetime) or nullISO 8601 datetimeProfile class effective from date.
sscNostring or nullNot specifiedSSC value.
ssc_efdNostring(datetime) or nullISO 8601 datetimeSSC effective from date.
registration_idNoUUID or nullUUID (36 characters when serialized)CSS registration ID.
registration_status_efdNostring(datetime) or nullISO 8601 datetimeRegistration status effective from date.
supplier_mpidNostring or nullNot specifiedSupplier MPID associated to MPAN record.
registration_statusNostring or nullEnum values: Pending, Confirmed, Cancelled, SecuredActive, SecuredInactive, Active, InactiveRegistration status.
supply_start_dateNostring(datetime) or nullISO 8601 datetimeSupply start date.
supply_end_dateNostring(datetime) or nullISO 8601 datetimeSupply end date.
consent_granularityNostring or nullNot specifiedConsent granularity value.
consent_granularity_efdNostring(datetime) or nullISO 8601 datetimeConsent granularity effective from date.
measurement_class_idNostring or nullNot specifiedMeasurement class identifier.

Additional fields on MpanSchema

FieldRequiredTypeLength / FormatNotes
updatedYesstring(datetime)ISO 8601 datetimeLast updated timestamp for the MPAN record.
related_mpansNoobject or nullSee nested shape belowRelated MPAN relationships (if any).
linked_mpansNoobject or nullSee nested shape belowLinked import/export MPAN relationships (if any).
migration_statusesYesarray of MigrationStatusSchemaN/ADefaults to [] if no migration statuses.
FieldRequiredTypeLength / FormatNotes
primary_mpanYes (when object present)integer13 digitsMPAN returned by query.
secondary_mpansYes (when object present)arrayN/ARelated secondary MPAN records.
secondary_mpans[].mpan_coreYesinteger13 digitsRelated MPAN core.
secondary_mpans[].effective_fromYesstring(datetime)ISO 8601 datetimeRelationship start datetime.
secondary_mpans[].effective_toNostring(datetime) or nullISO 8601 datetimeRelationship end datetime.

linked_mpans nested object

FieldRequiredTypeLength / FormatNotes
import_mpanYes (when object present)integer13 digitsImport MPAN core.
import_supplier_mpidYes (when object present)stringNot specifiedSupplier MPID for import MPAN.
export_mpansYes (when object present)arrayN/ALinked export MPAN records.
export_mpans[].mpan_coreYesinteger13 digitsExport MPAN core.
export_mpans[].effective_fromYesstring(datetime)ISO 8601 datetimeRelationship start datetime.
export_mpans[].effective_toNostring(datetime) or nullISO 8601 datetimeRelationship end datetime.
export_mpans[].export_supplier_mpidYesstringNot specifiedSupplier MPID for export MPAN.

Migration Status Schema (MigrationStatusSchema)

FieldRequiredTypeLength / FormatNotes
typeYesstring(enum)Enum: forward, reverseMigration direction.
mhhs_regime_end_dateNostring(datetime) or nullISO 8601 datetimeMHHS regime end date.
outgoing_metering_service_dip_idNostring or nullNot specifiedOutgoing metering service DIP ID.
outgoing_metering_service_mpidNostring or nullNot specifiedOutgoing metering service MPID.
outgoing_metering_service_effective_from_dateNostring(datetime) or nullISO 8601 datetimeOutgoing metering service start.
outgoing_metering_service_effective_to_dateNostring(datetime) or nullISO 8601 datetimeOutgoing metering service end.
outgoing_metering_service_deappointment_reason_codeNostring or nullNot specifiedDeappointment reason.
outgoing_data_service_dip_idNostring or nullNot specifiedOutgoing data service DIP ID.
outgoing_data_service_mpidNostring or nullNot specifiedOutgoing data service MPID.
outgoing_data_service_effective_from_dateNostring(datetime) or nullISO 8601 datetimeOutgoing data service start.
outgoing_data_service_effective_to_dateNostring(datetime) or nullISO 8601 datetimeOutgoing data service end.
outgoing_data_service_deappointment_reason_codeNostring or nullNot specifiedDeappointment reason.
incoming_mop_mpidNostring or nullNot specifiedIncoming MOP MPID.
incoming_mop_effective_from_dateNostring(datetime) or nullISO 8601 datetimeIncoming MOP start.
incoming_dc_mpidNostring or nullNot specifiedIncoming DC MPID.
incoming_dc_effective_from_dateNostring(datetime) or nullISO 8601 datetimeIncoming DC start.
incoming_supplier_mpidYesstringNot specifiedIncoming supplier MPID.
incoming_supplier_dip_idYesstringNot specifiedIncoming supplier DIP ID.
incoming_supplier_effective_from_dateYesstring(datetime)ISO 8601 datetimeIncoming supplier start date.
old_supplier_mpidNostring or nullNot specifiedPrevious supplier MPID.
old_data_aggregator_mpidNostring or nullNot specifiedPrevious DA MPID.
old_data_aggregator_typeNostring or nullNot specifiedPrevious DA type.
old_data_collector_mpidNostring or nullNot specifiedPrevious DC MPID.
old_data_collector_typeNostring or nullNot specifiedPrevious DC type.
old_meter_operator_mpidNostring or nullNot specifiedPrevious MOP MPID.
old_meter_operator_typeNostring or nullNot specifiedPrevious MOP type.