Introducción a la API REST Code Engine
Puede utilizar la API de IBM Cloud® Code Engine para crear y gestionar las entidades de Code Engine.
Configuración del entorno de API
Para trabajar con la API para crear y gestionar entidades Code Engine, configure el entorno de la API.
Antes de empezar, descargue e instale la herramienta jq
, que es un procesador JSON de línea de mandatos ligero y flexible. Esta herramienta facilita el trabajo con
respuestas JSON que recibe de la API Code Engine.
-
Establezca valores para
region
,api_key
yproject_name
antes de ejecutar los mandatos Curl de ejemplo en la API. Por ejemplo:region=us-south api_key=YOUR_IBM_CLOUD_API_KEY project_name=MY_PROJECT_NAME
- Para descubrir la región IBM Cloud en la que ha iniciado sesión, ejecute el mandato
ibmcloud region
. - Para obtener más información sobre las claves API de IBM Cloud, consulte Gestión de claves API de usuario.
- Para obtener más información sobre los proyectos Code Engine, consulte Gestión de proyectos.
- Para descubrir la región IBM Cloud en la que ha iniciado sesión, ejecute el mandato
-
Compruebe que tiene una señal de acceso IBM Cloud® Identity and Access Management (IAM) válida. Para obtener más información sobre la API de IAM, consulte Creación de un token de acceso de IAM para un ID de usuario o servicio mediante una clave de API.
token=`curl -X POST "https://iam.cloud.ibm.com/identity/token" \ -H "Content-Type: application/x-www-form-urlencoded" \ -H "Accept: application/json" \ -d "grant_type=urn:ibm:params:oauth:grant-type:apikey" \ -d "apikey=${api_key}" \ | jq .access_token -r`
-
Utilice la señal de autenticación y las variables que ha definido en el paso 1 para recuperar el ID de proyecto del proyecto. En el ejemplo siguiente, utilice
curl
conjq
para analizar la respuesta de la API Code Engine y guardar el ID de proyecto en una variable. Por ejemplo:project_id=`curl -X GET "https://api.${region}.codeengine.cloud.ibm.com/v2/projects" \ -H "Authorization: ${token}" \ | jq --arg project_name ${project_name} '.projects[] | select(.name == $project_name) | .id' -r`
Trabajar con una aplicación Code Engine en la API
Ahora que el entorno de API de Code Engine está configurado, está preparado para trabajar con entidades de Code Engine, como aplicaciones o trabajos. En el escenario siguiente, vamos a crear una aplicación, acceder a ella y, a continuación, suprimir la aplicación.
-
Cree una app. Utilice las variables establecidas anteriormente y el ID de proyecto para construir un URL y enviar una solicitud para crear la aplicación
my-app
. Por ejemplo:curl -X POST "https://api.${region}.codeengine.cloud.ibm.com/v2/projects/${project_id}/apps" \ -H "Authorization: ${token}" \ -H "Content-Type: application/json" \ -d '{ \ "name": "my-app", \ "image_reference": "icr.io/codeengine/helloworld" \ }'
-
Para visualizar detalles sobre la aplicación
my-app
, envíe una solicitudGET
. Asegúrese de hacer referencia al nombre de la app. Tenga en cuenta que la última línea dejq
es opcional, aunque hace que la salida sea más legible.curl -X GET "https://api.${region}.codeengine.cloud.ibm.com/v2/projects/${project_id}/apps/my-app" \ -H "Authorization: ${token}" \ -H "Content-Type: application/json" \ | jq .
-
Para suprimir la aplicación, envíe la solicitud de nuevo, pero esta vez, utilice el método
DELETE
en lugar del métodoGET
.curl -X DELETE "https://api.${region}.codeengine.cloud.ibm.com/v2/projects/${project_id}/apps/my-app" \ -H "Authorization: ${token}" \ -H "Content-Type: application/json"
-
(Opcional) Si envía otra solicitud
GET
para recuperar información sobremy-app
, recibirá un404 error
porque el recurso ya no existe.
Salida de ejemplo
{
"errors": [
{
"code": "resource_not_found",
"message": "Resource not found."
}
],
"trace": "codeengine-api-34dc0040429941de8c9e02f0f1200af1",
"status_code": 404
}
Próximos pasos
Ahora que ha configurado el entorno y ha realizado los primeros pasos con una aplicación Code Engine con la API, ¿está preparado para seguir explorando la API Code Engine ?
Para obtener más información y ejemplos para los SDK de Code Engine en varios idiomas, consulte la documentación de la API deCode Engine.
Para empezar a trabajar con componentes de Code Engine con la API, consulte
IBM Cloud® Code Engine está diseñado para que no necesite interactuar con la tecnología subyacente en la que se basa. Sin embargo, si dispone de herramientas basadas en Kubernetes o Knative, puede seguir utilizándolas con Code Engine. Code Engine es compatible con las API de Knative y Kubernetes y sus comandos CLI. Para obtener más información, consulte Utilización de Kubernetes con Code Engine y Utilización de Knative con Code Engine.