locked
Logic App RestFul RRS feed

  • Question

  • Hi,

    I am currently in dev. I am creating a Logic App, from where I'll be call a JSON based RestFul service.  This RestFul service is still hosted/configured in my dev machine not exposed to external world yet. So from my Logic App in Azure subscription how can I call my RestFul service service which is hosted in dev.

    Please provide me the options and any article on achieving this step-by-step.

    Saturday, September 2, 2017 6:32 AM

Answers

  • Hi Alastair,

    Abhishek proposal is the most straightforward if you have control on your network environment. If you don't, another option is to create a "proxy API" to create the link between the messages. In order to do that you would need to:

    1) Create a new Web API with the same definition (swagger) as your internal API.

    2) For each operation implementation, you call your internal API and return the results from that API.

    3) Once this Web API is implemented, host it as a Web App and configure a hybrid connection to make sure that your "proxy API" can call the internal API.

    4) Setup your logic app to call your proxy API.

    Here is some documentation about Hybrid connections.

    This option will require more work from you so Abhishek option would be the preferred. The main drawback of that is that you are open a tunnel directly to your Dev machine, which might pose a security risk. If your dev machine is running in the cloud, there is less risk as you are not exposing your corporate network.

    I hope this helps, Wagner.


    Saturday, September 2, 2017 10:37 AM

All replies

  • Hi Alastair,

    You need to open up the ports for logic apps on your dev environment where your API is hosted to listen inbound traffic . The list of ports for logic apps can be found at Microsoft documentation 

    https://docs.microsoft.com/en-us/azure/logic-apps/logic-apps-limits-and-config#configuration



    If this answers your question please mark it accordingly. If this post is helpful, please vote as helpful by clicking the upward arrow mark next to my reply


    Saturday, September 2, 2017 9:24 AM
  • Hi Alastair,

    Abhishek proposal is the most straightforward if you have control on your network environment. If you don't, another option is to create a "proxy API" to create the link between the messages. In order to do that you would need to:

    1) Create a new Web API with the same definition (swagger) as your internal API.

    2) For each operation implementation, you call your internal API and return the results from that API.

    3) Once this Web API is implemented, host it as a Web App and configure a hybrid connection to make sure that your "proxy API" can call the internal API.

    4) Setup your logic app to call your proxy API.

    Here is some documentation about Hybrid connections.

    This option will require more work from you so Abhishek option would be the preferred. The main drawback of that is that you are open a tunnel directly to your Dev machine, which might pose a security risk. If your dev machine is running in the cloud, there is less risk as you are not exposing your corporate network.

    I hope this helps, Wagner.


    Saturday, September 2, 2017 10:37 AM