action.skip

Creación de una clave de API

Las llamadas a la API de Megaport requieren un token de acceso que puede generar tras crear una clave de API. Un token de acceso es necesario para autenticar a los usuarios de la API y permite acceso temporal únicamente a las partes de Megaport Portal que se requieren.

Recomendamos usar una cuenta dedicada de máquina a máquina (M2M) con rol de Company Admin para acceder a la API de Megaport y crear claves de API. En caso de que un usuario humano sea desactivado o pierda el acceso a su cuenta, las claves de API creadas por ese usuario también se suspenderán, lo que podría detener el funcionamiento de cualquier integración de API.

Las claves de API solo son válidas en el entorno en el que se generaron. Si necesita claves de API para acceder a un entorno diferente, inicie sesión en Megaport Portal en ese entorno y genere allí las claves de API.

Nota

Debe iniciar sesión en Megaport Portal como Company Admin para crear una clave de API. Para obtener más información, consulte Administrar roles de usuario.

Este tema describe las siguientes tareas:

  • Crear una clave de API en Megaport Portal
  • Generar un token de acceso en Postman

Crear una clave de API en Megaport Portal

  1. En el Megaport Portal, elija Tools > API Key Generator.
    La pantalla API Keys le permite crear claves de API y ver y Editar claves de API existentes.
    Pantalla API Keys
  2. Especifique los detalles para la clave de API.

    • Name (Nombre) – Introduzca un nombre para la clave de API.
      Debe ser un nombre descriptivo que identifique 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 guion y guion largo.

    • Role (Rol) – Seleccione el rol del usuario que utilizará la API.
      Están disponibles las siguientes opciones:

      • Company Admin
      • Read Only
    • Token Expiry (Minutes) (Caducidad del token (minutos)) – Introduzca la cantidad de tiempo (en minutos) tras la cual caducará el token generado a partir de esta clave. El mínimo es 5 minutos y el máximo es 24 horas (1440 minutos). Después de que el token caduque, deberá generar un nuevo token de acceso.

  3. Haga clic en Generate Key (Generar clave).
    Se crea la clave de API y aparece el mensaje Your API Key.
    Mensaje Your API Key

    Importante

    Copie su nueva API Key y API Key Secret, y guarde estas credenciales en un lugar seguro. Las necesitará para generar tokens de acceso. Asegúrese de copiar el API Key Secret porque no se volverá a mostrar después de Cerrar este mensaje.

  4. 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.

  5. Haga clic en Copy (Copiar) a la derecha del campo API Key Secret (Secreto de la clave de API) y pegue el secreto de cliente en un lugar seguro.

  6. Haga clic en Close (Cerrar).
    La clave de API se crea y se muestra en el área Active API Keys de la pantalla.
    En el área Active API Keys, puede Editar el nombre de la clave, Eliminar la clave y Ver el historial de cambios que se han producido para la clave.

Generación de un token de acceso

Después de crear la clave de API, que consta de un client ID y un client secret, puede generar un token de acceso para autenticar a los usuarios de la API. Estas instrucciones describen cómo hacerlo usando Postman y la colección de Megaport. Para detalles de configuración de Postman, consulte Megaport API.

La URL de solicitud que necesita usar depende del entorno en el que está generando un token de acceso. En cada entorno, deben usarse estas URL de solicitud:

  • Entorno de producción – https://auth-m2m.megaport.com/oauth2/token
  • Entorno de Staging (pruebas) – https://auth-m2m-staging.megaport.com/oauth2/token

Estas instrucciones describen cómo generar un token de acceso en el entorno de Producción. Para obtener más información, consulte Megaport API y Megaport Authentication - API Keys.

Nota

Los endpoints de API que puede llamar un token de acceso dependen del rol seleccionado para la clave de API cuando se creó. Por ejemplo, las claves de API de Read Only tendrán más restricciones sobre los datos a los que se puede acceder que las claves de API de Company Admin.

Generar un token de acceso en Postman

  1. En la colección importada de Megaport en Postman, haga clic en el icono de signo más para Añadir una nueva solicitud.
    Añadir una nueva solicitud
  2. En la lista desplegable a la izquierda del campo Request URL (URL de la solicitud), seleccione POST.
    Seleccionar el tipo de endpoint POST
  3. En el campo Request URL (URL de la solicitud), introduzca la siguiente URL de solicitud:
    https://auth-m2m.megaport.com/oauth2/token
    URL de la solicitud
  4. Seleccione la pestaña Authorization (Autorización) e introduzca los siguientes detalles de parámetros:
    • Username (Nombre de usuario) – El client ID que copió anteriormente al crear la clave de API.
    • Password (Contraseña) – El client secret que copió anteriormente al crear la clave de API.

    Nota

    Estos parámetros contienen datos sensibles. Si trabaja en un entorno colaborativo, quizá desee definir el client ID y el client secret como las variables {{apiKeyClientId}} y {{apiKeyClientSecret}}, respectivamente. Para obtener más información sobre variables, consulte la documentación de Postman.

    Parámetros de autorización del endpoint de token de acceso

  5. Seleccione la pestaña Body (Cuerpo) e introduzca una clave llamada grant_type configurada con el valor client_credentials.
    Parámetros del cuerpo del endpoint de token de acceso
  6. Haga clic en Save (Guardar).
    Aparece la pantalla Save Request.
    Pantalla Save Request
  7. En el campo Request name (Nombre de la solicitud), introduzca un nombre significativo para la nueva solicitud.
    Por ejemplo, Generar token de acceso.
  8. (Opcional) Introduzca una descripción de la solicitud.
  9. Seleccione dónde desea guardar la solicitud y luego haga clic en Save (Guardar).
    La nueva solicitud se crea y se Añade a la colección Documentación de la API de Megaport.
  10. Haga clic en Send (Enviar).
    Enviar solicitud de token de acceso
    Debería recibir una respuesta que incluya su token de acceso, similar al siguiente ejemplo. Una vez generado un token de acceso, puede usarse para autenticar a los usuarios de la API para varios endpoints en Megaport Portal.

     {
      "access_token":  
          "eyJraWQ......2cOQGA",
      "expires_in": 86400,
      "token_type": "Bearer"
     }
    
  11. Copie el token de acceso.

  12. En las variables de la colección (haga clic en los tres puntos junto a la colección importada de Megaport > Edit > Variables), Añada una entrada para access_token y pegue el token de acceso en el campo CURRENT VALUE (VALOR ACTUAL).
  13. Para cada llamada de API que necesite enviar, en la pestaña Authorization (Autorización), el Type debe establecerse en Bearer Token y el Token debe establecerse en la variable del token de acceso {{access_token}}.
    Configurar el token de acceso para una API
    La llamada de API ya está lista para usarse. Todas las llamadas de API se hacen sobre SSL/TLS, y cada llamada se valida contra el token de acceso para los permisos apropiados.

Nota

Los tokens de acceso caducan, por lo que debe generar nuevos tokens de forma periódica para sus llamadas de API. El período de caducidad está determinado por el valor que se ingresó en el campo Token Expiry (Minutes) cuando se creó la clave de API. El período de caducidad predeterminado es de 24 horas.

Las solicitudes de API incluyen dos parámetros de cabecera importantes: Authorization y Content-Type. El parámetro Authorization apunta a la pestaña Authorization donde se establece la variable del token.

Cabeceras requeridas

Generación de token con cURL

Otra forma de generar un token de acceso es usar cURL desde una consola de comandos en el siguiente formato:

 curl -X "POST" "https://auth-m2m.megaport.com/oauth2/token" \
        -H 'Content-Type: application/x-www-form-urlencoded' \
        -u '<api_key>:<api_key_secret>' \
        --data-urlencode "grant_type=client_credentials"

Consejo

El sitio dev.megaport.com le permite ver cada endpoint de API en múltiples lenguajes de programación.