Creación de una clave de API
Las llamadas a la API de Megaport requieren un token de acceso que se puede generar tras crear una clave de API. Un token de acceso es necesario para autenticar a los usuarios de la API, y permite el acceso temporal solo a las partes del Megaport Portal que se necesiten.
Se recomienda crear una cuenta de Company Admin de máquina a máquina (M2M) para acceder a la API de Megaport y crear claves de API. Si se desactiva o bloquea el acceso de un usuario humano a su cuenta, las claves de API creadas por ese usuario también se suspenderán, lo que puede impedir que funcione cualquier integración API.
Las claves de API solo son válidas en el entorno en el que se hayan generado. Si necesita claves de API para acceder a un entorno distinto, inicie sesión en el Megaport Portal de ese entorno y genere allí las claves de API.
Nota
-
Debe estar conectado al Megaport Portal como usuario con el rol de Company Admin (Administrador de la Empresa) para crear una clave de API. Para obtener más información, consulte Administración de roles de usuario.
-
Se puede crear un máximo de cinco claves de API por empresa.
Este tema describe las siguientes tareas:
- Para crear una clave de API en el Megaport Portal
- Para generar un token de acceso en Postman
Para crear una clave de API en el Megaport Portal
- En el Megaport Portal, seleccione Tools (Herramientas) > API Key Generator (Generador de clave de API).
La página de claves de API le permite crear claves de API, así como ver y editar claves de API existentes.
-
Especifique los detalles para la clave de API.
-
Name (Nombre) – Introduzca un nombre para la clave de API.
Este debe ser un nombre descriptivo para identificar el propósito de la clave.Nota
-
Se requiere un mínimo de tres caracteres para el nombre de la clave de API.
-
No se permiten caracteres especiales, excepto el guion corto y el guion largo.
-
-
Role (rol) – Seleccione el rol del usuario que utilizará la API.
Están disponibles las siguientes opciones:- Company Admin (administrador de la empresa)
- Read Only (solo lectura)
-
Caducidad del token (minutos) – Introduzca el tiempo (en minutos) tras el cual caducará el token generado a partir de esta clave. El mínimo es de 5 minutos y el máximo de 24 horas (1440 minutos). Cuando caduque el token, deberá generar un nuevo token de acceso.
-
-
Haga clic en Generate Key (generar clave).
Se crea la clave de API y aparece la petición de Your API Key (Su clave de API).
Importante
Copie su nueva clave de API y el secreto de la clave de API y guarde estas credenciales en algún lugar seguro. Las necesitará para generar tokens de acceso. Asegúrese de copiar el secreto de la clave de API porque no se volverá a mostrar después de cerrar este mensaje.
-
Haga clic en Copy (Copiar) a la derecha del campo API Key (Clave de API) y pegue la clave (ID de cliente) en un lugar seguro.
-
Haga clic en Copy (Copiar) a la derecha del campo API Key Secret (Secreto de la clave de API) y pegue el secreto del cliente en un lugar seguro.
-
Haga clic en Close (Cerrar).
La clave de API se crea y se muestra en el área Active API Keys (Claves de API activas) de la pantalla.
En el área Active API Keys (Claves de API activas), puede editar el nombre de la clave, eliminarla y ver el historial de cambios que se han producido en ella.
Generar un token de acceso
Una vez creada la clave de API, compuesta por un ID de cliente y un secreto de cliente, puede generar un token de acceso para autenticar a los usuarios de la API. En estas instrucciones se describe cómo hacerlo utilizando Postman y la colección de Megaport. Para más detalles sobre la configuración de Postman, consulte API de Megaport.
La URL de solicitud que debe utilizar depende del entorno en el que esté generando un token de acceso. En cada entorno deben utilizarse estas URL de solicitud:
- Entorno de producción: - https://auth-m2m.megaport.com/oauth2/token
- Entorno de pruebas: - https://oauth-m2m-staging.auth.ap-southeast-2.amazoncognito.com/oauth2/token
Estas instrucciones describen cómo generar un token de acceso en el entorno de producción. Para conocer más detalles, consulte API de Megaport.
Nota
A qué puntos de conexión de API puede llamar un token de acceso depende del rol seleccionado para la clave de API cuando se creó. Por ejemplo, las claves de API Read Only (solo lectura) tendrán más restricciones en lo relativo a los datos a los que se puede acceder que las claves de API Company Admin (administrador de la empresa).
Para generar un token de acceso en Postman
- En la colección de Megaport importada en Postman, haga clic en el símbolo de Más para añadir una nueva solicitud.
- En la lista desplegable situada a la izquierda del campo Request URL (URL de solicitud), seleccione POST.
- En el campo Request URL (URL de solicitud), introduzca la siguiente URL de solicitud:
https://auth-m2m.megaport.com/oauth2/token
- Seleccione la pestaña de autorización e introduzca los siguientes detalles de los parámetros:
- Nombre de usuario – El ID de cliente que copió antes al crear la clave de API.
- Contraseña – El secreto de cliente que copió antes al crear la clave de API.
Nota
Estos parámetros contienen datos sensibles. Si trabaja en un entorno colaborativo, puede que quiera configurar el ID de cliente y el secreto de cliente como las variables {{apiKeyClientId}} y {{apiKeyClientSecret}} respectivamente. Para obtener más información sobre las variables, consulte la documentación de Postman.
- Haga clic en la pestaña Body (cuerpo) e introduzca una clave llamada grant_type (tipo de concesión), que está configurada en un valor de client_credentials (credenciales de cliente).
- Haga clic en Save (Guardar).
Aparece la pantalla Save Request (Guardar solicitud).
- En el campo de nombre de solicitud, introduzca un nombre significativo para la nueva solicitud.
Por ejemplo, Generar Token de Acceso. - (Opcional) Introduzca una descripción.
- Seleccione si quiere guardar la solicitud y, a continuación, haga clic en Save (Guardar).
La nueva solicitud se crea y se añade a la colección de la documentación de la API de Megaport. -
Haga clic en Send (Enviar).
Debería recibir una respuesta donde se incluye su token de acceso, similar al siguiente ejemplo. Una vez generado un token de acceso, se puede usar para autenticar a los usuarios de la API para varios puntos de conexión en el Megaport Portal. -
Copie el token de acceso.
- En las variables de la colección (haga clic en los tres puntos detrás de la colección de Megaport importada > Edit (Editar) > Variables), añada una entrada para access_token (token de acceso) y pegue el token de acceso en el campo CURRENT VALUE (valor actual).
- Para cada llamada a la API que necesite enviar, en la pestaña Authorization (Autorización), el Type (Tipo) debe estar configurado en Bearer Token (token de portador) y el Token debe estar configurado en la variable de token de acceso {{access_token}}.
Ahora, la llamada a la API está lista para ser utilizada. Todas las llamadas a la API se realizan a través de SSL/TLS, y cada llamada se valida con el token de acceso para obtener los permisos adecuados.
Nota
Los tokens de acceso expirarán, así que necesita generar periódicamente nuevos tokens para sus llamadas a la API. El período de validez está determinado por el valor que se introdujo para el campo Token Expiry (Minutes) (Caducidad del token (minutos)) cuando se creó la clave de API. El período de validez predeterminado es de 24 horas.
Las solicitudes de API incluyen dos parámetros de encabezado importantes: Authorization (autorización) y Content-Type (tipo de contenido). El parámetro Authorization (autorización) apunta a la pestaña Authorization (autorización) donde está configurada la variable del token.
Generación de token de cURL
Otra forma de generar un token de acceso es utilizando cURL desde una consola de comandos con el siguiente formato:
curl -X "POST" "https://auth-m2m.megaport.com/oauth2/token" \
-H 'Content-Type: application/x-www-form-urlencoded' \
-u 'value_of_base64(clientId:clientSecret)_here' \
--data-urlencode "grant_type=client_credentials"
Consejo
El sitio dev.megaport.com le permite ver cada punto de conexión de la API en varios lenguajes de programación.