Saltar al contenido principal

Configurar para usar IBM Quantum Platform con la API REST

Puedes acceder a procesadores cuánticos usando APIs REST, lo que te permite trabajar con las QPUs utilizando cualquier lenguaje de programación o framework.

1. Obtener acceso

  1. Si aún no tienes una cuenta de usuario, obtén una en la página de inicio de sesión de IBM Quantum.
  2. Crea una clave API (también llamada token) en el panel principal. Ten en cuenta que la misma clave API se puede usar para ambas regiones.
  3. Genera un token al portador (bearer token) de IBM Cloud Identity and Access Management (IAM). Este es un token de corta duración que se utiliza para autenticar solicitudes a la API REST. Para generar uno, llama a la API de Servicios de Identidad de IAM como se muestra en la siguiente solicitud de ejemplo:
curl -X POST 'https://iam.cloud.ibm.com/identity/token' \
-H 'Content-Type: application/x-www-form-urlencoded' \
-d 'grant_type=urn:ibm:params:oauth:grant-type:apikey&apikey=MY_APIKEY'

Respuesta Esperada

{
"access_token": "eyJhbGciOiJIUz......sgrKIi8hdFs",
"refresh_token": "SPrXw5tBE3......KBQ+luWQVY=",
"token_type": "Bearer",
"expires_in": 3600,
"expiration": 1473188353
}

2. Elige un método de autenticación

Elige el método de autenticación apropiado, dependiendo de tu entorno de trabajo:

Crear una variable de entorno (entorno de confianza)

  1. Para configurar la variable de entorno IQP_API_TOKEN en tu sistema, puedes agregar la siguiente línea a tu perfil de shell (por ejemplo, .bashrc o .zshrc) o estableciéndola directamente en tu terminal:

    export IQP_API_TOKEN=<your-API_KEY> # Use the 44-character API_KEY you created and saved from the IBM Quantum Platform Home dashboard

    Cuando invoques la variable de entorno en tu código, incluye import os, como en este ejemplo:

    import os
    api_token = os.environ['IQP_API_TOKEN']

    Ten en cuenta que al crear una variable de entorno, tu clave API aún se almacena localmente en texto sin formato (plain text), y debe ser salvaguardada.

  2. Autentica las solicitudes a la API REST de Qiskit Runtime al incluir el CRN y el token al portador (bearer token) en los encabezados (headers) de la solicitud.

curl -X 'GET' \
'https://quantum.cloud.ibm.com/api/v1/usage' \
'-H accept: application/json' \
'-H authorization: Bearer <BEARER_TOKEN>' \
'-H Service-CRN: <INSTANCE_CRN>'

3. Opcional: Configura tu firewall

Si es necesario, usa esta información para permitir el acceso a los puntos de enlace (endpoints) de la API de IBM Quantum.

Siguientes pasos

Recomendaciones