Typically when flow developers use the ACE Discovery Request nodes in a message flow, the input data structure which the node expects to receive and the output data structure which is sent further on down the message flow is in a JSON format, and is presented to the flow developer in the logical tree in the JSON message domain. This approach is consistent with the fact that the vast majority of endpoint applications which our discovery connectors are designed to interact with are accessible through JSON payloads sent to Open API endpoints. However, there are situations where JSON is not the most appropriate way of describing a message payload. Traditional ACE message flows in the Toolkit solve this problem by providing integration specialists with a variety of built-in parsers (and in some cases the relevant associated message models) out-of-the-box such as BLOB, XMLNSC, DFDL etc.
ACE 13.0.5.0 introduces the ability to use BLOB messages directly (without the need to transform via a JSON domain message) when pushing data into the Microsoft Azure Blob Storage Request node. As a reminder, the BLOB message domain describes a bit stream as a single string of bytes and although you can manipulate it within a message flow using positional functions (such as functions in ESQL to count or substring a certain number of bytes), you cannot identify specific pieces of the byte string using a modelled field reference, in the way that you can with messages in other domains. Consider a simple message flow which has an HTTP Input node configured to receive data in the BLOB domain, which is wired (after initially echoing back the data to the requesting client) to a Microsoft Azure Blob Storage Request node:
After Launching Connector Discovery, as with other discovery connector nodes, you specify connection details and choose the relevant action you wish to perform - in this case an action to Update or create blob
When assigning the value to be placed into the Content field, you will now find an option in the Available mappings to take BLOB
data from the Payload
of the incoming logical message tree: