question

Upvotes
Accepted
16 0 0 1

Can I rely on ACK ID from onAckMsg to confirm the processing status of the price publication request?

I got a question on Refinitiv EMA API call with EMA jar version 3.6.2.2.


I would like to confirm if it is safe to assume a price publication request sent to EMA API is accepted and successfully processed when we receive the ACK ID from onAckMsg api? Or that simply means the request has been received by the API handler only and no guarantee if the request is processed successfully?


If that's the later case can you advise is there any recommendation on how we can perform a completeness check to confirm all requests have been processed successfully?


Many Thanks

ema-api#technologyjavaposting
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
Accepted
72.7k 225 49 71

@denny.c.h.ma

Thanks for reaching out to us.

The acknowledgment message carries success or failure (i.e., a negative acknowledgment or ‘NAK’) information to the consumer. When acknowledging a Post message, ACK ID typically matches the post message’s PostID so the ACK ID is used to match the post message.

To verify if the post message is processed successfully, you need to check the presence of NakCode. If present, this message indicates a NAK (a negative acknowledgment). The NakCode is an enumerated code value (ranging in value from 1 to 255) that provides additional information about the reason for the NAK.

1678758578531.png

You can also check the text in the message which provides additional information about the acceptance or rejection of the message being acknowledged. For more information, please refer to the EMA Reference Guide regarding the AckMsg.

I hope that this information is of help.


1678758578531.png (38.5 KiB)
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
22.7k 47 15 12

Hello @denny.c.h.ma

Additionally from my colleague @Jirapongse answer, the example messages are as follows:

Post success (acceptance case with EMA Java posts to RCC):

----- Ack message ----
AckMsg
 streamId="6"
 domain="MarketPrice Domain"
 ackId="10"
AckMsgEnd

Post failure (reject case with EMA Java posts "invalid RIC" to RCC)

----- Ack message ----
AckMsg
    streamId="6"
    domain="MarketPrice Domain"
    ackId="5"
    nackCode="DeniedBySource"
    text="RIC has been disabled"
AckMsgEnd

The message pattern should be mostly identical to either RCC, ATS, or local RTDS contribution scenarios.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.