Microsoft Flow – HTTP – calling webservices, XML vs JSON

Last week I was asked about making a webservice work in Microsoft Flow. We were using the floatrates url to get some XML back with exchange rates.

So I used the following url: http://www.floatrates.com/daily/gbp.xml

This all worked really well and I got quite quickly some XML back but then the trouble started.

I used XPath to get the bit of XML that I was interested in.

   xpath(xml(body('HTTP'),'/channel/items/title')

 

At first I thought that I got the right data back as I got the right number of items back in my Initialize variable action:

The right number of items yes, but no usable data.  The $content doesn’t look usable anyway.

Then  I tried the json equivalent version of the service and as soon as I started running my flow I know got some json returned by my HTTP action in Flow. So I now started using http://www.floatrates.com/daily/gbp.json instead:

Now all I had to do was use the following Expression:

~~~~
body(‘HTTP’)?[usd]?[rate]

~~~~

and I got my exchange rate back. When using Flow it is a lot easier to use the more modern JSON and XML seems to not be handled properly. SO if you have the choice I would recommend JSON.

 

 

Advertisements


Categories:Flow, Office 365

Tags: , , ,

4 replies

  1. Good Post .I need your help ,currently i am working with Microsoft flow to connect Azure webhook.I am able to connect and execute the runbook through powerapps button. Now, i am trying to show the same output in powerapps textbox fby retrieving input from Azure runbook. Can anyone help me on the steps for the same ?

    Like

Trackbacks

  1. Microsoft Integration Weekly Update: Feb 5, 2018 | Hooking Stuffs Together
  2. Schedule update of Currency Exchange Rates in Dynamics 365 CE with Flow - Microsoft Dynamics 365 Community

Please leave a comment or feedback

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: