Notes:

ConsumerIdentity could be a consumerId (Guid) or externalConsumerIdToken.

Successful Response

The following table contains the details of a typical successful HTTP Request for this service.

Type

Value

Header

HTTP/1.1 200 OK

Content-Type: application/json

Cache-Control: no-store

Pragma: no-cache

Body

Unsuccessful Response

The following table contains the details of a typical successful HTTP Request for this service.

Type

Value

Header

HTTP/1.1 409 Connflict

Content-Type: application/json

Cache-Control: no-store

Pragma: no-cache

Body

{

"error":"Message is not valid to send.",

"errorDescription":null,

"innerException":null

}

Notes:

When consumer does not exist, message does not exist, message is expired or not published or not a direct push message type, it is within the push message blackout period, the request id and message id exist in DirectPushMessageLog or the consumer not found in Notification Hub.

If the direct push message is sent to multiple consumers, system will still return with successful response even though the body contains details of consumer who does not exist.

DirectPushMessageRequestLog should be created to record for each request if the request Id and messageId has not exist in DirectPushMessageRequestLog table.

DirectPushMessageLog should record the result of push message sent with error if it failed.