P4 Data Request

create

Method

URL

POST

api/esh/p4_data_request/create

../_images/p4_data_request.global_task.png

Pre-requisite steps

  1. The initiator sends a request to create a Global Task p4_data_request

  2. If the validation of the input parameters results in an error the ‘Global Task’ is not created and the errors are returned.

  3. A Global Task is created and the GlobalTask.ID is returned.

Global Task steps

  1. The ValueA adapter sends out the request to EDSN via an XML request: P4CollectedDataBatchRequest.

EDSN rejection handling

  1. EDSN validates the request (see EDSN validations). If there are inaccuracies, the message is rejected and a SOAP Fault is returned.

  2. The ValueA adapter processes the rejection or confirmation from EDSN: P4CollectedDataBatchResponse or SOAPFault.

  3. When a rejection is received the status of the GlobalTask step is set to error. An exception is made for error code 037 in which case the request is resend in the next iteration with a new message_id.

Grid Operator (CTS) response handling

  1. The Grid Operator (CTS) validates the request (see Grid Operator validations). If there are inaccuracies, the message is rejected, otherwise the requested P4 data is returned.

  2. The ValueA adapter collects the results send by the Grid Operator, if available, from EDSN: P4CollectedDataResultBatchRequest.

  3. When a rejection is received the status of the GlobalTask is set to rejected.

  4. When the requested P4 data is received the status of the GlobalTask is set to ready.

Input parameters

p4_data_request global_task input parameters

type

object

properties

  • ean_id

type

string

pattern

^[0-9]{18}$

  • grid_operator_company_id

type

string

pattern

^[0-9]{13}$

  • query_date

Date format as defined in RFC 3339, section 5.6.

type

string

format

date

  • query_reason

Day, Interval, Month Recovery

enum

DAY, INT, RCY

  • use_local_data_for_validation

If true then the latest available MeteringPoint data will be used to perform additional validations

type

boolean

default

False

EDSN validations

validation

error message

error code

The value in the request meets the requirements set by the protocol

The value in the request does not meet the requirements set by the protocol

001

The EAN of the requesting party belongs to the used security certificate

Standard Authentication error. Requesting party’s EAN code does not match the certificate

003

The requesting party is authorized

The requesting party is not authorized

008

The addressed regional grid operator is known

EAN code grid operator unknown

036

The message can be delivered to the addressed regional grid operator

Message cannot be delivered to regional grid operator

037

Grid Operator validations

validation

error message

error code

Supplier is authenticated

The requesting party is not authenticated

000

The connection is known on the requested date

EAN-code connection unknown on the requested date.

006

The connection has a smart meter on the requested date

No smart meter on the connection on the requested date

007

The requesting party is authorized

The requesting party is not authorized

008

The smart meter has been deployed

Requested measurement data not available: meter in deployment phase

009

The date for meter readings is in the past

Date for requested data in the future, meter readings not yet available

010

The meter readings for the requested date are available

Date of requested data too old, meter readings no longer available

011

The requested measurement data is available

Requested measurement data not available, meter temporarily out of order

012

The submitted request can be executed by the meter

This particular request cannot be executed by the meter

013

The requested measurement data is available

Requested measurement data not available: malfunction known and under repair

014

The smart meter is administratively on

The smart meter is administratively off

038

The connection has a smart meter that can be read remotely from a technical point of view

There is a technically not remotely readable smart meter

039

The requesting party is mandated

The requesting party is not mandated, because the authorization has been terminated following a change of the contracting party on the connection

040

The requested measurement data is available

Requested measurement data not available: large-scale failure

041

Output parameters

client_key global_task return parameters

properties

  • global_task_id

GlobalTask.id

type

string

format

uuid

  • error

type

object

properties

  • messsageid

ValueA Broker message.id

type

string

format

uuid

  • validations

type

array

items

global_task_validation

global_task_validation

type

object

properties

  • message

type

string

  • ref

optional reference to parameter

type

string / null

  • user_message

type

string / null

getStatus

Method

URL

GET

api/esh/p4_data_request/get_status

Get status input parameters

global_task get_status input parameters

type

object

properties

  • id

GlobalTask.id

type

string

format

uuid

Get status return parameters

global_task get_status return parameters

type

object

properties

  • status

type

string

  • status_date

type

string

format

date

  • status_description

type

string / null

  • status_details

type

array

items

status_detail

  • error

type

object

properties

  • messsageid

ValueA Broker message.id

type

string

format

uuid

  • validations

type

array

items

get_status_validation

status_detail

type

object

properties

  • description

type

string

  • remark

type

string / null

get_status_validation

type

object

properties

  • message

type

string

  • ref

optional reference to parameter

type

string / null

  • user_message

type

string / null

getData

Method

URL

GET

api/esh/p4_data_request/get_data

Get data input parameters

p4_data_request get_data input parameters

type

object

properties

  • id

GlobalTask.id

type

string

format

uuid

Get data return parameters

p4_data_request get_data return parameters

type

object

properties

  • p4_data_response

type

object

properties

  • meters

type

array

items

meter

  • query_date

type

string

format

date

  • query_reason

Day, Interval, Month Recovery

enum

DAY, INT, RCY

  • p4_data_rejection

type

object

properties

  • query_date

type

string

format

date

  • query_reason

Day, Interval, Month Recovery

enum

DAY, INT, RCY

  • reasons

type

array

items

reason

  • error

type

object

properties

  • messsageid

ValueA Broker message.id

type

string

format

uuid

  • validations

type

array

items

get_data_validation

meter

type

object

properties

  • id

type

string

  • registers

type

array

items

register

register

type

object

properties

  • id

type

string

  • measure_unit

enum

KVR, KWH, KWT, M3N, MTQ, WH, DM3, MJ, M3N3517, M3N3517HR, MQH

  • readings

type

array

items

reading

reading

type

object

properties

  • reading

type

integer

  • reading_date_time

type

string

format

date-time

reason

type

object

properties

  • code

type

string

  • text

type

string

get_data_validation

type

object

properties

  • message

type

string

  • ref

optional reference to parameter

type

string / null

  • user_message

type

string / null

sendMessages

Method

URL

POST

api/esh/p4_data_request/send_messages

This Task wil send all available P4DataRequest (P4CollectedData) messages to EDSN.

Send Input parameters

p4_data_request send_messages input parameters

type

object

properties

  • receiver

grid operator

type

string

pattern

^[0-9]{13}$

Send return parameters

p4_data_request send_messages return parameters

type

object

properties

  • message_type

type

string

  • message_ids

type

array

items

EDSN message.id

type

string

format

uuid

  • error

type

object

properties

  • messsageid

ValueA Broker message.id

type

string

format

uuid

  • validations

type

array

items

send_validation

send_validation

type

object

properties

  • message

type

string

  • ref

optional reference to parameter

type

string / null

  • user_message

type

string / null