#Flow – Advanced options to work with HTTP Actions in #MicrosoftFlow, Headers, Authentication and more!

Hi !

This post is mostly focused for developers. One of the most useful actions we can use on Microsoft Flow is the HTTP Action. There are 3 different types of HTTP Actions

  • HTTP
  • HTTP + Swagger
  • HTTP Webhook

Clipboard02

Today´s post will be focused on the 1st one, in the latest release we can found some very useful new features to work with HTTP Action in Microsoft Flow.

Basic options

As usual, we can start with the basic configuration for an HTTP Action, defining Uri, Body or Method

  • GET
  • PUT
  • POST
  • PATCH
  • DELETE

Clipboard04

I can’t think on a specific scenario, however we can even define different Methods (PUR or GET in example) based on previous conditions of the Flow.

Headers

And this is a cool one, now we can define custom header values for our HTTP Call. If we need to perform a HTTP POST request using JSON content and a specific value for a “validationKey”, we can define something similar to the image.

Clipboard06

And we can even, change the Header editor to work in text mode, which will bring us more power in edition and customization mode.

Clipboard08

Authentication

Another important topic is the authentication options we have for an HTTP Action. Out of the box, the action support the following types:

  • Basic
  • Client Certificate
  • Active Directory OAuth
  • Raw
  • Custom

Clipboard10

The Basic mode will require user and password in the traditional mode. Of course we can get this values from some previous steps on a Flow or use variables in the Flow definition.

Clipboard12

The Client Certificate mode requires the location of an PFX certificate and also the password to use the certificate.

Clipboard14

The Active Directory OAuth mode require all the necessary data to work in a AD environment.

Clipboard16

And finally the Raw mode

Clipboard18

So, IMHO the HTTP Action mode is a very useful one. It allows us to cover and use lot of “non out of the box” services.

Happy Coding ! 😀

Greetings @ Infusion Offices

El Bruno

References

Advertisements

#Flow – Opciones avanzadas en HTTP Action con #MicrosoftFlow, Headers, Authentication y más !

Hola !

Este post es especial para developers. Una de las acciones más útiles que tenemos en Microsoft Flow para realizar tareas de integración es la HTTP Action. Existen 3 tipos de acciones de este tipo

  • HTTP
  • HTTP + Swagger
  • HTTP Webhook

Clipboard02

En el post de hoy me centraré en la 1ra ya que tiene algunas opciones interesantes que se le han agregado en la última actualización de MS Flow.

Basic options

Lo primero que podemos configurar son los parámetros básicos como la Uri, el Body o el tipo de llamada que queremos hacer

  • GET
  • PUT
  • POST
  • PATCH
  • DELETE

Clipboard04

No se me ocurre un escenario concreto pero inclusive podemos definir el tipo de llamada en tiempo de ejecución del Flow utiizando alguna variable.

Headers

Ahora también tenemos la posiblidad de definir los Headers para nuestra llamada. Si por ejemplo queremos realizar una petición HTTP POST enviando un contenido JSON con una cabecera específica ahora podemos definir los siguientes valores.

Clipboard06

Y el detalle que me ha gustado, es que además podemos definir en modo texto los headers que utilizaremos en la llamada HTTP !

Clipboard08

Authentication

Y, otro punto fuerte son las opciones para autenticación, que siempre suelen ser un problema en estos casos.  Los diferentes tipos de autenticación que soporta esta acción son:

  • Basic
  • Client Certificate
  • Active Directory OAuth
  • Raw
  • Custom

Clipboard10

El modo Basic nos permite definir usuario y contraseña en el modo tradicional. Como siempre, estos pueden ser obtenidos desde variables propias de la definición del flow.

Clipboard12

En el modo Client Certificate, debemos especificar la ubicación de un PFX y además la contraseña para trabajar con el mismo.

Clipboard14

El modo Active Directory OAuth también nos propone todos parámetros de configuración para AD

Clipboard16

Y finalmente el modo Raw

Clipboard18

Como conclusión debo añadir que este tipo de configuración ayuda a que Microsoft Flow sea más “amigable” para trabajar con servicios no soportados por la plataforma.

Happy Coding ! 😀

Saludos @ Infusion Offices

El Bruno

References

#Flow – How to invoke a Flow from an external app using HTTP Request

Hello!

In addition to the Out-Of-The-Box triggers included in Flow, we also have the chance to invoke a flow using an HTTP POST call. There is a post on the Flow’s blog, “Calling Microsoft Flow from your application” (link), which explains this very weel. I’ll write some of the basic steps of a common scenario.

We need to start from a blank template, the first step we will add will be a trigger of type “Request / Response”.

clipboard01

This type of trigger allows us to define a JSON schema with the fields for our call. Then we can use it in the following step of the Flow. Using jsonschema.net, I will create a simple example with 2 fields: filename and filecontent.

clipboard03

Then we copy the generated schema in the request definition. In the next step, I will create a new file in OneDrive with part of the content of the Request. As we can see in the image below, Flow parser analyzes the schema and presents us with the possibility of using the filename and filecontent fields.

Clipboard04.jpg

Finally, we add a Response action to complete the flow call. Here we also use the dynamic properties to select Headers and Body. If we want return a custom Body, the dynamic properties can be used to create it.

clipboard06

When we save the Flow definition, in the trigger Request we will find the URL we well use to make the calls. This is the time of copying this URL.

clipboard29

Finally, to emulate calls will use a classic app: Google, Postman Chrome App. Using the URL and the schema JSON make a request and we can see the result of it.

clipboard32

And, if we are to OneDrive, we can see the file created with the content that we have used in the request.

clipboard34

This is a very simple way to create and invoke flows!

Greetings @ Toronto

El Bruno

References

#Flow – Cómo invocar un Flow desde una app externa via HTTP Request

Hola !

Una de las ventajas que posee Flow, es que además de los triggers que vienen Out-Of-The-Box, también tenemos la capacidad de invocar al mismo utilizando una llamada HTTP POST. En el blog de Flow, hay un post “Calling Microsoft Flow from your application” (link), donde se comenta cómo realizar esto de manera completa. Yo partiendo de ese escenario comentaré los pasos más importantes.

Partiendo de un template en blanco, el primer paso que agregaremos será un trigger de tipo “Request / Response”.

clipboard01

Este tipo de trigger nos permite definir un schema JSON con los campos para nuestra llamada. Luego podremos utilizar el mismo en los siguientes paso del Flow. Utilizando jsonschema.net, crearé un ejemplo simple con 2 campos: filename y filecontent.

clipboard03

El schema generado, es el que copiaré en la definición del request. En el siguiente paso crearé un nuevo archivo en OneDrive con parte del contenido del Request. Como podemos ver en la siguiente imagen, el parser de Flow analiza el schema y nos presenta la posibilidad de utilizar los campos filename y filecontent.

Clipboard04.jpg

Finalmente, añadimos una acción de tipo Response para completar la llamada.Aquí también utilizamos las dynamic properties para seleccionar Headers y Body. En el caso que querramos retornar un Body especial, podemos utilizar la dynamic properties para crear el mismo.

clipboard06

Cuando grabamos la definición de este Flow, el trigger Request, completará la url donde tendremos que realizar las llamadas. Este es el momento de copiar esta URL.

clipboard29

Finalmente para emular las llamadas utilizaremos una app clásica: Google, Postman Chrome App. Utilizando la URL y el schema JSON realizamos una petición y podemos ver el resultado de la misma.

clipboard32

Y, si vamos a OneDrive, podremos ver el archivo creado con el contenido que le hemos pasado en la petición.

clipboard34

La verdad es que es una forma muy simple de realizar pequeños flujos que luego podremos llamar de nuestras Apps.

Saludos @ Toronto

El Bruno

References