Megaport’s API Series – Parte 2

Megaport’s API Series – Parte 2

En la Parte 2 de nuestra serie API, descubra cómo se organiza la API de Megaport y comience a interactuar con ella utilizando la conocida herramienta Postman.

En el articulo anterior dimos un repaso de que son las APIs y la importancia que tienen en los sistemas modernos, como desde Megaport hacemos uso de ellas para poder proporcionar soluciones de NaaS a nivel empresarial. En esta segunda parte quiero abordar como comenzar a interactuar con la API utilizando la conocida herramienta Postman y como está organizada la API para que sepamos donde buscar para obtener lo que queremos.

La API de Megaport en Postman

Cuando importamos la colección de llamadas a APIs de Megaport en Postman se crearán una serie de carpetas dentro de nuestra “Collections”.

API diagram 1
API diagram 1

Dentro de dichas carpetas se organizan las diferentes llamadas a la API, el propio nombre de las carpetas nos indica que servicios o datos podemos ordenar u obtener utilizando las llamadas que contienen. También disponemos de ejemplos de respuestas para que podamos ver con antelación como serán los mensajes en formato JSON que nos va a devolver la llamada.

Primeros pasos

Lo primero que haremos será generar el conjunto de “API Key” y “API Key Secret” desde el portal de Megaport para que podamos autenticarnos y que la API autorice (o no) a realizar la llamadas pertinentes. Luego los datos generados los guardaremos en variables de entorno dentro de Postman para que se queden seguras y no tengamos que estar copiando y pegando datos de manera manual.

Portal de Megaport

Todo comienza con la autenticación y autorización de nuestra persona ante la API para que esta sepa quienes somos y que podemos hacer. Esto se logra mediante una combinación similar a un usuario y una contraseña, en el mundo de las APIs se les denomina “API Key” y “API Key Secret” respectivamente.

API diagram 2
API diagram 2

Para generar una API Key válida para poder consumir la API de Megaport es necesario iniciar sesión en el portal de Megaport con nuestras credenciales con derechos de “Company Admin”, luego iremos al menú “Tools” y seleccionaremos “API Key Generator”.

API diagram 3
API diagram 3

En este apartado pondremos nuestro nombre en el campo “Name” luego seleccionaremos nuestro rol del drop down menu “Role” y presionaremos el botón “Generate Key” para que el portal nos devuelva nuestra API Key.

API diagram 4
API diagram 4

Estos datos os recomiendo guardarlos en vuestro gestor de contraseñas, sobre todo el “API Key Secret” que se mostrará en esta ventana modal y no se podrá volver a ver o recuperar. En el caso que no la hayamos copiado tocará eliminar la API Key y generar una nueva.

Variables de Entorno en Postman

El manejo de variables de entorno es Postman es sumamente comodo para poder ir almacenando información util y que necesitemos utilizar en diferentes fases de nuestro uso de la API. Un ejemplo claro es justamente la información para autenticarnos frente a la API, tanto la “API Key” como la “API Key Secret” pueden ser almacenadas como variables de Entorno dentro de Postman. Yo recomiendo el crear al menos dos “Environments”, uno para el “Staging” y otro para “Production”.

API diagram 5
API diagram 5

Dentro de los Environment se utilizará la variable “apiKeyClientId” para almacenar la “API Key” y la variable “apiKeyClientSecret” para la “API Key Secret”. Esto nos permitirá utilizar variables en vez de valores dentro de nuestras llamada a API en Postman.

API diagram 6
API diagram 6

En esta captura se puede ver como tengo dos Environments creados, una para producción (Production) y otro para desarrollo (Staging) y como dentro de el de producción tengo mis variables declaradas.

Como se puede apreciar pongo los valores dentro del campo “Initial value” para que se comporten como variables inicializadas las cuales tomarán sus valores correspondientes cuando se inicie Postman.

Primera llamada

Ya tenemos listo para realizar nuestra primera llamada a la API de Megaport y esta sera precisamente la que nos permitirá autenticarnos y que recibamos la autorización para poder operar con la API, es decir poder realizar llamadas a métodos que crear, editan, listan o eliminan recursos.

API diagram 7
API diagram 7

La llamada para autenticarnos en producción que utilizaremos está contenida dentro de la carpeta “Megaport Authentication - API Keys”. Para proceder con la autenticación haremos click en el botón “Send”.

Nota: Aseguraos que no existen espacios o símbolos luego de las variables “{{apiKeyClientId}}” y “{{apiKeyClientSecret}}” ya que estos se concatenarán con el valor de la variable y os dará error de autenticación.

API diagram 8
API diagram 8

La API procederá a autenticarnos y nos devolverá una respuesta en formato JSON la cual contendrá una key llamada “access_token” la cual contendrá el token de autorización que utilizaremos en las próximas llamadas.

API diagram 9
API diagram 9

El parámetro JSON “access_token” devuelto dentro del BODY de la respuesta es una cadena de texto la cual yo recomiendo almacenarla en una variable dentro de nuestro Environment para poder utilizarla luego dentro de cada nueva llamada de API.

En Postman esto es muy fácil, basta con poner solo dos lineas de código JScript dentro del apartado “Scripts” y que se ejecute “Post-Response”.

API diagram 10
API diagram 10

Este código JScript crea una variable llamada JSONData que contendrá todo el mensaje JSON obtenido del BODY de la respuesta a nuestra llamada a la API de autorización en la segunda linea indicamos que queremos asignar un valor a la variable “accessToken” dentro de nuestro Environment activo y queremos que el valor sea el valor (value) que tiene el parámetro (key) “access_token” del JSON almacenado en la variante JSONData que acabamos de crear.

API diagram 11
API diagram 11

Como podemos observar dentro de nuestras variables declaradas en el Environment de producción ahora la variable “accessToken” tiene un valor asignado con el Token de acceso el cual utilizaremos a partir de ahora en cada una de las llamadas subsecuentes que haremos a la API.

Nota: Os acordáis cuando generamos nuestra API Key en el portal que había un campo “Token Expiry (Minutes)” pues ese valor indica el tiempo que este access token será valido y no tendremos que volver a generar uno.

Conclusión

Poder autenticarnos frente a la API de Megaport para poder trabajar con ella es realmente fácil, el procedimiento es muy simple, basta con crear la API Key, configurar nuestro Postman y ya estamos listos para ponernos manos a la obra con nuestro proyecto de automatización, integración o monitorización. En el proximo articulo voy a cubrir como crear un puerto, y un VXC a uno de los principales hiperescalares.

Hasta la próxima!!!

Etiquetas:

Publicaciones relacionadas

Megaport Cloud Router - Parte 1

Megaport Cloud Router - Parte 1

¿Cómo comenzar con una serie de artículos que describen cómo simplificamos desde Megaport enormemente las redes en entornos Híbridos y MultiCloud? Tal vez definiendo primero los términos de entornos Híbridos y MultiCloud. Creo que sí … vamos a ello.

Más información
AWS PrivateLink explicado

AWS PrivateLink explicado

A los clientes que implementan la conectividad AWS se les presenta una serie de opciones, entre ellas PrivateLink. Entonces, ¿cuándo es PrivateLink más adecuado? Describimos los usos y las ventajas de este método de conectividad privada.

Más información
Megaport Cloud Router - Parte 4

Megaport Cloud Router - Parte 4

El Cloud Router de Megaport En los artículos anteriores hemos dado un buen repaso para poder llegar a este punto con todo el conocimiento fresco y bien ubicado en nuestras cabecitas :P.

Ha llegado el momento de ponernos manos a la obra y que este y los próximos artículos vayan tomando un tinte un tanto más técnico y práctico, así que vamos a ello.

Más información