Azure Logic Apps için Iş akışı Tanım dilindeki tetikleyici ve eylem türleri için başvuruReference for trigger and action types in Workflow Definition Language for Azure Logic Apps

Bu başvuru, mantıksal uygulamanızın Iş akışı Tanım Dilitarafından tanımlanan ve doğrulanan temel alınan iş akışı tanımındaki Tetikleyicileri ve eylemleri tanımlamak için kullanılan genel türleri açıklar.This reference describes the general types used for identifying triggers and actions in your logic app's underlying workflow definition, which is described and validated by the Workflow Definition Language. Mantıksal uygulamalarınızda kullanabileceğiniz belirli bağlayıcı tetikleyicilerini ve eylemlerini bulmak için, Bağlayıcılar genel bakışaltındaki listeye bakın.To find specific connector triggers and actions that you can use in your logic apps, see the list under the Connectors overview.

Tetikleyicilere genel bakışTriggers overview

Her iş akışı, iş akışını örnekleyip Başlatan çağrıları tanımlayan bir tetikleyici içerir.Every workflow includes a trigger, which defines the calls that instantiate and start the workflow. Genel tetikleyici kategorileri şunlardır:Here are the general trigger categories:

  • Düzenli aralıklarla bir hizmetin uç noktasını denetleyen bir yoklama tetikleyicisiA polling trigger, which checks a service's endpoint at regular intervals

  • Uç nokta için bir abonelik oluşturan ve bir geri çağırma URL 'si sağlayan bir gönderme tetikleyicisi, belirtilen olay gerçekleştiğinde veya veriler kullanılabilir olduğunda bitiş noktasının tetikleyiciyi bildirebilmesi için bir geri arama URL 'si sağlar.A push trigger, which creates a subscription to an endpoint and provides a callback URL so the endpoint can notify the trigger when the specified event happens or data is available. Tetikleyici daha sonra, başlamadan önce uç noktanın yanıtını bekler.The trigger then waits for the endpoint's response before firing.

Tetikleyiciler, bazı isteğe bağlı olsa da, bu en üst düzey öğelere sahiptir:Triggers have these top-level elements, although some are optional:

"<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>"
},

GerekliRequired

ValueValue TypeType AçıklamaDescription
<trigger-name><trigger-name> DizeString Tetikleyicinin adıThe name for the trigger
<trigger-type><trigger-type> DizeString "Http" veya "ApiConnection" gibi tetikleyici türüThe trigger type such as "Http" or "ApiConnection"
<trigger-inputs><trigger-inputs> JSON nesnesiJSON Object Tetikleyicinin davranışını tanımlayan girişlerThe inputs that define the trigger's behavior
<time-unit><time-unit> DizeString Tetikleyicinin ne sıklıkta çalıştığını açıklayan zaman birimi: "Saniye", "dakika", "saat", "gün", "hafta", "ay"The unit of time that describes how often the trigger fires: "Second", "Minute", "Hour", "Day", "Week", "Month"
<number-of-time-units><number-of-time-units> IntegerInteger Tetikleyicinin yeniden tetiklenmesi için bekleyeceği zaman birimi sayısı olan sıklık temelinde tetikleyicinin ne sıklıkta tetikleyeceğini belirten bir değerA value that specifies how often the trigger fires based on the frequency, which is the number of time units to wait until the trigger fires again

En düşük ve en büyük aralıklar aşağıda verilmiştir:Here are the minimum and maximum intervals:

Başından 1-16 ay- Month: 1-16 months
Günündeki 1-500 gün- Day: 1-500 days
Saate 1-12000 saat- Hour: 1-12,000 hours
Dakikaya 1-72000 dakika- Minute: 1-72,000 minutes
İkincisi 1-9999999 saniye- Second: 1-9,999,999 seconds

Örneğin, Aralık 6, sıklık ise "month" ise, yineleme 6 aydır.For example, if the interval is 6, and the frequency is "Month", the recurrence is every 6 months.

SeçimOptional

ValueValue TypeType AçıklamaDescription
<array-with-conditions><array-with-conditions> ArrayArray İş akışının çalıştırılıp çalıştırılmayacağını tespit eden bir veya daha fazla koşul içeren bir dizi.An array that contains one or more conditions that determine whether to run the workflow. Yalnızca Tetikleyiciler için kullanılabilir.Available only for triggers.
<runtime-config-options><runtime-config-options> JSON nesnesiJSON Object Özellikleri ayarlayarak runtimeConfiguration tetikleyici çalışma zamanı davranışını değiştirebilirsiniz.You can change trigger runtime behavior by setting runtimeConfiguration properties. Daha fazla bilgi için bkz. çalışma zamanı yapılandırma ayarları.For more information, see Runtime configuration settings.
<Spton-ifadesi><splitOn-expression> DizeString Dizi döndüren Tetikleyiciler için, dizi öğelerini işlemek üzere birden çok iş akışı örneğine ayıran veya içermeyen bir ifade belirtebilirsiniz.For triggers that return an array, you can specify an expression that splits or debatches array items into multiple workflow instances for processing.
<operation-option><operation-option> DizeString operationOptions Özelliği ayarlayarak varsayılan davranışı değiştirebilirsiniz.You can change the default behavior by setting the operationOptions property. Daha fazla bilgi için bkz. işlem seçenekleri.For more information, see Operation options.

Tetikleyici türleri listesiTrigger types list

Her tetikleyici türünün, tetikleyicisinin davranışını tanımlayan farklı bir arabirimi ve girişleri vardır.Each trigger type has a different interface and inputs that define the trigger's behavior.

Yerleşik TetikleyicilerBuilt-in triggers

Tetikleyici türüTrigger type AçıklamaDescription
HTTPHTTP Tüm uç noktaları denetler veya yoklar .Checks or polls any endpoint. Bu uç noktanın, bir "202" zaman uyumsuz düzeni kullanılarak veya bir dizi döndürerek belirli bir tetikleyici sözleşmesine uyması gerekir.This endpoint must conform to a specific trigger contract either by using a "202" asynchronous pattern or by returning an array.
HTTPWebhookHTTPWebhook Mantıksal uygulamanız için çağrılabilir bir uç nokta oluşturur, ancak kayıt veya kayıt silme için belirtilen URL 'YI çağırır.Creates a callable endpoint for your logic app but calls the specified URL to register or unregister.
RecurrenceRecurrence Tanımlı bir zamanlamaya göre ateşlenir.Fires based on a defined schedule. Bu tetikleyiciyi tetikleyebilmeniz için gelecek bir tarih ve saat ayarlayabilirsiniz.You can set a future date and time for firing this trigger. Sıklık temelinde, iş akışınızı çalıştırmak için saatler ve günler de belirtebilirsiniz.Based on the frequency, you can also specify times and days for running your workflow.
RequestRequest Mantıksal uygulamanız için çağrılabilir bir uç nokta oluşturur ve "el ile" tetikleyicisi olarak da bilinir.Creates a callable endpoint for your logic app and is also known as a "manual" trigger. Örneğin, bkz. http uç noktaları Ile çağrı, tetikleyici veya iç içe iş akışları.For example, see Call, trigger, or nest workflows with HTTP endpoints.

Yönetilen API TetikleyicileriManaged API triggers

Tetikleyici türüTrigger type AçıklamaDescription
ApiConnectionApiConnection Bir uç noktayı Microsoft tarafından yönetilen API 'lerkullanarak denetler veya yoklar .Checks or polls an endpoint by using Microsoft-managed APIs.
ApiConnectionWebhookApiConnectionWebhook Abone ol ve abonelik kaldırma için Microsoft tarafından yönetilen API 'ler çağırarak mantıksal uygulamanız için çağrılabilir bir uç nokta oluşturur.Creates a callable endpoint for your logic app by calling Microsoft-managed APIs to subscribe and unsubscribe.

Tetikleyiciler-ayrıntılı başvuruTriggers - Detailed reference

APIConnection tetikleyicisiAPIConnection trigger

Bu tetikleyici, Microsoft tarafından yönetilen API 'ler kullanarak bir uç noktayı denetler veya yoklar ve bu tetikleyicinin parametreleri uç noktaya göre farklılık gösterebilir.This trigger checks or polls an endpoint by using Microsoft-managed APIs so the parameters for this trigger can differ based on the endpoint. Bu tetikleyici tanımındaki birçok bölüm isteğe bağlıdır.Many sections in this trigger definition are optional. Tetikleyicinin davranışı bölümlerin dahil edilip edilmeyeceğini gösterir.The trigger's behavior depends on whether or not sections are included.

"<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>"
}

GerekliRequired

ValueValue TypeType AçıklamaDescription
<APIConnection_trigger_name><APIConnection_trigger_name> DizeString Tetikleyicinin adıThe name for the trigger
<bağlantı adı><connection-name> DizeString İş akışının kullandığı yönetilen API bağlantısı için adThe name for the connection to the managed API that the workflow uses
<Yöntem-tür><method-type> DizeString Yönetilen API ile iletişim kurmak için HTTP yöntemi: "AL", "PUT", "POST", "PATCH", "DELETE"The HTTP method for communicating with the managed API: "GET", "PUT", "POST", "PATCH", "DELETE"
<api-işlem><api-operation> DizeString Çağrılacak API işlemiThe API operation to call
<time-unit><time-unit> DizeString Tetikleyicinin ne sıklıkta çalıştığını açıklayan zaman birimi: "Saniye", "dakika", "saat", "gün", "hafta", "ay"The unit of time that describes how often the trigger fires: "Second", "Minute", "Hour", "Day", "Week", "Month"
<number-of-time-units><number-of-time-units> IntegerInteger Tetikleyicinin yeniden tetiklenmesi için bekleyeceği zaman birimi sayısı olan sıklık temelinde tetikleyicinin ne sıklıkta tetikleyeceğini belirten bir değerA value that specifies how often the trigger fires based on the frequency, which is the number of time units to wait until the trigger fires again

En düşük ve en büyük aralıklar aşağıda verilmiştir:Here are the minimum and maximum intervals:

Başından 1-16 ay- Month: 1-16 months
Günündeki 1-500 gün- Day: 1-500 days
Saate 1-12000 saat- Hour: 1-12,000 hours
Dakikaya 1-72000 dakika- Minute: 1-72,000 minutes
İkincisi 1-9999999 saniye- Second: 1-9,999,999 seconds

Örneğin, Aralık 6, sıklık ise "month" ise, yineleme 6 aydır.For example, if the interval is 6, and the frequency is "Month", the recurrence is every 6 months.

SeçimOptional

ValueValue TypeType AçıklamaDescription
<yeniden deneme davranışı><retry-behavior> JSON nesnesiJSON Object 408, 429 ve 5XX durum koduna ve tüm bağlantı özel durumlarına sahip aralıklı olmayan hatalara yönelik yeniden deneme davranışını özelleştirir.Customizes the retry behavior for intermittent failures, which have the 408, 429, and 5XX status code, and any connectivity exceptions. Daha fazla bilgi için bkz. yeniden deneme ilkeleri.For more information, see Retry policies.
<sorgu-Parametreler><query-parameters> JSON nesnesiJSON Object API çağrısıyla birlikte içerilecek herhangi bir sorgu parametresi.Any query parameters to include with the API call. Örneğin, "queries": { "api-version": "2018-01-01" } nesnesi çağrıya ekler ?api-version=2018-01-01 .For example, the "queries": { "api-version": "2018-01-01" } object adds ?api-version=2018-01-01 to the call.
<en fazla çalıştırma><max-runs> IntegerInteger Varsayılan olarak, iş akışı örnekleri aynı anda veya varsayılan sınıraparalel olarak çalışır.By default, workflow instances run at the same time, or in parallel up to the default limit. Yeni bir <sayı> değeri ayarlayarak bu sınırı değiştirmek için bkz. tetikleyici eşzamanlılık değiştirme.To change this limit by setting a new <count> value, see Change trigger concurrency.
<en fazla çalıştırma-kuyruk><max-runs-queue> IntegerInteger İş akışınız, runtimeConfiguration.concurrency.runs özelliği temel alarak değiştirebileceğiniz en fazla örnek sayısını zaten çalıştırıyorsa, tüm yeni çalıştırmalar bu kuyruğa varsayılan sınırakadar yerleştirilir.When your workflow is already running the maximum number of instances, which you can change based on the runtimeConfiguration.concurrency.runs property, any new runs are put into this queue up to the default limit. Varsayılan sınırı değiştirmek için bkz. değişiklik bekleyen çalışma sınırı.To change the default limit, see Change waiting runs limit.
<Spton-ifadesi><splitOn-expression> DizeString Bu ifade, diziler döndüren Tetikleyiciler için, "for each" döngüsünü kullanmak yerine her bir dizi öğesi için bir iş akışı örneği oluşturup çalıştırabilmeniz için kullanılacak diziye başvurur.For triggers that return arrays, this expression references the array to use so that you can create and run a workflow instance for each array item, rather than use a "for each" loop.

Örneğin, bu ifade, tetikleyicinin gövde içeriği içinde döndürülen dizideki bir öğeyi temsil eder:@triggerbody()?['value']For example, this expression represents an item in the array returned within the trigger's body content: @triggerbody()?['value']

<operation-option><operation-option> DizeString operationOptions Özelliği ayarlayarak varsayılan davranışı değiştirebilirsiniz.You can change the default behavior by setting the operationOptions property. Daha fazla bilgi için bkz. işlem seçenekleri.For more information, see Operation options.

ÇıkışlarOutputs

ÖğeElement TypeType AçıklamaDescription
Bilgisindeheaders JSON nesnesiJSON Object Yanıttaki üstbilgilerThe headers from the response
bodybody JSON nesnesiJSON Object Yanıttaki gövdeThe body from the response
Durum kodustatus code IntegerInteger Yanıttaki durum koduThe status code from the response

ÖrnekExample

Bu tetikleyici tanımı, bir Office 365 Outlook hesabı için gelen kutusu içinde her gün e-postayı denetler:This trigger definition checks for email every day inside the inbox for an Office 365 Outlook account:

"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
   }
}

Apiconnectionweb kancası tetikleyicisiApiConnectionWebhook trigger

Bu tetikleyici, Microsoft tarafından yönetilen BIR APIkullanarak bir uç noktaya bir abonelik isteği gönderir, uç noktanın yanıt gönderebildiği ve bitiş noktasının yanıt vermesini beklediği bir geri çağırma URL 'si sağlar.This trigger sends a subscription request to an endpoint by using a Microsoft-managed API, provides a callback URL to where the endpoint can send a response, and waits for the endpoint to respond. Daha fazla bilgi için bkz. Endpoint abonelikleri.For more information, see Endpoint subscriptions.

"<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>"
}

GerekliRequired

ValueValue TypeType AçıklamaDescription
<bağlantı adı><connection-name> DizeString İş akışının kullandığı yönetilen API bağlantısı için adThe name for the connection to the managed API that the workflow uses
<gövde-içerik><body-content> JSON nesnesiJSON Object Yönetilen API 'ye yük olarak göndermek için herhangi bir ileti içeriğiAny message content to send as payload to the managed API

SeçimOptional

ValueValue TypeType AçıklamaDescription
<yeniden deneme davranışı><retry-behavior> JSON nesnesiJSON Object 408, 429 ve 5XX durum koduna ve tüm bağlantı özel durumlarına sahip aralıklı olmayan hatalara yönelik yeniden deneme davranışını özelleştirir.Customizes the retry behavior for intermittent failures, which have the 408, 429, and 5XX status code, and any connectivity exceptions. Daha fazla bilgi için bkz. yeniden deneme ilkeleri.For more information, see Retry policies.
<sorgu-Parametreler><query-parameters> JSON nesnesiJSON Object API çağrısıyla birlikte içerilecek sorgu parametreleriAny query parameters to include with the API call

Örneğin, "queries": { "api-version": "2018-01-01" } nesnesi çağrıya ekler ?api-version=2018-01-01 .For example, the "queries": { "api-version": "2018-01-01" } object adds ?api-version=2018-01-01 to the call.

<en fazla çalıştırma><max-runs> IntegerInteger Varsayılan olarak, iş akışı örnekleri aynı anda veya varsayılan sınıraparalel olarak çalışır.By default, workflow instances run at the same time, or in parallel up to the default limit. Yeni bir <sayı> değeri ayarlayarak bu sınırı değiştirmek için bkz. tetikleyici eşzamanlılık değiştirme.To change this limit by setting a new <count> value, see Change trigger concurrency.
<en fazla çalıştırma-kuyruk><max-runs-queue> IntegerInteger İş akışınız, runtimeConfiguration.concurrency.runs özelliği temel alarak değiştirebileceğiniz en fazla örnek sayısını zaten çalıştırıyorsa, tüm yeni çalıştırmalar bu kuyruğa varsayılan sınırakadar yerleştirilir.When your workflow is already running the maximum number of instances, which you can change based on the runtimeConfiguration.concurrency.runs property, any new runs are put into this queue up to the default limit. Varsayılan sınırı değiştirmek için bkz. değişiklik bekleyen çalışma sınırı.To change the default limit, see Change waiting runs limit.
<Spton-ifadesi><splitOn-expression> DizeString Bu ifade, diziler döndüren Tetikleyiciler için, "for each" döngüsünü kullanmak yerine her bir dizi öğesi için bir iş akışı örneği oluşturup çalıştırabilmeniz için kullanılacak diziye başvurur.For triggers that return arrays, this expression references the array to use so that you can create and run a workflow instance for each array item, rather than use a "for each" loop.

Örneğin, bu ifade, tetikleyicinin gövde içeriği içinde döndürülen dizideki bir öğeyi temsil eder:@triggerbody()?['value']For example, this expression represents an item in the array returned within the trigger's body content: @triggerbody()?['value']

<operation-option><operation-option> DizeString operationOptions Özelliği ayarlayarak varsayılan davranışı değiştirebilirsiniz.You can change the default behavior by setting the operationOptions property. Daha fazla bilgi için bkz. işlem seçenekleri.For more information, see Operation options.

ÖrnekExample

Bu tetikleyici tanımı Office 365 Outlook API 'sine abone olur, API uç noktası için bir geri çağırma URL 'SI sağlar ve yeni bir e-posta geldiğinde bitiş noktasının yanıt vermesini bekler.This trigger definition subscribes to the Office 365 Outlook API, provides a callback URL to the API endpoint, and waits for the endpoint to respond when a new email arrives.

"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 tetikleyicisiHTTP trigger

Bu tetikleyici belirtilen bitiş noktasını belirtilen yinelenme zamanlaması temelinde denetler veya yoklar.This trigger checks or polls the specified endpoint based on the specified recurrence schedule. Uç noktanın yanıtı, iş akışının çalışıp çalışmadığını belirler.The endpoint's response determines whether the workflow runs.

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

GerekliRequired

ValueValue TypeType AçıklamaDescription
<Yöntem-tür><method-type> DizeString Belirtilen uç noktayı yoklamak için kullanılacak HTTP yöntemi: "AL", "PUT", "POST", "PATCH", "DELETE"The HTTP method to use for polling the specified endpoint: "GET", "PUT", "POST", "PATCH", "DELETE"
<uç nokta-URL><endpoint-URL> DizeString Yoklamaya bitiş noktası için HTTP veya HTTPS URL 'SIThe HTTP or HTTPS URL for the endpoint to poll

En büyük dize boyutu: 2 KBMaximum string size: 2 KB

<time-unit><time-unit> DizeString Tetikleyicinin ne sıklıkta çalıştığını açıklayan zaman birimi: "Saniye", "dakika", "saat", "gün", "hafta", "ay"The unit of time that describes how often the trigger fires: "Second", "Minute", "Hour", "Day", "Week", "Month"
<number-of-time-units><number-of-time-units> IntegerInteger Tetikleyicinin yeniden tetiklenmesi için bekleyeceği zaman birimi sayısı olan sıklık temelinde tetikleyicinin ne sıklıkta tetikleyeceğini belirten bir değerA value that specifies how often the trigger fires based on the frequency, which is the number of time units to wait until the trigger fires again

En düşük ve en büyük aralıklar aşağıda verilmiştir:Here are the minimum and maximum intervals:

Başından 1-16 ay- Month: 1-16 months
Günündeki 1-500 gün- Day: 1-500 days
Saate 1-12000 saat- Hour: 1-12,000 hours
Dakikaya 1-72000 dakika- Minute: 1-72,000 minutes
İkincisi 1-9999999 saniye- Second: 1-9,999,999 seconds

Örneğin, Aralık 6, sıklık ise "month" ise, yineleme 6 aydır.For example, if the interval is 6, and the frequency is "Month", the recurrence is every 6 months.

SeçimOptional

ValueValue TypeType AçıklamaDescription
<üst bilgi-içerik><header-content> JSON nesnesiJSON Object İstekle birlikte gönderilen üstbilgilerThe headers to send with the request

Örneğin, bir isteğin dilini ve türünü ayarlamak için:For example, to set the language and type for a request:

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

<gövde-içerik><body-content> DizeString İstekle birlikte yük olarak gönderilmek üzere ileti içeriğiThe message content to send as payload with the request
<Authentication-yöntemi><authentication-method> JSON nesnesiJSON Object İsteğin kimlik doğrulaması için kullandığı yöntem.The method the request uses for authentication. Daha fazla bilgi için bkz. Scheduler giden kimlik doğrulaması.For more information, see Scheduler Outbound Authentication. Zamanlayıcı ötesinde, authority Özellik desteklenir.Beyond Scheduler, the authority property is supported. Belirtilmediğinde, varsayılan değer https://login.windows.net, ancak gibi farklı bir değerhttps://login.windows\-ppe.netde kullanabilirsiniz.When not specified, the default value is https://login.windows.net, but you can use a different value, such ashttps://login.windows\-ppe.net.
<yeniden deneme davranışı><retry-behavior> JSON nesnesiJSON Object 408, 429 ve 5XX durum koduna ve tüm bağlantı özel durumlarına sahip aralıklı olmayan hatalara yönelik yeniden deneme davranışını özelleştirir.Customizes the retry behavior for intermittent failures, which have the 408, 429, and 5XX status code, and any connectivity exceptions. Daha fazla bilgi için bkz. yeniden deneme ilkeleri.For more information, see Retry policies.
<sorgu-Parametreler><query-parameters> JSON nesnesiJSON Object İsteğe dahil edilecek herhangi bir sorgu parametresiAny query parameters to include with the request

Örneğin, "queries": { "api-version": "2018-01-01" } nesne isteğe ekler ?api-version=2018-01-01 .For example, the "queries": { "api-version": "2018-01-01" } object adds ?api-version=2018-01-01 to the request.

<en fazla çalıştırma><max-runs> IntegerInteger Varsayılan olarak, iş akışı örnekleri aynı anda veya varsayılan sınıraparalel olarak çalışır.By default, workflow instances run at the same time, or in parallel up to the default limit. Yeni bir <sayı> değeri ayarlayarak bu sınırı değiştirmek için bkz. tetikleyici eşzamanlılık değiştirme.To change this limit by setting a new <count> value, see Change trigger concurrency.
<en fazla çalıştırma-kuyruk><max-runs-queue> IntegerInteger İş akışınız, runtimeConfiguration.concurrency.runs özelliği temel alarak değiştirebileceğiniz en fazla örnek sayısını zaten çalıştırıyorsa, tüm yeni çalıştırmalar bu kuyruğa varsayılan sınırakadar yerleştirilir.When your workflow is already running the maximum number of instances, which you can change based on the runtimeConfiguration.concurrency.runs property, any new runs are put into this queue up to the default limit. Varsayılan sınırı değiştirmek için bkz. değişiklik bekleyen çalışma sınırı.To change the default limit, see Change waiting runs limit.
<operation-option><operation-option> DizeString operationOptions Özelliği ayarlayarak varsayılan davranışı değiştirebilirsiniz.You can change the default behavior by setting the operationOptions property. Daha fazla bilgi için bkz. işlem seçenekleri.For more information, see Operation options.

ÇıkışlarOutputs

ÖğeElement TypeType AçıklamaDescription
Bilgisindeheaders JSON nesnesiJSON Object Yanıttaki üstbilgilerThe headers from the response
bodybody JSON nesnesiJSON Object Yanıttaki gövdeThe body from the response
Durum kodustatus code IntegerInteger Yanıttaki durum koduThe status code from the response

Gelen istekler için gereksinimlerRequirements for incoming requests

Mantıksal uygulamanızla iyi çalışmak için uç noktanın belirli bir tetikleyici düzenine veya sözleşmesine uyması ve bu özellikleri tanıması gerekir:To work well with your logic app, the endpoint must conform to a specific trigger pattern or contract, and recognize these properties:

YanıtResponse GerekliRequired AçıklamaDescription
Durum koduStatus code EvetYes "200 OK" durum kodu bir çalıştırma başlatır.The "200 OK" status code starts a run. Başka herhangi bir durum kodu çalıştırma başlamaz.Any other status code doesn't start a run.
Retry-After üst bilgisiRetry-after header HayırNo Mantıksal uygulamanız bitiş noktasını yeniden yokladığı saniye sayısıThe number of seconds until your logic app polls the endpoint again
Konum üst bilgisiLocation header HayırNo Sonraki yoklama aralığında çağrılacak URL.The URL to call at the next polling interval. Belirtilmemişse, özgün URL kullanılır.If not specified, the original URL is used.

Farklı istekler için örnek davranışlarExample behaviors for different requests

Durum koduStatus code Sonra yeniden deneRetry after DavranışBehavior
200200 seçim{none} İş akışını çalıştırın, sonra tanımlanan tekrardan sonra daha fazla veri için yeniden denetleyin.Run the workflow, then check again for more data after the defined recurrence.
200200 10 saniye10 seconds İş akışını çalıştırın, sonra 10 saniye sonra daha fazla veri için yeniden kontrol edin.Run the workflow, then check again for more data after 10 seconds.
202202 60 saniye60 seconds İş akışını tetiklemez.Don't trigger the workflow. Sonraki deneme bir dakika içinde gerçekleşir ve tanımlanan tekrarya tabidir.The next attempt happens in one minute, subject to the defined recurrence. Tanımlanan yinelenme bir dakikadan azsa, yeniden deneme üst bilgisi önceliklidir.If the defined recurrence is less than one minute, the retry-after header takes precedence. Aksi takdirde, tanımlanan yinelenme kullanılır.Otherwise, the defined recurrence is used.
400400 seçim{none} Hatalı istek, iş akışını çalıştırmayın.Bad request, don't run the workflow. retryPolicy Eğer tanımlanmamışsa, varsayılan ilke kullanılır.If no retryPolicy is defined, then the default policy is used. Yeniden deneme sayısına ulaşıldığında, tetikleyici tanımlanan tekrardan sonra verileri yeniden denetler.After the number of retries has been reached, the trigger checks again for data after the defined recurrence.
500500 seçim{none} Sunucu hatası, iş akışını çalıştırmayın.Server error, don't run the workflow. retryPolicy Eğer tanımlanmamışsa, varsayılan ilke kullanılır.If no retryPolicy is defined, then the default policy is used. Yeniden deneme sayısına ulaşıldığında, tetikleyici tanımlanan tekrardan sonra verileri yeniden denetler.After the number of retries has been reached, the trigger checks again for data after the defined recurrence.

Httpweb kancası tetikleyicisiHTTPWebhook trigger

Bu tetikleyici, belirtilen uç nokta URL 'sini çağırarak bir aboneliği kaydedebilmesi için bir uç nokta oluşturarak mantıksal uygulamanızı çağrılabilir hale getirir.This trigger makes your logic app callable by creating an endpoint that can register a subscription by calling the specified endpoint URL. Bu tetikleyiciyi iş akışınızda oluşturduğunuzda, giden bir istek aboneliği kaydetme çağrısını yapar.When you create this trigger in your workflow, an outgoing request makes the call to register the subscription. Bu şekilde, tetikleyici olayları dinlemeye başlayabilir.That way, the trigger can start listening for events. Bir işlem bu tetikleyiciyi geçersiz yaptığında, bir giden istek otomatik olarak aboneliğini iptal etme çağrısını yapar.When an operation makes this trigger invalid, an outgoing request automatically makes the call to cancel the subscription. Daha fazla bilgi için bkz. Endpoint abonelikleri.For more information, see Endpoint subscriptions.

Ayrıca, bir Httpweb kancası tetikleyicisi üzerinde zaman uyumsuz sınırlar belirtebilirsiniz.You can also specify asynchronous limits on an HTTPWebhook trigger. Tetikleyicinin davranışı, kullandığınız veya atladığınızda bölümlere bağlıdır.The trigger's behavior depends on the sections that you use or omit.

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

<Method-Type> gibi bazı değerler hem hem de "subscribe" "unsubscribe" nesneleri için kullanılabilir.Some values, such as <method-type>, are available for both the "subscribe" and "unsubscribe" objects.

GerekliRequired

ValueValue TypeType AçıklamaDescription
<Yöntem-tür><method-type> DizeString Abonelik isteği için kullanılacak HTTP yöntemi: "GET", "PUT", "POST", "PATCH" veya "DELETE"The HTTP method to use for the subscription request: "GET", "PUT", "POST", "PATCH", or "DELETE"
<uç nokta-abone ol-URL><endpoint-subscribe-URL> DizeString Abonelik isteğinin gönderileceği uç nokta URL 'SIThe endpoint URL where to send the subscription request

SeçimOptional

ValueValue TypeType AçıklamaDescription
<Yöntem-tür><method-type> DizeString İptal isteği için kullanılacak HTTP yöntemi: "GET", "PUT", "POST", "PATCH" veya "DELETE"The HTTP method to use for the cancellation request: "GET", "PUT", "POST", "PATCH", or "DELETE"
<uç nokta-abonelik-URL><endpoint-unsubscribe-URL> DizeString İptal isteğinin gönderileceği uç nokta URL 'SIThe endpoint URL where to send the cancellation request
<gövde-içerik><body-content> DizeString Abonelik veya iptal isteğinde göndermek için herhangi bir ileti içeriğiAny message content to send in the subscription or cancellation request
<Authentication-yöntemi><authentication-method> JSON nesnesiJSON Object İsteğin kimlik doğrulaması için kullandığı yöntem.The method the request uses for authentication. Daha fazla bilgi için bkz. Scheduler giden kimlik doğrulaması.For more information, see Scheduler Outbound Authentication.
<yeniden deneme davranışı><retry-behavior> JSON nesnesiJSON Object 408, 429 ve 5XX durum koduna ve tüm bağlantı özel durumlarına sahip aralıklı olmayan hatalara yönelik yeniden deneme davranışını özelleştirir.Customizes the retry behavior for intermittent failures, which have the 408, 429, and 5XX status code, and any connectivity exceptions. Daha fazla bilgi için bkz. yeniden deneme ilkeleri.For more information, see Retry policies.
<en fazla çalıştırma><max-runs> IntegerInteger Varsayılan olarak, iş akışı örneklerinin hepsi aynı anda çalışır veya varsayılan sınırakadar paralel olarak yapılır.By default, workflow instances all run at the same time, or in parallel up to the default limit. Yeni bir <sayı> değeri ayarlayarak bu sınırı değiştirmek için bkz. tetikleyici eşzamanlılık değiştirme.To change this limit by setting a new <count> value, see Change trigger concurrency.
<en fazla çalıştırma-kuyruk><max-runs-queue> IntegerInteger İş akışınız, runtimeConfiguration.concurrency.runs özelliği temel alarak değiştirebileceğiniz en fazla örnek sayısını zaten çalıştırıyorsa, tüm yeni çalıştırmalar bu kuyruğa varsayılan sınırakadar yerleştirilir.When your workflow is already running the maximum number of instances, which you can change based on the runtimeConfiguration.concurrency.runs property, any new runs are put into this queue up to the default limit. Varsayılan sınırı değiştirmek için bkz. değişiklik bekleyen çalışma sınırı.To change the default limit, see Change waiting runs limit.
<operation-option><operation-option> DizeString operationOptions Özelliği ayarlayarak varsayılan davranışı değiştirebilirsiniz.You can change the default behavior by setting the operationOptions property. Daha fazla bilgi için bkz. işlem seçenekleri.For more information, see Operation options.

ÇıkışlarOutputs

ÖğeElement TypeType AçıklamaDescription
Bilgisindeheaders JSON nesnesiJSON Object Yanıttaki üstbilgilerThe headers from the response
bodybody JSON nesnesiJSON Object Yanıttaki gövdeThe body from the response
Durum kodustatus code IntegerInteger Yanıttaki durum koduThe status code from the response

ÖrnekExample

Bu tetikleyici, belirtilen uç noktaya bir abonelik oluşturur, benzersiz bir geri çağırma URL 'SI sağlar ve yeni yayımlanmış teknoloji makalelerini bekler.This trigger creates a subscription to the specified endpoint, provides a unique callback URL, and waits for newly published technology articles.

"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"
         }
      }
   }
}

Yinelenme tetikleyicisiRecurrence trigger

Bu tetikleyici, belirtilen yinelenme zamanlaması temelinde çalışır ve düzenli olarak çalışan bir iş akışı oluşturmak için kolay bir yol sağlar.This trigger runs based on the specified recurrence schedule and provides an easy way for creating a regularly running workflow.

"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>"
}

GerekliRequired

ValueValue TypeType AçıklamaDescription
<time-unit><time-unit> DizeString Tetikleyicinin ne sıklıkta çalıştığını açıklayan zaman birimi: "Saniye", "dakika", "saat", "gün", "hafta", "ay"The unit of time that describes how often the trigger fires: "Second", "Minute", "Hour", "Day", "Week", "Month"
<number-of-time-units><number-of-time-units> IntegerInteger Tetikleyicinin yeniden tetiklenmesi için bekleyeceği zaman birimi sayısı olan sıklık temelinde tetikleyicinin ne sıklıkta tetikleyeceğini belirten bir değerA value that specifies how often the trigger fires based on the frequency, which is the number of time units to wait until the trigger fires again

En düşük ve en büyük aralıklar aşağıda verilmiştir:Here are the minimum and maximum intervals:

Başından 1-16 ay- Month: 1-16 months
Günündeki 1-500 gün- Day: 1-500 days
Saate 1-12000 saat- Hour: 1-12,000 hours
Dakikaya 1-72000 dakika- Minute: 1-72,000 minutes
İkincisi 1-9999999 saniye- Second: 1-9,999,999 seconds

Örneğin, Aralık 6, sıklık ise "month" ise, yineleme 6 aydır.For example, if the interval is 6, and the frequency is "Month", the recurrence is every 6 months.

SeçimOptional

ValueValue TypeType AçıklamaDescription
<başlangıç-tarih-saat--biçimlendirme-YYYY-MM-DDThh: mm: ss><start-date-time-with-format-YYYY-MM-DDThh:mm:ss> DizeString Bu biçimdeki başlangıç tarihi ve saati:The start date and time in this format:

YYYY-MM-DDThh: mm: ss saat dilimi belirtirsenizYYYY-MM-DDThh:mm:ss if you specify a time zone

-veya--or-

YYYY-MM-DDThh: mm: ssZ saat dilimi belirtmezsenizYYYY-MM-DDThh:mm:ssZ if you don't specify a time zone

Örneğin, 18 Eylül 2017, 2:00 PM üzerinde istiyorsanız, "2017-09-18T14:00:00" belirtin ve "Pasifik Standart Saati" gibi bir saat dilimi belirtin ya da saat dilimi olmadan "2017-09-18T14:00:00Z" belirtin.So for example, if you want September 18, 2017 at 2:00 PM, then specify "2017-09-18T14:00:00" and specify a time zone such as "Pacific Standard Time", or specify "2017-09-18T14:00:00Z" without a time zone.

Not: Bu başlangıç saati, gelecekte en fazla 49 yıla sahiptir ve UTC 8601 tarih saat belirtimini UTC Tarih saat biçimindeizlemelidir, ancak UTC bir farkolmadan gelmelidir.Note: This start time has a maximum of 49 years in the future and must follow the ISO 8601 date time specification in UTC date time format, but without a UTC offset. Saat dilimi belirtmezseniz, sonunda boşluk olmadan "Z" harfini eklemeniz gerekir.If you don't specify a time zone, you must add the letter "Z" at the end without any spaces. Bu "Z", eşdeğer nadeniz saatianlamına gelir.This "Z" refers to the equivalent nautical time.

Basit zamanlamalar için başlangıç zamanı ilk oluşumdır, ancak karmaşık zamanlamalar için tetikleyici başlangıç zamanından daha önce harekete geçmez.For simple schedules, the start time is the first occurrence, while for complex schedules, the trigger doesn't fire any sooner than the start time. Başlangıç tarihleri ve zamanları hakkında daha fazla bilgi için bkz. düzenli olarak çalışan görevler oluşturma ve zamanlama.For more information about start dates and times, see Create and schedule regularly running tasks.

<Saat dilimi><time-zone> DizeString Yalnızca bir başlangıç saati belirttiğinizde geçerlidir çünkü bu tetikleyici UTC sapmasınıkabul etmez.Applies only when you specify a start time because this trigger doesn't accept UTC offset. Uygulamak istediğiniz saat dilimini belirtin.Specify the time zone that you want to apply.
<bir veya daha çok saat-işareti><one-or-more-hour-marks> Tamsayı veya tamsayı dizisiInteger or integer array İçin frequency"gün" veya "hafta" belirtirseniz, iş akışını çalıştırmak istediğiniz günün saatleri olarak virgülle ayırarak 0 ile 23 arasında bir veya daha fazla tamsayı belirtebilirsiniz.If you specify "Day" or "Week" for frequency, you can specify one or more integers from 0 to 23, separated by commas, as the hours of the day when you want to run the workflow.

Örneğin, "10", "12" ve "14" belirtirseniz, saat işaretleri olarak 10 har, 12 PM ve 2 PM alırsınız.For example, if you specify "10", "12" and "14", you get 10 AM, 12 PM, and 2 PM as the hour marks.

<bir veya daha fazla-dakika-işareti><one-or-more-minute-marks> Tamsayı veya tamsayı dizisiInteger or integer array İçin frequency"gün" veya "hafta" belirtirseniz, bir veya daha fazla tamsayı belirterek, iş akışını çalıştırmak istediğiniz saatin dakikası olarak virgülle ayırarak 0 ile 59 arasında bir veya daha fazla tamsayı belirtebilirsiniz.If you specify "Day" or "Week" for frequency, you can specify one or more integers from 0 to 59, separated by commas, as the minutes of the hour when you want to run the workflow.

Örneğin, "30" öğesini dakika işareti olarak belirtebilir ve günün saati için önceki örneği kullanarak 10:30, 12:30 PM ve 2:30 PM kazanın.For example, you can specify "30" as the minute mark and using the previous example for hours of the day, you get 10:30 AM, 12:30 PM, and 2:30 PM.

weekDaysweekDays Dize veya dize dizisiString or string array İçin frequency"hafta" belirtirseniz, iş akışını çalıştırmak istediğinizde, virgülle ayırarak bir veya daha fazla gün belirtebilirsiniz: "Pazartesi", "Salı", "Çarşamba", "Perşembe", "Cuma", "Cumartesi" ve "Pazar"If you specify "Week" for frequency, you can specify one or more days, separated by commas, when you want to run the workflow: "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", and "Sunday"
<en fazla çalıştırma><max-runs> IntegerInteger Varsayılan olarak, iş akışı örneklerinin hepsi aynı anda çalışır veya varsayılan sınırakadar paralel olarak yapılır.By default, workflow instances all run at the same time, or in parallel up to the default limit. Yeni bir <sayı> değeri ayarlayarak bu sınırı değiştirmek için bkz. tetikleyici eşzamanlılık değiştirme.To change this limit by setting a new <count> value, see Change trigger concurrency.
<en fazla çalıştırma-kuyruk><max-runs-queue> IntegerInteger İş akışınız, runtimeConfiguration.concurrency.runs özelliği temel alarak değiştirebileceğiniz en fazla örnek sayısını zaten çalıştırıyorsa, tüm yeni çalıştırmalar bu kuyruğa varsayılan sınırakadar yerleştirilir.When your workflow is already running the maximum number of instances, which you can change based on the runtimeConfiguration.concurrency.runs property, any new runs are put into this queue up to the default limit. Varsayılan sınırı değiştirmek için bkz. değişiklik bekleyen çalışma sınırı.To change the default limit, see Change waiting runs limit.
<operation-option><operation-option> DizeString operationOptions Özelliği ayarlayarak varsayılan davranışı değiştirebilirsiniz.You can change the default behavior by setting the operationOptions property. Daha fazla bilgi için bkz. işlem seçenekleri.For more information, see Operation options.

Örnek 1Example 1

Bu temel yinelenme tetikleyicisi her gün çalışır:This basic recurrence trigger runs daily:

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

Örnek 2Example 2

Tetikleyicinin tetiklenmesi için bir başlangıç tarihi ve saati belirtebilirsiniz.You can specify a start date and time for firing the trigger. Bu yineleme tetikleyicisi belirtilen tarihte başlar ve sonra günlük olarak başlatılır:This recurrence trigger starts on the specified date and then fires daily:

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

Örnek 3Example 3

Bu yineleme tetikleyicisi, 9 Eylül 2017 ' de 2:00 PM tarihinde başlar ve her Pazartesi, 10:30, 12:30 ve 2:30 Pasifik standart saati ile haftada bir saatte bir ateşlenir:This recurrence trigger starts on September 9, 2017 at 2:00 PM, and fires weekly every Monday at 10:30 AM, 12:30 PM, and 2:30 PM Pacific Standard Time:

"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"
   }
}

Daha fazla bilgi ve bu tetikleyicinin örnekleri için bkz. düzenli olarak çalışan görevler oluşturma ve zamanlama.For more information plus examples for this trigger, see Create and schedule regularly running tasks.

İstek tetikleyicisiRequest trigger

Bu tetikleyici, gelen istekleri kabul edebilecek bir uç nokta oluşturarak mantıksal uygulamanızı çağrılabilir hale getirir.This trigger makes your logic app callable by creating an endpoint that can accept incoming requests. Bu tetikleyici için, tetikleyicinin gelen istekten aldığı yük veya girişleri açıklayan ve doğrulayan bir JSON şeması sağlayın.For this trigger, provide a JSON schema that describes and validates the payload or inputs that the trigger receives from the incoming request. Şema ayrıca tetikleyici özelliklerini iş akışındaki sonraki eylemlerden daha kolay başvuruya de olanak sağlar.The schema also makes trigger properties easier to reference from later actions in the workflow.

Bu tetikleyiciyi çağırmak için, listCallbackUrl iş akışı hizmeti REST APIaçıklanan API 'yi kullanmanız gerekir.To call this trigger, you must use the listCallbackUrl API, which is described in the Workflow Service REST API. Bu tetikleyiciyi bir HTTP uç noktası olarak kullanmayı öğrenmek için bkz. http uç noktaları Ile çağrı, tetikleyici veya iç içe iş akışları.To learn how to use this trigger as an HTTP endpoint, see Call, trigger, or nest workflows with HTTP endpoints.

"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>"
}

GerekliRequired

ValueValue TypeType AçıklamaDescription
<Özellik adı><property-name> DizeString Yükü açıklayan JSON şemasında bir özelliğin adıThe name of a property in the JSON schema, which describes the payload
<Özellik türü><property-type> DizeString Özelliğin türüThe property's type

SeçimOptional

ValueValue TypeType AçıklamaDescription
<Yöntem-tür><method-type> DizeString Gelen isteklerin mantıksal uygulamanızı çağırmak için kullanması gereken Yöntem: "AL", "PUT", "POST", "PATCH", "DELETE"The method that incoming requests must use to call your logic app: "GET", "PUT", "POST", "PATCH", "DELETE"
<göreli-yol-for-kabul parametresi><relative-path-for-accepted-parameter> DizeString Endpoint URL 'nizin kabul edebileceği parametrenin göreli yoluThe relative path for the parameter that your endpoint's URL can accept
<gerekli-özellikler><required-properties> ArrayArray Değer gerektiren bir veya daha fazla özellikOne or more properties that require values
<en fazla çalıştırma><max-runs> IntegerInteger Varsayılan olarak, iş akışı örneklerinin hepsi aynı anda çalışır veya varsayılan sınırakadar paralel olarak yapılır.By default, workflow instances all run at the same time, or in parallel up to the default limit. Yeni bir <sayı> değeri ayarlayarak bu sınırı değiştirmek için bkz. tetikleyici eşzamanlılık değiştirme.To change this limit by setting a new <count> value, see Change trigger concurrency.
<en fazla çalıştırma-kuyruk><max-runs-queue> IntegerInteger İş akışınız, runtimeConfiguration.concurrency.runs özelliği temel alarak değiştirebileceğiniz en fazla örnek sayısını zaten çalıştırıyorsa, tüm yeni çalıştırmalar bu kuyruğa varsayılan sınırakadar yerleştirilir.When your workflow is already running the maximum number of instances, which you can change based on the runtimeConfiguration.concurrency.runs property, any new runs are put into this queue up to the default limit. Varsayılan sınırı değiştirmek için bkz. değişiklik bekleyen çalışma sınırı.To change the default limit, see Change waiting runs limit.
<operation-option><operation-option> DizeString operationOptions Özelliği ayarlayarak varsayılan davranışı değiştirebilirsiniz.You can change the default behavior by setting the operationOptions property. Daha fazla bilgi için bkz. işlem seçenekleri.For more information, see Operation options.

ÖrnekExample

Bu tetikleyici, gelen bir isteğin tetikleyiciyi çağırmak için HTTP POST metodunu kullanması gerektiğini ve gelen istekten gelen girişi doğrulayan bir şema içerdiğini belirtir:This trigger specifies that an incoming request must use the HTTP POST method to call the trigger and includes a schema that validates input from the incoming request:

"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"
                  }
               }
            }
         }
      }
   }
}

Tetikleme koşullarıTrigger conditions

Herhangi bir tetikleyici ve yalnızca Tetikleyiciler için, iş akışının çalıştırılıp çalıştırılmayacağını tespit eden koşullar için bir veya daha fazla ifade içeren bir dizi ekleyebilirsiniz.For any trigger, and only triggers, you can include an array that contains one or more expressions for conditions that determine whether the workflow should run. conditions Özelliği iş akışınızda bir tetikleyiciye eklemek için, kod görünümü düzenleyicisinde mantıksal uygulamanızı açın.To add the conditions property to a trigger in your workflow, open your logic app in the code view editor.

Örneğin, bir tetikleyicinin yalnızca bir Web sitesi bir iç sunucu hatası döndürdüğünde, conditions tetikleyicisinin özelliğindeki durum koduna başvurarak bunu tetikleyebelirtebilirsiniz:For example, you can specify that a trigger fires only when a website returns an internal server error by referencing the trigger's status code in the conditions property:

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

Varsayılan olarak, bir tetikleyici yalnızca bir "200 Tamam" yanıtı alındıktan sonra ateşlenir.By default, a trigger fires only after getting a "200 OK" response. Bir ifade bir tetikleyicinin durum koduna başvurduğunda, tetikleyicinin varsayılan davranışı değiştirilmiştir.When an expression references a trigger's status code, the trigger's default behavior is replaced. Bu nedenle, tetikleyicinin "200" ve "201" durum kodu gibi birden fazla durum kodu için tetiklemeyi istiyorsanız, bu ifadeyi koşulunuz olarak dahil etmeniz gerekir:So, if you want the trigger to fire for more than one status code, such as the "200" and "201" status code, you must include this expression as your condition:

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

Birden çok çalıştırma TetikleTrigger multiple runs

Tetikleyiciniz mantıksal uygulamanızın işlemesi için bir dizi döndürürse, bazen "for each" döngüsünün her bir dizi öğesini işlemesi çok uzun sürebilir.If your trigger returns an array for your logic app to process, sometimes a "for each" loop might take too long to process each array item. Bunun yerine, diziyi toplu olarak bırakmak için Tetikleyicinizdeki spton özelliğini kullanabilirsiniz.Instead, you can use the SplitOn property in your trigger to debatch the array. Toplu işleme, dizi öğelerini böler ve her dizi öğesi için çalışan yeni bir iş akışı örneği başlatır.Debatching splits up the array items and starts a new workflow instance that runs for each array item. Bu yaklaşım, örneğin yoklama aralıkları arasında birden çok yeni öğe döndürebilecek bir uç noktayı yoklamak istediğinizde yararlıdır.This approach is useful, for example, when you want to poll an endpoint that might return multiple new items between polling intervals. Tek bir mantıksal uygulama çalıştırmasında, Spton 'un işleyebilmesine izin verilen en fazla dizi öğesi sayısı için bkz. sınırlar ve yapılandırma.For the maximum number of array items that SplitOn can process in a single logic app run, see Limits and configuration.

Not

Zaman uyumlu bir yanıt düzeniyle Spton kullanamazsınız.You can't use SplitOn with a synchronous response pattern. Tüm iş akışları ve bir yanıt eylemi, zaman uyumsuz olarak çalışır ve anında 202 ACCEPTED yanıt gönderir.Any workflow that uses SplitOn and includes a response action runs asynchronously and immediately sends a 202 ACCEPTED response.

Tetikleyicinizin Swagger dosyasında bir dizi olan bir yük varsa, tetikleyicisine otomatik olarak Spton özelliği eklenir.If your trigger's Swagger file describes a payload that is an array, the SplitOn property is automatically added to your trigger. Aksi takdirde, bu özelliği, toplu işlem yapmak istediğiniz diziyi içeren yanıt yükünün içine ekleyin.Otherwise, add this property inside the response payload that has the array you want to debatch.

ÖrnekExample

Bu yanıtı döndüren bir API olduğunu varsayalım:Suppose you have an API that returns this response:

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

Mantıksal uygulamanız yalnızca içindeki Rowsdizideki içeriğe ihtiyaç duyuyor, bu nedenle aşağıdaki örnekte olduğu gibi bir tetikleyici oluşturabilirsiniz:Your logic app only needs the content from the array in Rows, so you can create a trigger like this example:

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

Not

SplitOn Komutunu kullanırsanız, dizi dışındaki özellikleri alamazsınız.If you use the SplitOn command, you can't get the properties that are outside the array. Bu nedenle bu örnek için, API 'den döndürülen status yanıtta özelliği alamazsınız.So for this example, you can't get the status property in the response returned from the API.

Rows Özelliği yoksa, bir hatadan kaçınmak için, bu örnek ? işlecini kullanır.To avoid a failure if the Rows property doesn't exist, this example uses the ? operator.

İş akışı tanımınız, ilk @triggerBody().name çalıştırandan ve name "customer-name-two" ikinci çalıştırandan itibaren "customer-name-one" olan değerleri almak için artık kullanılabilir.Your workflow definition can now use @triggerBody().name to get the name values, which are "customer-name-one" from the first run and "customer-name-two" from the second run. Bu nedenle, tetikleyicinizin çıkışları şu örneklere benzer şekilde görünür:So, your trigger outputs look like these examples:

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

Eylemlere genel bakışActions overview

Azure Logic Apps, her biri bir eylemin benzersiz davranışını tanımlayan farklı girişlerle birlikte çeşitli eylem türleri sağlar.Azure Logic Apps provides various action types - each with different inputs that define an action's unique behavior.

Eylemler bu üst düzey öğelere sahiptir, ancak bazıları isteğe bağlıdır:Actions have these high-level elements, though some are optional:

"<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>"
},

GerekliRequired

ValueValue TypeType AçıklamaDescription
<eylem-ad><action-name> DizeString Eylemin adıThe name for the action
<eylem-tür><action-type> DizeString Eylem türü, örneğin, "http" veya "ApiConnection"The action type, for example, "Http" or "ApiConnection"
<giriş adı><input-name> DizeString Eylemin davranışını tanımlayan bir girdinin adıThe name for an input that defines the action's behavior
<giriş değeri><input-value> TürleriniVarious Dize, tamsayı, JSON nesnesi vb. olabilen giriş değeriThe input value, which can be a string, integer, JSON object, and so on
<önceki-tetikleyici-veya-eylem-durum><previous-trigger-or-action-status> JSON nesnesiJSON Object Bu geçerli eylem çalıştırılmadan hemen önce çalışması gereken tetikleyici veya eylemin adı ve sonuç durumuThe name and resulting status for the trigger or action that must run immediately before this current action can run

SeçimOptional

ValueValue TypeType AçıklamaDescription
<yeniden deneme davranışı><retry-behavior> JSON nesnesiJSON Object 408, 429 ve 5XX durum koduna ve tüm bağlantı özel durumlarına sahip aralıklı olmayan hatalara yönelik yeniden deneme davranışını özelleştirir.Customizes the retry behavior for intermittent failures, which have the 408, 429, and 5XX status code, and any connectivity exceptions. Daha fazla bilgi için bkz. yeniden deneme ilkeleri.For more information, see Retry policies.
<runtime-config-options><runtime-config-options> JSON nesnesiJSON Object Bazı eylemler için, özellikleri ayarlayarak runtimeConfiguration eylemin çalışma zamanında davranışını değiştirebilirsiniz.For some actions, you can change the action's behavior at run time by setting runtimeConfiguration properties. Daha fazla bilgi için bkz. çalışma zamanı yapılandırma ayarları.For more information, see Runtime configuration settings.
<operation-option><operation-option> DizeString Bazı eylemler için, operationOptions özelliği ayarlayarak varsayılan davranışı değiştirebilirsiniz.For some actions, you can change the default behavior by setting the operationOptions property. Daha fazla bilgi için bkz. işlem seçenekleri.For more information, see Operation options.

Eylem türleri listesiAction types list

Yaygın olarak kullanılan bazı eylem türleri şunlardır:Here are some commonly used action types:

Yerleşik eylemlerBuilt-in actions

Eylem türüAction type AçıklamaDescription
İletiniziCompose Girdilerden farklı türlere sahip olabilen tek bir çıktı oluşturur.Creates a single output from inputs, which can have various types.
JavaScript kodunu YürütExecute JavaScript Code Belirli ölçütlere uyan JavaScript kod parçacıklarını çalıştırın.Run JavaScript code snippets that fit within specific criteria. Kod gereksinimleri ve daha fazla bilgi için bkz. satır içi kod ile kod parçacıkları ekleme ve çalıştırma.For code requirements and more information, see Add and run code snippets with inline code.
ÇalışmayacaktırFunction Bir Azure Işlevi çağırır.Calls an Azure Function.
HTTPHTTP Bir HTTP uç noktası çağırır.Calls an HTTP endpoint.
AyrılmaJoin Dizideki tüm öğelerden bir dize oluşturur ve bu öğeleri belirli bir sınırlayıcı karakterle ayırır.Creates a string from all the items in an array and separates those items with a specified delimiter character.
JSON AyrıştırParse JSON JSON içeriğindeki özelliklerden Kullanıcı dostu belirteçler oluşturur.Creates user-friendly tokens from properties in JSON content. Daha sonra, mantıksal uygulamanıza belirteçleri ekleyerek bu özelliklere başvurabilirsiniz.You can then reference those properties by including the tokens in your logic app.
SorgulayamadıQuery Bir koşula veya filtreye bağlı olarak başka bir dizideki öğelerden bir dizi oluşturur.Creates an array from items in another array based on a condition or filter.
YanıtıylaResponse Gelen çağrıya veya isteğe yanıt oluşturur.Creates a response to an incoming call or request.
SeçinSelect Belirtilen haritaya göre başka bir diziden öğeleri dönüştürerek JSON nesneleriyle bir dizi oluşturur.Creates an array with JSON objects by transforming items from another array based on the specified map.
TablosundanTable Bir diziden CSV veya HTML tablosu oluşturur.Creates a CSV or HTML table from an array.
SonlandırmayıTerminate Etkin şekilde çalışan bir iş akışını sonlandırır.Stops an actively running workflow.
BekleneceğiniWait İş akışınızı belirtilen süre veya belirtilen tarih ve saate kadar duraklatır.Pauses your workflow for a specified duration or until the specified date and time.
AkışıylaWorkflow Bir iş akışını başka bir iş akışı içinde bir şekilde alır.Nests a workflow inside another workflow.

Yönetilen API eylemleriManaged API actions

Eylem türüAction type AçıklamaDescription
ApiConnectionApiConnection Microsoft tarafından yönetilen BIR APIkullanarak bir HTTP uç noktası çağırır.Calls an HTTP endpoint by using a Microsoft-managed API.
ApiConnectionWebhookApiConnectionWebhook HTTP Web kancası gibi çalışarak Microsoft tarafından yönetilen BIR APIkullanır.Works like HTTP Webhook but uses a Microsoft-managed API.

Denetim iş akışı eylemleriControl workflow actions

Bu eylemler, iş akışı yürütmeyi denetlemenize ve diğer eylemleri dahil etmenize yardımcı olur.These actions help you control workflow execution and include other actions. Denetim iş akışı eyleminin dışından, bu denetim iş akışı eyleminin içindeki eylemlere doğrudan başvurabilirsiniz.From outside a control workflow action, you can directly reference actions inside that control workflow action. Örneğin, bir kapsam içinde bir Http eyleminiz varsa, @body('Http') ifadeye iş akışındaki herhangi bir yerden başvurabilirsiniz.For example, if you have an Http action inside a scope, you can reference the @body('Http') expression from anywhere in the workflow. Ancak, bir denetim iş akışı eyleminde bulunan eylemler yalnızca aynı denetim iş akışı yapısında yer alan diğer eylemlerden "daha sonra çalıştırılabilir".However, actions that exist inside a control workflow action can only "run after" other actions that are in the same control workflow structure.

Eylem türüAction type AçıklamaDescription
ForEachForEach Bir dizideki her öğe için aynı eylemleri döngüde çalıştırın.Run the same actions in a loop for every item in an array.
KullandıysanızIf Belirtilen koşulun doğru veya yanlış olduğunu temel alarak eylemleri çalıştırın.Run actions based on whether the specified condition is true or false.
KapsamScope Eylemler kümesinden grup durumuna göre eylemleri çalıştırın.Run actions based on the group status from a set of actions.
DeğiştirebilirsinizSwitch Deyimlerden, nesnelerden veya belirteçlerdeki değerlerin her bir durum tarafından belirtilen değerlerle eşleşmesi durumunda durumları düzenlenmiş eylemler çalıştırın.Run actions organized into cases when values from expressions, objects, or tokens match the values specified by each case.
UntilUntil Belirtilen koşul true olana kadar eylemleri bir döngüde çalıştırın.Run actions in a loop until the specified condition is true.

Eylemler-ayrıntılı başvuruActions - Detailed reference

APIConnection eylemiAPIConnection action

Bu eylem, Microsoft tarafından yönetilen BIR API 'ye bir http isteği GÖNDERIR ve API ve parametrelerle ilgili bilgilerin yanı sıra geçerli bir bağlantıya yönelik bir başvuru gerektirir.This action sends an HTTP request to a Microsoft-managed API and requires information about the API and parameters plus a reference to a valid connection.

"<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": {}
}

GerekliRequired

ValueValue TypeType AçıklamaDescription
<eylem-ad><action-name> DizeString Bağlayıcı tarafından belirtilen eylemin adıThe name of the action provided by the connector
<api adı><api-name> DizeString Bağlantı için kullanılan Microsoft tarafından yönetilen API 'nin adıThe name of the Microsoft-managed API that is used for the connection
<Yöntem-tür><method-type> DizeString API 'YI çağırmak için HTTP yöntemi: "GET", "PUT", "POST", "PATCH" veya "DELETE"The HTTP method for calling the API: "GET", "PUT", "POST", "PATCH", or "DELETE"
<api-işlem><api-operation> DizeString Çağrılacak API işlemiThe API operation to call

SeçimOptional

ValueValue TypeType AçıklamaDescription
<diğer eyleme özgü-giriş-Özellikler><other-action-specific-input-properties> JSON nesnesiJSON Object Bu özel eylem için uygulanan diğer tüm giriş özellikleriAny other input properties that apply to this specific action
<yeniden deneme davranışı><retry-behavior> JSON nesnesiJSON Object 408, 429 ve 5XX durum koduna ve tüm bağlantı özel durumlarına sahip aralıklı olmayan hatalara yönelik yeniden deneme davranışını özelleştirir.Customizes the retry behavior for intermittent failures, which have the 408, 429, and 5XX status code, and any connectivity exceptions. Daha fazla bilgi için bkz. yeniden deneme ilkeleri.For more information, see Retry policies.
<sorgu-Parametreler><query-parameters> JSON nesnesiJSON Object API çağrısıyla birlikte içerilecek herhangi bir sorgu parametresi.Any query parameters to include with the API call.

Örneğin, "queries": { "api-version": "2018-01-01" } nesnesi çağrıya ekler ?api-version=2018-01-01 .For example, the "queries": { "api-version": "2018-01-01" } object adds ?api-version=2018-01-01 to the call.

<diğer eyleme özgü özellikler><other-action-specific-properties> JSON nesnesiJSON Object Bu özel eylem için uygulanan diğer özelliklerAny other properties that apply to this specific action

ÖrnekExample

Bu tanım, Microsoft tarafından yönetilen bir API olan Office 365 Outlook Bağlayıcısı için e-posta gönder eylemini açıklar:This definition describes the Send an email action for Office 365 Outlook connector, which is a Microsoft-managed 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": {}
}

Apiconnectionweb kancası eylemiAPIConnectionWebhook action

Bu eylem, Microsoft tarafından yönetilen BIR APIkullanarak bir uç noktaya http üzerinden bir abonelik isteği gönderir, uç noktanın yanıt gönderebildiği konuma bir geri çağırma URL 'si sağlar ve uç noktanın yanıt vermesini bekler.This action sends a subscription request over HTTP to an endpoint by using a Microsoft-managed API, provides a callback URL to where the endpoint can send a response, and waits for the endpoint to respond. Daha fazla bilgi için bkz. Endpoint abonelikleri.For more information, see Endpoint subscriptions.

"<action-name>": {
   "type": "ApiConnectionWebhook",
   "inputs": {
      "subscribe": {
         "method": "<method-type>",
         "uri": "<api-subscribe-URL>",
         "headers": { "<header-content>" },
         "body": "<body-content>",
         "authentication": { "<authentication-method>" },
         "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-method>" },
         "<other-action-specific-properties>"
      },
   },
   "runAfter": {}
}

<Method-Type> gibi bazı değerler hem hem de "subscribe" "unsubscribe" nesneleri için kullanılabilir.Some values, such as <method-type>, are available for both the "subscribe" and "unsubscribe" objects.

GerekliRequired

ValueValue TypeType AçıklamaDescription
<eylem-ad><action-name> DizeString Bağlayıcı tarafından belirtilen eylemin adıThe name of the action provided by the connector
<Yöntem-tür><method-type> DizeString Bir uç noktadan abone olmak veya aboneliği kaldırmak için kullanılacak HTTP yöntemi: "GET", "PUT", "POST", "PATCH" veya "DELETE"The HTTP method to use for subscribing or unsubscribing from an endpoint: "GET", "PUT", "POST", "PATCH", or "DELETE"
<api-Subscribe-URL><api-subscribe-URL> DizeString API 'ye abone olmak için kullanılacak URIThe URI to use for subscribing to the API

SeçimOptional

ValueValue TypeType AçıklamaDescription
<API-abonelikten çıkma-URL><api-unsubscribe-URL> DizeString API 'den aboneliği kaldırma için kullanılacak URIThe URI to use for unsubscribing from the API
<üst bilgi-içerik><header-content> JSON nesnesiJSON Object İstekte gönderilen tüm üstbilgilerAny headers to send in the request

Örneğin, bir istek için dili ve türü ayarlamak için:For example, to set the language and type on a request:

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

<gövde-içerik><body-content> JSON nesnesiJSON Object İstekte göndermek için herhangi bir ileti içeriğiAny message content to send in the request
<Authentication-yöntemi><authentication-method> JSON nesnesiJSON Object İsteğin kimlik doğrulaması için kullandığı yöntem.The method the request uses for authentication. Daha fazla bilgi için bkz. Scheduler giden kimlik doğrulaması.For more information, see Scheduler Outbound Authentication.
<yeniden deneme davranışı><retry-behavior> JSON nesnesiJSON Object 408, 429 ve 5XX durum koduna ve tüm bağlantı özel durumlarına sahip aralıklı olmayan hatalara yönelik yeniden deneme davranışını özelleştirir.Customizes the retry behavior for intermittent failures, which have the 408, 429, and 5XX status code, and any connectivity exceptions. Daha fazla bilgi için bkz. yeniden deneme ilkeleri.For more information, see Retry policies.
<sorgu-Parametreler><query-parameters> JSON nesnesiJSON Object API çağrısıyla birlikte içerilecek sorgu parametreleriAny query parameters to include with the API call

Örneğin, "queries": { "api-version": "2018-01-01" } nesnesi çağrıya ekler ?api-version=2018-01-01 .For example, the "queries": { "api-version": "2018-01-01" } object adds ?api-version=2018-01-01 to the call.

<diğer eyleme özgü-giriş-Özellikler><other-action-specific-input-properties> JSON nesnesiJSON Object Bu özel eylem için uygulanan diğer tüm giriş özellikleriAny other input properties that apply to this specific action
<diğer eyleme özgü özellikler><other-action-specific-properties> JSON nesnesiJSON Object Bu özel eylem için uygulanan diğer özelliklerAny other properties that apply to this specific action

Ayrıca, bir Apiconnectionweb kancası eyleminde, http zaman uyumsuz limitleriyleaynı şekilde sınırlar belirtebilirsiniz.You can also specify limits on an ApiConnectionWebhook action in the same way as HTTP asynchronous limits.

Oluşturma eylemiCompose action

Bu eylem, ifadeler de dahil olmak üzere birden çok girişin tek bir çıkışını oluşturur.This action creates a single output from multiple inputs, including expressions. Hem çıktı hem de girişler, Azure Logic Apps yerel olarak desteklenen, diziler, JSON nesneleri, XML ve ikili gibi herhangi bir türde olabilir.Both the output and inputs can have any type that Azure Logic Apps natively supports, such as arrays, JSON objects, XML, and binary. Daha sonra eylemin çıkışını diğer eylemlerdeki bir şekilde kullanabilirsiniz.You can then use the action's output in other actions.

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

GerekliRequired

ValueValue TypeType AçıklamaDescription
<oluşturma girişleri><inputs-to-compose> AnyAny Tek bir çıkış oluşturmak için girişlerThe inputs for creating a single output

Örnek 1Example 1

Bu eylem tanımı bir abcdefg sonundaki boşluk ve değer 1234ile birleştirir:This action definition merges abcdefg with a trailing space and the value 1234:

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

Bu eylemin oluşturduğu çıktı aşağıda verilmiştir:Here is the output that this action creates:

abcdefg 1234

Örnek 2Example 2

Bu eylem tanımı abcdefg , içeren bir dize değişkenini ve içeren bir tamsayı değişkenini 1234birleştirir:This action definition merges a string variable that contains abcdefg and an integer variable that contains 1234:

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

Bu eylemin oluşturduğu çıktı aşağıda verilmiştir:Here is the output that this action creates:

"abcdefg1234"

JavaScript kodu yürütme eylemiExecute JavaScript Code action

Bu eylem bir JavaScript kod parçacığı çalıştırır ve sonuçları daha sonra başvurabilebir Result belirteç aracılığıyla döndürür.This action runs a JavaScript code snippet and returns the results through a Result token that later actions can reference.

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

GerekliRequired

ValueValue TypeType AçıklamaDescription
<JavaScript-Code-kod parçacığı><JavaScript-code-snippet> VariesVaries Çalıştırmak istediğiniz JavaScript kodu.The JavaScript code that you want to run. Kod gereksinimleri ve daha fazla bilgi için bkz. satır içi kod ile kod parçacıkları ekleme ve çalıştırma.For code requirements and more information, see Add and run code snippets with inline code.

Özniteliğinde, kod parçacığınızı giriş olarak salt okunurdur workflowContext. codeIn the code attribute, your code snippet can use the read-only workflowContext object as input. Bu nesne, kodunuzu tetikleyiciden gelen sonuçlara ve iş akışınızdan önceki eylemlere erişim sağlayan alt özellikler içerir.This object has subproperties that give your code access to the results from the trigger and previous actions in your workflow. workflowContext Nesnesi hakkında daha fazla bilgi için bkz. kodunuzda başvuru tetikleyicisi ve eylem sonuçları.For more information about the workflowContext object, see Reference trigger and action results in your code.

Bazı durumlarda gereklidirRequired in some cases

explicitDependencies Özniteliği tetikleyiciden, önceki eylemlerden veya her ikisinin de kod parçacığınızı bağımlılıkları olarak açıkça dahil etmek istediğinizi belirtir.The explicitDependencies attribute specifies that you want to explicitly include results from the trigger, previous actions, or both as dependencies for your code snippet. Bu bağımlılıkları ekleme hakkında daha fazla bilgi için bkz. satır içi kod için parametre ekleme.For more information about adding these dependencies, see Add parameters for inline code.

Özniteliği için, veya true false değerlerini belirtebilirsiniz. includeTriggerFor the includeTrigger attribute, you can specify true or false values.

ValueValue TypeType AçıklamaDescription
<önceki eylemler><previous-actions> Dize dizisiString array Belirtilen eylem isimlerinizi içeren bir dizi.An array with your specified action names. İş akışı tanımınızda görünen eylem adlarını, eylem adlarında boşluk ("") değil, alt çizgi () kullanıldığı durumlarda kullanın.Use the action names that appear in your workflow definition where action names use underscores (), not spaces (" ").

Örnek 1Example 1

Bu eylem, mantıksal uygulamanızın adını alan ve sonuç olarak " <Logic-app-name >" metnini döndüren kodu çalıştırır.This action runs code that gets your logic app's name and returns the text "Hello world from <logic-app-name>" as the result. Bu örnekte, kod salt okunurdur workflowContext.workflow.name workflowContext nesnesi aracılığıyla özelliğe erişerek iş akışının adına başvurur.In this example, the code references the workflow's name by accessing the workflowContext.workflow.name property through the read-only workflowContext object. workflowContext Nesnesini kullanma hakkında daha fazla bilgi için bkz. kodunuzda başvuru tetikleyicisi ve eylem sonuçları.For more information about using the workflowContext object, see Reference trigger and action results in your code.

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

Örnek 2Example 2

Bu eylem, Office 365 Outlook hesabına yeni bir e-posta geldiğinde tetiklenen bir mantıksal uygulamadaki kodu çalıştırır.This action runs code in a logic app that triggers when a new email arrives in an Office 365 Outlook account. Mantıksal uygulama Ayrıca, alınan e-postadaki içeriği onay isteğiyle birlikte ileten onay e-postası gönder eylemini kullanır.The logic app also uses a send approval email action that forwards the content from the received email along with a request for approval.

Kod, tetikleyici Body özelliğinden e-posta adreslerini ayıklar ve bu e-posta adreslerini onay eyleminden SelectedOption özellik değeriyle birlikte döndürür.The code extracts email addresses from the trigger's Body property and returns those email addresses along with the SelectedOption property value from the approval action. Eylem, explicitDependencies özniteliğeactions bağımlılık > olarak onay e-postası gönder eylemini açıkça içerir.The action explicitly includes the send approval email action as a dependency in the explicitDependencies > actions attribute.

"Execute_JavaScript_Code": {
   "type": "JavaScriptCode",
   "inputs": {
      "code": "var re = /(([^<>()\\[\\]\\\\.,;:\\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(re) + \" - \" + reply;\r\n;",
      "explicitDependencies": {
         "actions": [
            "Send_approval_email_"
         ]
      }
   },
   "runAfter": {}
}

İşlev eylemiFunction action

Bu eylem, önceden oluşturulmuş bir Azure işleviniçağırır.This action calls a previously created Azure function.

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

GerekliRequired

ValueValue TypeType AçıklamaDescription
<Azure-işlev KIMLIĞI><Azure-function-ID> DizeString Çağırmak istediğiniz Azure işlevinin kaynak KIMLIĞI.The resource ID for the Azure function you want to call. Bu değerin biçimi aşağıda verilmiştir:Here is the format for this value:

"/Subscriptions/<Azure-Subscription-ıd>/resourceGroups/<Azure-resource-group>/Providers/Microsoft.Web/Sites/<Azure-function-app-name>/Functions/<Azure-Function-Name> ""/subscriptions/<Azure-subscription-ID>/resourceGroups/<Azure-resource-group>/providers/Microsoft.Web/sites/<Azure-function-app-name>/functions/<Azure-function-name>"

<Yöntem-tür><method-type> DizeString İşlevi çağırmak için kullanılacak HTTP yöntemi: "GET", "PUT", "POST", "PATCH" veya "DELETE"The HTTP method to use for calling the function: "GET", "PUT", "POST", "PATCH", or "DELETE"

Belirtilmemişse, varsayılan "POST" yöntemidir.If not specified, the default is the "POST" method.

SeçimOptional

ValueValue TypeType AçıklamaDescription
<üst bilgi-içerik><header-content> JSON nesnesiJSON Object Çağrıya gönderecek tüm üstbilgilerAny headers to send with the call

Örneğin, bir istek için dili ve türü ayarlamak için:For example, to set the language and type on a request:

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

<gövde-içerik><body-content> JSON nesnesiJSON Object İstekte göndermek için herhangi bir ileti içeriğiAny message content to send in the request
<sorgu-Parametreler><query-parameters> JSON nesnesiJSON Object API çağrısıyla birlikte içerilecek sorgu parametreleriAny query parameters to include with the API call

Örneğin, "queries": { "api-version": "2018-01-01" } nesnesi çağrıya ekler ?api-version=2018-01-01 .For example, the "queries": { "api-version": "2018-01-01" } object adds ?api-version=2018-01-01 to the call.

<diğer eyleme özgü-giriş-Özellikler><other-action-specific-input-properties> JSON nesnesiJSON Object Bu özel eylem için uygulanan diğer tüm giriş özellikleriAny other input properties that apply to this specific action
<diğer eyleme özgü özellikler><other-action-specific-properties> JSON nesnesiJSON Object Bu özel eylem için uygulanan diğer özelliklerAny other properties that apply to this specific action

Mantıksal uygulamanızı kaydettiğinizde, Logic Apps altyapısı başvurulan işlev üzerinde bu denetimleri gerçekleştirir:When you save your logic app, the Logic Apps engine performs these checks on the referenced function:

  • İş akışınızın işleve erişimi olmalıdır.Your workflow must have access to the function.

  • İş akışınız yalnızca standart bir HTTP tetikleyicisi veya genel JSON Web kancası tetikleyicisi kullanabilir.Your workflow can use only a standard HTTP trigger or generic JSON webhook trigger.

    Logic Apps altyapısı, çalışma zamanında kullanılan tetikleyicisinin URL 'sini alır ve önbelleğe alır.The Logic Apps engine gets and caches the trigger's URL, which is used at runtime. Ancak, herhangi bir işlem önbelleğe alınmış URL 'YI geçersiz kılar, işlev eylemi çalışma zamanında başarısız olur.However, if any operation invalidates the cached URL, the Function action fails at runtime. Bu sorunu düzeltemedi, mantıksal uygulamanın tetikleyici URL 'sini yeniden alması ve önbelleğe almak için mantıksal uygulamayı yeniden kaydedin.To fix this issue, save the logic app again so that the logic app gets and caches the trigger URL again.

  • İşlevin herhangi bir yolu tanımlı olamaz.The function can't have any route defined.

  • Yalnızca "function" ve "Anonymous" yetkilendirme düzeylerine izin verilir.Only "function" and "anonymous" authorization levels are allowed.

ÖrnekExample

Bu eylem tanımı, önceden oluşturulan "Getproductıd" işlevini çağırır:This action definition calls the previously created "GetProductID" function:

"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 eylemiHTTP action

Bu eylem, belirtilen uç noktaya bir istek gönderir ve iş akışının çalıştırılıp çalıştırılmayacağını belirleme yanıtını denetler.This action sends a request to the specified endpoint and checks the response to determine whether the workflow should run.

"HTTP": {
   "type": "Http",
   "inputs": {
      "method": "<method-type>",
      "uri": "<HTTP-or-HTTPS-endpoint-URL>"
   },
   "runAfter": {}
}

GerekliRequired

ValueValue TypeType AçıklamaDescription
<Yöntem-tür><method-type> DizeString İsteği göndermek için kullanılacak yöntem: "GET", "PUT", "POST", "PATCH" veya "DELETE"The method to use for sending the request: "GET", "PUT", "POST", "PATCH", or "DELETE"
<HTTP-veya-HTTPS uç noktası-URL><HTTP-or-HTTPS-endpoint-URL> DizeString Çağrılacak HTTP veya HTTPS uç noktası.The HTTP or HTTPS endpoint to call. En büyük dize boyutu: 2 KBMaximum string size: 2 KB

SeçimOptional

ValueValue TypeType AçıklamaDescription
<üst bilgi-içerik><header-content> JSON nesnesiJSON Object İstekle birlikte göndermek için herhangi bir üst bilgiAny headers to send with the request

Örneğin, dili ve türünü ayarlamak için:For example, to set the language and type:

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

<gövde-içerik><body-content> JSON nesnesiJSON Object İstekte göndermek için herhangi bir ileti içeriğiAny message content to send in the request
<yeniden deneme davranışı><retry-behavior> JSON nesnesiJSON Object 408, 429 ve 5XX durum koduna ve tüm bağlantı özel durumlarına sahip aralıklı olmayan hatalara yönelik yeniden deneme davranışını özelleştirir.Customizes the retry behavior for intermittent failures, which have the 408, 429, and 5XX status code, and any connectivity exceptions. Daha fazla bilgi için bkz. yeniden deneme ilkeleri.For more information, see Retry policies.
<sorgu-Parametreler><query-parameters> JSON nesnesiJSON Object İsteğe dahil edilecek herhangi bir sorgu parametresiAny query parameters to include with the request

Örneğin, "queries": { "api-version": "2018-01-01" } nesnesi çağrıya ekler ?api-version=2018-01-01 .For example, the "queries": { "api-version": "2018-01-01" } object adds ?api-version=2018-01-01 to the call.

<diğer eyleme özgü-giriş-Özellikler><other-action-specific-input-properties> JSON nesnesiJSON Object Bu özel eylem için uygulanan diğer tüm giriş özellikleriAny other input properties that apply to this specific action
<diğer eyleme özgü özellikler><other-action-specific-properties> JSON nesnesiJSON Object Bu özel eylem için uygulanan diğer özelliklerAny other properties that apply to this specific action

ÖrnekExample

Bu eylem tanımı, belirtilen uç noktaya bir istek göndererek en son haberleri alır:This action definition gets the latest news by sending a request to the specified endpoint:

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

JOIN eylemiJoin action

Bu eylem bir dizideki tüm öğelerden bir dize oluşturur ve bu öğeleri belirtilen sınırlayıcı karakterle ayırır.This action creates a string from all the items in an array and separates those items with the specified delimiter character.

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

GerekliRequired

ValueValue TypeType AçıklamaDescription
<dizide><array> ArrayArray Kaynak öğeleri sağlayan dizi veya ifade.The array or expression that provides the source items. Bir ifade belirtirseniz, bu ifadeyi çift tırnak içine alın.If you specify an expression, enclose that expression with double quotes.
<ayırıcı><delimiter> Tek karakter dizesiSingle character string Dizedeki her öğeyi ayıran karakterThe character that separates each item in the string

ÖrnekExample

Bu tamsayı dizisini içeren daha önce oluşturulmuş bir "myIntegerArray" değişkenine sahip olduğunuzu varsayalım:Suppose you have a previously created "myIntegerArray" variable that contains this integer array:

[1,2,3,4]

Bu eylem tanımı, bir ifadede variables() işlevini kullanarak değişkenden değerleri alır ve bu dizeyi, virgülle ayrılmış şekilde bu değerlerle oluşturur:"1,2,3,4"This action definition gets the values from the variable by using the variables() function in an expression and creates this string with those values, which are separated by a comma: "1,2,3,4"

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

JSON eylemini AyrıştırParse JSON action

Bu eylem, JSON içeriğindeki özelliklerden Kullanıcı dostu alanları veya belirteçleri oluşturur.This action creates user-friendly fields or tokens from the properties in JSON content. Bunun yerine belirteçleri kullanarak mantıksal uygulamanızdaki bu özelliklere erişebilirsiniz.You can then access those properties in your logic app by using the tokens instead. Örneğin, Azure Service Bus ve Azure Cosmos DB gibi hizmetlerden JSON çıktısı kullanmak istiyorsanız bu eylemi mantıksal uygulamanıza ekleyebilirsiniz, böylece söz konusu çıktıdaki verilere daha kolay başvurabilirsiniz.For example, when you want to use JSON output from services such as Azure Service Bus and Azure Cosmos DB, you can include this action in your logic app so that you can more easily reference the data in that output.

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

GerekliRequired

ValueValue TypeType AçıklamaDescription
<JSON kaynağı><JSON-source> JSON nesnesiJSON Object Ayrıştırmak istediğiniz JSON içeriğiThe JSON content you want to parse
<JSON şeması><JSON-schema> JSON nesnesiJSON Object İşlemin, kaynak JSON içeriğini ayrıştırmak için kullandığı JSON içeriğini tanımlayan JSON şeması.The JSON schema that describes the underlying the JSON content, which the action uses for parsing the source JSON content.

İpucu: Logic Apps tasarımcısında, şemayı sağlayabilir veya işlemin şemayı oluşturabilmesi için bir örnek yük sağlayabilirsiniz.Tip: In Logic Apps Designer, you can either provide the schema or provide a sample payload so that the action can generate the schema.

ÖrnekExample

Bu eylem tanımı, iş akışınızda kullanabileceğiniz, ancak yalnızca JSON ayrıştırması eylemini izleyen eylemlerde çalıştırılan bu belirteçleri oluşturur:This action definition creates these tokens that you can use in your workflow but only in actions that run following the Parse JSON action:

FirstName, LastNameveEmailFirstName, LastName, and Email

"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": { }
},

Bu örnekte, "content" özelliği ayrıştırılacak eylemin JSON içeriğini belirtir.In this example, the "content" property specifies the JSON content for the action to parse. Şemayı oluşturmak için örnek yük olarak bu JSON içeriğini de sağlayabilirsiniz.You can also provide this JSON content as the sample payload for generating the schema.

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

"Schema" özelliği, JSON içeriğini açıklamak için kullanılan JSON şemasını belirtir:The "schema" property specifies the JSON schema used for describing the JSON content:

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

Sorgu eylemiQuery action

Bu eylem, belirtilen koşula veya filtreye bağlı olarak başka bir dizideki öğelerden bir dizi oluşturur.This action creates an array from items in another array based on a specified condition or filter.

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

GerekliRequired

ValueValue TypeType AçıklamaDescription
<dizide><array> ArrayArray Kaynak öğeleri sağlayan dizi veya ifade.The array or expression that provides the source items. Bir ifade belirtirseniz, bu ifadeyi çift tırnak içine alın.If you specify an expression, enclose that expression with double quotes.
<koşul-or-filtre><condition-or-filter> DizeString Kaynak dizideki öğeleri filtrelemek için kullanılan koşulThe condition used for filtering items in the source array

Not: Koşulu karşılayamadığı bir değer yoksa, eylem boş bir dizi oluşturur.Note: If no values satisfy the condition, then the action creates an empty array.

ÖrnekExample

Bu eylem tanımı, belirtilen değerden daha büyük değerlere sahip bir dizi oluşturur, bu iki:This action definition creates an array that has values greater than the specified value, which is two:

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

Yanıt eylemiResponse action

Bu eylem bir HTTP isteğine yanıt için yük oluşturur.This action creates the payload for the response to an HTTP request.

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

GerekliRequired

ValueValue TypeType AçıklamaDescription
<Yanıt-durum kodu><response-status-code> IntegerInteger Gelen isteğe gönderilen HTTP durum kodu.The HTTP status code that is sent to the incoming request. Varsayılan kod "200 Tamam" dır, ancak kod, 2xx, 4xx veya 5xx ile başlayan ancak 3xxx ile birlikte olmayan geçerli bir durum kodu olabilir.The default code is "200 OK", but the code can be any valid status code that starts with 2xx, 4xx, or 5xx, but not with 3xxx.

SeçimOptional

ValueValue TypeType AçıklamaDescription
<Yanıt-üst bilgiler><response-headers> JSON nesnesiJSON Object Yanıtla birlikte içerilecek bir veya daha fazla üst bilgiOne or more headers to include with the response
<yanıt gövdesi><response-body> TürleriniVarious Önceki bir eylemden dize, JSON nesnesi, hatta ikili içerik olabilen yanıt gövdesiThe response body, which can be a string, JSON object, or even binary content from a previous action

ÖrnekExample

Bu eylem tanımı, belirtilen durum kodu, ileti gövdesi ve ileti üst bilgilerine sahip bir HTTP isteğine yanıt oluşturur:This action definition creates a response to an HTTP request with the specified status code, message body, and message headers:

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

LarındanRestrictions

Diğer eylemlerin aksine, Yanıt eyleminde özel kısıtlamalar vardır:Unlike other actions, the Response action has special restrictions:

  • İş akışınız, Yanıt eylemini yalnızca iş akışı bir http isteği tetikleyicisi ile başladığında kullanabilir, yani iş AKıŞıNıZıN bir http isteği tarafından tetiklenmesi gerekir.Your workflow can use the Response action only when the workflow starts with an HTTP request trigger, meaning your workflow must be triggered by an HTTP request.

  • İş akışınız, sıralı döngüler ve paralel dallar dahil olmak üzere döngülerin içinde olan her yerde Yanıt eylemini kullanabilir.Your workflow can use the Response action anywhere except inside Foreach loops, Until loops, including sequential loops, and parallel branches.

  • Özgün HTTP isteği yalnızca Yanıt eylemi için gereken tüm eylemler http istek zaman aşımı sınırıiçinde bittiğinde iş akışınızın yanıtını alır.The original HTTP request gets your workflow's response only when all actions required by the Response action are finished within the HTTP request timeout limit.

    Ancak, iş akışınız, iç içe geçmiş bir iş akışı olarak başka bir mantıksal uygulamayı çağırırsa, iç iş akışı, iç içe geçmiş iş akışı tamamlanmadan önce ne kadar zaman geçene olursa olsun, iç içe geçmiş işHowever, if your workflow calls another logic app as a nested workflow, the parent workflow waits until the nested workflow finishes, no matter how much time passes before the nested workflow finishes.

  • İş akışınız Yanıt eylemini ve zaman uyumlu bir yanıt modelini kullandığında, bu komut birden çok çalıştırma oluşturduğundan, iş akışı tetikleyici tanımında de spton komutunu kullanamaz.When your workflow uses the Response action and a synchronous response pattern, the workflow can't also use the splitOn command in the trigger definition because that command creates multiple runs. PUT yöntemi kullanıldığında bu durumu denetleyin ve true ise "Hatalı istek" yanıtı döndürür.Check for this case when the PUT method is used, and if true, return a "bad request" response.

    Aksi takdirde, iş akışınız Spton komutunu ve bir Yanıt eylemini kullanıyorsa, iş akışı zaman uyumsuz olarak çalışır ve anında "202 kabul edildi" yanıtını döndürür.Otherwise, if your workflow uses the splitOn command and a Response action, the workflow runs asynchronously and immediately returns a "202 ACCEPTED" response.

  • İş akışınızın yürütmesi Yanıt eylemine ulaştığında, ancak gelen istek zaten bir yanıt aldıysa, çakışma nedeniyle Yanıt eylemi "başarısız" olarak işaretlenir.When your workflow's execution reaches the Response action, but the incoming request has already received a response, the Response action is marked as "Failed" due to the conflict. Sonuç olarak, mantıksal uygulamanızın çalışması da "başarısız" durumu ile işaretlenir.And as a result, your logic app run is also marked with "Failed" status.

Eylem SeçSelect action

Bu eylem, belirtilen haritaya göre başka bir diziden öğeleri dönüştürerek JSON nesnelerine sahip bir dizi oluşturur.This action creates an array with JSON objects by transforming items from another array based on the specified map. Çıkış dizisi ve kaynak dizisi her zaman aynı sayıda öğe içermelidir.The output array and source array always have the same number of items. Çıktı dizisindeki nesne sayısını değiştiremeseniz de, bu nesneler arasında özellikleri ve değerlerini ekleyebilir veya kaldırabilirsiniz.Although you can't change the number of objects in the output array, you can add or remove properties and their values across those objects. select Özelliği, kaynak dizideki öğeleri dönüştürmek için Haritayı tanımlayan en az bir anahtar-değer çifti belirtir.The select property specifies at least one key-value pair that define the map for transforming items in the source array. Anahtar-değer çifti, çıkış dizisindeki tüm nesneler genelinde bir özelliği ve değerini temsil eder.A key-value pair represents a property and its value across all the objects in the output array.

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

GerekliRequired

ValueValue TypeType AçıklamaDescription
<dizide><array> ArrayArray Kaynak öğeleri sağlayan dizi veya ifade.The array or expression that provides the source items. Bir ifadeyi çift tırnak işareti içine aldığınızdan emin olun.Make sure you enclose an expression with double quotes.

Not: Kaynak dizisi boşsa, eylem boş bir dizi oluşturur.Note: If the source array is empty, the action creates an empty array.

<key-name><key-name> DizeString <İfadeden sonuca atanan özellik adı> The property name assigned to the result from <expression>

Çıkış dizisindeki tüm nesneler arasında yeni bir özellik eklemek için, bu özellik için bir <anahtar adı> ve özellik değeri için > <ifadesisağlayın.To add a new property across all objects in the output array, provide a <key-name> for that property and an <expression> for the property value.

Dizideki tüm nesnelerden bir özelliği kaldırmak için, bu özellik için <anahtar adı> atlayın.To remove a property from all objects in the array, omit the <key-name> for that property.

<ifadesini><expression> DizeString Kaynak dizideki öğeyi dönüştüren ve sonucu <anahtar adına atayan ifade>The expression that transforms the item in the source array and assigns the result to <key-name>

Select eylemi bir diziyi çıkış olarak oluşturur, bu nedenle bu çıktıyı kullanmak isteyen herhangi bir eylemin bir diziyi kabul etmesi ya da diziyi, tüketici eyleminin kabul ettiği türe dönüştürmeniz gerekir.The Select action creates an array as output, so any action that wants to use this output must either accept an array, or you must convert the array into the type that the consumer action accepts. Örneğin, çıkış dizisini bir dizeye dönüştürmek için, bu diziyi oluşturma eylemine geçirebilir ve sonra diğer eylemlerdeki oluşturma eyleminin çıktısına başvurabilirsiniz.For example, to convert the output array to a string, you can pass that array to the Compose action, and then reference the output from the Compose action in your other actions.

ÖrnekExample

Bu eylem tanımı bir tamsayı dizisinden JSON nesnesi dizisi oluşturur.This action definition creates a JSON object array from an integer array. Eylem, kaynak dizi boyunca yinelenir, @item() ifadeyi kullanarak her bir tamsayı değeri alır ve her bir değeri her bir JSON nesnesinde "number" özelliğine atar:The action iterates through the source array, gets each integer value by using the @item() expression, and assigns each value to the "number" property in each JSON object:

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

Bu eylemin oluşturduğu dizi aşağıdadır:Here is the array that this action creates:

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

Bu dizi çıkışını başka eylemlerde kullanmak için, bu çıktıyı bir oluşturma eylemine geçirin:To use this array output in other actions, pass this output into a Compose action:

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

Daha sonra, diğer eylemlerdeki oluşturma eyleminden çıktıyı kullanabilirsiniz; Örneğin, Office 365 Outlook-e-posta gönder eylemi:You can then use the output from the Compose action in your other actions, for example, the Office 365 Outlook - Send an email action:

"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" ]
   }
},

Tablo eylemiTable action

Bu eylem bir diziden CSV veya HTML tablosu oluşturur.This action creates a CSV or HTML table from an array. JSON nesnelerine sahip diziler için bu eylem, nesnelerin özellik adlarından sütun üstbilgilerini otomatik olarak oluşturur.For arrays with JSON objects, this action automatically creates the column headers from the objects' property names. Diğer veri türlerine sahip diziler için, sütun üst bilgilerini ve değerlerini belirtmeniz gerekir.For arrays with other data types, you must specify the column headers and values. Örneğin bu dizi, bu eylemin sütun başlığı adları için kullanabileceği "ID" ve "Ürün_adı" özelliklerini içerir:For example, this array includes the "ID" and "Product_Name" properties that this action can use for the column header names:

[ {"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": {}
}

GerekliRequired

ValueValue TypeType AçıklamaDescription
<CSV veya HTML ><CSV or HTML> DizeString Oluşturmak istediğiniz tablo için biçimThe format for the table you want to create
<dizide><array> ArrayArray Tablo için kaynak öğeleri sağlayan dizi veya ifadeThe array or expression that provides the source items for the table

Not: Kaynak dizisi boşsa, eylem boş bir tablo oluşturur.Note: If the source array is empty, the action creates an empty table.

SeçimOptional

Sütun üst bilgilerini ve değerlerini belirtmek veya özelleştirmek için, columns diziyi kullanın.To specify or customize column headers and values, use the columns array. Çiftler header-value aynı üstbilgi adına sahip olduğunda, değerleri bu üst bilgi adı altındaki aynı sütunda görünür.When header-value pairs have the same header name, their values appear in the same column under that header name. Aksi takdirde, benzersiz üst bilgi benzersiz bir sütun tanımlar.Otherwise, each unique header defines a unique column.

ValueValue TypeType AçıklamaDescription
<sütun-adı><column-name> DizeString Bir sütunun üst bilgi adıThe header name for a column
<sütun-değer><column-value> AnyAny Bu sütundaki değerThe value in that column

Örnek 1Example 1

Şu anda bu diziyi içeren daha önce oluşturulmuş bir "myItemArray" değişkenine sahip olduğunuzu varsayalım:Suppose you have a previously created "myItemArray" variable that currently contains this array:

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

Bu eylem tanımı, "myItemArray" değişkeninden bir CSV tablosu oluşturur.This action definition creates a CSV table from the "myItemArray" variable. from Özelliği tarafından kullanılan ifade, variables() işlevi kullanılarak "myitemarray" öğesinden diziyi alır:The expression used by the from property gets the array from "myItemArray" by using the variables() function:

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

Bu eylemin oluşturduğu CSV tablosu aşağıda verilmiştir:Here is the CSV table that this action creates:

ID,Product_Name 
0,Apples 
1,Oranges 

Örnek 2Example 2

Bu eylem tanımı, "myItemArray" değişkeninden bir HTML tablosu oluşturur.This action definition creates an HTML table from the "myItemArray" variable. from Özelliği tarafından kullanılan ifade, variables() işlevi kullanılarak "myitemarray" öğesinden diziyi alır:The expression used by the from property gets the array from "myItemArray" by using the variables() function:

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

Bu eylemin oluşturduğu HTML tablosu aşağıda verilmiştir:Here is the HTML table that this action creates:

IDIDÜrünProduct_Name
00ElmaApples
1\.1PortakallarOranges

Örnek 3Example 3

Bu eylem tanımı, "myItemArray" değişkeninden bir HTML tablosu oluşturur.This action definition creates an HTML table from the "myItemArray" variable. Ancak bu örnek, "Stock_ID" ve "Description" adlı varsayılan sütun üstbilgi adlarını geçersiz kılar ve "Organic" sözcüğünü "Description" sütunundaki değerlere ekler.However, this example overrides the default column header names with "Stock_ID" and "Description", and adds the word "Organic" to the values in the "Description" column.

"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": {}
},

Bu eylemin oluşturduğu HTML tablosu aşağıda verilmiştir:Here is the HTML table that this action creates:

Stock_IDStock_IDAçıklamaDescription
00Organik elmalarOrganic Apples
1\.1Organik PortagesOrganic Oranges

Sonlandırma eylemiTerminate action

Bu eylem bir iş akışı örneği için çalışmayı durduruyor, devam eden tüm işlemleri iptal eder, kalan eylemleri atlar ve belirtilen durumu döndürür.This action stops the run for a workflow instance, cancels any actions in progress, skips any remaining actions, and returns the specified status. Örneğin, mantıksal uygulamanız bir hata durumundan tamamen çıkış yapması gerektiğinde Sonlandır eylemini kullanabilirsiniz.For example, you can use the Terminate action when your logic app must exit completely from an error state. Bu eylem, zaten tamamlanmış eylemleri etkilemez ve sıralı döngüler dahil olmak üzere ForEach ve until döngüleri içinde yer alamaz.This action doesn't affect already completed actions and can't appear inside Foreach and Until loops, including sequential loops.

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

GerekliRequired

ValueValue TypeType AçıklamaDescription
<status><status> DizeString Çalıştırma için döndürülecek durum: "Başarısız", "Iptal edildi" veya "başarılı"The status to return for the run: "Failed", "Cancelled", or "Succeeded"

SeçimOptional

"RunStatus" nesnesinin özellikleri yalnızca "runStatus" özelliği "başarısız" durumuna ayarlandığında geçerlidir.The properties for the "runStatus" object apply only when the "runStatus" property is set to "Failed" status.

ValueValue TypeType AçıklamaDescription
<hata-kod veya-ad><error-code-or-name> DizeString Hata için kod veya adThe code or name for the error
<hata-ileti><error-message> DizeString Hatayı açıklayan ileti veya metin ve uygulama kullanıcısının gerçekleştirebileceği eylemlerThe message or text that describes the error and any actions the app user can take

ÖrnekExample

Bu eylem tanımı bir iş akışı çalıştırmasını durduruyor, çalışma durumunu "başarısız" olarak ayarlar ve durum, hata kodu ve bir hata iletisi döndürür:This action definition stops a workflow run, sets the run status to "Failed", and returns the status, an error code, and an error message:

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

Bekleme eylemiWait action

Bu eylem, belirtilen zaman aralığı veya belirtilen saate kadar iş akışı yürütmeyi duraklatır, ancak her ikisine birden değil.This action pauses workflow execution for the specified interval or until the specified time, but not both.

Belirtilen AralıkSpecified interval

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

Belirtilen zamanSpecified time

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

GerekliRequired

ValueValue TypeType AçıklamaDescription
<birim sayısı><number-of-units> IntegerInteger Gecikme eylemi için beklenecek birim sayısıFor the Delay action, the number of units to wait
<aralığında><interval> DizeString Gecikme eylemi için beklenecek Aralık: "Saniye", "dakika", "saat", "gün", "hafta", "ay"For the Delay action, the interval to wait: "Second", "Minute", "Hour", "Day", "Week", "Month"
<Tarih-saat damgası><date-time-stamp> DizeString Tamamlanana kadar geciktir , yürütmenin sürdürüleceği tarih ve saat.For the Delay Until action, the date and time to resume execution. Bu değer UTC Tarih saat biçiminikullanmalıdır.This value must use the UTC date time format.

Örnek 1Example 1

Bu eylem tanımı, 15 dakika boyunca iş akışını duraklatır:This action definition pauses the workflow for 15 minutes:

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

Örnek 2Example 2

Bu eylem tanımı, iş akışını belirtilen saate kadar duraklatır:This action definition pauses the workflow until the specified time:

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

İş akışı eylemiWorkflow action

Bu eylem, daha önce oluşturulmuş başka bir mantıksal uygulamayı çağırır, bu da diğer mantıksal uygulama iş akışlarını dahil edebilir ve yeniden kullanabilirsiniz.This action calls another previously created logic app, which means you can include and reuse other logic app workflows. Alt mantıksal uygulamanın bir yanıt döndürmesi kaydıyla, iç içe mantıksal uygulamayı izleyen Eylemler bölümünde alt veya iç içe mantıksal uygulamadaki çıkışları da kullanabilirsiniz.You can also use the outputs from the child or nested logic app in actions that follow the nested logic app, provided that the child logic app returns a response.

Logic Apps motor çağırmak istediğiniz tetikleyiciye erişimi denetler, bu nedenle bu tetikleyiciye erişebildiğinizden emin olun.The Logic Apps engine checks access to the trigger you want to call, so make sure you can access that trigger. Ayrıca, iç içe mantıksal uygulamanın şu ölçütlere uyması gerekir:Also, the nested logic app must meet these criteria:

  • Tetikleyici, iç içe geçmiş mantıksal uygulamayı bir istek veya http tetikleyicisi gibi çağrılabilir hale getirirA trigger makes the nested logic app callable, such as a Request or HTTP trigger

  • Ana mantıksal uygulamanız ile aynı Azure aboneliğiThe same Azure subscription as your parent logic app

  • Ana mantıksal uygulamanızdaki iç içe mantıksal uygulamadaki çıktıları kullanmak için, iç içe mantıksal uygulamanın bir Yanıt eylemi olması gerekirTo use the outputs from the nested logic app in your parent logic app, the nested logic app must have a Response action

"<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": {}
}

GerekliRequired

ValueValue TypeType AçıklamaDescription
<iç içe mantık-uygulama adı><nested-logic-app-name> DizeString Çağırmak istediğiniz mantıksal uygulamanın adıThe name for the logic app you want to call
<trigger-name><trigger-name> DizeString Çağırmak istediğiniz iç içe mantıksal uygulamadaki tetikleyicinin adıThe name for the trigger in the nested logic app you want to call
<Azure-abonelik-KIMLIĞI><Azure-subscription-ID> DizeString İç içe mantıksal uygulama için Azure abonelik KIMLIĞIThe Azure subscription ID for the nested logic app
<Azure-Resource-Group><Azure-resource-group> DizeString İç içe mantıksal uygulama için Azure Kaynak grubu adıThe Azure resource group name for the nested logic app
<iç içe mantık-uygulama adı><nested-logic-app-name> DizeString Çağırmak istediğiniz mantıksal uygulamanın adıThe name for the logic app you want to call

SeçimOptional

ValueValue TypeType AçıklamaDescription
<üst bilgi-içerik><header-content> JSON nesnesiJSON Object Çağrıya gönderecek tüm üstbilgilerAny headers to send with the call
<gövde-içerik><body-content> JSON nesnesiJSON Object Çağrıyla gönderecek ileti içeriğiAny message content to send with the call

ÇıkışlarOutputs

Bu eylemin çıkışları, iç içe mantıksal uygulamanın yanıt eylemine göre farklılık gösterir.This action's outputs vary based on the nested logic app's Response action. İç içe mantıksal uygulama bir yanıt eylemi içermiyorsa, çıktılar boştur.If the nested logic app doesn't include a Response action, the outputs are empty.

ÖrnekExample

"Start_search" eylemi başarıyla tamamlandıktan sonra, bu iş akışı eylemi tanımı, belirtilen girdileri geçen "Get_product_information" adlı başka bir mantıksal uygulamayı çağırır:After the "Start_search" action finishes successfully, this workflow action definition calls another logic app named "Get_product_information", which passes in the specified inputs:

"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" ]
      }
   }
},

Denetim iş akışı eylem ayrıntılarıControl workflow action details

Foreach eylemiForeach action

Bu döngü eylemi bir dizi boyunca yinelenir ve her dizi öğesinde eylemler gerçekleştirir.This looping action iterates through an array and performs actions on each array item. Varsayılan olarak, "for each" döngüsü, en fazla döngü sayısına paralel olarak çalışır.By default, the "for each" loop runs in parallel up to a maximum number of loops. Bu en büyük için bkz. Limit ve config. "For each" döngülerini oluşturmayıöğrenin.For this maximum, see Limits and config. Learn how to create "for each" loops.

"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>"
}

GerekliRequired

ValueValue TypeType AçıklamaDescription
<eylem-1... No><action-1...n> DizeString Her dizi öğesinde çalışan eylemlerin adlarıThe names of the actions that run on each array item
<eylem-tanım-1... No><action-definition-1...n> JSON nesnesiJSON Object Çalışan eylemlerin tanımlarıThe definitions of the actions that run
< -for-ifadesi><for-each-expression> DizeString Belirtilen dizideki her öğeye başvuran ifadeThe expression that references each item in the specified array

SeçimOptional

ValueValue TypeType AçıklamaDescription
<biriktirme><count> IntegerInteger Varsayılan olarak, "for each" döngüsü yinelemeleri aynı anda veya varsayılan sınıraparalel olarak çalışır.By default, the "for each" loop iterations run at the same time, or in parallel up to the default limit. Yeni bir <sayı> değeri ayarlayarak bu sınırı değiştirmek için, bkz. "for each" döngüsü eşzamanlılık.To change this limit by setting a new <count> value, see Change "for each" loop concurrency.
<operation-option><operation-option> DizeString Paralel yerine "for each" döngüsünü sırayla çalıştırmak için, <Operation-Option> Sequential olarak ayarlayın veya 1<Count>, her ikisini birden değil.To run a "for each" loop sequentially, rather than in parallel, set either <operation-option> to Sequential or <count> to 1, but not both. Daha fazla bilgi için bkz. "for each" döngülerini sırayla çalıştırma.For more information, see Run "for each" loops sequentially.

ÖrnekExample

Bu "for each" döngüsü dizideki her öğe için bir e-posta göndererek gelen bir e-postanın eklerini içerir.This "for each" loop sends an email for each item in the array, which contains attachments from an incoming email. Döngü, Eki inceleyen bir kişiye ek dahil bir e-posta gönderir.The loop sends an email, including the attachment, to a person who reviews the attachment.

"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": {}
}

Yalnızca tetikleyiciden çıkış olarak geçirilen bir diziyi belirtmek için, bu ifade tetikleyici gövdesinden <dizi adı> dizisini alır.To specify only an array that is passed as output from the trigger, this expression gets the <array-name> array from the trigger body. Dizi yoksa, bir hatadan kaçınmak için, ifadesi ? işlecini kullanır:To avoid a failure if the array doesn't exist, the expression uses the ? operator:

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

Eğer eylemIf action

Koşullu bir deyimolan bu eylem, bir koşulu temsil eden bir ifadeyi değerlendirir ve koşulun doğru ya da yanlış olduğunu temel alarak farklı bir dal çalıştırır.This action, which is a conditional statement, evaluates an expression that represents a condition and runs a different branch based on whether the condition is true or false. Koşul doğru ise, koşul "başarılı" durumla işaretlenir.If the condition is true, the condition is marked with "Succeeded" status. Koşullu deyimler oluşturmayıöğrenin.Learn how to create conditional statements.

"Condition": {
   "type": "If",
   "expression": { "<condition>" },
   "actions": {
      "<action-1>": { "<action-definition>" }
   },
   "else": {
      "actions": {
        "<action-2>": { "<action-definition" }
      }
   },
   "runAfter": {}
}
ValueValue TypeType AçıklamaDescription
<koşul><condition> JSON nesnesiJSON Object Değerlendirmek için bir ifade olabilen koşulThe condition, which can be an expression, to evaluate
<eylem-1><action-1> JSON nesnesiJSON Object <Koşul> doğru olarak değerlendirildiğinde çalıştırılacak eylemThe action to run when <condition> evaluates to true
<eylem-tanım><action-definition> JSON nesnesiJSON Object Eylemin tanımıThe definition for the action
<eylem-2><action-2> JSON nesnesiJSON Object <Koşul> yanlış olarak değerlendirildiğinde çalıştırılacak eylemThe action to run when <condition> evaluates to false

actions Veyaelse nesnelerindeki eylemler şu durumları alır:The actions in the actions or else objects get these statuses:

  • Çalıştırıldığında ve başarılı olduğunda "başarılı oldu""Succeeded" when they run and succeed
  • Çalıştırıldığında ve başarısız olduğunda "başarısız oldu""Failed" when they run and fail
  • İlgili dal çalıştırılmazsa "atlandı""Skipped" when the respective branch doesn't run

ÖrnekExample

Bu koşul, tamsayı değişkeni sıfırdan büyük bir değere sahip olduğunda, iş akışının bir Web sitesini denetlediğini belirtir.This condition specifies that when the integer variable has a value greater than zero, the workflow checks a website. Değişken sıfır veya daha azsa, iş akışı farklı bir Web sitesini denetler.If the variable is zero or less, the workflow checks a different 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": {}
}

Koşulların ifadeleri nasıl kullanırHow conditions use expressions

İfadeleri koşullarda nasıl kullanabileceğinizi gösteren bazı örnekler şunlardır:Here are some examples that show how you can use expressions in conditions:

JSONJSON SonuçResult
"Expression": "@parameters(' <hasSpecialAction> ')""expression": "@parameters('<hasSpecialAction>')" Yalnızca Boole ifadeleri için, koşul doğru değerlendirilen herhangi bir değer için geçirilir.For Boolean expressions only, the condition passes for any value that evaluates to true.

Diğer türleri Boolean 'a dönüştürmek için şu işlevleri kullanın: empty() veya. equals()To convert other types to Boolean, use these functions: empty() or equals().

"Expression": "@greater(Eylemler (' <eylem> '). Output. Value, Parameters (' <Threshold> '))""expression": "@greater(actions('<action>').output.value, parameters('<threshold>'))" Karşılaştırma işlevleri için, eylem yalnızca <eylem> çıktısı <eşik> değerinden daha büyükse çalışır.For comparison functions, the action runs only when the output from <action> is more than the <threshold> value.
"Expression": "@or(daha fazla (Eylemler (' <eylem> '). çıktı. değer, parametreler (' <eşiği> ')), daha az (Eylemler (' <aynı eylem> '). çıkış. değer, 100))""expression": "@or(greater(actions('<action>').output.value, parameters('<threshold>')), less(actions('<same-action>').output.value, 100))" Mantıksal işlevler ve iç içe geçmiş Boole ifadeleri oluşturmak için eylem, <eylem> çıktısı <eşik> değerinden veya 100 ' den fazla olduğunda çalışır.For logic functions and creating nested Boolean expressions, the action runs when the output from <action> is more than the <threshold> value or under 100.
"Expression": "@equals(length (Eylemler (' <Action> '). çıkışlar. Errors), 0))""expression": "@equals(length(actions('<action>').outputs.errors), 0))" Dizide herhangi bir öğe olup olmadığını denetlemek için dizi işlevlerini kullanabilirsiniz.You can use array functions for checking whether the array has any items. İşlem, errors dizi boş olduğunda çalışır.The action runs when the errors array is empty.

Kapsam eylemiScope action

Bu eylem, bu kapsamdaki eylemlerin çalışması bittikten sonra kendi durumlarını alan, işlemleri mantıksal olarak kapsamlarhalinde gruplandırır.This action logically groups actions into scopes, which get their own status after the actions in that scope finish running. Daha sonra, diğer eylemlerin çalıştırılıp çalıştırılmadığını anlamak için kapsamın durumunu kullanabilirsiniz.You can then use the scope's status to determine whether other actions run. Kapsamları oluşturmayıöğrenin.Learn how to create scopes.

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

GerekliRequired

ValueValue TypeType AçıklamaDescription
<iç eylem-1... No><inner-action-1...n> JSON nesnesiJSON Object Kapsam içinde çalışan bir veya daha fazla eylemOne or more actions that run inside the scope
<eylem-girişler><action-inputs> JSON nesnesiJSON Object Her eyleme ait girişlerThe inputs for each action

Değiştirme eylemiSwitch action

Bu eylem, Switch deyimleriolarak da bilinen, diğer eylemleri durumlarhalinde düzenler ve bir varsa, varsayılan durum dışında her bir durum için bir değer atar.This action, also known as a switch statement, organizes other actions into cases, and assigns a value to each case, except for the default case if one exists. İş akışınız çalıştığında, anahtar eylemi bir ifade, nesne veya belirteçten değeri her bir durum için belirtilen değerlere göre karşılaştırır.When your workflow runs, the Switch action compares the value from an expression, object, or token against the values specified for each case. Switch eylemi eşleşen bir durum bulursa, iş akışınız yalnızca söz konusu servis talebiyle ilgili eylemleri çalıştırır.If the Switch action finds a matching case, your workflow runs only the actions for that case. Anahtar eylemi her çalıştığında yalnızca bir eşleşen durum var veya eşleşme yok.Each time the Switch action runs, either only one matching case exists or no matches exist. Hiçbir eşleşme yoksa, anahtar eylemi varsayılan eylemleri çalıştırır.If no matches exist, the Switch action runs the default actions. Switch deyimlerini oluşturmayıöğrenin.Learn how to create switch statements.

"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": {}
}

GerekliRequired

ValueValue TypeType AçıklamaDescription
<ifade-veya-belirteç><expression-object-or-token> VariesVaries Değerlendirilecek ifade, JSON nesnesi veya belirteçThe expression, JSON object, or token to evaluate
<eylem-ad><action-name> DizeString Eşleşen durum için çalıştırılacak eylemin adıThe name of the action to run for the matching case
<eylem-tanım><action-definition> JSON nesnesiJSON Object Eşleşen durum için çalıştırılacak eylemin tanımıThe definition for the action to run for the matching case
<eşleşen değer><matching-value> VariesVaries Değerlendirilen sonuçla karşılaştırılacak değerThe value to compare with the evaluated result

SeçimOptional

ValueValue TypeType AçıklamaDescription
<varsayılan eylem-adı><default-action-name> DizeString Eşleşen bir durum yoksa çalıştırılacak varsayılan eylemin adıThe name of the default action to run when no matching case exists
<varsayılan eylem-tanım><default-action-definition> JSON nesnesiJSON Object Eşleşen bir durum mevcut olmadığında çalıştırılacak eylemin tanımıThe definition for the action to run when no matching case exists

ÖrnekExample

Bu eylem tanımı, kişinin onay isteği e-postasına yanıt verip vermediğini "Onayla" seçeneğini veya "Reddet" seçeneğini seçili olarak değerlendirir.This action definition evaluates whether the person responding to the approval request email selected the "Approve" option or the "Reject" option. Bu seçime bağlı olarak, Switch eylemi, farklı bir e-posta göndermek, ancak her durumda farklı bir e-posta göndermek için, eşleşen durum için eylemleri çalıştırır.Based on this choice, the Switch action runs the actions for the matching case, which is to send another email to the responder but with different wording in each case.

"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"
      ]
   }
}

Until eylemiUntil action

Bu döngü eylemi, belirtilen koşul doğru olana kadar çalışan eylemleri içerir.This loop action contains actions that run until the specified condition is true. Döngü, tüm diğer eylemler çalıştırıldıktan sonra koşulu son adım olarak denetler.The loop checks the condition as the last step after all other actions have run. "actions" Nesnesine birden fazla eylem ekleyebilirsiniz ve eylem en az bir sınır tanımlamalıdır.You can include more than one action in the "actions" object, and the action must define at least one limit. "Until" döngülerini oluşturmayıöğrenin.Learn how to create "until" loops.

 "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": {}
}
ValueValue TypeType AçıklamaDescription
<eylem-ad><action-name> DizeString Döngü içinde çalıştırmak istediğiniz eylemin adıThe name for the action you want to run inside the loop
<eylem-tür><action-type> DizeString Çalıştırmak istediğiniz eylem türüThe action type you want to run
<eylem-girişler><action-inputs> TürleriniVarious Çalıştırılacak eylemin girişleriThe inputs for the action to run
<koşul><condition> DizeString Döngüdeki tüm eylemlerin çalışmasını bitirdikten sonra değerlendirilecek koşul veya ifadeThe condition or expression to evaluate after all the actions in the loop finish running
<döngü sayısı><loop-count> IntegerInteger Eylemin çalışacağı en çok döngü sayısı sınırı.The limit on the most number of loops that the action can run. Varsayılan count değer 60 ' dir.The default count value is 60.
<döngü zaman aşımı><loop-timeout> DizeString Döngünün en uzun sürede çalışacağı sınır.The limit on the longest time that the loop can run. timeout VarsayılanPT1Hdeğer, gereken ISO 8601 biçimidir.The default timeout value is PT1H, which is the required ISO 8601 format.

ÖrnekExample

Bu döngü eylemi tanımı, bu koşullardan biri karşılanana kadar belirtilen URL 'ye bir HTTP isteği gönderir:This loop action definition sends an HTTP request to the specified URL until one of these conditions is met:

  • İstek, "200 OK" durum kodu ile bir yanıt alır.The request gets a response with the "200 OK" status code.
  • Döngü 60 kez çalışır.The loop has run 60 times.
  • Döngü bir saat için çalıştırıldı.The loop has run for one hour.
 "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": {}
}

Web kancaları ve aboneliklerWebhooks and subscriptions

Web kancası tabanlı tetikleyiciler ve eylemler uç noktaları düzenli olarak denetlemez, ancak bunun yerine bu uç noktalarda belirli olayları veya verileri bekler.Webhook-based triggers and actions don't regularly check endpoints, but wait for specific events or data at those endpoints instead. Bu Tetikleyiciler ve Eylemler, uç noktaların yanıt gönderebileceği bir geri çağırma URL 'si sağlayarak uç noktalara abone olur.These triggers and actions subscribe to the endpoints by providing a callback URL where the endpoint can send responses.

Bu subscribe çağrı, iş akışı herhangi bir şekilde değiştirildiğinde (örneğin, kimlik bilgileri yenilendiğinde veya bir tetikleyici veya eylem için giriş parametreleri değiştiğinde) gerçekleşir.The subscribe call happens when the workflow changes in any way, for example, when credentials are renewed, or when the input parameters change for a trigger or action. Bu çağrı, standart HTTP eylemleri ile aynı parametreleri kullanır.This call uses the same parameters as standard HTTP actions.

Bir işlem tetikleyiciyi veya eylemi geçersiz yaptığında çağrıotomatikolarakgerçekleşir,örneğin:unsubscribeThe unsubscribe call automatically happens when an operation makes the trigger or action invalid, for example:

  • Tetikleyiciyi silme veya devre dışı bırakma.Deleting or disabling the trigger.
  • İş akışını silme veya devre dışı bırakma.Deleting or disabling the workflow.
  • Aboneliği silme veya devre dışı bırakma.Deleting or disabling the subscription.

Bu çağrıları desteklemek için, @listCallbackUrl() ifade tetikleyici veya eylem için benzersiz bir "geri arama URL 'si" döndürür.To support these calls, the @listCallbackUrl() expression returns a unique "callback URL" for the trigger or action. Bu URL, hizmetin REST API kullanan uç noktalar için benzersiz tanımlayıcıyı temsil eder.This URL represents a unique identifier for the endpoints that use the service's REST API. Bu işlevin parametreleri Web kancası tetikleyicisi veya eylemiyle aynıdır.The parameters for this function are the same as the webhook trigger or action.

Zaman uyumsuz süreyi değiştirmeChange asynchronous duration

Her iki tetikleyici ve eylem için, limit.timeout özelliği ekleyerek zaman uyumsuz düzenin süresini belirli bir zaman aralığına sınırlayabilirsiniz.For both triggers and actions, you can limit the duration for the asynchronous pattern to a specific time interval by adding the limit.timeout property. Bu şekilde, zaman aralığı Cancelled ActionTimedOut üzerinde işlem bitmemişse, eylemin durumu kodla olarak işaretlenir.That way, if the action hasn't finished when the interval lapses, the action's status is marked as Cancelled with the ActionTimedOut code. Özelliği ISO 8601 biçiminikullanır. timeoutThe timeout property uses ISO 8601 format.

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

Çalışma zamanı yapılandırma ayarlarıRuntime configuration settings

Tetikleyiciler ve eylemler için varsayılan çalışma zamanı davranışını tetikleyici veya eylem tanımında bu runtimeConfiguration özelliklerle değiştirebilirsiniz.You can change the default runtime behavior for triggers and actions with these runtimeConfiguration properties in the trigger or action definition.

ÖzellikProperty TürType AçıklamaDescription Tetikleyici veya eylemTrigger or action
runtimeConfiguration.concurrency.runs IntegerInteger Aynı anda veya paralel olarak çalışabilen iş akışı örneklerinin sayısı için varsayılan sınırı değiştirin.Change the default limit on the number of workflow instances that can run at the same time, or in parallel. Bu değer, arka uç sistemlerinin aldığı isteklerin sayısını sınırlamanıza yardımcı olabilir.This value can help limit the number of requests that backend systems receive.

Özelliği özelliği olarak ayarlama ile aynışekildeçalışacakşekildeayarlamak.SingleInstance 1 runs operationOptionsSetting the runs property to 1 works the same way as setting the operationOptions property to SingleInstance. Her iki özelliği de ayarlayabilirsiniz, ancak ikisini birden kullanamazsınız.You can set either property, but not both.

Varsayılan sınırı değiştirmek için bkz. tetikleyici eşzamanlılık veya tetikleyici örneklerini sırayladeğiştirme.To change the default limit, see Change trigger concurrency or Trigger instances sequentially.

Tüm tetikleyicilerAll triggers
runtimeConfiguration.concurrency.maximumWaitingRuns IntegerInteger İş akışınız zaten maksimum eşzamanlı örnekleri çalıştırıyorsa çalışmayı beklemeleri gereken iş akışı örneklerinin sayısı için varsayılan sınırı değiştirin.Change the default limit on the number of workflow instances that can wait to run when your workflow is already running the maximum concurrent instances. concurrency.runs Özelliğindeki eşzamanlılık limitini değiştirebilirsiniz.You can change the concurrency limit in the concurrency.runs property.

Varsayılan sınırı değiştirmek için bkz. değişiklik bekleyen çalışma sınırı.To change the default limit, see Change waiting runs limit.

Tüm tetikleyicilerAll triggers
runtimeConfiguration.concurrency.repetitions IntegerInteger Aynı anda veya paralel olarak çalışabilen "for each" döngüsü yinelemelerinin sayısı için varsayılan sınırı değiştirin.Change the default limit on the number of "for each" loop iterations that can run at the same time, or in parallel.

Özelliği özelliği olarak ayarlama ile aynışekildeçalışacakşekildeayarlamak.SingleInstance 1 repetitions operationOptionsSetting the repetitions property to 1 works the same way as setting the operationOptions property to SingleInstance. Her iki özelliği de ayarlayabilirsiniz, ancak ikisini birden kullanamazsınız.You can set either property, but not both.

Varsayılan sınırı değiştirmek için, " her bir eşzamanlılık için" değiştirme veya "her bir" for each "döngüsü sırayla' ne bakın.To change the default limit, see Change "for each" concurrency or Run "for each" loops sequentially.

Eylem:Action:

ForeachForeach

runtimeConfiguration.paginationPolicy.minimumItemCount IntegerInteger Tarafından desteklenen ve sayfalama özelliği açık olan belirli eylemler için, bu değer alınacak en az sonuç sayısını belirtir.For specific actions that support and have pagination turned on, this value specifies the minimum number of results to retrieve.

Sayfalandırmayı açmak için bkz. sayfalama kullanarak toplu veri, öğe veya sonuç edinmeTo turn on pagination, see Get bulk data, items, or results by using pagination

Eylem: DeğiştirilecekAction: Varied
runtimeConfiguration.secureData.properties ArrayArray Birçok tetikleyici ve eylem üzerinde, bu ayarlar mantıksal uygulamanın çalıştırma geçmişinden girdileri, çıkışları veya her ikisini de gizler.On many triggers and actions, these settings hide inputs, outputs, or both from the logic app's run history.

Bu verilerin güvenliğini sağlamak için bkz. çalıştırma geçmişinden girişleri ve çıkışları gizleme.To secure this data, see Hide inputs and outputs from run history.

Birçok tetikleyici ve eylemMost triggers and actions
runtimeConfiguration.staticResult JSON nesnesiJSON Object ' Yi destekleyen ve statik sonuç ayarı açık olan eylemler için, staticResult nesne şu özniteliklere sahiptir:For actions that support and have the static result setting turned on, the staticResult object has these attributes:

- name, mantıksal uygulama staticResults definition iş akışınızın özniteliğinde özniteliği içinde görüntülenen geçerli eylemin statik sonuç tanımı adına başvuran.- name, which references the current action's static result definition name, which appears inside the staticResults attribute in your logic app workflow's definition attribute. Daha fazla bilgi için bkz. statik sonuçlar-Iş akışı tanımlama dili Için şema başvurusu.For more information, see Static results - Schema reference for Workflow Definition Language.

- staticResultOptionsBu, statik sonuçların Enabled geçerli eylem için olup olmadığını belirtir.- staticResultOptions, which specifies whether static results are Enabled or not for the current action.

Statik sonuçları açmak için, bkz. statik sonuçlar ayarlayarak, veri ve sahte verilerle test mantığı uygulamalarıTo turn on static results, see Test logic apps with mock data by setting up static results

Eylem: DeğiştirilecekAction: Varied

İşlem seçenekleriOperation options

Tetikleyiciler ve eylemler için varsayılan davranışı tetikleyici veya eylem tanımındaki operationOptions özelliği ile değiştirebilirsiniz.You can change the default behavior for triggers and actions with the operationOptions property in trigger or action definition.

İşlem seçeneğiOperation option TypeType AçıklamaDescription Tetikleyici veya eylemTrigger or action
DisableAsyncPattern DizeString HTTP tabanlı eylemleri zaman uyumsuz yerine eşzamanlı olarak çalıştırın.Run HTTP-based actions synchronously, rather than asynchronously.

Bu seçeneği ayarlamak için bkz. eylemleri zaman uyumlu olarak çalıştırma.To set this option, see Run actions synchronously.

EylemActions:

Apiconnection,ApiConnection,
HTTP,HTTP,
YanıtResponse

OptimizedForHighThroughput DizeString 5 dakika başına eylem yürütmelerinin sayısı üst sınırını en fazlaolacak şekilde değiştirin.Change the default limit on the number of action executions per 5 minutes to the maximum limit.

Bu seçeneği ayarlamak için bkz. yüksek verimlilik modunda çalıştırma.To set this option, see Run in high throughput mode.

Tüm eylemlerAll actions
Sequential DizeString "Her" for each "döngüsü yinelemelerini, paralel olarak aynı anda değil, tek bir kez çalıştırın.Run "for each" loop iterations one at a time, rather than all at the same time in parallel.

Bu seçenek runtimeConfiguration.concurrency.repetitions 1özelliği olarak ayarlamayla aynı şekilde çalışmaktadır.This option works the same way as setting the runtimeConfiguration.concurrency.repetitions property to 1. Her iki özelliği de ayarlayabilirsiniz, ancak ikisini birden kullanamazsınız.You can set either property, but not both.

Bu seçeneği ayarlamak için, bkz. "for each" döngülerini sırayla çalıştır.To set this option, see Run "for each" loops sequentially.

Eylem:Action:

ForeachForeach

SingleInstance DizeString Her mantıksal uygulama örneği için tetikleyiciyi sırayla çalıştırın ve sonraki mantıksal uygulama örneğini tetiklemeden önce daha önce etkin çalıştırmanın bitmesini bekleyin.Run the trigger for each logic app instance sequentially and wait for the previously active run to finish before triggering the next logic app instance.

Bu seçenek runtimeConfiguration.concurrency.runs 1özelliği olarak ayarlamayla aynı şekilde çalışmaktadır.This option works the same way as setting the runtimeConfiguration.concurrency.runs property to 1. Her iki özelliği de ayarlayabilirsiniz, ancak ikisini birden kullanamazsınız.You can set either property, but not both.

Bu seçeneği ayarlamak için bkz. tetikleyici örnekleri ardışıkolarak.To set this option, see Trigger instances sequentially.

Tüm tetikleyicilerAll triggers

Tetikleyici eşzamanlılık değiştirmeChange trigger concurrency

Varsayılan olarak, mantıksal uygulama örnekleri aynı anda, eşzamanlı olarak veya varsayılan sınıraparalel olarak çalışır.By default, logic app instances run at the same time, concurrently, or in parallel up to the default limit. Bu nedenle, her tetikleyici örneği, önceki iş akışı örneği çalışmaya başlamadan önce tetiklenir.So, each trigger instance fires before the preceding workflow instance finishes running. Bu sınır, arka uç sistemlerinin aldığı istek sayısını denetlemeye yardımcı olur.This limit helps control the number of requests that backend systems receive.

Varsayılan sınırı değiştirmek için, kod görünümü Düzenleyicisi 'ni veya Logic Apps tasarımcısını kullanarak eşzamanlılık ayarını tasarımcı aracılığıyla değiştirmek, temel tetikleyici tanımında runtimeConfiguration.concurrency.runs özelliği ekler veya günceller, ya da tam tersi.To change the default limit, you can use either the code view editor or Logic Apps Designer because changing the concurrency setting through the designer adds or updates the runtimeConfiguration.concurrency.runs property in the underlying trigger definition and vice versa. Bu özellik paralel olarak çalışabilecek en fazla iş akışı örneği sayısını denetler.This property controls the maximum number of workflow instances that can run in parallel.

Not

Tetikleyiciyi tasarımcı veya kod görünümü Düzenleyicisi kullanarak sırayla çalışacak şekilde ayarlarsanız, tetikleyicisinin operationOptions özelliğini kod görünümü düzenleyicisinde olarak SingleInstance ayarlamayın.If you set the trigger to run sequentially either by using the designer or the code view editor, don't set the trigger's operationOptions property to SingleInstance in the code view editor. Aksi takdirde, doğrulama hatası alırsınız.Otherwise, you get a validation error. Daha fazla bilgi için bkz. örnekleri sırayla tetikleme.For more information, see Trigger instances sequentially.

Kod görünümünde DüzenleEdit in code view

Temel tetikleyici tanımında runtimeConfiguration.concurrency.runs özelliği, 1 ve 50 değerleri dahil olmak üzere bir değere ekleyin veya güncelleştirin.In the underlying trigger definition, add or update the runtimeConfiguration.concurrency.runs property to a value between 1 and 50 inclusively.

Eşzamanlı çalıştırmaları 10 örneğe sınırlayan bir örnek aşağıda verilmiştir:Here is an example that limits concurrent runs to 10 instances:

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

Logic Apps tasarımcısında DüzenleEdit in Logic Apps Designer

  1. Tetikleyicinin sağ üst köşesinde üç nokta (...) düğmesini ve ardından Ayarlar' ı seçin.In the trigger's upper-right corner, choose the ellipses (...) button, and then choose Settings.

  2. Eşzamanlılık denetimialtında sınırı Açıkolarak ayarlayın.Under Concurrency Control, set Limit to On.

  3. Paralellik sürgüsünün derecesini istediğiniz değere sürükleyin.Drag the Degree of Parallelism slider to the value you want. Mantıksal uygulamanızı sırayla çalıştırmak için kaydırıcı değerini 1olarak sürükleyin.To run your logic app sequentially, drag the slider value to 1.

Eşzamanlılık "for each"Change "for each" concurrency

Varsayılan olarak, "her" for döngüsü yinelemesi aynı anda veya paralel, varsayılan sınırakadar çalışır.By default, "for each" loop iterations run at the same time, or in parallel, up to the default limit. Varsayılan sınırı değiştirmek için, kod görünümü Düzenleyicisi 'ni veya Logic Apps tasarımcısını kullanarak eşzamanlılık ayarını tasarımcı aracılığıyla değiştirmeniz, temel alınan "her" eylem tanımında runtimeConfiguration.concurrency.repetitions özelliği ekler veya günceller, ya da tam tersi.To change the default limit, you can use either the code view editor or Logic Apps Designer because changing the concurrency setting through the designer adds or updates the runtimeConfiguration.concurrency.repetitions property in the underlying "for each" action definition and vice versa. Bu özellik paralel çalışabilecek en fazla yineleme sayısını denetler.This property controls the maximum number of iterations that can run in parallel.

Not

"For each" eylemini tasarımcı veya kod görünümü Düzenleyicisi kullanarak sırayla çalışacak şekilde ayarlarsanız, eylemin operationOptions özelliğini kod görünümü düzenleyicisinde olarak Sequential ayarlamayın.If you set the "for each" action to run sequentially either by using the designer or the code view editor, don't set the action's operationOptions property to Sequential in the code view editor. Aksi takdirde, doğrulama hatası alırsınız.Otherwise, you get a validation error. Daha fazla bilgi için bkz. "for each" döngülerini sırayla çalıştırma.For more information, see Run "for each" loops sequentially.

Kod görünümünde DüzenleEdit in code view

Temel alınan "for each" tanımında runtimeConfiguration.concurrency.repetitions özelliği, 1 ve 50 değerleri dahil olmak üzere bir değere ekleyin veya güncelleştirin.In the underlying "for each" definition, add or update the runtimeConfiguration.concurrency.repetitions property to a value between 1 and 50 inclusively.

Eşzamanlı çalıştırmaları 10 yineleme ile sınırlayan bir örnek aşağıda verilmiştir:Here is an example that limits concurrent runs to 10 iterations:

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

Logic Apps tasarımcısında DüzenleEdit in Logic Apps Designer

  1. Her eylem için sağ üst köşedeki üç nokta (...) düğmesini ve ardından Ayarlar' ı seçin.In the For each action, from the upper-right corner, choose the ellipses (...) button, and then choose Settings.

  2. Eşzamanlılık denetimialtında eşzamanlılık denetimini Açıkolarak ayarlayın.Under Concurrency Control, set Concurrency Control to On.

  3. Paralellik sürgüsünün derecesini istediğiniz değere sürükleyin.Drag the Degree of Parallelism slider to the value you want. Mantıksal uygulamanızı sırayla çalıştırmak için kaydırıcı değerini 1olarak sürükleyin.To run your logic app sequentially, drag the slider value to 1.

Değişiklik bekleyen çalışma sınırıChange waiting runs limit

Varsayılan olarak, mantıksal uygulama iş akışı örneklerinin hepsi aynı anda, aynı anda veya varsayılan sınıraparalel olarak çalışır.By default, logic app workflow instances all run at the same time, concurrently, or in parallel up to the default limit. Her tetikleyici örneği, daha önce etkin iş akışı örneğinin çalışması bitmeden önce ateşlenir.Each trigger instance fires before the previously active workflow instance finishes running. Bu varsayılan sınırı değiştirebilsenizde, iş akışı örneklerinin sayısı yeni eşzamanlılık sınırına ulaştığında, diğer tüm yeni örneklerin çalıştırılması beklenmelidir.Although you can change this default limit, when the number of workflow instances reaches the new concurrency limit, any other new instances must wait to run.

Beklemeleri gereken çalıştırmanın sayısı, varsayılan bir sınırasahiptir ve bu da değiştirebilirsiniz.The number of runs that can wait also has a default limit, which you can change. Ancak, mantıksal uygulamanız bekleme çalıştırmalarının sınırına ulaştıktan sonra, Logic Apps altyapısı artık yeni çalıştırmalar kabul etmez.However, after your logic app reaches the limit on waiting runs, the Logic Apps engine no longer accepts new runs. İstek ve Web kancası Tetikleyicileri 429 hata döndürüyor ve yinelenen Tetikleyiciler yoklama girişimlerini atmaya başladı.Request and webhook triggers return 429 errors, and recurring triggers start skipping polling attempts.

Bekleyen çalışmalarla ilgili varsayılan sınırı değiştirmek için, temel tetikleyici tanımında runtimeConfiguration.concurency.maximumWaitingRuns özelliği ile 100arasında 0 bir değer ekleyin.To change the default limit on waiting runs, in the underlying trigger definition, add the runtimeConfiguration.concurency.maximumWaitingRuns property with a value between 0 and 100.

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

Örnekleri sıralı olarak TetikleTrigger instances sequentially

Her mantıksal uygulama iş akışı örneğini yalnızca önceki örnek çalışmayı tamamladığında çalıştırmak için tetikleyiciyi sıralı olarak çalışacak şekilde ayarlayın.To run each logic app workflow instance only after the previous instance finishes running, set the trigger to run sequentially. Aynı zamanda tasarımcı aracılığıyla eşzamanlılık ayarını değiştirmek, temel tetikleyici tanımındaki runtimeConfiguration.concurrency.runs özelliği de ekler veya günceller, ya da tam tersi de geçerlidir. Logic AppsYou can use either the code view editor or Logic Apps Designer because changing the concurrency setting through designer also adds or updates the runtimeConfiguration.concurrency.runs property in the underlying trigger definition and vice versa.

Not

Tasarımcıyı veya kod görünümü düzenleyicisini kullanarak sırayla çalışacak bir tetikleyici ayarladığınızda, tetikleyicisinin operationOptions özelliğini kod görünümü düzenleyicisinde olarak Sequential ayarlamayın.When you set a trigger to run sequentially either by using the designer or the code view editor, don't set the trigger's operationOptions property to Sequential in the code view editor. Aksi takdirde, doğrulama hatası alırsınız.Otherwise, you get a validation error.

Kod görünümünde DüzenleEdit in code view

Tetikleyici tanımında, bu özelliklerden birini ayarlayın, ancak ikisini birden kullanmayın.In the trigger definition, set either of these properties, but not both.

Özelliği şu şekilde 1ayarlayın: runtimeConfiguration.concurrency.runsSet the runtimeConfiguration.concurrency.runs property to 1:

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

veya-or-

Özelliği şu şekilde SingleInstanceayarlayın: operationOptionsSet the operationOptions property to SingleInstance:

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

Logic Apps tasarımcısında DüzenleEdit in Logic Apps Designer

  1. Tetikleyicinin sağ üst köşesinde üç nokta (...) düğmesini ve ardından Ayarlar' ı seçin.In the trigger's upper-right corner, choose the ellipses (...) button, and then choose Settings.

  2. Eşzamanlılık denetimialtında sınırı Açıkolarak ayarlayın.Under Concurrency Control, set Limit to On.

  3. Paralellik sürgüsünün derecesini sayıya 1sürükleyin.Drag the Degree of Parallelism slider to the number 1.

"Her" for each "döngülerini sırayla çalıştırRun "for each" loops sequentially

Yalnızca önceki yineleme çalıştıktan sonra "for each" döngüsü yinelemesi çalıştırmak için, "for each" eylemini sıralı olarak çalışacak şekilde ayarlayın.To run a "for each" loop iteration only after the previous iteration finishes running, set the "for each" action to run sequentially. Eylemin eşzamanlılık ' i tasarımcı aracılığıyla değiştirmek Ayrıca temel eylem tanımındaki runtimeConfiguration.concurrency.repetitions özelliği de ekler veya güncelleştirir, ya da tam tersi de geçerlidir. Logic AppsYou can use either the code view editor or Logic Apps Designer because changing the action's concurrency through designer also adds or updates the runtimeConfiguration.concurrency.repetitions property in the underlying action definition and vice versa.

Not

Tasarımcı veya kod görünümü Düzenleyicisi 'ni kullanarak sırayla çalışacak bir "for each" eylemini ayarladığınızda, kod görünümü düzenleyicisinde eylemin operationOptions özelliğini olarak Sequential ayarlamayın.When you set a "for each" action to run sequentially either by using the designer or code view editor, don't set the action's operationOptions property to Sequential in the code view editor. Aksi takdirde, doğrulama hatası alırsınız.Otherwise, you get a validation error.

Kod görünümünde DüzenleEdit in code view

Eylem tanımında, bu özelliklerden birini ayarlayın, ancak ikisini birden kullanmayın.In the action definition, set either of these properties, but not both.

Özelliği şu şekilde 1ayarlayın: runtimeConfiguration.concurrency.repetitionsSet the runtimeConfiguration.concurrency.repetitions property to 1:

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

veya-or-

Özelliği şu şekilde Sequentialayarlayın: operationOptionsSet the operationOptions property to Sequential:

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

Logic Apps tasarımcısında DüzenleEdit in Logic Apps Designer

  1. Her bir eylemin sağ üst köşesinde, üç nokta (...) düğmesini ve ardından Ayarlar' ı seçin.In the For each action's upper-right corner, choose the ellipses (...) button, and then choose Settings.

  2. Eşzamanlılık denetimialtında eşzamanlılık denetimini Açıkolarak ayarlayın.Under Concurrency Control, set Concurrency Control to On.

  3. Paralellik sürgüsünün derecesini sayıya 1sürükleyin.Drag the Degree of Parallelism slider to the number 1.

Eylemleri zaman uyumlu olarak çalıştırRun actions synchronously

Varsayılan olarak, tüm HTTP tabanlı eylemler standart zaman uyumsuz işlem modelini izler.By default, all HTTP-based actions follow the standard asynchronous operation pattern. Bu model, HTTP tabanlı bir eylem belirtilen uç noktaya bir istek gönderdiğinde, uzak sunucunun "202 kabul EDILDI" yanıtını geri göndereceğini belirtir.This pattern specifies that when an HTTP-based action sends a request to the specified endpoint, the remote server sends back a "202 ACCEPTED" response. Bu yanıt, sunucunun işleme isteğini kabul ettiği anlamına gelir.This reply means the server accepted the request for processing. Logic Apps altyapısı, 202 olmayan bir yanıt olan işlem duraklarına kadar yanıtın konum üst bilgisi tarafından belirtilen URL 'YI denetlemeye devam eder.The Logic Apps engine keeps checking the URL specified by the response's location header until processing stops, which is any non-202 response.

Ancak, isteklerin bir zaman aşımı sınırı vardır. bu nedenle uzun süre çalışan eylemler için operationOptions DisableAsyncPattern özelliği eylem girişlerinin altına ekleyerek ve ayarlayarak zaman uyumsuz davranışı devre dışı bırakabilirsiniz.However, requests have a timeout limit, so for long-running actions, you can disable the asynchronous behavior by adding and setting the operationOptions property to DisableAsyncPattern under the action's inputs.

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

Yüksek aktarım hızı modunda çalıştırRun in high throughput mode

Tek bir mantıksal uygulama tanımı için, 5 dakikada bir yürütülen eylemlerin sayısı varsayılan sınırasahiptir.For a single logic app definition, the number of actions that execute every 5 minutes has a default limit. Bu sınırı mümkün olan en yüksek sınıra yükseltmek için operationOptions özelliğini olarak OptimizedForHighThroughputayarlayın.To raise this limit to the maximum possible, set the operationOptions property to OptimizedForHighThroughput. Bu ayar mantıksal uygulamanızı "yüksek aktarım hızı" moduna geçirir.This setting puts your logic app into "high throughput" mode.

Not

Yüksek verimlilik modu önizlemededir.High throughput mode is in preview. Ayrıca, gerektiğinde bir iş yükünü birden fazla mantıksal uygulama üzerinde dağıtabilirsiniz.You can also distribute a workload across more than one logic app as necessary.

"<action-name>": {
   "type": "<action-type>",
   "inputs": { "<action-inputs>" },
   "operationOptions": "OptimizedForHighThroughput",
   "runAfter": {}
}

HTTP Tetikleyicileri ve eylemlerinin kimliklerini doğrulamaAuthenticate HTTP triggers and actions

HTTP uç noktaları farklı kimlik doğrulama türlerini destekler.HTTP endpoints support different kinds of authentication. Bu HTTP Tetikleyicileri ve eylemleri için kimlik doğrulaması ayarlayabilirsiniz:You can set up authentication for these HTTP triggers and actions:

Ayarlayabileceğiniz kimlik doğrulama türleri şunlardır:Here are the kinds of authentication you can set up:

Önemli

Mantıksal uygulama iş akışı tanımınızın işleyeceği tüm hassas bilgileri koruduğunuzdan emin olun.Make sure you protect any sensitive information that your logic app workflow definition handles. Güvenli parametreleri kullanın ve verileri gerektiği şekilde kodlayın.Use secured parameters and encode data as necessary. Parametreleri kullanma ve güvenliğini sağlama hakkında daha fazla bilgi için bkz. mantıksal uygulamanızı güvenli halegetirme.For more information about using and securing parameters, see Secure your logic app.

Temel kimlik doğrulamasıBasic authentication

Azure Active Directory kullanarak temel kimlik doğrulaması için, Tetikleyiciniz veya eylem tanımınız, aşağıdaki authentication tabloda belirtilen özellikleri içeren bir JSON nesnesi içerebilir.For basic authentication by using Azure Active Directory, your trigger or action definition can include an authentication JSON object, which has the properties specified by the following table. Çalışma zamanında parametre değerlerine erişmek için, @parameters('parameterName') iş akışı Tanım Dilitarafından belirtilen ifadesini kullanabilirsiniz.To access parameter values at runtime, you can use the @parameters('parameterName') expression, which is provided by the Workflow Definition Language.

ÖzellikProperty GerekliRequired ValueValue AçıklamaDescription
typetype EvetYes Basit"Basic" Burada "temel" olan, kullanılacak kimlik doğrulama türüThe authentication type to use, which is "Basic" here
Kullanıcı adıusername EvetYes "@parameters(' usernameparam ')""@parameters('userNameParam')" Hedef hizmet uç noktasına erişim doğrulaması için Kullanıcı adıThe user name for authenticating access to the target service endpoint
Parolapassword EvetYes "@parameters(' passwordparam ')""@parameters('passwordParam')" Hedef hizmet uç noktasına erişim doğrulaması için parolaThe password for authenticating access to the target service endpoint

Bu örnek http eylem tanımında, authentication bölümünde kimlik doğrulaması belirtilir. BasicIn this example HTTP action definition, the authentication section specifies Basic authentication. Parametreleri kullanma ve güvenliğini sağlama hakkında daha fazla bilgi için bkz. mantıksal uygulamanızı güvenli halegetirme.For more information about using and securing parameters, see Secure your logic app.

"HTTP": {
   "type": "Http",
   "inputs": {
      "method": "GET",
      "uri": "https://www.microsoft.com",
      "authentication": {
         "type": "Basic",
         "username": "@parameters('userNameParam')",
         "password": "@parameters('passwordParam')"
      }
  },
  "runAfter": {}
}

Önemli

Mantıksal uygulama iş akışı tanımınızın işleyeceği tüm hassas bilgileri koruduğunuzdan emin olun.Make sure you protect any sensitive information that your logic app workflow definition handles. Güvenli parametreleri kullanın ve verileri gerektiği şekilde kodlayın.Use secured parameters and encode data as necessary. Parametrelerin güvenliğini sağlama hakkında daha fazla bilgi için bkz. mantıksal uygulamanızı güvenli halegetirme.For more information about securing parameters, see Secure your logic app.

İstemci sertifikası kimlik doğrulamasıClient Certificate authentication

Azure Active Directory kullanarak sertifika tabanlı kimlik doğrulaması için, Tetikleyiciniz veya eylem tanımınız, aşağıdaki authentication tabloda belirtilen özellikleri içeren bir JSON nesnesi içerebilir.For certificate-based authentication using Azure Active Directory, your trigger or action definition can include an authentication JSON object, which has the properties specified by the following table. Çalışma zamanında parametre değerlerine erişmek için, @parameters('parameterName') iş akışı Tanım Dilitarafından belirtilen ifadesini kullanabilirsiniz.To access parameter values at runtime, you can use the @parameters('parameterName') expression, which is provided by the Workflow Definition Language. Kullanabileceğiniz istemci sertifikası sayısına yönelik sınırlar için bkz. Azure Logic Apps Için sınırlar ve yapılandırma.For limits on the number of client certificates you can use, see Limits and configuration for Azure Logic Apps.

ÖzellikProperty GerekliRequired ValueValue AçıklamaDescription
typetype EvetYes ClientCertificate"ClientCertificate" Güvenli Yuva Katmanı (SSL) istemci sertifikaları için kullanılacak kimlik doğrulaması türü.The authentication type to use for Secure Sockets Layer (SSL) client certificates. Otomatik olarak imzalanan sertifikalar desteklenirken, SSL için otomatik olarak imzalanan sertifikalar desteklenmez.While self-signed certificates are supported, self-signed certificates for SSL aren't supported.
Türkpfx EvetYes "@parameters(' pfxparam ')"@parameters('pfxParam') Kişisel bilgi değişimi (PFX) dosyasından gelen Base64 kodlamalı içerikThe base64-encoded content from a Personal Information Exchange (PFX) file
Parolapassword EvetYes "@parameters(' passwordparam ')""@parameters('passwordParam')" PFX dosyasına erişim parolasıThe password for accessing the PFX file

Bu örnek http eylem tanımında, authentication bölümünde kimlik doğrulaması belirtilir. ClientCertificateIn this example HTTP action definition, the authentication section specifies ClientCertificate authentication. Parametreleri kullanma ve güvenliğini sağlama hakkında daha fazla bilgi için bkz. mantıksal uygulamanızı güvenli halegetirme.For more information about using and securing parameters, see Secure your logic app.

"HTTP": {
   "type": "Http",
   "inputs": {
      "method": "GET",
      "uri": "https://www.microsoft.com",
      "authentication": {
         "type": "ClientCertificate",
         "pfx": "@parameters('pfxParam')",
         "password": "@parameters('passwordParam')"
      }
   },
   "runAfter": {}
}

Önemli

Mantıksal uygulama iş akışı tanımınızın işleyeceği tüm hassas bilgileri koruduğunuzdan emin olun.Make sure you protect any sensitive information that your logic app workflow definition handles. Güvenli parametreleri kullanın ve verileri gerektiği şekilde kodlayın.Use secured parameters and encode data as necessary. Parametrelerin güvenliğini sağlama hakkında daha fazla bilgi için bkz. mantıksal uygulamanızı güvenli halegetirme.For more information about securing parameters, see Secure your logic app.

Azure Active Directory (AD) OAuth kimlik doğrulamasıAzure Active Directory (AD) OAuth authentication

Azure AD OAuth kimlik doğrulamasıiçin, Tetikleyiciniz veya eylem tanımınız, authentication aşağıdaki tabloda belirtilen özellikleri içeren bir JSON nesnesi içerebilir.For Azure AD OAuth authentication, your trigger or action definition can include an authentication JSON object, which has the properties specified by the following table. Çalışma zamanında parametre değerlerine erişmek için, @parameters('parameterName') iş akışı Tanım Dilitarafından belirtilen ifadesini kullanabilirsiniz.To access parameter values at runtime, you can use the @parameters('parameterName') expression, which is provided by the Workflow Definition Language.

ÖzellikProperty GerekliRequired ValueValue AçıklamaDescription
typetype EvetYes ActiveDirectoryOAuth Azure AD OAuth için "ActiveDirectoryOAuth" olan kullanılacak kimlik doğrulaması türüThe authentication type to use, which is "ActiveDirectoryOAuth" for Azure AD OAuth
inizauthority HayırNo <URL-for-Authority-Token-Issuer><URL-for-authority-token-issuer> Kimlik doğrulama belirtecini sağlayan yetkilinin URL 'SIThe URL for the authority that provides the authentication token
tenanttenant EvetYes <Kiracı KIMLIĞI><tenant-ID> Azure AD kiracısı için kiracı KIMLIĞIThe tenant ID for the Azure AD tenant
grubuaudience EvetYes <kaynaktan yetkilendirme><resource-to-authorize> Yetkilendirme için kullanmak istediğiniz kaynak (örneğin,https://management.core.windows.net/The resource that you want to use for authorization, for example, https://management.core.windows.net/
ClientIDclientId EvetYes <istemci KIMLIĞI><client-ID> Yetkilendirme isteyen uygulamanın istemci KIMLIĞIThe client ID for the app requesting authorization
credentialTypecredentialType EvetYes "Sertifika" veya "gizli""Certificate" or "Secret" İstemcinin yetkilendirme istemek için kullandığı kimlik bilgisi türü.The credential type the client uses for requesting authorization. Bu özellik ve değer temel tanımda görünmez, ancak kimlik bilgisi türü için gerekli parametreleri belirler.This property and value don't appear in your underlying definition, but determines the required parameters for the credential type.
Türkpfx Evet, yalnızca "sertifika" kimlik bilgisi türüYes, only for "Certificate" credential type "@parameters(' pfxparam ')"@parameters('pfxParam') Kişisel bilgi değişimi (PFX) dosyasından gelen Base64 kodlamalı içerikThe base64-encoded content from a Personal Information Exchange (PFX) file
Parolapassword Evet, yalnızca "sertifika" kimlik bilgisi türüYes, only for "Certificate" credential type "@parameters(' passwordparam ')""@parameters('passwordParam')" PFX dosyasına erişim parolasıThe password for accessing the PFX file
gizliliklesecret Evet, yalnızca "gizli" kimlik bilgisi türüYes, only for "Secret" credential type "@parameters(' secretparam ')""@parameters('secretParam')" Yetkilendirme isteğinde bulunan istemci parolasıThe client secret for requesting authorization

Bu örnek http eylem tanımında, authentication Bölüm kimlik doğrulamasını ve "gizli" kimlik bilgisi türünü belirtir. ActiveDirectoryOAuthIn this example HTTP action definition, the authentication section specifies ActiveDirectoryOAuth authentication and the "Secret" credential type. Parametreleri kullanma ve güvenliğini sağlama hakkında daha fazla bilgi için bkz. mantıksal uygulamanızı güvenli halegetirme.For more information about using and securing parameters, see Secure your logic app.

"HTTP": {
   "type": "Http",
   "inputs": {
      "method": "GET",
      "uri": "https://www.microsoft.com",
      "authentication": {
         "type": "ActiveDirectoryOAuth",
         "tenant": "72f988bf-86f1-41af-91ab-2d7cd011db47",
         "audience": "https://management.core.windows.net/",
         "clientId": "34750e0b-72d1-4e4f-bbbe-664f6d04d411",
         "secret": "@parameters('secretParam')"
     }
   },
   "runAfter": {}
}

Önemli

Mantıksal uygulama iş akışı tanımınızın işleyeceği tüm hassas bilgileri koruduğunuzdan emin olun.Make sure you protect any sensitive information that your logic app workflow definition handles. Güvenli parametreleri kullanın ve verileri gerektiği şekilde kodlayın.Use secured parameters and encode data as necessary. Parametrelerin güvenliğini sağlama hakkında daha fazla bilgi için bkz. mantıksal uygulamanızı güvenli halegetirme.For more information about securing parameters, see Secure your logic app.

Sonraki adımlarNext steps