Edit

WorkflowBuiltInTriggers class

Namespace: Microsoft.Azure.Workflows.Sdk

Provides factory methods for creating built-in workflow triggers that start Logic Apps workflows without using managed connectors. Access this class through WorkflowTriggers by using WorkflowTriggers.BuiltIn.

Usage

// HTTP trigger for request-response workflows
var httpTrigger = WorkflowTriggers.BuiltIn.CreateHttpTrigger();
httpTrigger.Then(WorkflowActions.BuiltIn.Response(
    responseBody: () => "OK").WithName("Reply"));
WorkflowFactory.CreateStatefulWorkflow("HttpFlow", httpTrigger);

// Recurrence trigger for scheduled workflows
var timer = WorkflowTriggers.BuiltIn.CreateRecurrenceTrigger(
    frequency: FlowRecurrenceFrequency.Day, interval: 1);
timer.Then(WorkflowActions.BuiltIn.Compose(inputs: () => "Daily task").WithName("Process"));
WorkflowFactory.CreateStatelessWorkflow("ScheduledFlow", timer);

// Conversational trigger for AI agent workflows
var agentTrigger = WorkflowTriggers.BuiltIn.CreateConversationalAgentTrigger();
WorkflowFactory.CreateAgentWorkflow("AgentFlow", agentTrigger);

Methods

CreateHttpTrigger

Creates an HTTP request trigger and returns an IOutputWorkflowTrigger<HttpRequestTriggerOutput> whose output provides access to the request body and headers in downstream expressions.

IOutputWorkflowTrigger<HttpRequestTriggerOutput> CreateHttpTrigger(string name = "when_an_HTTP_request_is_received", HttpMethod method = null, JToken requestBodyJsonSchema = null, string relativePath = null)
Name Description Type Required
name Name for the trigger. string No
method HTTP method filter. HttpMethod No
requestBodyJsonSchema JSON schema for request body validation. JToken No
relativePath Relative path for the trigger endpoint. string No
var trigger = WorkflowTriggers.BuiltIn.CreateHttpTrigger(
    name: "MyHttpTrigger",
    method: HttpMethod.Post);

CreateConversationalAgentTrigger

Creates a ConversationalFlowTrigger for agent workflows. Use this trigger only with workflows created through WorkflowFactory for the Agent workflow kind.

ConversationalFlowTrigger CreateConversationalAgentTrigger(string name = "When_a_new_chat_session_starts")
Name Description Type Required
name Name for the conversational trigger. string No
var agentTrigger = WorkflowTriggers.BuiltIn.CreateConversationalAgentTrigger();

CreateRecurrenceTrigger

Creates a recurrence trigger and returns an IWorkflowTrigger that starts a workflow on a schedule.

IWorkflowTrigger CreateRecurrenceTrigger(string name = "recurrence", FlowRecurrenceFrequency frequency = FlowRecurrenceFrequency.Minute, int interval = 1, DateTime? startTime = null, TimeZoneInfo timeZone = null)
Name Description Type Required
name Name for the recurrence trigger. string No
frequency Recurrence frequency such as Minute, Hour, or Day. FlowRecurrenceFrequency No
interval Interval between recurrences. int No
startTime Start time for the schedule. DateTime? No
timeZone Time zone for the schedule. The implementation defaults to UTC when this value is not supplied. TimeZoneInfo No
var timer = WorkflowTriggers.BuiltIn.CreateRecurrenceTrigger(
    frequency: FlowRecurrenceFrequency.Hour,
    interval: 2,
    timeZone: TimeZoneInfo.FindSystemTimeZoneById("Pacific Standard Time"));