Schemareferentiegids voor trigger- en actietypen in Azure Logic Apps

In deze verwijzing worden de algemene typen beschreven die worden gebruikt voor het identificeren van triggers en acties in de onderliggende werkstroomdefinitie van uw logische app, die wordt beschreven en gevalideerd door de taal van de werkstroomdefinitie. Zie de lijst onder het overzicht van Verbinding maken ors voor specifieke connectortriggers en acties die u in uw logische apps kunt gebruiken.

Overzicht van triggers

Elke werkstroom bevat een trigger, waarmee de aanroepen worden gedefinieerd die de werkstroom instantiëren en starten. Dit zijn de algemene triggercategorieën:

  • Een poll-trigger , waarmee het eindpunt van een service regelmatig wordt gecontroleerd

  • Een push-trigger , die een abonnement op een eindpunt maakt en een callback-URL biedt, zodat het eindpunt de trigger kan waarschuwen wanneer de opgegeven gebeurtenis plaatsvindt of gegevens beschikbaar zijn. De trigger wacht vervolgens op het antwoord van het eindpunt voordat deze wordt geactiveerd.

Triggers hebben deze elementen op het hoogste niveau, hoewel sommige optioneel zijn:

"<trigger-name>": {
   "type": "<trigger-type>",
   "inputs": { "<trigger-inputs>" },
   "recurrence": { 
      "frequency": "<time-unit>",
      "interval": <number-of-time-units>
   },
   "conditions": [ "<array-with-conditions>" ],
   "runtimeConfiguration": { "<runtime-config-options>" },
   "splitOn": "<splitOn-expression>",
   "operationOptions": "<operation-option>"
},

Vereist

Weergegeven als Type Description
<trigger-name> String De naam voor de trigger
<triggertype> String Het triggertype, zoals Http of Api Verbinding maken ion
<trigger-invoer> JSON-object De invoer die het gedrag van de trigger definieert
<tijd-eenheid> String De tijdseenheid waarin wordt beschreven hoe vaak de trigger wordt geactiveerd: 'Seconde', 'Minuut', 'Uur', 'Dag', 'Week', 'Maand'
<aantal tijdeenheden> Geheel getal Een waarde die aangeeft hoe vaak de trigger wordt geactiveerd op basis van de frequentie. Dit is het aantal tijdseenheden dat moet worden gewacht totdat de trigger opnieuw wordt geactiveerd

Dit zijn de minimum- en maximumintervallen:

- Maand: 1-16 maanden
- Dag: 1-500 dagen
- Uur: 1-12.000 uur
- Minuut: 1-72.000 minuten
- Seconde: 1-999,999 seconden

Als het interval bijvoorbeeld 6 is en de frequentie 'Maand' is, is het terugkeerpatroon om de 6 maanden.

Optioneel

Weergegeven als Type Description
<matrix-met-voorwaarden> Matrix Een matrix die een of meer voorwaarden bevat die bepalen of de werkstroom moet worden uitgevoerd. Alleen beschikbaar voor triggers.
<runtime-config-options> JSON-object U kunt het gedrag van de triggerruntime wijzigen door eigenschappen in te stellen runtimeConfiguration . Zie Runtime-configuratie-instellingen voor meer informatie.
<splitOn-expression> String Voor triggers die een matrix retourneren, kunt u een expressie opgeven waarmee matrixitems worden gesplitst of gedebatteerd in meerdere werkstroomexemplaren voor verwerking.
<operation-option> String U kunt het standaardgedrag wijzigen door de operationOptions eigenschap in te stellen. Zie Bewerkingsopties voor meer informatie.

Lijst met triggertypen

Elk triggertype heeft een andere interface en invoer die het gedrag van de trigger definieert.

Ingebouwde triggers

Triggertype Beschrijving
HTTP Controleert of peilt een eindpunt. Dit eindpunt moet voldoen aan een specifiek triggercontract met behulp van een asynchroon 202 patroon of door een matrix te retourneren.
HTTPWebhook Hiermee maakt u een aanroepbaar eindpunt voor uw logische app, maar wordt de opgegeven URL aangeroepen om de registratie of registratie ongedaan te maken.
Terugkeerpatroon Wordt geactiveerd op basis van een gedefinieerd schema. U kunt een toekomstige datum en tijd instellen voor het activeren van deze trigger. Op basis van de frequentie kunt u ook tijden en dagen opgeven voor het uitvoeren van uw werkstroom.
Aanvragen Hiermee maakt u een aanroepbaar eindpunt voor uw logische app en wordt dit ook wel een 'handmatige' trigger genoemd. Zie bijvoorbeeld Oproep-, trigger- of nestwerkstromen met HTTP-eindpunten.

Beheerde API-triggers

Triggertype Beschrijving
ApiConnection Controleert of peilt een eindpunt met behulp van door Microsoft beheerde API's of 'connectors'.
Api Verbinding maken ionWebhook Hiermee maakt u een aanroepbaar eindpunt voor uw werkstroom voor logische apps door door Microsoft beheerde API's of connectors aan te roepen om u te abonneren en af te melden.

Triggers - gedetailleerde naslaginformatie

API Verbinding maken iontrigger

Deze trigger controleert of peilt een eindpunt met behulp van door Microsoft beheerde API's of connectors , zodat de parameters voor deze trigger kunnen verschillen op basis van het eindpunt. Veel secties in deze triggerdefinitie zijn optioneel. Het gedrag van de trigger is afhankelijk van of secties wel of niet zijn opgenomen.

"<APIConnection_trigger_name>": {
   "type": "ApiConnection",
   "inputs": {
      "host": {
         "connection": {
            "name": "@parameters('$connections')['<connection-name>']['connectionId']"
         }
      },
      "method": "<method-type>",
      "path": "/<api-operation>",
      "retryPolicy": { "<retry-behavior>" },
      "queries": { "<query-parameters>" }
   },
   "recurrence": { 
      "frequency": "<time-unit>",
      "interval": <number-of-time-units>
   },
   "runtimeConfiguration": {
      "concurrency": {
         "runs": <max-runs>,
         "maximumWaitingRuns": <max-runs-queue>
      }
   },
   "splitOn": "<splitOn-expression>",
   "operationOptions": "<operation-option>"
}

Vereist

Weergegeven als Type Description
<API Verbinding makenion_trigger_name> String De naam voor de trigger
<verbindingsnaam> String De naam voor de verbinding met de beheerde API die door de werkstroom wordt gebruikt
<methodetype> String De HTTP-methode voor communicatie met de beheerde API: 'GET', 'PUT', 'POST', 'PATCH', 'DELETE'
<api-operation> String De API-bewerking die moet worden aangeroepen
<tijd-eenheid> String De tijdseenheid waarin wordt beschreven hoe vaak de trigger wordt geactiveerd: 'Seconde', 'Minuut', 'Uur', 'Dag', 'Week', 'Maand'
<aantal tijdeenheden> Geheel getal Een waarde die aangeeft hoe vaak de trigger wordt geactiveerd op basis van de frequentie. Dit is het aantal tijdseenheden dat moet worden gewacht totdat de trigger opnieuw wordt geactiveerd

Dit zijn de minimum- en maximumintervallen:

- Maand: 1-16 maanden
- Dag: 1-500 dagen
- Uur: 1-12.000 uur
- Minuut: 1-72.000 minuten
- Seconde: 1-999,999 seconden

Als het interval bijvoorbeeld 6 is en de frequentie 'Maand' is, is het terugkeerpatroon om de 6 maanden.

Optioneel

Weergegeven als Type Description
<gedrag voor opnieuw proberen> JSON-object Hiermee past u het gedrag voor opnieuw proberen aan voor onregelmatige fouten, met de statuscode 408, 429 en 5XX, en eventuele connectiviteitsuitzonderingen. Zie Beleid voor opnieuw proberen voor meer informatie.
<queryparameters> JSON-object Queryparameters die moeten worden opgenomen met de API-aanroep. Het object wordt bijvoorbeeld "queries": { "api-version": "2018-01-01" } toegevoegd ?api-version=2018-01-01 aan de aanroep.
<max-runs> Geheel getal Werkstroomexemplaren worden standaard tegelijkertijd (gelijktijdig of parallel) uitgevoerd tot de standaardlimiet. Zie Gelijktijdigheid van triggers wijzigen als u deze limiet wilt wijzigen door een nieuwe <tellingswaarde> in te stellen.
<max-runs-queue> Geheel getal Wanneer uw werkstroom al het maximum aantal exemplaren uitvoert, dat u kunt wijzigen op basis van de runtimeConfiguration.concurrency.runs eigenschap, worden nieuwe uitvoeringen in deze wachtrij geplaatst tot de standaardlimiet. Zie Wachtuitvoeringslimiet wijzigen als u de standaardlimiet wilt wijzigen.
<splitOn-expression> String Voor triggers die matrices retourneren, verwijst deze expressie naar de matrix die moet worden gebruikt, zodat u een werkstroomexemplaren voor elk matrixitem kunt maken en uitvoeren in plaats van een lus 'voor elke' te gebruiken.

Deze expressie vertegenwoordigt bijvoorbeeld een item in de matrix die wordt geretourneerd binnen de hoofdtekstinhoud van de trigger: @triggerbody()?['value']

<operation-option> String U kunt het standaardgedrag wijzigen door de operationOptions eigenschap in te stellen. Zie Bewerkingsopties voor meer informatie.

Uitvoer

Element Type Description
headers JSON-object De headers uit het antwoord
hoofdtekst JSON-object De hoofdtekst van het antwoord
statuscode Geheel getal De statuscode van het antwoord

Voorbeeld

Met deze triggerdefinitie wordt elke dag gecontroleerd op e-mail in het Postvak IN voor een werk- of schoolaccount:

"When_a_new_email_arrives": {
   "type": "ApiConnection",
   "inputs": {
      "host": {
         "connection": {
            "name": "@parameters('$connections')['office365']['connectionId']"
         }
      },
      "method": "get",
      "path": "/Mail/OnNewEmail",
      "queries": {
          "fetchOnlyWithAttachment": false,
          "folderPath": "Inbox",
          "importance": "Any",
          "includeAttachments": false
      }
   },
   "recurrence": {
      "frequency": "Day",
      "interval": 1
   }
}

Api Verbinding maken ionWebhook-trigger

Deze trigger verzendt een abonnementsaanvraag naar een eindpunt met behulp van een door Microsoft beheerde API, biedt een callback-URL naar de locatie waar het eindpunt een antwoord kan verzenden en wacht tot het eindpunt reageert. Zie Eindpuntabonnementen voor meer informatie.

"<ApiConnectionWebhook_trigger_name>": {
   "type": "ApiConnectionWebhook",
   "inputs": {
      "body": {
          "NotificationUrl": "@{listCallbackUrl()}"
      },
      "host": {
         "connection": {
            "name": "@parameters('$connections')['<connection-name>']['connectionId']"
         }
      },
      "retryPolicy": { "<retry-behavior>" },
      "queries": "<query-parameters>"
   },
   "runTimeConfiguration": {
      "concurrency": {
         "runs": <max-runs>,
         "maximumWaitingRuns": <max-run-queue>
      }
   },
   "splitOn": "<splitOn-expression>",
   "operationOptions": "<operation-option>"
}

Vereist

Weergegeven als Type Description
<verbindingsnaam> String De naam voor de verbinding met de beheerde API die door de werkstroom wordt gebruikt
<hoofdtekstinhoud> JSON-object Berichtinhoud die moet worden verzonden als nettolading naar de beheerde API

Optioneel

Weergegeven als Type Description
<gedrag voor opnieuw proberen> JSON-object Hiermee past u het gedrag voor opnieuw proberen aan voor onregelmatige fouten, met de statuscode 408, 429 en 5XX, en eventuele connectiviteitsuitzonderingen. Zie Beleid voor opnieuw proberen voor meer informatie.
<queryparameters> JSON-object Queryparameters die moeten worden opgenomen met de API-aanroep

Het object wordt bijvoorbeeld "queries": { "api-version": "2018-01-01" } toegevoegd ?api-version=2018-01-01 aan de aanroep.

<max-runs> Geheel getal Werkstroomexemplaren worden standaard tegelijkertijd (gelijktijdig of parallel) uitgevoerd tot de standaardlimiet. Zie Gelijktijdigheid van triggers wijzigen als u deze limiet wilt wijzigen door een nieuwe <tellingswaarde> in te stellen.
<max-runs-queue> Geheel getal Wanneer uw werkstroom al het maximum aantal exemplaren uitvoert, dat u kunt wijzigen op basis van de runtimeConfiguration.concurrency.runs eigenschap, worden nieuwe uitvoeringen in deze wachtrij geplaatst tot de standaardlimiet. Zie Wachtuitvoeringslimiet wijzigen als u de standaardlimiet wilt wijzigen.
<splitOn-expression> String Voor triggers die matrices retourneren, verwijst deze expressie naar de matrix die moet worden gebruikt, zodat u een werkstroomexemplaren voor elk matrixitem kunt maken en uitvoeren in plaats van een lus 'voor elke' te gebruiken.

Deze expressie vertegenwoordigt bijvoorbeeld een item in de matrix die wordt geretourneerd binnen de hoofdtekstinhoud van de trigger: @triggerbody()?['value']

<operation-option> String U kunt het standaardgedrag wijzigen door de operationOptions eigenschap in te stellen. Zie Bewerkingsopties voor meer informatie.

Voorbeeld

Deze triggerdefinitie abonneert zich op de Office 365 Outlook-API, biedt een callback-URL naar het API-eindpunt en wacht tot het eindpunt reageert wanneer er een nieuwe e-mail binnenkomt.

"When_a_new_email_arrives_(webhook)": {
   "type": "ApiConnectionWebhook",
   "inputs": {
      "body": {
         "NotificationUrl": "@{listCallbackUrl()}" 
      },
      "host": {
         "connection": {
            "name": "@parameters('$connections')['office365']['connectionId']"
         }
      },
      "path": "/MailSubscription/$subscriptions",
      "queries": {
          "folderPath": "Inbox",
          "hasAttachment": "Any",
          "importance": "Any"
      }
   },
   "splitOn": "@triggerBody()?['value']"
}

HTTP-trigger

Met deze trigger wordt een aanvraag verzonden naar het opgegeven HTTP- of HTTPS-eindpunt op basis van het opgegeven terugkeerschema. De trigger controleert vervolgens het antwoord om te bepalen of de werkstroom wordt uitgevoerd. Zie Service-eindpunten aanroepen via HTTP of HTTPS vanuit Azure Logic Apps voor meer informatie.

"HTTP": {
   "type": "Http",
   "inputs": {
      "method": "<method-type>",
      "uri": "<HTTP-or-HTTPS-endpoint-URL>",
      "headers": { "<header-content>" },
      "queries": "<query-parameters>",
      "body": "<body-content>",
      "authentication": { "<authentication-type-and-property-values>" },
      "retryPolicy": {
         "type": "<retry-behavior>"
      }
   },
   "recurrence": {
      "frequency": "<time-unit>",
      "interval": <number-of-time-units>
   },
   "runtimeConfiguration": {
      "concurrency": {
         "runs": <max-runs>,
         "maximumWaitingRuns": <max-runs-queue>
      }
   },
   "operationOptions": "<operation-option>"
}

Vereist

Eigenschappen Waarde Type Description
method <methodetype> String De methode die moet worden gebruikt voor het verzenden van de uitgaande aanvraag: 'GET', 'PUT', 'POST', 'PATCH' of 'DELETE'
uri <HTTP-of-HTTPS-eindpunt-URL> String De URL van het HTTP- of HTTPS-eindpunt waarnaar u de uitgaande aanvraag wilt verzenden. Maximale tekenreeksgrootte: 2 kB

Voor een Azure-service of -resource bevat deze URI-syntaxis de resource-id en het pad naar de resource waartoe u toegang wilt krijgen.

frequency <tijd-eenheid> String De tijdseenheid waarin wordt beschreven hoe vaak de trigger wordt geactiveerd: 'Seconde', 'Minuut', 'Uur', 'Dag', 'Week', 'Maand'
interval <aantal tijdeenheden> Geheel getal Een waarde die aangeeft hoe vaak de trigger wordt geactiveerd op basis van de frequentie. Dit is het aantal tijdseenheden dat moet worden gewacht totdat de trigger opnieuw wordt geactiveerd

Dit zijn de minimum- en maximumintervallen:

- Maand: 1-16 maanden
- Dag: 1-500 dagen
- Uur: 1-12.000 uur
- Minuut: 1-72.000 minuten
- Seconde: 1-999,999 seconden

Als het interval bijvoorbeeld 6 is en de frequentie 'Maand' is, is het terugkeerpatroon om de 6 maanden.

Optioneel

Eigenschappen Waarde Type Description
headers <header-content> JSON-object Eventuele headers die u bij de aanvraag moet opnemen

Als u bijvoorbeeld de taal en het type wilt instellen:

"headers": { "Accept-Language": "en-us", "Content-Type": "application/json" }

queries <queryparameters> JSON-object Queryparameters die u in de aanvraag moet gebruiken

Het object wordt bijvoorbeeld "queries": { "api-version": "2018-01-01" } toegevoegd ?api-version=2018-01-01 aan de aanvraag.

body <hoofdtekstinhoud> JSON-object De berichtinhoud die moet worden verzonden als nettolading met de aanvraag
authentication <authentication-type-and-property-values> JSON-object Het verificatiemodel dat door de aanvraag wordt gebruikt voor het verifiëren van uitgaande aanvragen. Zie Verificatie toevoegen aan uitgaande oproepen voor meer informatie. Naast Scheduler wordt de authority eigenschap ondersteund. Wanneer deze niet is opgegeven, is https://management.azure.com/de standaardwaarde, maar u kunt een andere waarde gebruiken.
retryPolicy > type <gedrag voor opnieuw proberen> JSON-object Hiermee past u het gedrag voor opnieuw proberen aan voor onregelmatige fouten, met de statuscode 408, 429 en 5XX, en eventuele connectiviteitsuitzonderingen. Zie Beleid voor opnieuw proberen voor meer informatie.
runs <max-runs> Geheel getal Werkstroomexemplaren worden standaard tegelijkertijd (gelijktijdig of parallel) uitgevoerd tot de standaardlimiet. Zie Gelijktijdigheid van triggers wijzigen als u deze limiet wilt wijzigen door een nieuwe <tellingswaarde> in te stellen.
maximumWaitingRuns <max-runs-queue> Geheel getal Wanneer uw werkstroom al het maximum aantal exemplaren uitvoert, dat u kunt wijzigen op basis van de runtimeConfiguration.concurrency.runs eigenschap, worden nieuwe uitvoeringen in deze wachtrij geplaatst tot de standaardlimiet. Zie Wachtuitvoeringslimiet wijzigen als u de standaardlimiet wilt wijzigen.
operationOptions <operation-option> String U kunt het standaardgedrag wijzigen door de operationOptions eigenschap in te stellen. Zie Bewerkingsopties voor meer informatie.

Uitvoer

Element Type Description
headers JSON-object De headers uit het antwoord
body JSON-object De hoofdtekst van het antwoord
status code Geheel getal De statuscode van het antwoord

Vereisten voor binnenkomende aanvragen

Om goed te kunnen werken met uw logische app, moet het eindpunt voldoen aan een specifiek triggerpatroon of -contract en deze antwoordeigenschappen herkennen:

Eigenschappen Vereist Beschrijving
Statuscode Ja De statuscode 200 OK start een uitvoering. Elke andere statuscode start geen uitvoering.
Koptekst opnieuw proberen Nee Het aantal seconden totdat uw logische app het eindpunt opnieuw pollt
Locatiekoptekst Nee De URL die moet worden aangeroepen bij het volgende polling-interval. Als deze niet is opgegeven, wordt de oorspronkelijke URL gebruikt.

Voorbeeldgedrag voor verschillende aanvragen

Statuscode Probeer het opnieuw na Gedrag
200 {none} Voer de werkstroom uit en controleer opnieuw op meer gegevens na het gedefinieerde terugkeerpatroon.
200 10 seconden Voer de werkstroom uit en controleer na 10 seconden nogmaals op meer gegevens.
202 60 seconden Activeer de werkstroom niet. De volgende poging vindt plaats in één minuut, afhankelijk van het gedefinieerde terugkeerpatroon. Als het gedefinieerde terugkeerpatroon minder dan één minuut is, heeft de koptekst opnieuw prioriteit. Anders wordt het gedefinieerde terugkeerpatroon gebruikt.
400 {none} Ongeldige aanvraag, voer de werkstroom niet uit. Als er geen retryPolicy is gedefinieerd, wordt het standaardbeleid gebruikt. Nadat het aantal nieuwe pogingen is bereikt, controleert de trigger opnieuw op gegevens na het gedefinieerde terugkeerpatroon.
500 {none} Serverfout: voer de werkstroom niet uit. Als er geen retryPolicy is gedefinieerd, wordt het standaardbeleid gebruikt. Nadat het aantal nieuwe pogingen is bereikt, controleert de trigger opnieuw op gegevens na het gedefinieerde terugkeerpatroon.

HTTPWebhook-trigger

Met deze trigger kan uw logische app worden aangeroepen door een eindpunt te maken dat een abonnement kan registreren door de opgegeven eindpunt-URL aan te roepen. Wanneer u deze trigger in uw werkstroom maakt, wordt met een uitgaande aanvraag het abonnement geregistreerd. Op die manier kan de trigger beginnen met luisteren naar gebeurtenissen. Wanneer een bewerking deze trigger ongeldig maakt, wordt met een uitgaande aanvraag automatisch de aanroep uitgevoerd om het abonnement te annuleren. Zie Eindpuntabonnementen voor meer informatie.

U kunt ook asynchrone limieten opgeven voor een HTTPWebhook-trigger. Het gedrag van de trigger is afhankelijk van de secties die u gebruikt of weglaat.

"HTTP_Webhook": {
   "type": "HttpWebhook",
   "inputs": {
      "subscribe": {
         "method": "<method-type>",
         "uri": "<endpoint-subscribe-URL>",
         "headers": { "<header-content>" },
         "body": "<body-content>",
         "authentication": { "<authentication-type>" },
         "retryPolicy": { "<retry-behavior>" }
         },
      },
      "unsubscribe": {
         "method": "<method-type>",
         "url": "<endpoint-unsubscribe-URL>",
         "headers": { "<header-content>" },
         "body": "<body-content>",
         "authentication": { "<authentication-type>" }
      }
   },
   "runTimeConfiguration": {
      "concurrency": {
         "runs": <max-runs>,
         "maximumWaitingRuns": <max-runs-queue>
      }
   },
   "operationOptions": "<operation-option>"
}

Sommige waarden, zoals <methodetype>, zijn beschikbaar voor zowel de als "unsubscribe" de "subscribe" objecten.

Vereist

Weergegeven als Type Description
<methodetype> String De HTTP-methode die moet worden gebruikt voor de abonnementsaanvraag: 'GET', 'PUT', 'POST', 'PATCH' of 'DELETE'
<eindpunt-abonneren-URL> String De eindpunt-URL waar de abonnementsaanvraag moet worden verzonden

Optioneel

Weergegeven als Type Description
<methodetype> String De HTTP-methode die moet worden gebruikt voor de annuleringsaanvraag: "GET", "PUT", "POST", "PATCH" of "DELETE"
<eindpunt-afmeldings-URL> String De eindpunt-URL waar de annuleringsaanvraag moet worden verzonden
<hoofdtekstinhoud> String Berichtinhoud die moet worden verzonden in het abonnement of de annuleringsaanvraag
<verificatietype> JSON-object Het verificatiemodel dat door de aanvraag wordt gebruikt voor het verifiëren van uitgaande aanvragen. Zie Verificatie toevoegen aan uitgaande oproepen voor meer informatie.
<gedrag voor opnieuw proberen> JSON-object Hiermee past u het gedrag voor opnieuw proberen aan voor onregelmatige fouten, met de statuscode 408, 429 en 5XX, en eventuele connectiviteitsuitzonderingen. Zie Beleid voor opnieuw proberen voor meer informatie.
<max-runs> Geheel getal Werkstroomexemplaren worden standaard allemaal tegelijk (gelijktijdig of parallel) uitgevoerd tot de standaardlimiet. Zie Gelijktijdigheid van triggers wijzigen als u deze limiet wilt wijzigen door een nieuwe <tellingswaarde> in te stellen.
<max-runs-queue> Geheel getal Wanneer uw werkstroom al het maximum aantal exemplaren uitvoert, dat u kunt wijzigen op basis van de runtimeConfiguration.concurrency.runs eigenschap, worden nieuwe uitvoeringen in deze wachtrij geplaatst tot de standaardlimiet. Zie Wachtuitvoeringslimiet wijzigen als u de standaardlimiet wilt wijzigen.
<operation-option> String U kunt het standaardgedrag wijzigen door de operationOptions eigenschap in te stellen. Zie Bewerkingsopties voor meer informatie.

Uitvoer

Element Type Description
headers JSON-object De headers uit het antwoord
hoofdtekst JSON-object De hoofdtekst van het antwoord
statuscode Geheel getal De statuscode van het antwoord

Voorbeeld

Deze trigger maakt een abonnement op het opgegeven eindpunt, biedt een unieke callback-URL en wacht op nieuw gepubliceerde technologieartikelen.

"HTTP_Webhook": {
   "type": "HttpWebhook",
   "inputs": {
      "subscribe": {
         "method": "POST",
         "uri": "https://pubsubhubbub.appspot.com/subscribe",
         "body": {
            "hub.callback": "@{listCallbackUrl()}",
            "hub.mode": "subscribe",
            "hub.topic": "https://pubsubhubbub.appspot.com/articleCategories/technology"
         },
      },
      "unsubscribe": {
         "method": "POST",
         "url": "https://pubsubhubbub.appspot.com/subscribe",
         "body": {
            "hub.callback": "@{workflow().endpoint}@{listCallbackUrl()}",
            "hub.mode": "unsubscribe",
            "hub.topic": "https://pubsubhubbub.appspot.com/articleCategories/technology"
         }
      }
   }
}

Trigger met terugkeerpatroon

Deze trigger wordt uitgevoerd op basis van het opgegeven terugkeerschema en biedt een eenvoudige manier om een regelmatig actieve werkstroom te maken.

"Recurrence": {
   "type": "Recurrence",
   "recurrence": {
      "frequency": "<time-unit>",
      "interval": <number-of-time-units>,
      "startTime": "<start-date-time-with-format-YYYY-MM-DDThh:mm:ss>",
      "timeZone": "<time-zone>",
      "schedule": {
         // Applies only when frequency is Day or Week. Separate values with commas.
         "hours": [ <one-or-more-hour-marks> ], 
         // Applies only when frequency is Day or Week. Separate values with commas.
         "minutes": [ <one-or-more-minute-marks> ], 
         // Applies only when frequency is Week. Separate values with commas.
         "weekDays": [ "Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday" ] 
      }
   },
   "runtimeConfiguration": {
      "concurrency": {
         "runs": <max-runs>,
         "maximumWaitingRuns": <max-runs-queue>
      }
   },
   "operationOptions": "<operation-option>"
}

Vereist

Weergegeven als Type Description
<tijd-eenheid> String De tijdseenheid waarin wordt beschreven hoe vaak de trigger wordt geactiveerd: 'Seconde', 'Minuut', 'Uur', 'Dag', 'Week', 'Maand'
<aantal tijdeenheden> Geheel getal Een waarde die aangeeft hoe vaak de trigger wordt geactiveerd op basis van de frequentie. Dit is het aantal tijdseenheden dat moet worden gewacht totdat de trigger opnieuw wordt geactiveerd

Dit zijn de minimum- en maximumintervallen:

- Maand: 1-16 maanden
- Dag: 1-500 dagen
- Uur: 1-12.000 uur
- Minuut: 1-72.000 minuten
- Seconde: 1-999,999 seconden

Als het interval bijvoorbeeld 6 is en de frequentie 'Maand' is, is het terugkeerpatroon om de 6 maanden.

Optioneel

Weergegeven als Type Description
<start-date-time-with-format-JJJJ-MM-DDThh:mm:ss> String De begindatum en -tijd in deze notatie:

JJJJ-MM-DDThh:mm:ss als u een tijdzone opgeeft

-Of-

JJJJ-MM-DDThh:mm:ssZ als u geen tijdzone opgeeft

Als u bijvoorbeeld 18 september 2017 om 2:00 uur wilt, geeft u '2017-09-18T14:00:00' op en geeft u een tijdzone op, zoals 'Pacific Standard Time', of geeft u '2017-09-18T14:00:00Z' op zonder tijdzone.

Opmerking: Deze begintijd heeft maximaal 49 jaar in de toekomst en moet de ISO 8601-datum/tijdspecificatie in UTC-datum/tijdnotatie volgen, maar zonder utc-offset. Als u geen tijdzone opgeeft, moet u de letter Z aan het einde zonder spaties toevoegen. Deze "Z" verwijst naar de equivalente zeetijd.

Voor eenvoudige planningen is de begintijd de eerste keer, terwijl de trigger voor complexe schema's niet eerder wordt geactiveerd dan de begintijd. Zie Regelmatig actieve taken maken en plannen voor meer informatie over begindatums en -tijden.

<tijdzone> String Is alleen van toepassing wanneer u een begintijd opgeeft omdat deze trigger geen UTC-offset accepteert. Geef de tijdzone op die u wilt toepassen.
<een-of-meer-uurmarkeringen> Matrix met gehele getallen of gehele getallen Als u 'Dag' of 'Week' frequencyopgeeft, kunt u een of meer gehele getallen opgeven van 0 tot 23, gescheiden door komma's, als de uren van de dag waarop u de werkstroom wilt uitvoeren.

Als u bijvoorbeeld '10', '12' en '14' opgeeft, krijgt u 10:00, 12:00 en 2:00 uur als de uurmarkeringen.

<markeringen van één of meer minuten> Matrix met gehele getallen of gehele getallen Als u 'Dag' of 'Week' frequencyopgeeft, kunt u een of meer gehele getallen opgeven van 0 tot 59, gescheiden door komma's, als de minuten van het uur waarop u de werkstroom wilt uitvoeren.

U kunt bijvoorbeeld '30' opgeven als de minuutmarkering en het vorige voorbeeld voor uren van de dag gebruiken, u 10:30 uur, 12:30 uur en 2:30 uur krijgt.

weekDays Tekenreeks- of tekenreeksmatrix Als u 'Week' opgeeft frequency, kunt u een of meer dagen opgeven, gescheiden door komma's, wanneer u de werkstroom wilt uitvoeren: 'Maandag', 'Dinsdag', 'Woensdag', 'Donderdag', 'Vrijdag', 'Zaterdag' en 'Zondag'
<max-runs> Geheel getal Werkstroomexemplaren worden standaard allemaal tegelijk (gelijktijdig of parallel) uitgevoerd tot de standaardlimiet. Zie Gelijktijdigheid van triggers wijzigen als u deze limiet wilt wijzigen door een nieuwe <tellingswaarde> in te stellen.
<max-runs-queue> Geheel getal Wanneer uw werkstroom al het maximum aantal exemplaren uitvoert, dat u kunt wijzigen op basis van de runtimeConfiguration.concurrency.runs eigenschap, worden nieuwe uitvoeringen in deze wachtrij geplaatst tot de standaardlimiet. Zie Wachtuitvoeringslimiet wijzigen als u de standaardlimiet wilt wijzigen.
<operation-option> String U kunt het standaardgedrag wijzigen door de operationOptions eigenschap in te stellen. Zie Bewerkingsopties voor meer informatie.

Voorbeeld 1

Deze eenvoudige terugkeertrigger wordt dagelijks uitgevoerd:

"Recurrence": {
   "type": "Recurrence",
   "recurrence": {
      "frequency": "Day",
      "interval": 1
   }
}

Voorbeeld 2

U kunt een begindatum en -tijd opgeven voor het activeren van de trigger. Deze terugkeertrigger begint op de opgegeven datum en wordt vervolgens dagelijks geactiveerd:

"Recurrence": {
   "type": "Recurrence",
   "recurrence": {
      "frequency": "Day",
      "interval": 1,
      "startTime": "2017-09-18T00:00:00Z"
   }
}

Voorbeeld 3

Deze terugkeertrigger begint op 9 september 2017 om 2:00 uur en wordt wekelijks elke maandag om 10:30, 12:30 uur en 2:30 uur Pacific Standard Time geactiveerd:

"Recurrence": {
   "type": "Recurrence",
   "recurrence": {
      "frequency": "Week",
      "interval": 1,
      "schedule": {
         "hours": [ 10, 12, 14 ],
         "minutes": [ 30 ],
         "weekDays": [ "Monday" ]
      },
      "startTime": "2017-09-07T14:00:00",
      "timeZone": "Pacific Standard Time"
   }
}

Zie Regelmatig actieve taken maken en plannen voor meer informatie plus voorbeelden voor deze trigger.

Aanvraagtrigger

Met deze trigger kan uw logische app worden aangeroepen door een eindpunt te maken dat binnenkomende aanvragen kan accepteren. Geef voor deze trigger een JSON-schema op waarmee de nettolading of invoer wordt beschreven en gevalideerd die de trigger ontvangt van de binnenkomende aanvraag. Het schema maakt triggereigenschappen ook gemakkelijker te raadplegen vanuit latere acties in de werkstroom.

Als u deze trigger wilt aanroepen, moet u de listCallbackUrl API gebruiken, die wordt beschreven in de REST API van de werkstroomservice. Zie Werkstromen aanroepen, activeren of nesten met HTTP-eindpunten voor meer informatie over het gebruik van deze trigger als een HTTP-eindpunt.

"manual": {
   "type": "Request",
   "kind": "Http",
   "inputs": {
      "method": "<method-type>",
      "relativePath": "<relative-path-for-accepted-parameter>",
      "schema": {
         "type": "object",
         "properties": { 
            "<property-name>": {
               "type": "<property-type>"
            }
         },
         "required": [ "<required-properties>" ]
      }
   },
   "runTimeConfiguration": {
      "concurrency": {
         "runs": <max-runs>,
         "maximumWaitingRuns": <max-run-queue>
      },
   },
   "operationOptions": "<operation-option>"
}

Vereist

Weergegeven als Type Description
<eigenschapsnaam> String De naam van een eigenschap in het JSON-schema, waarin de nettolading wordt beschreven
<eigenschapstype> String Het type eigenschap

Optioneel

Weergegeven als Type Description
<methodetype> String De methode die binnenkomende aanvragen moeten gebruiken om uw logische app aan te roepen: 'GET', 'PUT', 'POST', 'PATCH', 'DELETE'
<relative-path-for-accepted-parameter> String Het relatieve pad voor de parameter die de URL van uw eindpunt kan accepteren
<vereiste eigenschappen> Matrix Een of meer eigenschappen waarvoor waarden zijn vereist
<max-runs> Geheel getal Werkstroomexemplaren worden standaard allemaal tegelijk (gelijktijdig of parallel) uitgevoerd tot de standaardlimiet. Zie Gelijktijdigheid van triggers wijzigen als u deze limiet wilt wijzigen door een nieuwe <tellingswaarde> in te stellen.
<max-runs-queue> Geheel getal Wanneer uw werkstroom al het maximum aantal exemplaren uitvoert, dat u kunt wijzigen op basis van de runtimeConfiguration.concurrency.runs eigenschap, worden nieuwe uitvoeringen in deze wachtrij geplaatst tot de standaardlimiet. Zie Wachtuitvoeringslimiet wijzigen als u de standaardlimiet wilt wijzigen.
<operation-option> String U kunt het standaardgedrag wijzigen door de operationOptions eigenschap in te stellen. Zie Bewerkingsopties voor meer informatie.

Voorbeeld

Deze trigger geeft aan dat een binnenkomende aanvraag de HTTP POST-methode moet gebruiken om de trigger aan te roepen en een schema bevat waarmee invoer van de binnenkomende aanvraag wordt gevalideerd:

"manual": {
   "type": "Request",
   "kind": "Http",
   "inputs": {
      "method": "POST",
      "schema": {
         "type": "object",
         "properties": {
            "customerName": {
               "type": "String"
            },
            "customerAddress": { 
               "type": "Object",
               "properties": {
                  "streetAddress": {
                     "type": "string"
                  },
                  "city": {
                     "type": "string"
                  }
               }
            }
         }
      }
   }
}

Triggervoorwaarden

Voor elke trigger en alleen triggers kunt u een matrix opnemen die een of meer expressies bevat voor voorwaarden die bepalen of de werkstroom moet worden uitgevoerd. Als u de conditions eigenschap wilt toevoegen aan een trigger in uw werkstroom, opent u uw logische app in de codeweergave-editor.

U kunt bijvoorbeeld opgeven dat een trigger alleen wordt geactiveerd wanneer een website een interne serverfout retourneert door te verwijzen naar de statuscode van de trigger in de conditions eigenschap:

"Recurrence": {
   "type": "Recurrence",
   "recurrence": {
      "frequency": "Hour",
      "interval": 1
   },
   "conditions": [ {
      "expression": "@equals(triggers().code, 'InternalServerError')"
   } ]
}

Standaard wordt een trigger pas geactiveerd nadat een antwoord van 200 OK is ontvangen. Wanneer een expressie verwijst naar de statuscode van een trigger, wordt het standaardgedrag van de trigger vervangen. Dus als u wilt dat de trigger wordt geactiveerd voor meer dan één statuscode, zoals de statuscode '200' en '201', moet u deze expressie opnemen als uw voorwaarde:

@or(equals(triggers().code, 200),equals(triggers().code, 201))

Meerdere uitvoeringen activeren op een matrix

Als uw trigger een matrix ontvangt die door uw werkstroom moet worden verwerkt, kan het soms te lang duren voordat elk matrixitem wordt verwerkt. In plaats daarvan kunt u de eigenschap SplitOn in uw trigger gebruiken om de matrix te debatteren . Debatching splitst de matrixitems op en start een nieuw werkstroomexemplaren die voor elk matrixitem wordt uitgevoerd. Deze methode is bijvoorbeeld handig als u een eindpunt wilt peilen dat mogelijk meerdere nieuwe items retourneert tussen polling-intervallen.

Als het Swagger-bestand van uw trigger een nettolading beschrijft die een matrix is, wordt de eigenschap SplitOn automatisch toegevoegd aan uw trigger. Voeg anders deze eigenschap toe in de nettolading van het antwoord met de matrix die u wilt bespreken.

Bekijk de volgende overwegingen voordat u de SplitOn-functie gebruikt:

  • Als gelijktijdigheid van triggers is ingeschakeld, wordt de SplitOn-limiet aanzienlijk verminderd. Als het aantal items deze limiet overschrijdt, wordt de functie SplitOn uitgeschakeld.

  • U kunt de SplitOn-functie niet gebruiken met een synchroon antwoordpatroon. Elke werkstroom die gebruikmaakt van de eigenschap SplitOn en een antwoordactie bevat, wordt asynchroon uitgevoerd en verzendt onmiddellijk een 202 ACCEPTED antwoord.

  • Zie Limieten en configuratie voor het maximum aantal matrixitems dat SplitOn kan verwerken in één werkstroomuitvoering.

Voorbeeld

Stel dat u een HTTP-trigger hebt die een API aanroept en dit antwoord ontvangt:

{
   "Status": "Succeeded",
   "Rows": [ 
      { 
         "id": 938109380,
         "name": "customer-name-one"
      },
      {
         "id": 938109381,
         "name": "customer-name-two"
      }
   ]
}

Uw werkstroom heeft alleen de inhoud van de matrix nodig, Rowszodat u een trigger zoals in dit voorbeeld kunt maken:

"HTTP_Debatch": {
   "type": "Http",
    "inputs": {
        "uri": "https://mydomain.com/myAPI",
        "method": "GET"
    },
   "recurrence": {
      "frequency": "Second",
      "interval": 1
    },
    "splitOn": "@triggerBody()?.Rows"
}

Notitie

Als u de SplitOn opdracht gebruikt, kunt u de eigenschappen die zich buiten de matrix bevinden, niet ophalen. Voor dit voorbeeld kunt u de status eigenschap niet ophalen in het antwoord dat wordt geretourneerd door de API.

Als u een fout wilt voorkomen als de Rows eigenschap niet bestaat, gebruikt dit voorbeeld de ? operator.

Uw werkstroomdefinitie kan nu worden gebruikt @triggerBody().name om de name waarden op te halen, die afkomstig zijn "customer-name-one" van de eerste uitvoering en "customer-name-two" van de tweede uitvoering. Uw triggeruitvoer ziet er dus als volgt uit:

{
   "body": {
      "id": 938109380,
      "name": "customer-name-one"
   }
}
{
   "body": {
      "id": 938109381,
      "name": "customer-name-two"
   }
}

Overzicht van acties

Azure Logic Apps biedt verschillende actietypen, elk met verschillende invoerwaarden die het unieke gedrag van een actie definiëren. Acties hebben deze elementen op hoog niveau, hoewel sommige optioneel zijn:

"<action-name>": {
   "type": "<action-type>",
   "inputs": { 
      "<input-name>": { "<input-value>" },
      "retryPolicy": "<retry-behavior>" 
   },
   "runAfter": { "<previous-trigger-or-action-status>" },
   "runtimeConfiguration": { "<runtime-config-options>" },
   "operationOptions": "<operation-option>"
},

Vereist

Weergegeven als Type Description
<actienaam> String De naam van de actie
<actietype> String Het actietype, bijvoorbeeld Http of Api Verbinding maken ion
<invoernaam> String De naam voor een invoer die het gedrag van de actie definieert
<invoerwaarde> Diverse De invoerwaarde, die een tekenreeks, geheel getal, JSON-object, enzovoort kan zijn
<previous-trigger-or-action-status> JSON-object De naam en de resulterende status voor de trigger of actie die direct moeten worden uitgevoerd voordat deze huidige actie kan worden uitgevoerd

Optioneel

Weergegeven als Type Description
<gedrag voor opnieuw proberen> JSON-object Hiermee past u het gedrag voor opnieuw proberen aan voor onregelmatige fouten, met de statuscode 408, 429 en 5XX, en eventuele connectiviteitsuitzonderingen. Zie Beleid voor opnieuw proberen voor meer informatie.
<runtime-config-options> JSON-object Voor sommige acties kunt u het gedrag van de actie tijdens runtime wijzigen door eigenschappen in te stellen runtimeConfiguration . Zie Runtime-configuratie-instellingen voor meer informatie.
<operation-option> String Voor sommige acties kunt u het standaardgedrag wijzigen door de operationOptions eigenschap in te stellen. Zie Bewerkingsopties voor meer informatie.

Lijst met actietypen

Hier volgen enkele veelgebruikte actietypen:

Ingebouwde acties

Actietype Beschrijving
Compose Hiermee maakt u één uitvoer van invoer, die verschillende typen kan hebben.
JavaScript-code uitvoeren Voer JavaScript-codefragmenten uit die binnen specifieke criteria passen. Zie Codefragmenten toevoegen en uitvoeren met inlinecode voor meer informatie.
Functie Roept een Azure-functie aan.
HTTP Roept een HTTP-eindpunt aan.
Join Hiermee maakt u een tekenreeks van alle items in een matrix en scheidt u deze items met een opgegeven scheidingsteken.
JSON parseren Hiermee maakt u gebruiksvriendelijke tokens op basis van eigenschappen in JSON-inhoud. U kunt vervolgens naar deze eigenschappen verwijzen door de tokens in uw logische app op te slaan.
Query Hiermee maakt u een matrix op basis van items in een andere matrix op basis van een voorwaarde of filter.
Respons Hiermee maakt u een reactie op een inkomende oproep of aanvraag.
Selecteren Hiermee maakt u een matrix met JSON-objecten door items van een andere matrix te transformeren op basis van de opgegeven kaart.
Tabel Hiermee maakt u een CSV- of HTML-tabel op basis van een matrix.
Terminate Hiermee stopt u een actieve werkstroom.
Wait Onderbreekt uw werkstroom voor een opgegeven duur of tot de opgegeven datum en tijd.
Werkstroom Nestt een werkstroom in een andere werkstroom.

Beheerde API-acties

Actietype Beschrijving
ApiConnection Roept een HTTP-eindpunt aan met behulp van een door Microsoft beheerde API.
Api Verbinding maken ionWebhook Werkt als HTTP Webhook, maar maakt gebruik van een door Microsoft beheerde API.

Werkstroomacties beheren

Met deze acties kunt u de uitvoering van werkstromen beheren en andere acties opnemen. Van buiten een werkstroomactie voor besturingselementen kunt u rechtstreeks verwijzen naar acties binnen die werkstroomactie voor besturingselementen. Als u bijvoorbeeld een Http actie binnen een bereik hebt, kunt u overal in de werkstroom verwijzen naar de @body('Http') expressie. Acties die zich in een werkstroomactie voor besturingselementen bevinden, kunnen echter alleen worden uitgevoerd na andere acties die zich in dezelfde werkstroomstructuur bevinden.

Actietype Beschrijving
Foreach Voer dezelfde acties uit in een lus voor elk item in een matrix.
If Voer acties uit op basis van of de opgegeven voorwaarde waar of onwaar is.
Scope Voer acties uit op basis van de groepsstatus van een set acties.
Switch Voer acties uit die zijn ingedeeld in gevallen waarin waarden uit expressies, objecten of tokens overeenkomen met de waarden die in elke case zijn opgegeven.
Tot Voer acties in een lus uit totdat de opgegeven voorwaarde waar is.

Acties - Gedetailleerde naslaginformatie

API Verbinding maken ionactie

Deze actie verzendt een HTTP-aanvraag naar een door Microsoft beheerde API en vereist informatie over de API en parameters plus een verwijzing naar een geldige verbinding.

"<action-name>": {
   "type": "ApiConnection",
   "inputs": {
      "host": {
         "connection": {
            "name": "@parameters('$connections')['<api-name>']['connectionId']"
         },
         "<other-action-specific-input-properties>"        
      },
      "method": "<method-type>",
      "path": "/<api-operation>",
      "retryPolicy": "<retry-behavior>",
      "queries": { "<query-parameters>" },
      "<other-action-specific-properties>"
    },
    "runAfter": {}
}

Vereist

Weergegeven als Type Description
<actienaam> String De naam van de actie die door de connector wordt geleverd
<API-naam> String De naam van de door Microsoft beheerde API die wordt gebruikt voor de verbinding
<methodetype> String De HTTP-methode voor het aanroepen van de API: 'GET', 'PUT', 'POST', 'PATCH' of 'DELETE'
<api-operation> String De API-bewerking die moet worden aangeroepen

Optioneel

Weergegeven als Type Description
<andere actie-specifieke invoereigenschappen> JSON-object Alle andere invoereigenschappen die van toepassing zijn op deze specifieke actie
<gedrag voor opnieuw proberen> JSON-object Hiermee past u het gedrag voor opnieuw proberen aan voor onregelmatige fouten, met de statuscode 408, 429 en 5XX, en eventuele connectiviteitsuitzonderingen. Zie Beleid voor opnieuw proberen voor meer informatie.
<queryparameters> JSON-object Queryparameters die moeten worden opgenomen met de API-aanroep.

Het object wordt bijvoorbeeld "queries": { "api-version": "2018-01-01" } toegevoegd ?api-version=2018-01-01 aan de aanroep.

<andere actie-specifieke eigenschappen> JSON-object Alle andere eigenschappen die van toepassing zijn op deze specifieke actie

Voorbeeld

In deze definitie wordt de actie Een e-mail verzenden voor Office 365 Outlook-connector beschreven. Dit is een door Microsoft beheerde API:

"Send_an_email": {
   "type": "ApiConnection",
   "inputs": {
      "body": {
         "Body": "Thank you for your membership!",
         "Subject": "Hello and welcome!",
         "To": "Sophie.Owen@contoso.com"
      },
      "host": {
         "connection": {
            "name": "@parameters('$connections')['office365']['connectionId']"
         }
      },
      "method": "POST",
      "path": "/Mail"
    },
    "runAfter": {}
}

API Verbinding maken ionWebhook-actie

Met deze actie wordt een abonnementsaanvraag via HTTP naar een eindpunt verzonden met behulp van een door Microsoft beheerde API, een callback-URL naar de locatie waar het eindpunt een antwoord kan verzenden en wacht tot het eindpunt reageert. Zie Eindpuntabonnementen voor meer informatie.

"<action-name>": {
   "type": "ApiConnectionWebhook",
   "inputs": {
      "subscribe": {
         "method": "<method-type>",
         "uri": "<api-subscribe-URL>",
         "headers": { "<header-content>" },
         "body": "<body-content>",
         "authentication": { "<authentication-type>" },
         "retryPolicy": "<retry-behavior>",
         "queries": { "<query-parameters>" },
         "<other-action-specific-input-properties>"
      },
      "unsubscribe": {
         "method": "<method-type>",
         "uri": "<api-unsubscribe-URL>",
         "headers": { "<header-content>" },
         "body": "<body-content>",
         "authentication": { "<authentication-type>" },
         "<other-action-specific-properties>"
      },
   },
   "runAfter": {}
}

Sommige waarden, zoals <methodetype>, zijn beschikbaar voor zowel de als "unsubscribe" de "subscribe" objecten.

Vereist

Weergegeven als Type Description
<actienaam> String De naam van de actie die door de connector wordt geleverd
<methodetype> String De HTTP-methode die moet worden gebruikt voor het abonneren of afmelden van een eindpunt: 'GET', 'PUT', 'POST', 'PATCH' of 'DELETE'
<API-subscribe-URL> String De URI die moet worden gebruikt voor het abonneren op de API

Optioneel

Weergegeven als Type Description
<api-unsubscribe-URL> String De URI die moet worden gebruikt voor het afmelden van de API
<header-content> JSON-object Eventuele headers die in de aanvraag moeten worden verzonden

Als u bijvoorbeeld de taal wilt instellen en typt voor een aanvraag:

"headers": { "Accept-Language": "en-us", "Content-Type": "application/json" }

<hoofdtekstinhoud> JSON-object Alle berichtinhoud die in de aanvraag moet worden verzonden
<verificatietype> JSON-object Het verificatiemodel dat door de aanvraag wordt gebruikt voor het verifiëren van uitgaande aanvragen. Zie Verificatie toevoegen aan uitgaande oproepen voor meer informatie.
<gedrag voor opnieuw proberen> JSON-object Hiermee past u het gedrag voor opnieuw proberen aan voor onregelmatige fouten, met de statuscode 408, 429 en 5XX, en eventuele connectiviteitsuitzonderingen. Zie Beleid voor opnieuw proberen voor meer informatie.
<queryparameters> JSON-object Queryparameters die moeten worden opgenomen met de API-aanroep

Het object wordt bijvoorbeeld "queries": { "api-version": "2018-01-01" } toegevoegd ?api-version=2018-01-01 aan de aanroep.

<andere actie-specifieke invoereigenschappen> JSON-object Alle andere invoereigenschappen die van toepassing zijn op deze specifieke actie
<andere actie-specifieke eigenschappen> JSON-object Alle andere eigenschappen die van toepassing zijn op deze specifieke actie

U kunt ook limieten opgeven voor een Api Verbinding maken ionWebhook-actie op dezelfde manier als http-asynchrone limieten.

Actie Opstellen

Met deze actie maakt u één uitvoer van meerdere invoergegevens, inclusief expressies. Zowel de uitvoer als de invoer kunnen elk type hebben dat azure Logic Apps systeemeigen ondersteunt, zoals matrices, JSON-objecten, XML en binair. Vervolgens kunt u de uitvoer van de actie in andere acties gebruiken.

"Compose": {
   "type": "Compose",
   "inputs": "<inputs-to-compose>",
   "runAfter": {}
},

Vereist

Weergegeven als Type Description
<invoer-naar-opstellen> Alle De invoer voor het maken van één uitvoer

Voorbeeld 1

Deze actiedefinitie wordt abcdefg samengevoegd met een volgruimte en de waarde 1234:

"Compose": {
   "type": "Compose",
   "inputs": "abcdefg 1234",
   "runAfter": {}
},

Dit is de uitvoer die met deze actie wordt gemaakt:

abcdefg 1234

Voorbeeld 2

Met deze actiedefinitie wordt een tekenreeksvariabele samengevoegd die een geheel getalvariabele bevat abcdefg1234met:

"Compose": {
   "type": "Compose",
   "inputs": "@{variables('myString')}@{variables('myInteger')}",
   "runAfter": {}
},

Dit is de uitvoer die met deze actie wordt gemaakt:

"abcdefg1234"

JavaScript-codeactie uitvoeren

Met deze actie wordt een JavaScript-codefragment uitgevoerd en worden de resultaten geretourneerd via een token waarnaar volgende acties in de werkstroom kunnen verwijzen.

"Execute_JavaScript_Code": {
   "type": "JavaScriptCode",
   "inputs": {
      "code": "<JavaScript-code-snippet>",
      "explicitDependencies": {
         "actions": [ <preceding-actions> ],
         "includeTrigger": true
      }
   },
   "runAfter": {}
}

Vereist

Weergegeven als Type Description
<JavaScript-codefragment> Varieert De JavaScript-code die u wilt uitvoeren. Zie Codefragmenten uitvoeren in werkstromen voor meer informatie.

In het code kenmerk kan het codefragment het alleen-lezenobject workflowContext gebruiken als invoer. Dit object bevat subproperties die uw code toegang geven tot de uitvoer van de trigger en eventuele voorgaande acties in uw werkstroom. Zie Referentietrigger- en actieresultaten met behulp van het object workflowContext voor meer informatie over het workflowContext object.

Vereist in sommige gevallen

Het explicitDependencies kenmerk geeft aan dat u expliciet resultaten van de trigger, eerdere acties of beide als afhankelijkheden voor uw codefragment wilt opnemen. Zie Afhankelijkheden als parameters toevoegen aan een inlinecodeactie voor meer informatie over het toevoegen van deze afhankelijkheden.

Voor het includeTrigger kenmerk kunt u waarden opgeven of false waarden opgeventrue.

Weergegeven als Type Description
<voorgaande acties> Tekenreeksmatrix Een matrix met de actienamen in JSON-indeling als afhankelijkheden. Zorg ervoor dat u de actienamen gebruikt die worden weergegeven in uw werkstroomdefinitie, waarbij actienamen onderstrepingstekens (_), geen spaties (" ") gebruiken.

Voorbeeld 1

Met deze actie wordt code uitgevoerd die de naam van de werkstroom van uw logische app ophaalt en de tekst 'Hallo wereld van <logic-app-name>' retourneert als resultaat. In dit voorbeeld verwijst de code naar de naam van de werkstroom door toegang te krijgen tot de workflowContext.workflow.name eigenschap via het object alleen-lezen workflowContext . Zie Referentietrigger en actieresultaten in uw code voor meer informatie over het gebruik van het workflowContext object.

"Execute_JavaScript_Code": {
   "type": "JavaScriptCode",
   "inputs": {
      "code": "var text = \"Hello world from \" + workflowContext.workflow.name;\r\n\r\nreturn text;"
   },
   "runAfter": {}
}

Voorbeeld 2

Met deze actie wordt code uitgevoerd in een werkstroom van een logische app die wordt geactiveerd wanneer een nieuwe e-mail binnenkomt in een Outlook-account. De werkstroom maakt ook gebruik van de e-mailactie Goedkeuring verzenden in Office 365 Outlook waarmee de inhoud van de ontvangen e-mail wordt doorgestuurd, samen met een verzoek om goedkeuring.

De code extraheert de e-mailadressen uit de eigenschap van Body het e-mailbericht en retourneert de adressen samen met de SelectedOption eigenschapswaarde van de goedkeuringsactie. De actie bevat expliciet de actie Goedkeurings-e-mail verzenden als een afhankelijkheid in het actions object binnen het explicitDependencies object.

"Execute_JavaScript_Code": {
   "type": "JavaScriptCode",
   "inputs": {
      "code": "var myResult = /(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))/g;\r\n\r\nvar email = workflowContext.trigger.outputs.body.Body;\r\n\r\nvar reply = workflowContext.actions.Send_approval_email.outputs.body.SelectedOption;\r\n\r\nreturn email.match(myResult) + \" - \" + reply;\r\n;",
      "explicitDependencies": {
         "actions": [
            "Send_approval_email"
         ]
      }
   },
   "runAfter": {}
}

Functieactie

Met deze actie wordt een eerder gemaakte Azure-functie aangeroepen.

"<Azure-function-name>": {
   "type": "Function",
   "inputs": {
     "function": {
        "id": "<Azure-function-ID>"
      },
      "method": "<method-type>",
      "headers": { "<header-content>" },
      "body": { "<body-content>" },
      "queries": { "<query-parameters>" } 
   },
   "runAfter": {}
}

Vereist

Weergegeven als Type Description
<Azure-function-ID> String De resource-id voor de Azure-functie die u wilt aanroepen. Dit is de notatie voor deze waarde:

"/subscriptions/<Azure-subscription-ID>/resourceGroups/<Azure-resource-group>/providers/Microsoft.Web/sites/<Azure-function-app-name>/functions/<Azure-function-name>"

<methodetype> String De HTTP-methode die moet worden gebruikt voor het aanroepen van de functie: 'GET', 'PUT', 'POST', 'PATCH' of 'DELETE'

Als dit niet is opgegeven, is de standaardwaarde de methode POST.

Optioneel

Weergegeven als Type Description
<header-content> JSON-object Eventuele headers die met de oproep moeten worden verzonden

Als u bijvoorbeeld de taal wilt instellen en typt voor een aanvraag:

"headers": { "Accept-Language": "en-us", "Content-Type": "application/json" }

<hoofdtekstinhoud> JSON-object Alle berichtinhoud die in de aanvraag moet worden verzonden
<queryparameters> JSON-object Queryparameters die moeten worden opgenomen met de API-aanroep

Het object wordt bijvoorbeeld "queries": { "api-version": "2018-01-01" } toegevoegd ?api-version=2018-01-01 aan de aanroep.

<andere actie-specifieke invoereigenschappen> JSON-object Alle andere invoereigenschappen die van toepassing zijn op deze specifieke actie
<andere actie-specifieke eigenschappen> JSON-object Alle andere eigenschappen die van toepassing zijn op deze specifieke actie

Wanneer u uw logische app opslaat, voert de Logic Apps-engine deze controles uit op de functie waarnaar wordt verwezen:

  • Uw werkstroom moet toegang hebben tot de functie.

  • Uw werkstroom kan alleen een standaard HTTP-trigger of algemene JSON-webhooktrigger gebruiken.

    De Logic Apps-engine haalt de URL van de trigger op en slaat deze in de cache op, die tijdens runtime wordt gebruikt. Als een bewerking echter de URL in de cache ongeldig maakt, mislukt de functieactie tijdens runtime. U kunt dit probleem oplossen door de logische app opnieuw op te slaan, zodat de logische app de trigger-URL opnieuw in de cache opslaat.

  • De functie kan geen route hebben gedefinieerd.

  • Alleen de autorisatieniveaus 'functie' en 'anoniem' zijn toegestaan.

Voorbeeld

Met deze actiedefinitie wordt de eerder gemaakte functie GetProductID aangeroepen:

"GetProductID": {
   "type": "Function",
   "inputs": {
     "function": {
        "id": "/subscriptions/<XXXXXXXXXXXXXXXXXXXX>/resourceGroups/myLogicAppResourceGroup/providers/Microsoft.Web/sites/InventoryChecker/functions/GetProductID"
      },
      "method": "POST",
      "headers": { 
          "x-ms-date": "@utcnow()"
       },
      "body": { 
          "Product_ID": "@variables('ProductID')"
      }
   },
   "runAfter": {}
}

HTTP-actie

Met deze actie wordt een aanvraag verzonden naar het opgegeven HTTP- of HTTPS-eindpunt en wordt het antwoord gecontroleerd om te bepalen of de werkstroom wordt uitgevoerd. Zie Service-eindpunten aanroepen via HTTP of HTTPS vanuit Azure Logic Apps voor meer informatie.

"HTTP": {
   "type": "Http",
   "inputs": {
      "method": "<method-type>",
      "uri": "<HTTP-or-HTTPS-endpoint-URL>",
      "headers": { "<header-content>" },
      "queries": { "<query-parameters>" },
      "body": "<body-content>",
      "authentication": { "<authentication-type-and-property-values>" },
      "retryPolicy": {
         "type": "<retry-behavior>"
      },
   },
   "runAfter": {}
}

Vereist

Eigenschappen Waarde Type Description
method <methodetype> String De methode die moet worden gebruikt voor het verzenden van de uitgaande aanvraag: 'GET', 'PUT', 'POST', 'PATCH' of 'DELETE'
uri <HTTP-of-HTTPS-eindpunt-URL> String De URL van het HTTP- of HTTPS-eindpunt waarnaar u de uitgaande aanvraag wilt verzenden. Maximale tekenreeksgrootte: 2 kB

Voor een Azure-service of -resource bevat deze URI-syntaxis de resource-id en het pad naar de resource waartoe u toegang wilt krijgen.

Optioneel

Eigenschappen Waarde Type Description
headers <header-content> JSON-object Eventuele headers die u bij de aanvraag moet opnemen

Als u bijvoorbeeld de taal en het type wilt instellen:

"headers": { "Accept-Language": "en-us", "Content-Type": "application/json" }

queries <queryparameters> JSON-object Queryparameters die u in de aanvraag moet gebruiken

Het object wordt bijvoorbeeld "queries": { "api-version": "2018-01-01" } toegevoegd ?api-version=2018-01-01 aan de aanroep.

body <hoofdtekstinhoud> JSON-object De berichtinhoud die moet worden verzonden als nettolading met de aanvraag
authentication <authentication-type-and-property-values> JSON-object Het verificatiemodel dat door de aanvraag wordt gebruikt voor het verifiëren van uitgaande aanvragen. Zie Verificatie toevoegen aan uitgaande oproepen voor meer informatie. Naast Scheduler wordt de authority eigenschap ondersteund. Wanneer deze niet is opgegeven, is https://management.azure.com/de standaardwaarde, maar u kunt een andere waarde gebruiken.
retryPolicy > type <gedrag voor opnieuw proberen> JSON-object Hiermee past u het gedrag voor opnieuw proberen aan voor onregelmatige fouten, met de statuscode 408, 429 en 5XX, en eventuele connectiviteitsuitzonderingen. Zie Beleid voor opnieuw proberen voor meer informatie.
<andere actie-specifieke invoereigenschappen> <invoereigenschap> JSON-object Alle andere invoereigenschappen die van toepassing zijn op deze specifieke actie
<andere actie-specifieke eigenschappen> <eigenschapswaarde> JSON-object Alle andere eigenschappen die van toepassing zijn op deze specifieke actie

Voorbeeld

Deze actiedefinitie haalt het laatste nieuws op door een aanvraag naar het opgegeven eindpunt te verzenden:

"HTTP": {
   "type": "Http",
   "inputs": {
      "method": "GET",
      "uri": "https://mynews.example.com/latest"
   }
}

Actie samenvoegen

Met deze actie maakt u een tekenreeks van alle items in een matrix en scheidt u deze items met het opgegeven scheidingsteken.

"Join": {
   "type": "Join",
   "inputs": {
      "from": <array>,
      "joinWith": "<delimiter>"
   },
   "runAfter": {}
}

Vereist

Weergegeven als Type Description
<Array> Matrix De matrix of expressie die de bronitems levert. Als u een expressie opgeeft, plaatst u die expressie tussen dubbele aanhalingstekens.
<scheidingsteken> Tekenreeks met één teken Het teken dat elk item in de tekenreeks scheidt

Voorbeeld

Stel dat u een eerder gemaakte variabele 'myIntegerArray' hebt die deze matrix met gehele getallen bevat:

[1,2,3,4]

Deze actiedefinitie haalt de waarden van de variabele op met behulp van de variables() functie in een expressie en maakt deze tekenreeks met deze waarden, gescheiden door een komma: "1,2,3,4"

"Join": {
   "type": "Join",
   "inputs": {
      "from": "@variables('myIntegerArray')",
      "joinWith": ","
   },
   "runAfter": {}
}

JSON-actie parseren

Met deze actie worden gebruiksvriendelijke velden of tokens gemaakt op basis van de eigenschappen in JSON-inhoud. U kunt deze eigenschappen vervolgens openen in uw logische app met behulp van de tokens. Als u bijvoorbeeld JSON-uitvoer van services zoals Azure Service Bus en Azure Cosmos DB wilt gebruiken, kunt u deze actie opnemen in uw logische app, zodat u gemakkelijker naar de gegevens in die uitvoer kunt verwijzen.

"Parse_JSON": {
   "type": "ParseJson",
   "inputs": {
      "content": "<JSON-source>",
         "schema": { "<JSON-schema>" }
      },
      "runAfter": {}
},

Vereist

Weergegeven als Type Description
<JSON-bron> JSON-object De JSON-inhoud die u wilt parseren
<JSON-schema> JSON-object Het JSON-schema dat de onderliggende JSON-inhoud beschrijft, die door de actie wordt gebruikt voor het parseren van de bron-JSON-inhoud.

Tip: In Logic Apps Designer kunt u het schema opgeven of een voorbeeldnlading opgeven, zodat de actie het schema kan genereren.

Voorbeeld

Met deze actiedefinitie worden deze tokens gemaakt die u in uw werkstroom kunt gebruiken, maar alleen in acties die worden uitgevoerd na de JSON-actie Parseren:

FirstName, en LastNameEmail

"Parse_JSON": {
   "type": "ParseJson",
   "inputs": {
      "content": {
         "Member": {
            "Email": "Sophie.Owen@contoso.com",
            "FirstName": "Sophie",
            "LastName": "Owen"
         }
      },
      "schema": {
         "type": "object",
         "properties": {
            "Member": {
               "type": "object",
               "properties": {
                  "Email": {
                     "type": "string"
                  },
                  "FirstName": {
                     "type": "string"
                  },
                  "LastName": {
                     "type": "string"
                  }
               }
            }
         }
      }
   },
   "runAfter": { }
},

In dit voorbeeld geeft de eigenschap 'inhoud' de JSON-inhoud op voor de actie die moet worden geparseerd. U kunt deze JSON-inhoud ook opgeven als de voorbeeldpayload voor het genereren van het schema.

"content": {
   "Member": { 
      "FirstName": "Sophie",
      "LastName": "Owen",
      "Email": "Sophie.Owen@contoso.com"
   }
},

De eigenschap Schema geeft het JSON-schema op dat wordt gebruikt voor het beschrijven van de JSON-inhoud:

"schema": {
   "type": "object",
   "properties": {
      "Member": {
         "type": "object",
         "properties": {
            "FirstName": {
               "type": "string"
            },
            "LastName": {
               "type": "string"
            },
            "Email": {
               "type": "string"
            }
         }
      }
   }
}

Queryactie

Met deze actie maakt u een matrix op basis van items in een andere matrix op basis van een opgegeven voorwaarde of filter.

"Filter_array": {
   "type": "Query",
   "inputs": {
      "from": <array>,
      "where": "<condition-or-filter>"
   },
   "runAfter": {}
}

Vereist

Weergegeven als Type Description
<Array> Matrix De matrix of expressie die de bronitems levert. Als u een expressie opgeeft, plaatst u die expressie tussen dubbele aanhalingstekens.
<condition-or-filter> String De voorwaarde die wordt gebruikt voor het filteren van items in de bronmatrix

Opmerking: Als er geen waarden aan de voorwaarde voldoen, wordt met de actie een lege matrix gemaakt.

Voorbeeld

Met deze actiedefinitie maakt u een matrix met waarden die groter zijn dan de opgegeven waarde. Dit zijn twee:

"Filter_array": {
   "type": "Query",
   "inputs": {
      "from": [ 1, 3, 0, 5, 4, 2 ],
      "where": "@greater(item(), 2)"
   }
}

Response action

Met deze actie maakt u de nettolading voor het antwoord op een HTTP-aanvraag.

"Response" {
    "type": "Response",
    "kind": "http",
    "inputs": {
        "statusCode": 200,
        "headers": { <response-headers> },
        "body": { <response-body> }
    },
    "runAfter": {}
},

Vereist

Weergegeven als Type Description
<response-status-code> Geheel getal De HTTP-statuscode die naar de binnenkomende aanvraag wordt verzonden. De standaardcode is '200 OK', maar de code kan elke geldige statuscode zijn die begint met 2xx, 4xx of 5xx, maar niet met 3xxx.

Optioneel

Weergegeven als Type Description
<antwoordheaders> JSON-object Een of meer headers die moeten worden opgenomen in het antwoord
<antwoordtekst> Diverse De hoofdtekst van het antwoord, die een tekenreeks, JSON-object of zelfs binaire inhoud van een vorige actie kan zijn

Voorbeeld

Met deze actiedefinitie wordt een antwoord gemaakt op een HTTP-aanvraag met de opgegeven statuscode, berichttekst en berichtkoppen:

"Response": {
   "type": "Response",
   "inputs": {
      "statusCode": 200,
      "body": {
         "ProductID": 0,
         "Description": "Organic Apples"
      },
      "headers": {
         "x-ms-date": "@utcnow()",
         "content-type": "application/json"
      }
   },
   "runAfter": {}
}

Beperkingen

In tegenstelling tot andere acties heeft de actie Antwoord speciale beperkingen:

  • Uw werkstroom kan de actie Antwoord alleen gebruiken wanneer de werkstroom begint met een HTTP-aanvraagtrigger, wat betekent dat uw werkstroom moet worden geactiveerd door een HTTP-aanvraag.

  • Uw werkstroom kan de actie Antwoord overal gebruiken, behalve in Foreach-lussen , Tot-lussen , inclusief sequentiële lussen en parallelle vertakkingen.

  • De oorspronkelijke aanvraag ontvangt alleen het antwoord van uw werkstroom wanneer alle acties die door de reactieactie zijn vereist, binnen de http-time-outlimiet zijn voltooid.

    Als uw werkstroom echter een andere logische app aanroept als een geneste werkstroom, wacht de bovenliggende werkstroom totdat de geneste werkstroom is voltooid, ongeacht hoe lang de geneste werkstroom is voltooid.

  • Wanneer uw werkstroom gebruikmaakt van de actie Antwoord en een synchroon antwoordpatroon, kan de werkstroom niet ook de splitOn-opdracht in de triggerdefinitie gebruiken omdat met deze opdracht meerdere uitvoeringen worden gemaakt. Controleer op dit geval wanneer de PUT-methode wordt gebruikt en indien waar, een 'ongeldige aanvraag' retourneert.

    Als uw werkstroom de splitOn-opdracht en een antwoordactie gebruikt, wordt de werkstroom asynchroon uitgevoerd en wordt er onmiddellijk een antwoord '202 GEACCEPTEERD' geretourneerd.

  • Wanneer de uitvoering van uw werkstroom de actie Antwoord bereikt, maar de binnenkomende aanvraag al een antwoord heeft ontvangen, wordt de actie Antwoord gemarkeerd als Mislukt vanwege het conflict. Als gevolg hiervan wordt de uitvoering van uw logische app ook gemarkeerd met de status Mislukt.

Actie selecteren

Met deze actie maakt u een matrix met JSON-objecten door items van een andere matrix te transformeren op basis van de opgegeven kaart. De uitvoermatrix en de bronmatrix hebben altijd hetzelfde aantal items. Hoewel u het aantal objecten in de uitvoermatrix niet kunt wijzigen, kunt u eigenschappen en de bijbehorende waarden aan deze objecten toevoegen of verwijderen. De select eigenschap geeft ten minste één sleutel-waardepaar op waarmee de kaart wordt gedefinieerd voor het transformeren van items in de bronmatrix. Een sleutel-waardepaar vertegenwoordigt een eigenschap en de bijbehorende waarde voor alle objecten in de uitvoermatrix.

"Select": {
   "type": "Select",
   "inputs": {
      "from": <array>,
      "select": { 
          "<key-name>": "<expression>",
          "<key-name>": "<expression>"        
      }
   },
   "runAfter": {}
},

Vereist

Weergegeven als Type Description
<Array> Matrix De matrix of expressie die de bronitems levert. Zorg ervoor dat u een expressie tussen dubbele aanhalingstekens plaatst.

Opmerking: Als de bronmatrix leeg is, wordt met de actie een lege matrix gemaakt.

<sleutelnaam> String De eigenschapsnaam die is toegewezen aan het resultaat van <de expressie>

Als u een nieuwe eigenschap wilt toevoegen aan alle objecten in de uitvoermatrix, geeft u een <sleutelnaam> op voor die eigenschap en een< expressie> voor de eigenschapswaarde.

Als u een eigenschap uit alle objecten in de matrix wilt verwijderen, laat u de <sleutelnaam> voor die eigenschap weg.

<Expressie> String De expressie waarmee het item in de bronmatrix wordt getransformeerd en het resultaat wordt toegewezen aan <de sleutelnaam>

Met de actie Selecteren wordt een matrix als uitvoer gemaakt, dus elke actie die deze uitvoer wil gebruiken, moet een matrix accepteren of u moet de matrix converteren naar het type dat de consumentenactie accepteert. Als u bijvoorbeeld de uitvoermatrix wilt converteren naar een tekenreeks, kunt u die matrix doorgeven aan de actie Opstellen en vervolgens verwijzen naar de uitvoer van de actie Opstellen in uw andere acties.

Voorbeeld

Met deze actiedefinitie maakt u een JSON-objectmatrix op basis van een gehele getalmatrix. De actie doorloopt de bronmatrix, haalt elke gehele waarde op met behulp van de @item() expressie en wijst elke waarde toe aan de eigenschap 'number' in elk JSON-object:

"Select": {
   "type": "Select",
   "inputs": {
      "from": [ 1, 2, 3 ],
      "select": { 
         "number": "@item()" 
      }
   },
   "runAfter": {}
},

Dit is de matrix die met deze actie wordt gemaakt:

[ { "number": 1 }, { "number": 2 }, { "number": 3 } ]

Als u deze matrixuitvoer in andere acties wilt gebruiken, geeft u deze uitvoer door in een actie Opstellen :

"Compose": {
   "type": "Compose",
   "inputs": "@body('Select')",
   "runAfter": {
      "Select": [ "Succeeded" ]
   }
},

Vervolgens kunt u de uitvoer van de actie Opstellen gebruiken in uw andere acties, bijvoorbeeld office 365 Outlook - Een e-mailactie verzenden:

"Send_an_email": {
   "type": "ApiConnection",
   "inputs": {
      "body": {
         "Body": "@{outputs('Compose')}",
         "Subject": "Output array from Select and Compose actions",
         "To": "<your-email@domain>"
      },
      "host": {
         "connection": {
            "name": "@parameters('$connections')['office365']['connectionId']"
         }
      },
      "method": "post",
      "path": "/Mail"
   },
   "runAfter": {
      "Compose": [ "Succeeded" ]
   }
},

Tabelactie

Met deze actie maakt u een CSV- of HTML-tabel op basis van een matrix. Voor matrices met JSON-objecten maakt deze actie automatisch de kolomkoppen op basis van de eigenschapsnamen van de objecten. Voor matrices met andere gegevenstypen moet u de kolomkoppen en -waarden opgeven. Deze matrix bevat bijvoorbeeld de eigenschappen 'ID' en 'Product_Name' die deze actie kan gebruiken voor de kolomkopnamen:

[ {"ID": 0, "Product_Name": "Apples"}, {"ID": 1, "Product_Name": "Oranges"} ]

"Create_<CSV | HTML>_table": {
   "type": "Table",
   "inputs": {
      "format": "<CSV | HTML>",
      "from": <array>,
      "columns": [ 
         {
            "header": "<column-name>",
            "value": "<column-value>"
         },
         {
            "header": "<column-name>",
            "value": "<column-value>"
         } 
      ]
   },
   "runAfter": {}
}

Vereist

Weergegeven als Type Description
<CSV of HTML> String De indeling voor de tabel die u wilt maken
<Array> Matrix De matrix of expressie die de bronitems voor de tabel levert

Opmerking: Als de bronmatrix leeg is, wordt met de actie een lege tabel gemaakt.

Optioneel

Als u kolomkoppen en -waarden wilt opgeven of aanpassen, gebruikt u de columns matrix. Wanneer header-value paren dezelfde kopnaam hebben, worden hun waarden weergegeven in dezelfde kolom onder die kopnaam. Anders definieert elke unieke kop een unieke kolom.

Weergegeven als Type Description
<kolomnaam> String De naam van de koptekst voor een kolom
<kolomwaarde> Alle De waarde in die kolom

Voorbeeld 1

Stel dat u een eerder gemaakte variabele 'myItemArray' hebt die momenteel deze matrix bevat:

[ {"ID": 0, "Product_Name": "Apples"}, {"ID": 1, "Product_Name": "Oranges"} ]

Met deze actiedefinitie wordt een CSV-tabel gemaakt op basis van de variabele myItemArray. Met de expressie die door de from eigenschap wordt gebruikt, wordt de matrix opgehaald uit 'myItemArray' met behulp van de variables() functie:

"Create_CSV_table": {
   "type": "Table",
   "inputs": {
      "format": "CSV",
      "from": "@variables('myItemArray')"
   },
   "runAfter": {}
}

Dit is de CSV-tabel die met deze actie wordt gemaakt:

ID,Product_Name 
0,Apples 
1,Oranges 

Voorbeeld 2

Met deze actiedefinitie wordt een HTML-tabel gemaakt op basis van de variabele myItemArray. Met de expressie die door de from eigenschap wordt gebruikt, wordt de matrix opgehaald uit 'myItemArray' met behulp van de variables() functie:

"Create_HTML_table": {
   "type": "Table",
   "inputs": {
      "format": "HTML",
      "from": "@variables('myItemArray')"
   },
   "runAfter": {}
}

Hier volgt de HTML-tabel die met deze actie wordt gemaakt:

IdProduct_Name
0Appels
1Sinaasappelen

Voorbeeld 3

Met deze actiedefinitie wordt een HTML-tabel gemaakt op basis van de variabele myItemArray. In dit voorbeeld worden de standaardnamen van kolomkoppen echter overschreven met 'Stock_ID' en 'Beschrijving', en wordt het woord 'Organisch' toegevoegd aan de waarden in de kolom Beschrijving.

"Create_HTML_table": {
   "type": "Table",
   "inputs": {
      "format": "HTML",
      "from": "@variables('myItemArray')",
      "columns": [ 
         {
            "header": "Stock_ID",
            "value": "@item().ID"
         },
         {
            "header": "Description",
            "value": "@concat('Organic ', item().Product_Name)"
         }
      ]
    },
   "runAfter": {}
},

Hier volgt de HTML-tabel die met deze actie wordt gemaakt:

Stock_IDBeschrijving
0Biologische appels
1Organische sinaasappelen

Actie beëindigen

Deze actie stopt de uitvoering voor een werkstroomexemplaren, annuleert alle acties die worden uitgevoerd, slaat alle resterende acties over en retourneert de opgegeven status. U kunt bijvoorbeeld de actie Beëindigen gebruiken wanneer uw logische app volledig moet worden afgesloten vanuit een foutstatus. Deze actie heeft geen invloed op al voltooide acties en kan niet worden weergegeven in Foreach en Until-lussen , inclusief opeenvolgende lussen.

"Terminate": {
   "type": "Terminate",
   "inputs": {
       "runStatus": "<status>",
       "runError": {
            "code": "<error-code-or-name>",
            "message": "<error-message>"
       }
   },
   "runAfter": {}
}

Vereist

Weergegeven als Type Description
<status> String De status die moet worden geretourneerd voor de uitvoering: 'Mislukt', 'Geannuleerd' of 'Geslaagd'

Optioneel

De eigenschappen voor het object runStatus zijn alleen van toepassing wanneer de eigenschap 'runStatus' is ingesteld op De status Mislukt.

Weergegeven als Type Description
<foutcode of naam> String De code of naam voor de fout
<foutbericht> String Het bericht of de tekst die de fout beschrijft en eventuele acties die de app-gebruiker kan uitvoeren

Voorbeeld

Deze actiedefinitie stopt een werkstroomuitvoering, stelt de uitvoeringsstatus in op Mislukt en retourneert de status, een foutcode en een foutbericht:

"Terminate": {
    "type": "Terminate",
    "inputs": {
        "runStatus": "Failed",
        "runError": {
            "code": "Unexpected response",
            "message": "The service received an unexpected response. Please try again."
        }
   },
   "runAfter": {}
}

Wachtactie

Met deze actie wordt de uitvoering van de werkstroom onderbroken voor het opgegeven interval of tot de opgegeven tijd, maar niet beide.

Opgegeven interval

"Delay": {
   "type": "Wait",
   "inputs": {
      "interval": {
         "count": <number-of-units>,
         "unit": "<interval>"
      }
   },
   "runAfter": {}
},

Opgegeven tijd

"Delay_until": {
   "type": "Wait",
   "inputs": {
      "until": {
         "timestamp": "<date-time-stamp>"
      }
   },
   "runAfter": {}
},

Vereist

Weergegeven als Type Description
<aantal eenheden> Geheel getal Voor de actie Vertraging is het aantal eenheden dat moet worden gewacht
<interval> String Voor de actie Vertraging moet het interval wachten: 'Seconde', 'Minuut', 'Uur', 'Dag', 'Week', 'Maand'
<datum-tijd-stempel> String Voor de actie Vertraging tot , de datum en tijd waarop de uitvoering moet worden hervat. Deze waarde moet de UTC-datum/tijdnotatie gebruiken.

Voorbeeld 1

Met deze actiedefinitie wordt de werkstroom gedurende 15 minuten onderbroken:

"Delay": {
   "type": "Wait",
   "inputs": {
      "interval": {
         "count": 15,
         "unit": "Minute"
      }
   },
   "runAfter": {}
},

Voorbeeld 2

Met deze actiedefinitie wordt de werkstroom onderbroken tot de opgegeven tijd:

"Delay_until": {
   "type": "Wait",
   "inputs": {
      "until": {
         "timestamp": "2017-10-01T00:00:00Z"
      }
   },
   "runAfter": {}
},

Werkstroomactie

Met deze actie wordt een andere eerder gemaakte logische app aangeroepen, wat betekent dat u andere werkstromen voor logische apps kunt opnemen en opnieuw kunt gebruiken. U kunt ook de uitvoer van de onderliggende of geneste logische app gebruiken in acties die de geneste logische app volgen, mits de onderliggende logische app een antwoord retourneert.

De Logic Apps-engine controleert de toegang tot de trigger die u wilt aanroepen, dus zorg ervoor dat u toegang hebt tot die trigger. De geneste logische app moet ook voldoen aan deze criteria:

  • Een trigger maakt de geneste logische app aanroepbaar, zoals een aanvraag of HTTP-trigger

  • Hetzelfde Azure-abonnement als uw bovenliggende logische app

  • Als u de uitvoer van de geneste logische app in uw bovenliggende logische app wilt gebruiken, moet de geneste logische app een antwoordactie hebben

"<nested-logic-app-name>": {
   "type": "Workflow",
   "inputs": {
      "body": { "<body-content" },
      "headers": { "<header-content>" },
      "host": {
         "triggerName": "<trigger-name>",
         "workflow": {
            "id": "/subscriptions/<Azure-subscription-ID>/resourceGroups/<Azure-resource-group>/providers/Microsoft.Logic/<nested-logic-app-name>"
         }
      }
   },
   "runAfter": {}
}

Vereist

Weergegeven als Type Description
<geneste logische-app-naam> String De naam voor de logische app die u wilt aanroepen
<trigger-name> String De naam voor de trigger in de geneste logische app die u wilt aanroepen
<Azure-subscription-ID> String De Azure-abonnements-id voor de geneste logische app
<Azure-resource-group> String De naam van de Azure-resourcegroep voor de geneste logische app

Optioneel

Weergegeven als Type Description
<header-content> JSON-object Eventuele headers die met de oproep moeten worden verzonden
<hoofdtekstinhoud> JSON-object Alle berichtinhoud die met de oproep moet worden verzonden

Uitvoer

De uitvoer van deze actie varieert op basis van de reactieactie van de geneste logische app. Als de geneste logische app geen antwoordactie bevat, zijn de uitvoer leeg.

Voorbeeld

Nadat de actie 'Start_search' is voltooid, roept deze werkstroomactiedefinitie een andere logische app aan met de naam 'Get_product_information', die de opgegeven invoer doorgeeft:

"actions": {
   "Start_search": { <action-definition> },
   "Get_product_information": {
      "type": "Workflow",
      "inputs": {
         "body": {
            "ProductID": "24601",
         },
         "host": {
            "id": "/subscriptions/XXXXXXXXXXXXXXXXXXXXXXXXXX/resourceGroups/InventoryManager-RG/providers/Microsoft.Logic/Get_product_information",
            "triggerName": "Find_product"
         },
         "headers": {
            "content-type": "application/json"
         }
      },
      "runAfter": { 
         "Start_search": [ "Succeeded" ]
      }
   }
},

Details van werkstroomactie beheren

Foreach-actie

Deze lusactie doorloopt een matrix en voert acties uit op elk matrixitem. Standaard wordt de lus 'voor elke' parallel uitgevoerd tot een maximum aantal lussen. Zie Limieten en configuratie voor dit maximum. Meer informatie over het maken van 'voor elke' lussen.

"For_each": {
   "type": "Foreach",
   "actions": { 
      "<action-1>": { "<action-definition-1>" },
      "<action-2>": { "<action-definition-2>" }
   },
   "foreach": "<for-each-expression>",
   "runAfter": {},
   "runtimeConfiguration": {
      "concurrency": {
         "repetitions": <count>
      }
    },
    "operationOptions": "<operation-option>"
}

Vereist

Weergegeven als Type Description
<action-1... N> String De namen van de acties die worden uitgevoerd op elk matrixitem
<action-definition-1... N> JSON-object De definities van de acties die worden uitgevoerd
<for-each-expression> String De expressie die verwijst naar elk item in de opgegeven matrix

Optioneel

Weergegeven als Type Description
<count> Geheel getal Standaard worden de herhalingen voor elke lus tegelijkertijd (gelijktijdig of parallel) uitgevoerd tot aan de standaardlimiet. Zie Gelijktijdigheid van elke lus wijzigen als u deze limiet wilt wijzigen door een nieuwe <tellingswaarde> in te stellen.
<operation-option> String Als u een lus voor elke lus opeenvolgend wilt uitvoeren in plaats van parallel, stelt u de <bewerkingsoptieSequential> in op of <telt> u op 1, maar niet op beide. Zie Sequentieel uitvoeren voor elke lus voor meer informatie.

Voorbeeld

Deze lus 'voor elke' verzendt een e-mail voor elk item in de matrix, dat bijlagen van een binnenkomende e-mail bevat. De lus verzendt een e-mailbericht, inclusief de bijlage, naar een persoon die de bijlage beoordeelt.

"For_each": {
   "type": "Foreach",
   "actions": {
      "Send_an_email": {
         "type": "ApiConnection",
         "inputs": {
            "body": {
               "Body": "@base64ToString(items('For_each')?['Content'])",
               "Subject": "Review attachment",
               "To": "Sophie.Owen@contoso.com"
                },
            "host": {
               "connection": {
                  "id": "@parameters('$connections')['office365']['connectionId']"
               }
            },
            "method": "post",
            "path": "/Mail"
         },
         "runAfter": {}
      }
   },
   "foreach": "@triggerBody()?['Attachments']",
   "runAfter": {}
}

Als u alleen een matrix wilt opgeven die wordt doorgegeven als uitvoer van de trigger, haalt deze expressie de <matrixnaammatrix> op uit de hoofdtekst van de trigger. Om een fout te voorkomen als de matrix niet bestaat, gebruikt de expressie de ? operator:

@triggerBody()?['<array-name>']

Als actie

Deze actie, een voorwaardelijke instructie, evalueert een expressie die een voorwaarde vertegenwoordigt en voert een andere vertakking uit op basis van of de voorwaarde waar of onwaar is. Als de voorwaarde waar is, wordt de voorwaarde gemarkeerd met de status Geslaagd. Meer informatie over het maken van voorwaardelijke instructies.

"Condition": {
   "type": "If",
   "expression": { "<condition>" },
   "actions": {
      "<action-1>": { "<action-definition>" }
   },
   "else": {
      "actions": {
        "<action-2>": { "<action-definition" }
      }
   },
   "runAfter": {}
}
Weergegeven als Type Description
<voorwaarde> JSON-object De voorwaarde, die een expressie kan zijn, om te evalueren
<action-1> JSON-object De actie die moet worden uitgevoerd wanneer <de voorwaarde> waar is
<action-definition> JSON-object De definitie voor de actie
<action-2> JSON-object De actie die moet worden uitgevoerd wanneer <de voorwaarde> resulteert in onwaar

De acties in de actions of else objecten krijgen deze statussen:

  • 'Geslaagd' wanneer ze worden uitgevoerd en geslaagd
  • 'Mislukt' wanneer ze worden uitgevoerd en mislukken
  • 'Overgeslagen' wanneer de respectieve vertakking niet wordt uitgevoerd

Voorbeeld

Deze voorwaarde geeft aan dat wanneer de variabele geheel getal een waarde heeft die groter is dan nul, de werkstroom een website controleert. Als de variabele nul of minder is, controleert de werkstroom een andere website.

"Condition": {
   "type": "If",
   "expression": {
      "and": [ {
         "greater": [ "@variables('myIntegerVariable')", 0 ] 
      } ]
   },
   "actions": { 
      "HTTP - Check this website": {
         "type": "Http",
         "inputs": {
         "method": "GET",
            "uri": "http://this-url"
         },
         "runAfter": {}
      }
   },
   "else": {
      "actions": {
         "HTTP - Check this other website": {
            "type": "Http",
            "inputs": {
               "method": "GET",
               "uri": "http://this-other-url"
            },
            "runAfter": {}
         }
      }
   },
   "runAfter": {}
}

Hoe voorwaarden expressies gebruiken

Hier volgen enkele voorbeelden die laten zien hoe u expressies in voorwaarden kunt gebruiken:

JSON Resultaat
"expression": "@parameters('<hasSpecialAction>')" Alleen voor Boole-expressies wordt de voorwaarde doorgegeven voor elke waarde die waar oplevert.

Als u andere typen wilt converteren naar Booleaanse waarde, gebruikt u deze functies: empty() of equals().

"expression": "@greater(actions('action>'<).output.value, parameters('<threshold>'))" Voor vergelijkingsfuncties wordt de actie alleen uitgevoerd wanneer de uitvoer van <de actie> meer is dan de <drempelwaarde>.
"expression": "@or(greater(actions('action>'<).output.value, parameters('<threshold>')), less(actions('<same-action>').output.value, 100))" Voor logische functies en het maken van geneste Boole-expressies wordt de actie uitgevoerd wanneer de uitvoer van <de actie> meer is dan de <drempelwaarde> of minder dan 100.
"expression": "@equals(length(actions('action>'<).outputs.errors), 0)) " U kunt matrixfuncties gebruiken om te controleren of de matrix items bevat. De actie wordt uitgevoerd wanneer de errors matrix leeg is.

Bereikactie

Met deze actie worden acties logisch gegroepeerd in bereiken, die hun eigen status krijgen nadat de acties in dat bereik zijn uitgevoerd. Vervolgens kunt u de status van het bereik gebruiken om te bepalen of andere acties worden uitgevoerd. Meer informatie over het maken van bereiken.

"Scope": {
   "type": "Scope",
   "actions": {
      "<inner-action-1>": {
         "type": "<action-type>",
         "inputs": { "<action-inputs>" },
         "runAfter": {}
      },
      "<inner-action-2>": {
         "type": "<action-type>",
         "inputs": { "<action-inputs>" },
         "runAfter": {}
      }
   }
}

Vereist

Weergegeven als Type Description
<inner-action-1... N> JSON-object Een of meer acties die binnen het bereik worden uitgevoerd
<actie-invoer> JSON-object De invoer voor elke actie

De actie Switch

Deze actie, ook wel een switch-instructie genoemd, organiseert andere acties in cases en wijst een waarde toe aan elke case, met uitzondering van de standaardcase als deze bestaat. Wanneer uw werkstroom wordt uitgevoerd, vergelijkt de actie Schakelen de waarde van een expressie, object of token met de waarden die voor elke case zijn opgegeven. Als met de actie Schakelen een overeenkomende aanvraag wordt gevonden, worden in uw werkstroom alleen de acties voor dat geval uitgevoerd. Telkens wanneer de actie Schakelen wordt uitgevoerd, bestaat er slechts één overeenkomende case of bestaan er geen overeenkomsten. Als er geen overeenkomsten bestaan, worden met de actie Schakelen de standaardacties uitgevoerd. Meer informatie over het maken van switchinstructies.

"Switch": {
   "type": "Switch",
   "expression": "<expression-object-or-token>",
   "cases": {
      "Case": {
         "actions": {
           "<action-name>": { "<action-definition>" }
         },
         "case": "<matching-value>"
      },
      "Case_2": {
         "actions": {
           "<action-name>": { "<action-definition>" }
         },
         "case": "<matching-value>"
      }
   },
   "default": {
      "actions": {
         "<default-action-name>": { "<default-action-definition>" }
      }
   },
   "runAfter": {}
}

Vereist

Weergegeven als Type Description
<expression-object-or-token> Varieert De expressie, het JSON-object of het token dat moet worden geëvalueerd
<actienaam> String De naam van de actie die moet worden uitgevoerd voor de overeenkomende case
<action-definition> JSON-object De definitie voor de actie die moet worden uitgevoerd voor de overeenkomende case
<matching-value> Varieert De waarde die moet worden vergeleken met het geëvalueerde resultaat

Optioneel

Weergegeven als Type Description
<standaardactienaam> String De naam van de standaardactie die moet worden uitgevoerd wanneer er geen overeenkomende case bestaat
<standaardactiedefinitie> JSON-object De definitie voor de actie die moet worden uitgevoerd wanneer er geen overeenkomende case bestaat

Voorbeeld

Met deze actiedefinitie wordt geëvalueerd of de persoon die op de e-mail van de goedkeuringsaanvraag reageert, de optie Goedkeuren of De optie Weigeren heeft geselecteerd. Op basis van deze keuze voert de actie Schakelen de acties uit voor de overeenkomende zaak, namelijk het verzenden van een andere e-mail naar de beantwoorder, maar met verschillende formuleringen in elk geval.

"Switch": {
   "type": "Switch",
   "expression": "@body('Send_approval_email')?['SelectedOption']",
   "cases": {
      "Case": {
         "actions": {
            "Send_an_email": { 
               "type": "ApiConnection",
               "inputs": {
                  "Body": "Thank you for your approval.",
                  "Subject": "Response received", 
                  "To": "Sophie.Owen@contoso.com"
               },
               "host": {
                  "connection": {
                     "name": "@parameters('$connections')['office365']['connectionId']"
                  }
               },
               "method": "post",
               "path": "/Mail"
            },
            "runAfter": {}
         },
         "case": "Approve"
      },
      "Case_2": {
         "actions": {
            "Send_an_email_2": { 
               "type": "ApiConnection",
               "inputs": {
                  "Body": "Thank you for your response.",
                  "Subject": "Response received", 
                  "To": "Sophie.Owen@contoso.com"
               },
               "host": {
                  "connection": {
                     "name": "@parameters('$connections')['office365']['connectionId']"
                  }
               },
               "method": "post",
               "path": "/Mail"
            },
            "runAfter": {}     
         },
         "case": "Reject"
      }
   },
   "default": {
      "actions": { 
         "Send_an_email_3": { 
            "type": "ApiConnection",
            "inputs": {
               "Body": "Please respond with either 'Approve' or 'Reject'.",
               "Subject": "Please respond", 
               "To": "Sophie.Owen@contoso.com"
            },
            "host": {
               "connection": {
                  "name": "@parameters('$connections')['office365']['connectionId']"
               }
            },
            "method": "post",
            "path": "/Mail"
         },
         "runAfter": {} 
      }
   },
   "runAfter": {
      "Send_approval_email": [ 
         "Succeeded"
      ]
   }
}

Tot actie

Deze lusactie bevat acties die worden uitgevoerd totdat de opgegeven voorwaarde waar is. De lus controleert de voorwaarde als laatste stap nadat alle andere acties zijn uitgevoerd. U kunt meer dan één actie opnemen in het "actions" object en de actie moet ten minste één limiet definiëren. Meer informatie over het maken van 'until'-lussen.

 "Until": {
   "type": "Until",
   "actions": {
      "<action-name>": {
         "type": "<action-type>",
         "inputs": { "<action-inputs>" },
         "runAfter": {}
      },
      "<action-name>": {
         "type": "<action-type>",
         "inputs": { "<action-inputs>" },
         "runAfter": {}
      }
   },
   "expression": "<condition>",
   "limit": {
      "count": <loop-count>,
      "timeout": "<loop-timeout>"
   },
   "runAfter": {}
}
Weergegeven als Type Description
<actienaam> String De naam van de actie die u binnen de lus wilt uitvoeren
<actietype> String Het actietype dat u wilt uitvoeren
<actie-invoer> Diverse De invoer voor de actie die moet worden uitgevoerd
<voorwaarde> String De voorwaarde of expressie die moet worden geëvalueerd nadat alle acties in de lus zijn voltooid
<loop-count> Geheel getal De limiet voor het meeste aantal lussen dat door de actie kan worden uitgevoerd. Zie Limieten en configuratie voor Azure Logic Apps voor meer informatie over de standaardlimiet en maximale limiet.
<time-out voor herhalen> String De limiet voor de langste tijd die de lus kan uitvoeren. De standaardwaarde timeout is PT1H, wat de vereiste ISO 8601-indeling is.

Notitie

Als de expressie afhankelijk is van de uitvoer van een actie binnen de lus Until, moet u ervoor zorgen dat u rekening houdt met eventuele fouten die het gevolg zijn van die actie.

Voorbeeld

Deze lusactiedefinitie verzendt een HTTP-aanvraag naar de opgegeven URL totdat aan een van deze voorwaarden wordt voldaan:

  • De aanvraag ontvangt een antwoord met de statuscode 200 OK.
  • De lus is 60 keer uitgevoerd.
  • De lus is één uur uitgevoerd.
 "Run_until_loop_succeeds_or_expires": {
    "type": "Until",
    "actions": {
        "HTTP": {
            "type": "Http",
            "inputs": {
                "method": "GET",
                "uri": "http://myurl"
            },
            "runAfter": {}
        }
    },
    "expression": "@equals(outputs('HTTP')['statusCode'], 200)",
    "limit": {
        "count": 60,
        "timeout": "PT1H"
    },
    "runAfter": {}
}

Webhooks en abonnementen

Triggers en acties op basis van webhook controleren niet regelmatig eindpunten, maar wachten op specifieke gebeurtenissen of gegevens op die eindpunten. Deze triggers en acties abonneren zich op de eindpunten door een callback-URL op te geven waar het eindpunt antwoorden kan verzenden.

De subscribe aanroep vindt plaats wanneer de werkstroom op welke manier dan ook verandert, bijvoorbeeld wanneer referenties worden vernieuwd of wanneer de invoerparameters voor een trigger of actie worden gewijzigd. Deze aanroep maakt gebruik van dezelfde parameters als standaard HTTP-acties.

De unsubscribe aanroep wordt automatisch uitgevoerd wanneer een bewerking de trigger of actie ongeldig maakt, bijvoorbeeld:

  • De trigger verwijderen of uitschakelen.
  • De werkstroom verwijderen of uitschakelen.
  • Het abonnement verwijderen of uitschakelen.

Ter ondersteuning van deze aanroepen retourneert de @listCallbackUrl() expressie een unieke callback-URL voor de trigger of actie. Deze URL vertegenwoordigt een unieke id voor de eindpunten die gebruikmaken van de REST API van de service. De parameters voor deze functie zijn hetzelfde als de webhooktrigger of -actie.

Asynchrone duur wijzigen

Voor zowel triggers als acties kunt u de duur voor het asynchrone patroon beperken tot een specifiek tijdsinterval door de limit.timeout eigenschap toe te voegen. Als de actie niet is voltooid wanneer het interval is verstreken, wordt de status van de actie gemarkeerd als Cancelled met de ActionTimedOut code. De timeout eigenschap maakt gebruik van de ISO 8601-indeling.

"<trigger-or-action-name>": {
   "type": "Workflow | Webhook | Http | ApiConnectionWebhook | ApiConnection",
   "inputs": {},
   "limit": {
      "timeout": "PT10S"
   },
   "runAfter": {}
}

Runtime-configuratie-instellingen

U kunt het standaardruntimegedrag voor triggers en acties wijzigen door deze runtimeConfiguration eigenschappen toe te voegen aan de trigger- of actiedefinitie.

Eigenschap Type Description Trigger of actie
runtimeConfiguration.concurrency.runs Geheel getal Wijzig de standaardlimiet voor het aantal werkstroomexemplaren dat tegelijkertijd kan worden uitgevoerd (gelijktijdig of parallel). Door deze waarde aan te passen, kunt u het aantal aanvragen beperken dat back-endsystemen ontvangen.

Het instellen van de runs eigenschap werkt 1 op dezelfde manier als het instellen van de operationOptions eigenschap op SingleInstance. U kunt beide eigenschappen instellen, maar niet beide.

Zie Gelijktijdigheid van triggers of triggerexemplaren opeenvolgend wijzigen om de standaardlimiet te wijzigen.

Alle triggers
runtimeConfiguration.concurrency.maximumWaitingRuns Geheel getal Wijzig de standaardlimiet voor het aantal werkstroomexemplaren dat moet wachten om te worden uitgevoerd wanneer de logische app al het maximum aantal gelijktijdige exemplaren uitvoert.

Zie Wachtuitvoeringslimiet wijzigen als u de standaardlimiet wilt wijzigen.

Alle triggers
runtimeConfiguration.concurrency.repetitions Geheel getal Wijzig de standaardlimiet voor het aantal herhalingen van 'voor elke' lus die tegelijkertijd (gelijktijdig of parallel) kunnen worden uitgevoerd.

Het instellen van de repetitions eigenschap werkt 1 op dezelfde manier als het instellen van de operationOptions eigenschap op SingleInstance. U kunt beide eigenschappen instellen, maar niet beide.

Als u de standaardlimiet wilt wijzigen, raadpleegt u 'voor elke' gelijktijdigheid of voer 'voor elke' lussen opeenvolgend uit.

Actie:

Foreach

runtimeConfiguration.paginationPolicy.minimumItemCount Geheel getal Voor specifieke acties die paginering ondersteunen en laten inschakelen, geeft deze waarde het minimum aantal resultaten op dat moet worden opgehaald.

Zie Bulkgegevens, items of resultaten ophalen met behulp van paginering om paginering in te schakelen

Actie: gevarieerd
runtimeConfiguration.secureData.properties Matrix Bij veel triggers en acties verbergen deze instellingen invoer, uitvoer of beide uit de uitvoeringsgeschiedenis van de logische app.

Zie Invoer en uitvoer uit de uitvoeringsgeschiedenis verbergen voor meer informatie over het beveiligen van deze gegevens.

De meeste triggers en acties
runtimeConfiguration.staticResult JSON-object Voor acties die de statische resultaatinstelling ondersteunen en inschakelen, heeft het staticResult object de volgende kenmerken:

- name, die verwijst naar de naam van de statische resultaatdefinitie van de huidige actie, die wordt weergegeven in het kenmerk van de staticResults werkstroom van uw logische definition app. Zie statische resultaten - Schemaverwijzing voor werkstroomdefinitietaal voor meer informatie.

- staticResultOptions, waarmee wordt aangegeven of statische resultaten wel of niet voor de huidige actie zijn Enabled .

Als u statische resultaten wilt inschakelen, raadpleegt u Logische apps testen met gesimuleerde gegevens door statische resultaten in te stellen

Actie: gevarieerd

Bewerkingsopties

U kunt het standaardgedrag voor triggers en acties wijzigen met de operationOptions eigenschap in de trigger- of actiedefinitie.

Bewerkingsoptie Type Description Trigger of actie
DisableAsyncPattern String Voer op HTTP gebaseerde acties synchroon uit in plaats van asynchroon.

Zie Acties synchroon uitvoeren om deze optie in te stellen.

Acties:

Api Verbinding maken ion,
HTTP,
Respons

IncludeAuthorizationHeadersInOutputs String Voor logische apps waarmee OAuth met Microsoft Entra ID toegang kan verlenen voor binnenkomende aanroepen naar een triggereindpunt op basis van aanvragen, neemt u de Authorization header van het OAuth-toegangstoken op in de uitvoer van de trigger. Zie De header Autorisatie opnemen in uitvoer van aanvraagtriggers voor meer informatie. Triggers:

Aanvraag,
HTTP-webhook

Sequential String Voer herhalingen voor elke lus één voor één uit, in plaats van allemaal tegelijk tegelijk.

Deze optie werkt op dezelfde manier als het instellen van de runtimeConfiguration.concurrency.repetitions eigenschap op 1. U kunt beide eigenschappen instellen, maar niet beide.

Als u deze optie wilt instellen, raadpleegt u 'voor elke' lussen sequentieel uitvoeren.

Actie:

Foreach

SingleInstance String Voer de trigger voor elk exemplaar van de logische app opeenvolgend uit en wacht tot de eerder actieve uitvoering is voltooid voordat het volgende exemplaar van de logische app wordt geactiveerd.

Deze optie werkt op dezelfde manier als het instellen van de runtimeConfiguration.concurrency.runs eigenschap op 1. U kunt beide eigenschappen instellen, maar niet beide.

Zie Trigger-exemplaren sequentieel om deze optie in te stellen.

Alle triggers
SuppressWorkflowHeaders String Verzend geen x-ms-* metagegevensheaders in uitgaande aanvragen. De Azure Logic Apps-service bevat standaard extra headers voor metagegevens met het x-ms- voorvoegsel in de headernaam als onderdeel van uitgaande aanvragen. Sommige verouderde services accepteren echter geen aanvragen met extra onbekende headers, wat resulteert in mislukte aanvragen. Acties:

HTTP,
Functie,
APIManagement

SuppressWorkflowHeadersOnResponse String Verzend geen x-ms-* metagegevensheaders in antwoorden op binnenkomende triggeraanvragen. De Azure Logic Apps-service verzendt standaard antwoorden naar binnenkomende aanvragen met extra metagegevensheaders met het x-ms- voorvoegsel in de headernaam. Sommige verouderde services accepteren echter geen aanvragen of antwoorden met extra onbekende headers, wat resulteert in mislukte aanvragen. Triggers:

Aanvraag,
HTTP-webhook

Gelijktijdigheid van triggers wijzigen

Werkstroomexemplaren van logische apps worden standaard allemaal tegelijk uitgevoerd (gelijktijdig of parallel). Dit gedrag betekent dat elke triggerinstantie wordt geactiveerd voordat het eerder actieve werkstroomexemplaren zijn uitgevoerd. Het aantal gelijktijdig actieve exemplaren heeft echter een standaardlimiet. Wanneer het aantal gelijktijdig actieve werkstroomexemplaren deze limiet bereikt, moeten andere nieuwe exemplaren wachten totdat deze wordt uitgevoerd. Deze limiet helpt bij het beheren van het aantal aanvragen dat back-endsystemen ontvangen.

Wanneer u het gelijktijdigheidsbeheer van de trigger inschakelt, worden triggerexemplaren parallel uitgevoerd tot aan de standaardlimiet. Als u deze standaardlimiet voor gelijktijdigheid wilt wijzigen, kunt u de codeweergave-editor of Logic Apps Designer gebruiken omdat het wijzigen van de gelijktijdigheidsinstelling via de ontwerpfunctie de runtimeConfiguration.concurrency.runs eigenschap toevoegt of bijwerkt in de onderliggende triggerdefinitie en vice versa. Met deze eigenschap bepaalt u het maximum aantal nieuwe werkstroomexemplaren dat parallel kan worden uitgevoerd.

Bekijk de volgende overwegingen voordat u gelijktijdigheid inschakelt voor een trigger:

  • U kunt gelijktijdigheid niet uitschakelen nadat u het gelijktijdigheidsbeheer hebt ingeschakeld.

  • Als het maximum aantal gelijktijdige triggeruitvoeringen de maximale mate van parallelle uitvoering bereikt, kunnen volgende triggeruitvoeringen leiden tot beperking of fouten met '429 - Te veel aanvragen'. Als u een beleid voor opnieuw proberen instelt dat 429-fouten afhandelt, kan de trigger een cyclus van opnieuw proberen en beperkingsgedrag ervaren dat lange vertragingen veroorzaakt bij het verwerken van nieuwe triggeraanvragen.

  • Wanneer gelijktijdigheid is ingeschakeld, wordt de SplitOn-limiet aanzienlijk verminderd voor het debatching van matrices. Als het aantal items deze limiet overschrijdt, wordt de functie SplitOn uitgeschakeld.

  • Wanneer gelijktijdigheid is ingeschakeld, kan een langlopend exemplaar van een logische app ervoor zorgen dat nieuwe exemplaren van logische apps een wachtstatus invoeren. Deze status voorkomt dat Azure Logic Apps nieuwe exemplaren maakt en zelfs gebeurt wanneer het aantal gelijktijdige uitvoeringen kleiner is dan het opgegeven maximum aantal gelijktijdige uitvoeringen.

    • Als u deze status wilt onderbreken, annuleert u de vroegste exemplaren die nog steeds worden uitgevoerd.

      1. Selecteer Overzicht in het menu van uw logische app.

      2. Selecteer in de sectie Uitvoeringsgeschiedenis het vroegste exemplaar dat nog steeds wordt uitgevoerd, bijvoorbeeld:

        Select earliest running instance

        Tip

        Als u alleen exemplaren wilt weergeven die nog actief zijn, opent u de lijst Alle en selecteert u Uitvoeren.

      3. Selecteer onder Uitvoering van logische app de optie Uitvoering annuleren.

        Find earliest running instance

    • Als u deze mogelijkheid wilt omzeilen, voegt u een time-out toe aan een actie die deze uitvoeringen kan bevatten. Als u in de code-editor werkt, raadpleegt u Asynchrone duur wijzigen. Als u de ontwerpfunctie gebruikt, voert u anders de volgende stappen uit:

      1. Selecteer in de werkstroom van uw logische app de actie waaraan u een time-out wilt toevoegen. Selecteer in de rechterbovenhoek van de actie de knop met weglatingstekens (...) en selecteer vervolgens Instellingen.

        Open action settings

      2. Geef onder Time-out de time-outduur op in ISO 8601-indeling.

        Specify timeout duration

  • Als u uw logische app opeenvolgend wilt uitvoeren, stelt u de gelijktijdigheid 1 van de trigger in op ofwel met behulp van de codeweergave-editor of de ontwerper. Zorg ervoor dat u de eigenschap SingleInstance van operationOptions de trigger niet ook instelt in de codeweergave-editor. Anders krijgt u een validatiefout. Zie Trigger-exemplaren opeenvolgend voor meer informatie.

Bewerken in de codeweergave

Voeg in de onderliggende triggerdefinitie de runtimeConfiguration.concurrency.runs eigenschap toe en stel de waarde in op basis van de gelijktijdigheidslimieten van de trigger. Als u uw werkstroom opeenvolgend wilt uitvoeren, stelt u de eigenschapswaarde in op 1.

In dit voorbeeld worden gelijktijdige uitvoeringen beperkt tot 10 exemplaren:

"<trigger-name>": {
   "type": "<trigger-name>",
   "recurrence": {
      "frequency": "<time-unit>",
      "interval": <number-of-time-units>,
   },
   "runtimeConfiguration": {
      "concurrency": {
         "runs": 10
      }
   }
}

Zie Runtime-configuratie-instellingen voor meer informatie.

Bewerken in Logic Apps Designer

  1. Selecteer in de rechterbovenhoek van de trigger de knop met weglatingstekens (...) en selecteer vervolgens Instellingen.

  2. Stel Onder Gelijktijdigheidsbeheer limiet in op Aan.

  3. Sleep de schuifregelaar Degree of Parallelism naar de gewenste waarde. Als u de logische app sequentieel wilt uitvoeren, sleept u de schuifregelaarwaarde naar 1.

Gelijktijdigheid 'voor elke' wijzigen

Standaard worden herhalingen voor elke lus op hetzelfde moment uitgevoerd (gelijktijdig of parallel). Dit gedrag betekent dat elke iteratie wordt uitgevoerd voordat de vorige iteratie is uitgevoerd. Het aantal gelijktijdig uitgevoerde iteraties heeft echter een standaardlimiet. Wanneer het aantal gelijktijdig uitgevoerde iteraties deze limiet bereikt, moeten alle andere iteraties wachten om te worden uitgevoerd.

Als u de standaardlimiet wilt wijzigen, kunt u de codeweergave-editor of Logic Apps Designer gebruiken, omdat u de gelijktijdigheidsinstelling via de ontwerpfunctie wijzigt of de runtimeConfiguration.concurrency.repetitions eigenschap bijwerkt in de onderliggende actiedefinitie voor elke actie en omgekeerd. Deze eigenschap bepaalt het maximum aantal iteraties dat parallel kan worden uitgevoerd.

Notitie

Als u de actie 'voor elke actie' instelt om opeenvolgend uit te voeren met behulp van de ontwerpfunctie of de codeweergave-editor, stelt u de eigenschap Sequential van operationOptions de actie niet in in de codeweergave-editor. Anders krijgt u een validatiefout. Zie Sequentieel uitvoeren voor elke lus voor meer informatie.

Bewerken in de codeweergave

Voeg in de onderliggende definitie voor elke definitie de eigenschap toe of werk deze runtimeConfiguration.concurrency.repetitions bij, die een waarde kan hebben die varieert van 1 en 50.

Hier volgt een voorbeeld waarmee gelijktijdige uitvoeringen worden beperkt tot 10 iteraties:

"For_each" {
   "type": "Foreach",
   "actions": { "<actions-to-run>" },
   "foreach": "<for-each-expression>",
   "runAfter": {},
   "runtimeConfiguration": {
      "concurrency": {
         "repetitions": 10
      }
   }
}

Zie Runtime-configuratie-instellingen voor meer informatie.

Bewerken in Logic Apps Designer

  1. Selecteer in de rechterbovenhoek van de actie Voor elke actie het beletselteken (...) en selecteer vervolgens Instellingen.

  2. Stel onder Gelijktijdigheidsbeheer het besturingselement Gelijktijdigheid in op Aan.

  3. Sleep de schuifregelaar Degree of Parallelism naar de gewenste waarde. Als u de logische app sequentieel wilt uitvoeren, sleept u de schuifregelaarwaarde naar 1.

Limiet voor wachtende uitvoeringen wijzigen

Werkstroomexemplaren van logische apps worden standaard allemaal tegelijk uitgevoerd (gelijktijdig of parallel). Dit gedrag betekent dat elke triggerinstantie wordt geactiveerd voordat het eerder actieve werkstroomexemplaren zijn uitgevoerd. Er bestaat echter een standaardlimiet voor het aantal gelijktijdig uitgevoerde werkstroomexemplaren. Wanneer het aantal gelijktijdige uitvoeringen deze limiet bereikt, moeten andere nieuwe werkstroomexemplaren wachten totdat deze wordt uitgevoerd. Er bestaat ook een standaardlimiet voor het aantal wachtende werkstroomexemplaren. Wanneer het aantal wachtende exemplaren deze limiet bereikt, accepteert de Azure Logic Apps-engine geen nieuwe werkstroomexemplaren meer om uit te voeren. Aanvraag- en webhooktriggers retourneren 429 - Te veel aanvragenfouten en terugkerende triggers beginnen met het overslaan van pollingpogingen.

U kunt de standaardlimiet voor gelijktijdigheid van triggers en de standaardlimiet voor wachtende uitvoeringen wijzigen. Deze wijziging vertraagt echter voornamelijk de trigger om de druk te verlichten als gevolg van gelijktijdigheid. Als u bijvoorbeeld een poll-trigger hebt en de wachtrij voor wachtende uitvoeringen vol is vanwege uitvoeringen die worden uitgevoerd, stopt Azure Logic Apps met polling. Als uw werkstroom gebruikmaakt van een trigger op basis van aanvragen en de wachtrij voor wachtende uitvoeringen vol is, retourneert Azure Logic Apps de fout 429. Sommige scenario's bestaan waarbij Azure Logic Apps de trigger niet kan stoppen met pollen zonder fouten te introduceren en ervoor kiest om dergelijke uitvoeringen toch toe te voegen aan de wachtrij voor wachtende uitvoeringen zonder dat de aanroepen mislukken.

Voeg in de onderliggende triggerdefinitie de runtimeConfiguration.concurrency.maximumWaitingRuns eigenschap toe, die een waarde kan hebben die varieert van 1 tot 100.

"<trigger-name>": {
   "type": "<trigger-name>",
   "recurrence": {
      "frequency": "<time-unit>",
      "interval": <number-of-time-units>,
   },
   "runtimeConfiguration": {
      "concurrency": {
         "maximumWaitingRuns": 50
      }
   }
}

Zie Runtime-configuratie-instellingen voor meer informatie.

Triggerexemplaren sequentieel

Als u elk werkstroomexemplaren van een logische app alleen wilt uitvoeren nadat het vorige exemplaar is uitgevoerd, stelt u de trigger in om sequentieel uit te voeren. U kunt de codeweergave-editor of Logic Apps Designer gebruiken, omdat u de gelijktijdigheidsinstelling via de ontwerpfunctie ook toevoegt of bijwerkt runtimeConfiguration.concurrency.runs in de onderliggende triggerdefinitie en omgekeerd.

Notitie

Wanneer u een trigger instelt om sequentieel uit te voeren met behulp van de ontwerpfunctie of de codeweergave-editor, moet u de eigenschap Sequential van operationOptions de trigger niet instellen in de codeweergave-editor. Anders krijgt u een validatiefout.

Bewerken in de codeweergave

Stel in de triggerdefinitie een van deze eigenschappen in, maar niet beide.

Stel de runtimeConfiguration.concurrency.runs eigenschap in op 1:

"<trigger-name>": {
   "type": "<trigger-name>",
   "recurrence": {
      "frequency": "<time-unit>",
      "interval": <number-of-time-units>,
   },
   "runtimeConfiguration": {
      "concurrency": {
         "runs": 1
      }
   }
}

-Of-

Stel de operationOptions eigenschap in op SingleInstance:

"<trigger-name>": {
   "type": "<trigger-name>",
   "recurrence": {
      "frequency": "<time-unit>",
      "interval": <number-of-time-units>,
   },
   "operationOptions": "SingleInstance"
}

Zie Runtime-configuratie-instellingen en bewerkingsopties voor meer informatie.

Bewerken in Logic Apps Designer

  1. Selecteer in de rechterbovenhoek van de trigger de knop met weglatingstekens (...) en selecteer vervolgens Instellingen.

  2. Stel Onder Gelijktijdigheidsbeheer limiet in op Aan.

  3. Sleep de schuifregelaar Degree of Parallelism naar het getal 1.

Voer sequentieel 'voor elke' lussen uit

Als u een lusiteratie 'voor elke' alleen wilt uitvoeren nadat de vorige iteratie is uitgevoerd, stelt u de actie 'voor elke' in om sequentieel uit te voeren. U kunt de codeweergave-editor of Logic Apps Designer gebruiken, omdat u de gelijktijdigheid van de actie wijzigt via de ontwerpfunctie ook de runtimeConfiguration.concurrency.repetitions eigenschap toevoegt of bijwerkt in de onderliggende actiedefinitie en omgekeerd.

Notitie

Wanneer u een actie 'voor elke actie' instelt om opeenvolgend uit te voeren met behulp van de editor voor ontwerpfunctie of codeweergave, moet u de eigenschap Sequential van operationOptions de actie niet instellen in de codeweergave-editor. Anders krijgt u een validatiefout.

Bewerken in de codeweergave

Stel in de actiedefinitie een van deze eigenschappen in, maar niet beide.

Stel de runtimeConfiguration.concurrency.repetitions eigenschap in op 1:

"For_each" {
   "type": "Foreach",
   "actions": { "<actions-to-run>" },
   "foreach": "<for-each-expression>",
   "runAfter": {},
   "runtimeConfiguration": {
      "concurrency": {
         "repetitions": 1
      }
   }
}

-Of-

Stel de operationOptions eigenschap in op Sequential:

"For_each" {
   "type": "Foreach",
   "actions": { "<actions-to-run>" },
   "foreach": "<for-each-expression>",
   "runAfter": {},
   "operationOptions": "Sequential"
}

Zie Runtime-configuratie-instellingen en bewerkingsopties voor meer informatie.

Bewerken in Logic Apps Designer

  1. Selecteer in de rechterbovenhoek van elke actie het beletselteken (...) en selecteer vervolgens Instellingen.

  2. Stel onder Gelijktijdigheidsbeheer het besturingselement Gelijktijdigheid in op Aan.

  3. Sleep de schuifregelaar Degree of Parallelism naar het getal 1.

Acties uitvoeren in een synchrone bewerkingspatroon

De HTTP-actie en API Verbinding maken ionacties in Azure Logic Apps volgen standaard het standaard asynchrone bewerkingspatroon, terwijl de actie Antwoord het synchrone bewerkingspatroon volgt. Het asynchrone patroon geeft aan dat na een actie een aanvraag wordt aangeroepen of verzonden naar het opgegeven eindpunt, de service, het systeem of de API, de ontvanger onmiddellijk een antwoord '202 GEACCEPTEERD' retourneert. Deze code bevestigt dat de ontvanger de aanvraag heeft geaccepteerd, maar nog niet is verwerkt. Het antwoord kan een location header bevatten die de URL en een vernieuwings-id aangeeft die de beller kan gebruiken om voortdurend de status van de asynchrone aanvraag te controleren totdat de ontvanger stopt met verwerken en een geslaagd antwoord van 200 OK of een ander niet-202-antwoord retourneert. Zie Asynchrone microservice-integratie dwingt microserviceautonomie af voor meer informatie.

  • In logic app Designer hebben de HTTP-actie, API Verbinding maken ionacties en antwoordactie de instelling Asynchroon patroon. Wanneer deze instelling is ingeschakeld, geeft deze instelling aan dat de beller niet wacht tot de verwerking is voltooid en verder kan gaan met de volgende actie, maar de status blijft controleren totdat de verwerking stopt. Als deze instelling is uitgeschakeld, geeft deze instelling aan dat de beller wacht tot de verwerking is voltooid voordat de volgende actie wordt uitgevoerd. Volg deze stappen om deze instelling te vinden:

    1. Selecteer op de titelbalk van de HTTP-actie de knop met weglatingstekens (...), waarmee de instellingen van de actie worden geopend.

    2. Zoek de instelling Asynchroon patroon .

  • In de onderliggende JSON-definitie (JavaScript Object Notation) van de actie volgen de HTTP-actie en API Verbinding maken ionacties impliciet het asynchrone bewerkingspatroon.

In sommige scenario's wilt u mogelijk dat een actie het synchrone patroon volgt. Wanneer u bijvoorbeeld de HTTP-actie gebruikt, kunt u het volgende doen:

In deze gevallen kunt u een actie synchroon uitvoeren met behulp van deze opties:

  • Vervang de polling-versie van die actie door een webhookversie, indien beschikbaar.

  • Schakel het asynchrone gedrag van de actie uit door een van de volgende opties te volgen:

Asynchrone patrooninstelling uitschakelen

  1. Selecteer in de ontwerpfunctie voor logische apps op de titelbalk van de actie de knop met weglatingstekens (...), waarmee de instellingen van de actie worden geopend.

  2. Zoek de instelling Asynchroon patroon , schakel de instelling uit als deze is ingeschakeld en selecteer Gereed.

    Turn off

Asynchroon patroon uitschakelen in de JSON-definitie van de actie

Voeg in de onderliggende JSON-definitie van de actie de eigenschap"DisableAsyncPattern" operationOptions toe en stel deze in op onder de sectie van "inputs" de actie, bijvoorbeeld:

"<some-long-running-action>": {
   "type": "Http",
   "inputs": { "<action-inputs>" },
   "operationOptions": "DisableAsyncPattern",
   "runAfter": {}
}

Triggers en acties verifiëren

HTTP- en HTTPS-eindpunten ondersteunen verschillende soorten verificatie. Op basis van de trigger of actie die u gebruikt om uitgaande aanroepen of aanvragen voor toegang tot deze eindpunten te maken, kunt u kiezen uit verschillende typen verificatie. Zie Verificatie toevoegen aan uitgaande oproepen voor meer informatie.

Volgende stappen