
Azure Trigger
CertifiedPoll Azure AI Foundry for completed evaluations
Azure Trigger
Poll Azure AI Foundry for completed evaluations
Polls the Azure AI Projects EvaluationsClient for terminal evaluations. Fires an execution when a newly observed evaluation reaches one of the configured terminal statuses. The statuses and maximum number of evaluations inspected per poll are configurable. Subsequent polls will not re-fire for already-observed evaluations because trigger state deduplicates evaluation names and statuses; state retention can be controlled with stateTtl.
type: io.kestra.plugin.azure.aifoundry.TriggerExamples
Fire an execution when an Azure AI Foundry evaluation completes
id: azure_ai_on_evaluation_complete
namespace: company.team
tasks:
- id: notify
type: io.kestra.plugin.core.log.Log
message: "Evaluation {{ trigger.evaluation.name }} finished with status {{ trigger.evaluation.status }}"
triggers:
- id: on_evaluation
type: io.kestra.plugin.azure.aifoundry.Trigger
endpoint: "{{ secret('AZURE_AI_FOUNDRY_ENDPOINT') }}"
tenantId: "{{ secret('AZURE_TENANT_ID') }}"
clientId: "{{ secret('AZURE_CLIENT_ID') }}"
clientSecret: "{{ secret('AZURE_CLIENT_SECRET') }}"
interval: PT5M
Properties
endpoint *Requiredstring
Azure AI Foundry endpoint
The Azure AI Foundry project endpoint URL.
allowConcurrent Non-dynamicboolean
falseSpecifies whether a trigger is allowed to start a new execution even if a previous run is still in progress.
clientId string
Azure client ID
Client ID of the Azure app registration used with tenantId and clientSecret.
clientSecret string
Azure client secret
Client secret of the Azure app registration used with tenantId and clientId.
interval Non-dynamicstring
PT1MdurationInterval between polling.
The interval between 2 different polls of schedule, this can avoid to overload the remote system with too many calls. For most of the triggers that depend on external systems, a minimal interval must be at least PT30S. See ISO_8601 Durations for more information of available interval values.
maxEvaluations integerstring
25Maximum evaluations
Maximum number of recent evaluations to inspect per polling interval. Defaults to 25.
on string
CREATECREATEUPDATECREATE_OR_UPDATEState change mode
Stateful trigger change mode used for observed evaluations.
stateKey string
State key
Custom key used to store observed evaluations.
stateTtl string
State TTL
How long observed evaluation state is retained.
statuses array
["Completed","Failed","Canceled","Expired"]Statuses
Evaluation statuses that should trigger executions. Defaults to Completed, Failed, Canceled, and Expired.
stopAfter Non-dynamicarray
CREATEDSUBMITTEDRUNNINGPAUSEDRESTARTEDKILLINGSUCCESSWARNINGFAILEDKILLEDCANCELLEDQUEUEDRETRYINGRETRIEDSKIPPEDBREAKPOINTRESUBMITTEDList of execution states after which a trigger should be stopped (a.k.a. disabled).
tenantId string
Azure tenant ID
Azure Entra tenant ID used with clientId and clientSecret for service principal authentication.
when string
trueA condition that determines whether the trigger should run.
A Pebble expression evaluated at trigger time. The trigger fires only when the expression evaluates to a truthy value (true, a non-empty string, a non-zero number). Use this to gate trigger execution on dynamic runtime values such as execution labels, flow variables, or environment conditions.
Outputs
evaluation
First completed evaluation
io.kestra.plugin.azure.aifoundry.Trigger-EvaluationRecord
Evaluation name
Evaluation status
evaluations array
List of all newly completed evaluations
io.kestra.plugin.azure.aifoundry.Trigger-EvaluationRecord
Evaluation name
Evaluation status
total integer
Total number of newly completed evaluations