Signing and encoding the 56 bytes

This will be handled by the API library class, but here is a basic description in pseudo-code:

# 56 bytes as explained
the_56_bytes = account_no + hash_method + custom_data

# associating account with recipient and API account without exposing 
protected_data = account_id + recipient_email + the_56_bytes

# HMAC hash of protected data, using Hash Method and API Account Key
hmac_hash = hmac_binary_digest(

# encode in base64 for transportation
encoded_identifier = base64_encode(the_56_bytes + hmac_hash)

# make valid Message-ID
message_id = "<" + encoded_identifier + ">"

What is hmac? It is a code or hash that verifies a message or your data, kind of like a transportable, secure checksum, with private credentials.

This will be used by the replyPUSH server and your Notification code to verify the data.

In the next section reply notification key/values we will cover what is "pushed", when there is a reply.