---
title: "Submit IF-018 with Event Code EnergyDirection message for validation"
method: POST
path: "/validate/IF-018/EnergyDirection"
tags: ["DIP Message Validation Endpoints"]
---

# Submit IF-018 with Event Code EnergyDirection message for validation

`POST /validate/IF-018/EnergyDirection`

Allows a Market Participant to validate a single messages for debugging purposes only

## Request body

- object[]
  - `payload` IF018EnergyDirection — IF-018 Used for event codes EnergyDirection
    - `CommonBlock` object, required — MHHS Common Block for IF-018
      - `S0` object, required — Sender Header block
        - `interfaceID` 'IF-018', required
        - `schemaVersion` '011', required — Version of the message schema used in the exchange
        - `eventCode` '[EnergyDirection]', required
      - `S1` S1, required — Sender Common block
        - `environmentTag` 'PRD' | 'SITB' | 'SIT' | 'UIT' | 'DEV', required — Environment Tag
        - `subText` string, nullable, required — SubText
        - `senderUniqueReference` string, required — Sender Unique Reference
        - `senderTimestamp` string, required — ISO 8601 Date/time
        - `senderDIPID` string, required — DIP Participant Id
        - `senderRoleID` string, required — DIP Participant Role
        - `senderCorrelationID` string, nullable, required — Correlation Id
        - `DIPConnectionProviderID` string, nullable, required — DIP Participant Id
      - `A0` A0 — Addressing block
        - `primaryRecipients` DT006NDIPParticipantID[], required — Primary Recipient - array of Ids; set by Sender
        - `secondaryRecipients` DT006NDIPParticipantID[], required — Secondary Recipient - array of Ids; set by DIP
        - `always` DT006NDIPParticipantID[], required — Always Recipient - array of Ids; set by DIP
      - `D0` D0 — DIP Block
        - `transactionID` string, required — Transaction ID
        - `transactionTimestamp` string, required — ISO 8601 Date/time
        - `publicationID` string, required — DIP Publication ID
        - `initialCorrelationID` string, nullable, required — Correlation Id
        - `replayIndicator` boolean, required — Set by the DIP to denote that a txn is being replayed
        - `serviceTicketURL` string, nullable, required — URL
      - `M0` M0, required — MPAN Core
        - `MPANCore` string, required — MPAN Core
        - `distributorDIPID` string, required — DIP Participant Id
        - `GSPGroupID` '_A' | '_B' | '_C' | '_D' | '_E' | '_F' | '_G' | '_H' | '_J' | '_K' | '_L' | '_M' | '_N' | '_P', required — Identifies the distinct grid supply point group (physical region of the country) where the metering point is located.
    - `CustomBlock` object, required — IF018 Custom data block for event codes EnergyDirection
      - `B013` B013 — CSS Registration Request Id
        - `CSSRegistrationID` string, required — CSS Registration ID
      - `B023` B023, required — MPAN Connection Info
        - `connectionTypeIndicator` 'W' | 'L' | 'H' | 'E' | 'U', required — A code to indicate the type of connection.
        - `connectionTypeEffectiveFromDate` string, required — ISO 8601 Date/time
        - `energyDirection` 'I' | 'E', required — Indicates the direction of energy at a metering point. Values can be I = import / E = export
        - `meteredIndicator` boolean, required — An indicator to show whether the Consumption Component is for a metered supply or unmetered supply.

## Response `201`

Message OK

- string

## Other responses

- `400` — Bad Request
- `500` — Internal Server Error

---

[API](https://skmtc.net/elexon/apis/mhhs-dip.md) · [All operations](https://skmtc.net/elexon/apis/mhhs-dip/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/elexon/mhhs-dip/versions/d3e2d9f8faff/schema)
