martes, 18 de agosto de 2015

Acceder el API REST de Visual Studio Online con Power Shell–Parte 1

Visual Studio Online tiene un API REST que se puede acceder desde múltiples fuentes tales como código .NET, o herramientas de pruebas de APIs tales como postman. Sin embargo, los servicios REST también pueden ser invocados desde PowerShell. En este post vamos a iniciar con una serie de artículos respecto a como consumir el API de Visual Studio Online desde PowerShell.

Invoke-RestMethod

En PowerShell tenemos la posibilidad de invocar servicios REST utilizando el método Invoke-RestMethod. Este método recibe como parámetros el url del recurso que queremos acceder, el verbo que vamos a ejecutar, y el encabezado de la invocación del recurso el cual en nuestro caso son los servicios REST disponibles en Visual Studio Online. En este caso vamos a listar todos los proyectos disponibles en una cuenta.

Autenticación en Visual Studio Online y PowerShell

Para autenticarse en Visual Studio Online tenemos que crear una autenticación alterna, la cual nos permite asociar un usuario a nuestra cuenta sin necesidad de utilizar el caracter “@”. Esto se logra a través del perfil del usuario seleccionando la opción “Alternate authentication credentials” tal y como se ve en la siguiente figura.

image

Una vez configurado el usuario, procedemos a crear las variables que almacenan el usuario y el password – en nuestro caso $username y $password. Seguidamente procedemos a formatear el texto a un string base 64. Por último creamos la variable del encabezado de la solicitud y le agregamos las credenciales.

Lo que procede es invocar el servicio enviándole los parámetros recién configurados al método tal y como se ve en la siguiente figura.

image

El resultado al ejecutar el script anterior se puede ver en la siguiente figura, en donde se puede apreciar toda la información de los proyectos que están creados bajo la cuenta de arc1lab.visualstudio.com.

image

Etiquetas de Technorati: ,,