XML Helper

Overview

The XML Helper converts XML to dictionaries or vice versa. It connects XML-based APIs to the integration platform.

Actions

1. Convert dictionary to XML

To convert a dictionary to XML, e.g. for use in the REST helper, use the Convert dictionary to XML action. Just reference the object directly, without {{ }}

XML Attributes

If you want to include XML attributes in the outputted XML, e.g.:

<?xml version="1.0" encoding="utf-8"?>
<Example id="somevalue" type="text">
  <Content>Some Text</Content>
</Example>

You need to include the attributes in the dictionary with an @ prefix, e.g.:

{
  "Example": {
    "@id": "somevalue",
    "@type": "text",
    "Content": "Some Text",
  }
}

2. Convert XML to dictionary

To retrieve an XML file or endpoint, just include the internal Locoia reference or the external URL, like in the below screenshot the VAT-ID check of the EU commission.

Since XML responses are sometimes "not so clean", please reference data as per the below. This is the better approach compared to JSONPath-notation.

myOldErp["users"]["first_name"]

If an XML only contains one entry of an object, it will be output as a dictionary in JSON. However, if it has multiple entries of an object it will be output as a list of dictionaries. To check the output type dynamically in a flow you use the Jinja mapping test, e.g.:

{% if dic1 is mapping %}
  "Dict"
{% else %}
  "List"
{% endif %}

3. Drop Namespaces

Sometimes you may want to drop the namespaces of an existing XML. This can be done with the Drop Namespaces action.

Last updated