Consulta i connettori supportati per Application Integration.
Prova l'integrazione di esempio
Durante la configurazione di Application Integration nel progetto Google Cloud per la prima volta, Application Integration crea per impostazione predefinita un'integrazione di esempio non pubblicata denominata ExampleIntegration-EcomOrderProcessing.
Visualizza integrazione di esempio
Per visualizzare l'integrazione del campione:
- Nella console Google Cloud, vai alla pagina Application Integration.
- Nel menu di navigazione, fai clic su Integrations (Integrazioni). Viene visualizzata la pagina Elenco delle integrazioni.
- Fai clic sull'integrazione denominata ExampleIntegration-EcomOrderProcessing.
L'integrazione di esempio si apre nell'editor dell'integrazione, con un aspetto simile al seguente layout:
Esempio di integrazione di e-commerce
Puoi utilizzare questa integrazione di esempio per fare un'esperienza pratica dei vari attivatori, attività e concetti di Application Integration.
L'integrazione di esempio illustra uno scenario back-end di e-commerce di base che implementa la seguente operazione di elaborazione degli ordini:
- Ricevi il seguente payload di richiesta dell'ordine da un endpoint 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 } ] }
- Estrai il payload dell'ordine e calcola il valore totale dell'ordine.
- Verifica se il valore totale dell'ordine è maggiore o uguale a 100 $. In caso affermativo, richiedi un'ulteriore approvazione per continuare.
- Controlla se alcuni articoli dell'ordine hanno un fornitore esterno. In caso affermativo, invia i dettagli al fornitore utilizzando una chiamata API REST.
- Invia la risposta dell'ordine con il valore totale dell'ordine, gli articoli filtrati del fornitore esterno e il rispettivo stato della risposta HTTP.
La tabella seguente elenca tutti gli attivatori, le attività e le condizioni perimetrali utilizzati in ExampleIntegration-EcomOrderProcessing:
Componente | Configurazione | Descrizione | |
---|---|---|---|
Trigger API
(OrderProcessAPITrigger) |
ID attivatore: api_trigger/ecom-order-processing_API_1
|
Richiama l'integrazione per ogni richiesta di ordine. | |
Attività di mappatura dei dati
(Trova il prezzo totale dell'ordine) |
Input | Salvaguardie | Estrae la variabile di input JSON order_request ed esegue l'iterazione di tutti gli elementi dell'ordine utilizzando la funzione di mappatura FOR_EACH per calcolare il valore del prezzo totale dell'ordine.
Il valore del prezzo totale dell'ordine viene calcolato moltiplicando l'elemento
Il valore finale viene quindi convertito in un tipo di dati doppio e memorizzato nella variabile di output |
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
|
||
Condizione perimetrale
(Valore totale degli ordini al di sopra della soglia) |
Condizione: $total_order_value$ >= $threshold_order_value$ |
Verifica se il valore totale dell'ordine è maggiore o uguale a 100 $. In caso affermativo, il controllo viene passato a un'attività di approvazione. | |
Condizione perimetrale
(TotalOrderValue Sotto la soglia) |
Condizione: $total_order_value$ < $threshold_order_value$
|
Controlla se il valore totale dell'ordine è inferiore a 100 $. In caso affermativo, il controllo viene passato all'attività Filtra elementi esterni. | |
Attività di approvazione
(Approvazione) |
Destinatari: Enter the approver's email address Per testare questa integrazione di esempio, puoi utilizzare il tuo indirizzo email per confermare il completamento dell'integrazione. |
Invia un'email di richiesta di approvazione a uno o più utenti di integrazione. L'email include un link all'integrazione, che consente agli utenti di approvare o rifiutare manualmente la richiesta. | |
Attività di mappatura dei dati
(Filtra elementi esterni) |
Input | Salvaguardie | Estrae la variabile di input JSON order_request e filtra tutti gli elementi dell'ordine con fornitori esterni utilizzando la funzione di mappatura FILTRO.
I valori filtrati vengono quindi memorizzati nella variabile di output |
orders_request .GET_PROPERTY("line_items") .FILTER(~obj1->~obj1 .GET_PROPERTY("vendor") .TO_STRING() .EQUALS("External")) |
filtered_external_items
|
||
Per ogni attività Loop
(Per ogni loop) |
Elenco da ripetere: filtered_external_items
ID trigger API:
Nome integrazione: |
Esegui l'iterazione nella variabile filtered_external_items e richiama la sottointegrazione per ogni elemento dell'array. Inoltre, raggruppa la risposta a ogni esecuzione in rest_call_response_status , dove ogni elemento dell'array contiene la risposta di una determinata esecuzione.
|
|
Trigger API
(Segnala ordini esterni) |
ID attivatore: api_trigger/ecom-order-processing_API_2
|
Attiva la sottointegrazione per ogni elemento in filtrato_external_items. | |
Chiama l'attività endpoint REST
(Chiama endpoint REST) |
URL di base dell'endpoint: https://mocktarget.apigee.net/echo
Metodo HTTP:
Corpo della richiesta: |
Effettua una chiamata REST a https://mocktarget.apigee.net/echo. |
Pubblica e testa l'integrazione di esempio
Per pubblicare l'integrazione, fai clic su Pubblica nella barra degli strumenti dell'editor delle integrazioni.
Dopo aver pubblicato correttamente l'integrazione, puoi visualizzare e controllare i log di esecuzione dell'integrazione pubblicata. Per visualizzare i log, fai clic su Visualizza i log di esecuzione per questa integrazione. Viene visualizzata la pagina Log di esecuzione.
Test dall'editor di integrazione
Per testare l'integrazione di esempio:
- Fai clic su Test nella barra degli strumenti dell'editor di integrazione, quindi seleziona OrderProcessAPITrigger.
Viene visualizzato il riquadro Testa integrazione.
- Ti viene chiesto di modificare la variabile di input
orders_request
. Ai fini di questo test, puoi aggiornare il valorequantity
in240
. La variabile di inputorders_request
di aggiornamento dovrebbe essere simile alla seguente:{ "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 } ] }
- Fai clic su Testa integrazione.
Poiché la quantità aggiornata di orders_request
è superiore a 200, l'integrazione dell'esempio invia un'email di richiesta di approvazione all'indirizzo email specificato nel campo Destinatari dell'attività di approvazione. L'operazione dell'ordine di integrazione verrà completata una volta ricevuta l'approvazione.
Per saperne di più sui test, consulta Testare e pubblicare le integrazioni.
Per esaminare i log di esecuzione e visualizzare lo stato e il payload dell'integrazione, procedi nel seguente modo:
- Nell'editor dell'integrazione, fai clic su Visualizza i log di esecuzione per questa integrazione. Viene visualizzata la pagina Log di esecuzione.
- Nella pagina Log di esecuzione puoi visualizzare i dettagli di ogni tentativo di eseguire un'integrazione.
Ogni voce include i dettagli del tentativo di esecuzione, tra cui:
- Nome integrazione
- ID esecuzione
- Stato
- Ora di inizio
- Durata
- Versione integrazione
- ID attivatore
- Fai clic sulla freccia di espansione (>) accanto all'integrazione eseguita per visualizzare un elenco espanso di attività e variabili nell'integrazione, oltre allo stato dell'attività e ai payload variabili.
Esegui un test utilizzando una chiamata API REST
Scenario di test 1: invia una richiesta con input predefiniti
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)"
Scenario di test 2: invia una richiesta con input personalizzati
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)"
Sostituisci quanto segue:
- PROJECT_ID: l'ID del tuo progetto Google Cloud.
- LOCATION: la posizione dell'integrazione. Consulta le posizioni di Application Integration.
- INTEGRATION_NAME: nome dell'integrazione.
Testa l'output
L'API restituisce la risposta di esecuzione dell'integrazione contenente tutti i valori delle variabili di output dell'integrazione.