Consulta los conectores compatibles con Application Integration.
Prueba la integración de muestra
Cuando configuras Application Integration por primera vez en tu proyecto de Google Cloud, Application Integration crea de forma predeterminada una integración de ejemplo sin publicar llamada ExampleIntegration-EcomOrderProcessing.
Ver integración de ejemplo
Para ver la integración de ejemplo, siga estos pasos:
- En la consola de Google Cloud, ve a la página Application Integration (Integración de aplicaciones).
- En el menú de navegación de la izquierda, haga clic en Integraciones para abrir la página Integraciones.
- Haga clic en la integración llamada ExampleIntegration-EcomOrderProcessing.
La integración de ejemplo se abre en el editor de integración, con un diseño similar al siguiente:
Integración de ejemplo de comercio electrónico
Puedes usar esta integración de ejemplo para familiarizarte con los distintos activadores, tareas y conceptos de Application Integration.
La integración de ejemplo ilustra un escenario básico de backend de comercio electrónico que implementa la siguiente operación de procesamiento de pedidos:
- Recibe la siguiente carga útil de solicitud de pedido de un endpoint de API:
{ "order_no": "12345", "buyer_id": "raambo", "line_items": [ { "line": 1, "sku": "tr100", "vendor": "Internal", "quantity": 1, "price_per_unit": 10 }, { "line": 2, "sku": "tbz", "vendor": "External", "quantity": 24.0, "price_per_unit": 1 } ] }
- Extrae la carga útil del pedido y calcula el valor total del pedido.
- Comprueba si el valor total del pedido es igual o superior a 100 USD. Si es así, obtén una aprobación adicional para continuar.
- Comprueba si alguno de los artículos del pedido tiene un proveedor externo. Si es así, envíe los detalles al proveedor mediante una llamada a la API REST.
- Envía la respuesta del pedido con el valor total del pedido, los artículos de proveedores externos filtrados y sus respectivos estados de respuesta HTTP.
En la siguiente tabla se enumeran todos los activadores, las tareas y las condiciones extremas que se usan en ExampleIntegration-EcomOrderProcessing:
Componente | Configuración | Descripción | |
---|---|---|---|
Activador de API
(OrderProcessAPITrigger) |
ID de activador: api_trigger/ecom-order-processing_API_1
|
Invoca la integración para cada solicitud de pedido. | |
Tarea de asignación de datos
(Buscar el precio total del pedido) |
Entrada | Salida | Extrae la variable de entrada JSON order_request e itera por todos los elementos del pedido mediante la función de asignación FOR_EACH para calcular el valor del precio total del pedido.
El valor del precio total del pedido se calcula multiplicando el
El valor final se convierte en un tipo de datos doble y se almacena en la variable de salida |
orders_request.line_items .FOR_EACH(~obj1->~obj1 .GET_PROPERTY("quantity") .TO_DOUBLE() .MULTIPLY(~obj1 .GET_PROPERTY("price_per_unit") .TO_DOUBLE())) .TO_DOUBLE_ARRAY() .SUM() |
total_order_value
|
||
Condición de borde
(Valor total del pedido por encima del umbral) |
Estado: $total_order_value$ >= $threshold_order_value$ |
Comprueba si el valor total del pedido es igual o superior a 100 USD. Si es así, el control se transfiere a una tarea de aprobación. | |
Condición de borde
(TotalOrderValue Below Threshold) |
Estado: $total_order_value$ < $threshold_order_value$
|
Comprueba si el valor total del pedido es inferior a 100 USD. Si es así, el control se transfiere a la tarea Filtrar elementos externos. | |
Tarea de aprobación
(Aprobación) |
Destinatarios: Enter the approver's email address Para probar esta integración de ejemplo, puedes usar tu correo para confirmar que se ha completado correctamente. |
Envía un correo de solicitud de aprobación a uno o varios usuarios de la integración. El correo incluye un enlace a la integración donde los usuarios pueden aprobar o rechazar manualmente la solicitud. | |
Tarea de asignación de datos
(Filtrar elementos externos) |
Entrada | Salida | Extrae la variable de entrada JSON order_request y filtra todos los artículos del pedido con proveedores externos mediante la función de asignación FILTER.
Los valores filtrados se almacenan en la variable de salida |
orders_request .GET_PROPERTY("line_items") .FILTER(~obj1->~obj1 .GET_PROPERTY("vendor") .TO_STRING() .EQUALS("External")) |
filtered_external_items
|
||
Tarea de bucle For Each
(Bucle foreach) |
Lista que se va a iterar: filtered_external_items
ID de activador de API:
Nombre de la integración: |
Itera sobre la variable filtered_external_items y llama a la subintegración de cada elemento de la matriz. También recopila la respuesta de cada ejecución en rest_call_response_status , donde cada elemento de la matriz tiene la respuesta de una ejecución concreta.
|
|
Activador de API
(Report ExternalOrders) |
ID de activador: api_trigger/ecom-order-processing_API_2
|
Invoca la subintegración de cada elemento de filtered_external_items. | |
Tarea Llamar a un endpoint REST
Llamar a un punto final REST |
URL base del endpoint: https://mocktarget.apigee.net/echo
Método HTTP:
Cuerpo de la solicitud: |
Hace una llamada REST a https://mocktarget.apigee.net/echo. |
Publicar y probar la integración de muestra
Para publicar la integración, haga clic en Publicar en la barra de herramientas del editor de integraciones.
Una vez que hayas publicado tu integración correctamente, podrás ver e inspeccionar los registros de ejecución de la integración publicada. Para ver los registros, haz clic en Ver registros de ejecución de esta integración. Se abrirá la página Registros de ejecución.
Hacer pruebas desde el editor de integración
Para probar la integración de muestra, haz lo siguiente:
- En la barra de herramientas del editor de integración, haga clic en Probar y, a continuación, seleccione OrderProcessAPITrigger.
Aparecerá el panel Integración de prueba.
- Se te pedirá que edites la variable de entrada
orders_request
. Para esta prueba, puedes cambiar el valor dequantity
a240
. La variable de entradaorders_request
de la actualización debería ser similar a la siguiente:{ "order_no": "12345", "buyer_id": "raambo", "line_items": [ { "line": 1, "sku": "tr100", "vendor": "Internal", "quantity": 1, "price_per_unit": 10 }, { "line": 2, "sku": "tbz", "vendor": "External", "quantity": 240, "price_per_unit": 1 } ] }
- Haz clic en Test integration (Probar integración).
Como la cantidad actualizada de orders_request
es superior a 200, la integración de ejemplo envía un correo de solicitud de aprobación a la dirección de correo especificada en el campo Destinatarios de la tarea de aprobación. La operación de pedido de integración se completará correctamente una vez que se reciba la aprobación.
Para obtener más información sobre las pruebas, consulta Probar y publicar integraciones.
Para inspeccionar los registros de ejecución y ver el estado y la carga útil de la integración en cuestión, siga estos pasos:
- En el editor de integraciones, haz clic en
Ver registros de ejecución de esta integración. Se abrirá la página Registros de ejecución.
- En la página Registros de ejecución, puedes ver los detalles de cada intento de ejecutar una integración.
Cada entrada incluye detalles sobre el intento de ejecución, como los siguientes:
- Nombre de la integración
- ID de ejecución
- Estado
- Hora de inicio
- Duración
- Versión de integración
- ID de activador
- Haga clic en la flecha de expansión (>) situada junto a la integración ejecutada para ver una lista ampliada de tareas y variables de la integración, junto con el estado de las tareas y las cargas útiles de las variables.
Hacer pruebas con una llamada a la API REST
Caso de prueba 1: Enviar solicitud con entradas predeterminadas
curl -X POST -H "Content-Type: application/json" -d '{"trigger_id":"api_trigger/ecom-order-processing_API_1"}' 'https://integrations.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/integrations/INTEGRATION_NAME:execute' -H "Authorization: Bearer $(gcloud auth print-access-token)"
Caso de prueba 2: enviar una solicitud con entradas personalizadas
curl -X POST -H "Content-Type: application/json" -d '{ "triggerId": "api_trigger/ecom-order-processing_API_1", "inputParameters": { "orders_request": { "jsonValue": "{\n \"order_no\": \"12345\",\n \"buyer_id\": \"raambo\",\n \"line_items\": [{\n \"line\": 1.0,\n \"sku\": \"tr100\",\n \"vendor\": \"Internal\",\n \"quantity\": 1.0,\n \"price_per_unit\": 10.0\n }, {\n \"line\": 2.0,\n \"sku\": \"tbz\",\n \"vendor\": \"External\",\n \"quantity\": 24.0,\n \"price_per_unit\": 2.0\n }]\n}" } } }' 'https://integrations.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/integrations/INTEGRATION_NAME:execute' -H "Authorization: Bearer $(gcloud auth print-access-token)"
Haz los cambios siguientes:
- PROJECT_ID: el ID de tu proyecto de Google Cloud.
- LOCATION: la ubicación de la integración. Consulta Ubicaciones de integración de aplicaciones.
- INTEGRATION_NAME: nombre de la integración.
Salida de prueba
La API devuelve la respuesta de ejecución de la integración, que contiene todos los valores de las variables de salida de la integración.
Cuotas y límites
Para obtener información sobre las cuotas y los límites, consulta Cuotas y límites.