Microsoft.DataFactory factories/triggers 2018-06-01

Bicep resource definition

The factories/triggers resource type can be deployed with operations that target:

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.DataFactory/factories/triggers resource, add the following Bicep to your template.

resource symbolicname 'Microsoft.DataFactory/factories/triggers@2018-06-01' = {
  parent: resourceSymbolicName
  name: 'string'
  properties: {
    annotations: [
      any(Azure.Bicep.Types.Concrete.AnyType)
    ]
    description: 'string'
    type: 'string'
    // For remaining properties, see Trigger objects
  }
}

Trigger objects

Set the type property to specify the type of object.

For BlobEventsTrigger, use:

{
  pipelines: [
    {
      parameters: {
        {customized property}: any(Azure.Bicep.Types.Concrete.AnyType)
      }
      pipelineReference: {
        name: 'string'
        referenceName: 'string'
        type: 'string'
      }
    }
  ]
  type: 'BlobEventsTrigger'
  typeProperties: {
    blobPathBeginsWith: 'string'
    blobPathEndsWith: 'string'
    events: [
      'string'
    ]
    ignoreEmptyBlobs: bool
    scope: 'string'
  }
}

For BlobTrigger, use:

{
  pipelines: [
    {
      parameters: {
        {customized property}: any(Azure.Bicep.Types.Concrete.AnyType)
      }
      pipelineReference: {
        name: 'string'
        referenceName: 'string'
        type: 'string'
      }
    }
  ]
  type: 'BlobTrigger'
  typeProperties: {
    folderPath: 'string'
    linkedService: {
      parameters: {
        {customized property}: any(Azure.Bicep.Types.Concrete.AnyType)
      }
      referenceName: 'string'
      type: 'string'
    }
    maxConcurrency: int
  }
}

For ChainingTrigger, use:

{
  pipeline: {
    parameters: {
      {customized property}: any(Azure.Bicep.Types.Concrete.AnyType)
    }
    pipelineReference: {
      name: 'string'
      referenceName: 'string'
      type: 'string'
    }
  }
  type: 'ChainingTrigger'
  typeProperties: {
    dependsOn: [
      {
        name: 'string'
        referenceName: 'string'
        type: 'string'
      }
    ]
    runDimension: 'string'
  }
}

For CustomEventsTrigger, use:

{
  pipelines: [
    {
      parameters: {
        {customized property}: any(Azure.Bicep.Types.Concrete.AnyType)
      }
      pipelineReference: {
        name: 'string'
        referenceName: 'string'
        type: 'string'
      }
    }
  ]
  type: 'CustomEventsTrigger'
  typeProperties: {
    events: [
      any(Azure.Bicep.Types.Concrete.AnyType)
    ]
    scope: 'string'
    subjectBeginsWith: 'string'
    subjectEndsWith: 'string'
  }
}

For ScheduleTrigger, use:

{
  pipelines: [
    {
      parameters: {
        {customized property}: any(Azure.Bicep.Types.Concrete.AnyType)
      }
      pipelineReference: {
        name: 'string'
        referenceName: 'string'
        type: 'string'
      }
    }
  ]
  type: 'ScheduleTrigger'
  typeProperties: {
    recurrence: {
      endTime: 'string'
      frequency: 'string'
      interval: int
      schedule: {
        hours: [
          int
        ]
        minutes: [
          int
        ]
        monthDays: [
          int
        ]
        monthlyOccurrences: [
          {
            day: 'string'
            occurrence: int
          }
        ]
        weekDays: [
          'string'
        ]
      }
      startTime: 'string'
      timeZone: 'string'
    }
  }
}

For RerunTumblingWindowTrigger, use:

{
  type: 'RerunTumblingWindowTrigger'
  typeProperties: {
    parentTrigger: any(Azure.Bicep.Types.Concrete.AnyType)
    requestedEndTime: 'string'
    requestedStartTime: 'string'
    rerunConcurrency: int
  }
}

For TumblingWindowTrigger, use:

{
  pipeline: {
    parameters: {
      {customized property}: any(Azure.Bicep.Types.Concrete.AnyType)
    }
    pipelineReference: {
      name: 'string'
      referenceName: 'string'
      type: 'string'
    }
  }
  type: 'TumblingWindowTrigger'
  typeProperties: {
    delay: any(Azure.Bicep.Types.Concrete.AnyType)
    dependsOn: [
      {
        type: 'string'
        // For remaining properties, see DependencyReference objects
      }
    ]
    endTime: 'string'
    frequency: 'string'
    interval: int
    maxConcurrency: int
    retryPolicy: {
      count: any(Azure.Bicep.Types.Concrete.AnyType)
      intervalInSeconds: int
    }
    startTime: 'string'
  }
}

DependencyReference objects

Set the type property to specify the type of object.

For SelfDependencyTumblingWindowTriggerReference, use:

{
  offset: 'string'
  size: 'string'
  type: 'SelfDependencyTumblingWindowTriggerReference'
}

For TumblingWindowTriggerDependencyReference, use:

{
  offset: 'string'
  referenceTrigger: {
    referenceName: 'string'
    type: 'string'
  }
  size: 'string'
  type: 'TumblingWindowTriggerDependencyReference'
}

Property values

BlobEventsTrigger

Name Description Value
pipelines Pipelines that need to be started. TriggerPipelineReference[]
type Trigger type. 'BlobEventsTrigger' (required)
typeProperties Blob Events Trigger properties. BlobEventsTriggerTypeProperties (required)

BlobEventsTriggerTypeProperties

Name Description Value
blobPathBeginsWith The blob path must begin with the pattern provided for trigger to fire. For example, '/records/blobs/december/' will only fire the trigger for blobs in the december folder under the records container. At least one of these must be provided: blobPathBeginsWith, blobPathEndsWith. string
blobPathEndsWith The blob path must end with the pattern provided for trigger to fire. For example, 'december/boxes.csv' will only fire the trigger for blobs named boxes in a december folder. At least one of these must be provided: blobPathBeginsWith, blobPathEndsWith. string
events The type of events that cause this trigger to fire. String array containing any of:
'Microsoft.Storage.BlobCreated'
'Microsoft.Storage.BlobDeleted' (required)
ignoreEmptyBlobs If set to true, blobs with zero bytes will be ignored. bool
scope The ARM resource ID of the Storage Account. string (required)

BlobTrigger

Name Description Value
pipelines Pipelines that need to be started. TriggerPipelineReference[]
type Trigger type. 'BlobTrigger' (required)
typeProperties Blob Trigger properties. BlobTriggerTypeProperties (required)

BlobTriggerTypeProperties

Name Description Value
folderPath The path of the container/folder that will trigger the pipeline. string (required)
linkedService The Azure Storage linked service reference. LinkedServiceReference (required)
maxConcurrency The max number of parallel files to handle when it is triggered. int (required)

ChainingTrigger

Name Description Value
pipeline Pipeline for which runs are created when all upstream pipelines complete successfully. TriggerPipelineReference (required)
type Trigger type. 'ChainingTrigger' (required)
typeProperties Chaining Trigger properties. ChainingTriggerTypeProperties (required)

ChainingTriggerTypeProperties

Name Description Value
dependsOn Upstream Pipelines. PipelineReference[] (required)
runDimension Run Dimension property that needs to be emitted by upstream pipelines. string (required)

CustomEventsTrigger

Name Description Value
pipelines Pipelines that need to be started. TriggerPipelineReference[]
type Trigger type. 'CustomEventsTrigger' (required)
typeProperties Custom Events Trigger properties. CustomEventsTriggerTypeProperties (required)

CustomEventsTriggerTypeProperties

Name Description Value
events The list of event types that cause this trigger to fire. any[] (required)
scope The ARM resource ID of the Azure Event Grid Topic. string (required)
subjectBeginsWith The event subject must begin with the pattern provided for trigger to fire. At least one of these must be provided: subjectBeginsWith, subjectEndsWith. string
subjectEndsWith The event subject must end with the pattern provided for trigger to fire. At least one of these must be provided: subjectBeginsWith, subjectEndsWith. string

DependencyReference

Name Description Value
type Set to 'SelfDependencyTumblingWindowTriggerReference' for type SelfDependencyTumblingWindowTriggerReference. Set to 'TumblingWindowTriggerDependencyReference' for type TumblingWindowTriggerDependencyReference. 'SelfDependencyTumblingWindowTriggerReference'
'TumblingWindowTriggerDependencyReference' (required)

LinkedServiceReference

Name Description Value
parameters Arguments for LinkedService. ParameterValueSpecification
referenceName Reference LinkedService name. string (required)
type Linked service reference type. 'LinkedServiceReference' (required)

Microsoft.DataFactory/factories/triggers

Name Description Value
name The resource name string

Constraints:
Min length = 1
Max length = 260
Pattern = ^[A-Za-z0-9_][^<>*#.%&:\\+?/]*$ (required)
parent In Bicep, you can specify the parent resource for a child resource. You only need to add this property when the child resource is declared outside of the parent resource.

For more information, see Child resource outside parent resource.
Symbolic name for resource of type: factories
properties Properties of the trigger. Trigger (required)

ParameterValueSpecification

Name Description Value

ParameterValueSpecification

Name Description Value

PipelineReference

Name Description Value
name Reference name. string
referenceName Reference pipeline name. string (required)
type Pipeline reference type. 'PipelineReference' (required)

RecurrenceSchedule

Name Description Value
hours The hours. int[]
minutes The minutes. int[]
monthDays The month days. int[]
monthlyOccurrences The monthly occurrences. RecurrenceScheduleOccurrence[]
weekDays The days of the week. String array containing any of:
'Friday'
'Monday'
'Saturday'
'Sunday'
'Thursday'
'Tuesday'
'Wednesday'

RecurrenceScheduleOccurrence

Name Description Value
day The day of the week. 'Friday'
'Monday'
'Saturday'
'Sunday'
'Thursday'
'Tuesday'
'Wednesday'
occurrence The occurrence. int

RerunTumblingWindowTrigger

Name Description Value
type Trigger type. 'RerunTumblingWindowTrigger' (required)
typeProperties Rerun Trigger properties. RerunTumblingWindowTriggerTypeProperties (required)

RerunTumblingWindowTriggerTypeProperties

Name Description Value
parentTrigger The parent trigger reference. any (required)
requestedEndTime The end time for the time period for which restatement is initiated. Only UTC time is currently supported. string (required)
requestedStartTime The start time for the time period for which restatement is initiated. Only UTC time is currently supported. string (required)
rerunConcurrency The max number of parallel time windows (ready for execution) for which a rerun is triggered. int

Constraints:
Min value = 1
Max value = 50 (required)

RetryPolicy

Name Description Value
count Maximum ordinary retry attempts. Default is 0. Type: integer (or Expression with resultType integer), minimum: 0. any
intervalInSeconds Interval between retries in seconds. Default is 30. int

Constraints:
Min value = 30
Max value = 86400

ScheduleTrigger

Name Description Value
pipelines Pipelines that need to be started. TriggerPipelineReference[]
type Trigger type. 'ScheduleTrigger' (required)
typeProperties Schedule Trigger properties. ScheduleTriggerTypeProperties (required)

ScheduleTriggerRecurrence

Name Description Value
endTime The end time. string
frequency The frequency. 'Day'
'Hour'
'Minute'
'Month'
'NotSpecified'
'Week'
'Year'
interval The interval. int
schedule The recurrence schedule. RecurrenceSchedule
startTime The start time. string
timeZone The time zone. string

ScheduleTriggerTypeProperties

Name Description Value
recurrence Recurrence schedule configuration. ScheduleTriggerRecurrence (required)

SelfDependencyTumblingWindowTriggerReference

Name Description Value
offset Timespan applied to the start time of a tumbling window when evaluating dependency. string

Constraints:
Min length = 8
Max length = 15
Pattern = -((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])) (required)
size The size of the window when evaluating the dependency. If undefined the frequency of the tumbling window will be used. string

Constraints:
Min length = 8
Max length = 15
Pattern = ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9]))
type The type of dependency reference. 'SelfDependencyTumblingWindowTriggerReference' (required)

Trigger

Name Description Value
annotations List of tags that can be used for describing the trigger. any[]
description Trigger description. string
type Set to 'BlobEventsTrigger' for type BlobEventsTrigger. Set to 'BlobTrigger' for type BlobTrigger. Set to 'ChainingTrigger' for type ChainingTrigger. Set to 'CustomEventsTrigger' for type CustomEventsTrigger. Set to 'ScheduleTrigger' for type ScheduleTrigger. Set to 'RerunTumblingWindowTrigger' for type RerunTumblingWindowTrigger. Set to 'TumblingWindowTrigger' for type TumblingWindowTrigger. 'BlobEventsTrigger'
'BlobTrigger'
'ChainingTrigger'
'CustomEventsTrigger'
'RerunTumblingWindowTrigger'
'ScheduleTrigger'
'TumblingWindowTrigger' (required)

TriggerPipelineReference

Name Description Value
parameters Pipeline parameters. ParameterValueSpecification
pipelineReference Pipeline reference. PipelineReference

TriggerReference

Name Description Value
referenceName Reference trigger name. string (required)
type Trigger reference type. 'TriggerReference' (required)

TumblingWindowTrigger

Name Description Value
pipeline Pipeline for which runs are created when an event is fired for trigger window that is ready. TriggerPipelineReference (required)
type Trigger type. 'TumblingWindowTrigger' (required)
typeProperties Tumbling Window Trigger properties. TumblingWindowTriggerTypeProperties (required)

TumblingWindowTriggerDependencyReference

Name Description Value
offset Timespan applied to the start time of a tumbling window when evaluating dependency. string

Constraints:
Min length = 8
Max length = 15
Pattern = -?((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9]))
referenceTrigger Referenced trigger. TriggerReference (required)
size The size of the window when evaluating the dependency. If undefined the frequency of the tumbling window will be used. string

Constraints:
Min length = 8
Max length = 15
Pattern = ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9]))
type The type of dependency reference. 'TumblingWindowTriggerDependencyReference' (required)

TumblingWindowTriggerTypeProperties

Name Description Value
delay Specifies how long the trigger waits past due time before triggering new run. It doesn't alter window start and end time. The default is 0. Type: string (or Expression with resultType string), pattern: ((\d+).)?(\d\d):(60 ([0-5][0-9])):(60 ([0-5][0-9])). any
dependsOn Triggers that this trigger depends on. Only tumbling window triggers are supported. DependencyReference[]
endTime The end time for the time period for the trigger during which events are fired for windows that are ready. Only UTC time is currently supported. string
frequency The frequency of the time windows. 'Hour'
'Minute'
'Month' (required)
interval The interval of the time windows. The minimum interval allowed is 15 Minutes. int (required)
maxConcurrency The max number of parallel time windows (ready for execution) for which a new run is triggered. int

Constraints:
Min value = 1
Max value = 50 (required)
retryPolicy Retry policy that will be applied for failed pipeline runs. RetryPolicy
startTime The start time for the time period for the trigger during which events are fired for windows that are ready. Only UTC time is currently supported. string (required)

ARM template resource definition

The factories/triggers resource type can be deployed with operations that target:

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.DataFactory/factories/triggers resource, add the following JSON to your template.

{
  "type": "Microsoft.DataFactory/factories/triggers",
  "apiVersion": "2018-06-01",
  "name": "string",
  "properties": {
    "annotations": [ {} ],
    "description": "string",
    "type": "string"
    // For remaining properties, see Trigger objects
  }
}

Trigger objects

Set the type property to specify the type of object.

For BlobEventsTrigger, use:

{
  "pipelines": [
    {
      "parameters": {
        "{customized property}": {}
      },
      "pipelineReference": {
        "name": "string",
        "referenceName": "string",
        "type": "string"
      }
    }
  ],
  "type": "BlobEventsTrigger",
  "typeProperties": {
    "blobPathBeginsWith": "string",
    "blobPathEndsWith": "string",
    "events": [ "string" ],
    "ignoreEmptyBlobs": "bool",
    "scope": "string"
  }
}

For BlobTrigger, use:

{
  "pipelines": [
    {
      "parameters": {
        "{customized property}": {}
      },
      "pipelineReference": {
        "name": "string",
        "referenceName": "string",
        "type": "string"
      }
    }
  ],
  "type": "BlobTrigger",
  "typeProperties": {
    "folderPath": "string",
    "linkedService": {
      "parameters": {
        "{customized property}": {}
      },
      "referenceName": "string",
      "type": "string"
    },
    "maxConcurrency": "int"
  }
}

For ChainingTrigger, use:

{
  "pipeline": {
    "parameters": {
      "{customized property}": {}
    },
    "pipelineReference": {
      "name": "string",
      "referenceName": "string",
      "type": "string"
    }
  },
  "type": "ChainingTrigger",
  "typeProperties": {
    "dependsOn": [
      {
        "name": "string",
        "referenceName": "string",
        "type": "string"
      }
    ],
    "runDimension": "string"
  }
}

For CustomEventsTrigger, use:

{
  "pipelines": [
    {
      "parameters": {
        "{customized property}": {}
      },
      "pipelineReference": {
        "name": "string",
        "referenceName": "string",
        "type": "string"
      }
    }
  ],
  "type": "CustomEventsTrigger",
  "typeProperties": {
    "events": [ {} ],
    "scope": "string",
    "subjectBeginsWith": "string",
    "subjectEndsWith": "string"
  }
}

For ScheduleTrigger, use:

{
  "pipelines": [
    {
      "parameters": {
        "{customized property}": {}
      },
      "pipelineReference": {
        "name": "string",
        "referenceName": "string",
        "type": "string"
      }
    }
  ],
  "type": "ScheduleTrigger",
  "typeProperties": {
    "recurrence": {
      "endTime": "string",
      "frequency": "string",
      "interval": "int",
      "schedule": {
        "hours": [ "int" ],
        "minutes": [ "int" ],
        "monthDays": [ "int" ],
        "monthlyOccurrences": [
          {
            "day": "string",
            "occurrence": "int"
          }
        ],
        "weekDays": [ "string" ]
      },
      "startTime": "string",
      "timeZone": "string"
    }
  }
}

For RerunTumblingWindowTrigger, use:

{
  "type": "RerunTumblingWindowTrigger",
  "typeProperties": {
    "parentTrigger": {},
    "requestedEndTime": "string",
    "requestedStartTime": "string",
    "rerunConcurrency": "int"
  }
}

For TumblingWindowTrigger, use:

{
  "pipeline": {
    "parameters": {
      "{customized property}": {}
    },
    "pipelineReference": {
      "name": "string",
      "referenceName": "string",
      "type": "string"
    }
  },
  "type": "TumblingWindowTrigger",
  "typeProperties": {
    "delay": {},
    "dependsOn": [ {
      "type": "string"
      // For remaining properties, see DependencyReference objects
    } ],
    "endTime": "string",
    "frequency": "string",
    "interval": "int",
    "maxConcurrency": "int",
    "retryPolicy": {
      "count": {},
      "intervalInSeconds": "int"
    },
    "startTime": "string"
  }
}

DependencyReference objects

Set the type property to specify the type of object.

For SelfDependencyTumblingWindowTriggerReference, use:

{
  "offset": "string",
  "size": "string",
  "type": "SelfDependencyTumblingWindowTriggerReference"
}

For TumblingWindowTriggerDependencyReference, use:

{
  "offset": "string",
  "referenceTrigger": {
    "referenceName": "string",
    "type": "string"
  },
  "size": "string",
  "type": "TumblingWindowTriggerDependencyReference"
}

Property values

BlobEventsTrigger

Name Description Value
pipelines Pipelines that need to be started. TriggerPipelineReference[]
type Trigger type. 'BlobEventsTrigger' (required)
typeProperties Blob Events Trigger properties. BlobEventsTriggerTypeProperties (required)

BlobEventsTriggerTypeProperties

Name Description Value
blobPathBeginsWith The blob path must begin with the pattern provided for trigger to fire. For example, '/records/blobs/december/' will only fire the trigger for blobs in the december folder under the records container. At least one of these must be provided: blobPathBeginsWith, blobPathEndsWith. string
blobPathEndsWith The blob path must end with the pattern provided for trigger to fire. For example, 'december/boxes.csv' will only fire the trigger for blobs named boxes in a december folder. At least one of these must be provided: blobPathBeginsWith, blobPathEndsWith. string
events The type of events that cause this trigger to fire. String array containing any of:
'Microsoft.Storage.BlobCreated'
'Microsoft.Storage.BlobDeleted' (required)
ignoreEmptyBlobs If set to true, blobs with zero bytes will be ignored. bool
scope The ARM resource ID of the Storage Account. string (required)

BlobTrigger

Name Description Value
pipelines Pipelines that need to be started. TriggerPipelineReference[]
type Trigger type. 'BlobTrigger' (required)
typeProperties Blob Trigger properties. BlobTriggerTypeProperties (required)

BlobTriggerTypeProperties

Name Description Value
folderPath The path of the container/folder that will trigger the pipeline. string (required)
linkedService The Azure Storage linked service reference. LinkedServiceReference (required)
maxConcurrency The max number of parallel files to handle when it is triggered. int (required)

ChainingTrigger

Name Description Value
pipeline Pipeline for which runs are created when all upstream pipelines complete successfully. TriggerPipelineReference (required)
type Trigger type. 'ChainingTrigger' (required)
typeProperties Chaining Trigger properties. ChainingTriggerTypeProperties (required)

ChainingTriggerTypeProperties

Name Description Value
dependsOn Upstream Pipelines. PipelineReference[] (required)
runDimension Run Dimension property that needs to be emitted by upstream pipelines. string (required)

CustomEventsTrigger

Name Description Value
pipelines Pipelines that need to be started. TriggerPipelineReference[]
type Trigger type. 'CustomEventsTrigger' (required)
typeProperties Custom Events Trigger properties. CustomEventsTriggerTypeProperties (required)

CustomEventsTriggerTypeProperties

Name Description Value
events The list of event types that cause this trigger to fire. any[] (required)
scope The ARM resource ID of the Azure Event Grid Topic. string (required)
subjectBeginsWith The event subject must begin with the pattern provided for trigger to fire. At least one of these must be provided: subjectBeginsWith, subjectEndsWith. string
subjectEndsWith The event subject must end with the pattern provided for trigger to fire. At least one of these must be provided: subjectBeginsWith, subjectEndsWith. string

DependencyReference

Name Description Value
type Set to 'SelfDependencyTumblingWindowTriggerReference' for type SelfDependencyTumblingWindowTriggerReference. Set to 'TumblingWindowTriggerDependencyReference' for type TumblingWindowTriggerDependencyReference. 'SelfDependencyTumblingWindowTriggerReference'
'TumblingWindowTriggerDependencyReference' (required)

LinkedServiceReference

Name Description Value
parameters Arguments for LinkedService. ParameterValueSpecification
referenceName Reference LinkedService name. string (required)
type Linked service reference type. 'LinkedServiceReference' (required)

Microsoft.DataFactory/factories/triggers

Name Description Value
apiVersion The api version '2018-06-01'
name The resource name string

Constraints:
Min length = 1
Max length = 260
Pattern = ^[A-Za-z0-9_][^<>*#.%&:\\+?/]*$ (required)
properties Properties of the trigger. Trigger (required)
type The resource type 'Microsoft.DataFactory/factories/triggers'

ParameterValueSpecification

Name Description Value

ParameterValueSpecification

Name Description Value

PipelineReference

Name Description Value
name Reference name. string
referenceName Reference pipeline name. string (required)
type Pipeline reference type. 'PipelineReference' (required)

RecurrenceSchedule

Name Description Value
hours The hours. int[]
minutes The minutes. int[]
monthDays The month days. int[]
monthlyOccurrences The monthly occurrences. RecurrenceScheduleOccurrence[]
weekDays The days of the week. String array containing any of:
'Friday'
'Monday'
'Saturday'
'Sunday'
'Thursday'
'Tuesday'
'Wednesday'

RecurrenceScheduleOccurrence

Name Description Value
day The day of the week. 'Friday'
'Monday'
'Saturday'
'Sunday'
'Thursday'
'Tuesday'
'Wednesday'
occurrence The occurrence. int

RerunTumblingWindowTrigger

Name Description Value
type Trigger type. 'RerunTumblingWindowTrigger' (required)
typeProperties Rerun Trigger properties. RerunTumblingWindowTriggerTypeProperties (required)

RerunTumblingWindowTriggerTypeProperties

Name Description Value
parentTrigger The parent trigger reference. any (required)
requestedEndTime The end time for the time period for which restatement is initiated. Only UTC time is currently supported. string (required)
requestedStartTime The start time for the time period for which restatement is initiated. Only UTC time is currently supported. string (required)
rerunConcurrency The max number of parallel time windows (ready for execution) for which a rerun is triggered. int

Constraints:
Min value = 1
Max value = 50 (required)

RetryPolicy

Name Description Value
count Maximum ordinary retry attempts. Default is 0. Type: integer (or Expression with resultType integer), minimum: 0. any
intervalInSeconds Interval between retries in seconds. Default is 30. int

Constraints:
Min value = 30
Max value = 86400

ScheduleTrigger

Name Description Value
pipelines Pipelines that need to be started. TriggerPipelineReference[]
type Trigger type. 'ScheduleTrigger' (required)
typeProperties Schedule Trigger properties. ScheduleTriggerTypeProperties (required)

ScheduleTriggerRecurrence

Name Description Value
endTime The end time. string
frequency The frequency. 'Day'
'Hour'
'Minute'
'Month'
'NotSpecified'
'Week'
'Year'
interval The interval. int
schedule The recurrence schedule. RecurrenceSchedule
startTime The start time. string
timeZone The time zone. string

ScheduleTriggerTypeProperties

Name Description Value
recurrence Recurrence schedule configuration. ScheduleTriggerRecurrence (required)

SelfDependencyTumblingWindowTriggerReference

Name Description Value
offset Timespan applied to the start time of a tumbling window when evaluating dependency. string

Constraints:
Min length = 8
Max length = 15
Pattern = -((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])) (required)
size The size of the window when evaluating the dependency. If undefined the frequency of the tumbling window will be used. string

Constraints:
Min length = 8
Max length = 15
Pattern = ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9]))
type The type of dependency reference. 'SelfDependencyTumblingWindowTriggerReference' (required)

Trigger

Name Description Value
annotations List of tags that can be used for describing the trigger. any[]
description Trigger description. string
type Set to 'BlobEventsTrigger' for type BlobEventsTrigger. Set to 'BlobTrigger' for type BlobTrigger. Set to 'ChainingTrigger' for type ChainingTrigger. Set to 'CustomEventsTrigger' for type CustomEventsTrigger. Set to 'ScheduleTrigger' for type ScheduleTrigger. Set to 'RerunTumblingWindowTrigger' for type RerunTumblingWindowTrigger. Set to 'TumblingWindowTrigger' for type TumblingWindowTrigger. 'BlobEventsTrigger'
'BlobTrigger'
'ChainingTrigger'
'CustomEventsTrigger'
'RerunTumblingWindowTrigger'
'ScheduleTrigger'
'TumblingWindowTrigger' (required)

TriggerPipelineReference

Name Description Value
parameters Pipeline parameters. ParameterValueSpecification
pipelineReference Pipeline reference. PipelineReference

TriggerReference

Name Description Value
referenceName Reference trigger name. string (required)
type Trigger reference type. 'TriggerReference' (required)

TumblingWindowTrigger

Name Description Value
pipeline Pipeline for which runs are created when an event is fired for trigger window that is ready. TriggerPipelineReference (required)
type Trigger type. 'TumblingWindowTrigger' (required)
typeProperties Tumbling Window Trigger properties. TumblingWindowTriggerTypeProperties (required)

TumblingWindowTriggerDependencyReference

Name Description Value
offset Timespan applied to the start time of a tumbling window when evaluating dependency. string

Constraints:
Min length = 8
Max length = 15
Pattern = -?((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9]))
referenceTrigger Referenced trigger. TriggerReference (required)
size The size of the window when evaluating the dependency. If undefined the frequency of the tumbling window will be used. string

Constraints:
Min length = 8
Max length = 15
Pattern = ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9]))
type The type of dependency reference. 'TumblingWindowTriggerDependencyReference' (required)

TumblingWindowTriggerTypeProperties

Name Description Value
delay Specifies how long the trigger waits past due time before triggering new run. It doesn't alter window start and end time. The default is 0. Type: string (or Expression with resultType string), pattern: ((\d+).)?(\d\d):(60 ([0-5][0-9])):(60 ([0-5][0-9])). any
dependsOn Triggers that this trigger depends on. Only tumbling window triggers are supported. DependencyReference[]
endTime The end time for the time period for the trigger during which events are fired for windows that are ready. Only UTC time is currently supported. string
frequency The frequency of the time windows. 'Hour'
'Minute'
'Month' (required)
interval The interval of the time windows. The minimum interval allowed is 15 Minutes. int (required)
maxConcurrency The max number of parallel time windows (ready for execution) for which a new run is triggered. int

Constraints:
Min value = 1
Max value = 50 (required)
retryPolicy Retry policy that will be applied for failed pipeline runs. RetryPolicy
startTime The start time for the time period for the trigger during which events are fired for windows that are ready. Only UTC time is currently supported. string (required)

Terraform (AzAPI provider) resource definition

The factories/triggers resource type can be deployed with operations that target:

  • Resource groups

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.DataFactory/factories/triggers resource, add the following Terraform to your template.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.DataFactory/factories/triggers@2018-06-01"
  name = "string"
  body = jsonencode({
    properties = {
      annotations = [
        ?
      ]
      description = "string"
      type = "string"
      // For remaining properties, see Trigger objects
    }
  })
}

Trigger objects

Set the type property to specify the type of object.

For BlobEventsTrigger, use:

{
  pipelines = [
    {
      parameters = {
        {customized property} = ?
      }
      pipelineReference = {
        name = "string"
        referenceName = "string"
        type = "string"
      }
    }
  ]
  type = "BlobEventsTrigger"
  typeProperties = {
    blobPathBeginsWith = "string"
    blobPathEndsWith = "string"
    events = [
      "string"
    ]
    ignoreEmptyBlobs = bool
    scope = "string"
  }
}

For BlobTrigger, use:

{
  pipelines = [
    {
      parameters = {
        {customized property} = ?
      }
      pipelineReference = {
        name = "string"
        referenceName = "string"
        type = "string"
      }
    }
  ]
  type = "BlobTrigger"
  typeProperties = {
    folderPath = "string"
    linkedService = {
      parameters = {
        {customized property} = ?
      }
      referenceName = "string"
      type = "string"
    }
    maxConcurrency = int
  }
}

For ChainingTrigger, use:

{
  pipeline = {
    parameters = {
      {customized property} = ?
    }
    pipelineReference = {
      name = "string"
      referenceName = "string"
      type = "string"
    }
  }
  type = "ChainingTrigger"
  typeProperties = {
    dependsOn = [
      {
        name = "string"
        referenceName = "string"
        type = "string"
      }
    ]
    runDimension = "string"
  }
}

For CustomEventsTrigger, use:

{
  pipelines = [
    {
      parameters = {
        {customized property} = ?
      }
      pipelineReference = {
        name = "string"
        referenceName = "string"
        type = "string"
      }
    }
  ]
  type = "CustomEventsTrigger"
  typeProperties = {
    events = [
      ?
    ]
    scope = "string"
    subjectBeginsWith = "string"
    subjectEndsWith = "string"
  }
}

For ScheduleTrigger, use:

{
  pipelines = [
    {
      parameters = {
        {customized property} = ?
      }
      pipelineReference = {
        name = "string"
        referenceName = "string"
        type = "string"
      }
    }
  ]
  type = "ScheduleTrigger"
  typeProperties = {
    recurrence = {
      endTime = "string"
      frequency = "string"
      interval = int
      schedule = {
        hours = [
          int
        ]
        minutes = [
          int
        ]
        monthDays = [
          int
        ]
        monthlyOccurrences = [
          {
            day = "string"
            occurrence = int
          }
        ]
        weekDays = [
          "string"
        ]
      }
      startTime = "string"
      timeZone = "string"
    }
  }
}

For RerunTumblingWindowTrigger, use:

{
  type = "RerunTumblingWindowTrigger"
  typeProperties = {
    parentTrigger = ?
    requestedEndTime = "string"
    requestedStartTime = "string"
    rerunConcurrency = int
  }
}

For TumblingWindowTrigger, use:

{
  pipeline = {
    parameters = {
      {customized property} = ?
    }
    pipelineReference = {
      name = "string"
      referenceName = "string"
      type = "string"
    }
  }
  type = "TumblingWindowTrigger"
  typeProperties = {
    delay = ?
    dependsOn = [
      {
        type = "string"
        // For remaining properties, see DependencyReference objects
      }
    ]
    endTime = "string"
    frequency = "string"
    interval = int
    maxConcurrency = int
    retryPolicy = {
      count = ?
      intervalInSeconds = int
    }
    startTime = "string"
  }
}

DependencyReference objects

Set the type property to specify the type of object.

For SelfDependencyTumblingWindowTriggerReference, use:

{
  offset = "string"
  size = "string"
  type = "SelfDependencyTumblingWindowTriggerReference"
}

For TumblingWindowTriggerDependencyReference, use:

{
  offset = "string"
  referenceTrigger = {
    referenceName = "string"
    type = "string"
  }
  size = "string"
  type = "TumblingWindowTriggerDependencyReference"
}

Property values

BlobEventsTrigger

Name Description Value
pipelines Pipelines that need to be started. TriggerPipelineReference[]
type Trigger type. 'BlobEventsTrigger' (required)
typeProperties Blob Events Trigger properties. BlobEventsTriggerTypeProperties (required)

BlobEventsTriggerTypeProperties

Name Description Value
blobPathBeginsWith The blob path must begin with the pattern provided for trigger to fire. For example, '/records/blobs/december/' will only fire the trigger for blobs in the december folder under the records container. At least one of these must be provided: blobPathBeginsWith, blobPathEndsWith. string
blobPathEndsWith The blob path must end with the pattern provided for trigger to fire. For example, 'december/boxes.csv' will only fire the trigger for blobs named boxes in a december folder. At least one of these must be provided: blobPathBeginsWith, blobPathEndsWith. string
events The type of events that cause this trigger to fire. String array containing any of:
'Microsoft.Storage.BlobCreated'
'Microsoft.Storage.BlobDeleted' (required)
ignoreEmptyBlobs If set to true, blobs with zero bytes will be ignored. bool
scope The ARM resource ID of the Storage Account. string (required)

BlobTrigger

Name Description Value
pipelines Pipelines that need to be started. TriggerPipelineReference[]
type Trigger type. 'BlobTrigger' (required)
typeProperties Blob Trigger properties. BlobTriggerTypeProperties (required)

BlobTriggerTypeProperties

Name Description Value
folderPath The path of the container/folder that will trigger the pipeline. string (required)
linkedService The Azure Storage linked service reference. LinkedServiceReference (required)
maxConcurrency The max number of parallel files to handle when it is triggered. int (required)

ChainingTrigger

Name Description Value
pipeline Pipeline for which runs are created when all upstream pipelines complete successfully. TriggerPipelineReference (required)
type Trigger type. 'ChainingTrigger' (required)
typeProperties Chaining Trigger properties. ChainingTriggerTypeProperties (required)

ChainingTriggerTypeProperties

Name Description Value
dependsOn Upstream Pipelines. PipelineReference[] (required)
runDimension Run Dimension property that needs to be emitted by upstream pipelines. string (required)

CustomEventsTrigger

Name Description Value
pipelines Pipelines that need to be started. TriggerPipelineReference[]
type Trigger type. 'CustomEventsTrigger' (required)
typeProperties Custom Events Trigger properties. CustomEventsTriggerTypeProperties (required)

CustomEventsTriggerTypeProperties

Name Description Value
events The list of event types that cause this trigger to fire. any[] (required)
scope The ARM resource ID of the Azure Event Grid Topic. string (required)
subjectBeginsWith The event subject must begin with the pattern provided for trigger to fire. At least one of these must be provided: subjectBeginsWith, subjectEndsWith. string
subjectEndsWith The event subject must end with the pattern provided for trigger to fire. At least one of these must be provided: subjectBeginsWith, subjectEndsWith. string

DependencyReference

Name Description Value
type Set to 'SelfDependencyTumblingWindowTriggerReference' for type SelfDependencyTumblingWindowTriggerReference. Set to 'TumblingWindowTriggerDependencyReference' for type TumblingWindowTriggerDependencyReference. 'SelfDependencyTumblingWindowTriggerReference'
'TumblingWindowTriggerDependencyReference' (required)

LinkedServiceReference

Name Description Value
parameters Arguments for LinkedService. ParameterValueSpecification
referenceName Reference LinkedService name. string (required)
type Linked service reference type. 'LinkedServiceReference' (required)

Microsoft.DataFactory/factories/triggers

Name Description Value
name The resource name string

Constraints:
Min length = 1
Max length = 260
Pattern = ^[A-Za-z0-9_][^<>*#.%&:\\+?/]*$ (required)
parent_id The ID of the resource that is the parent for this resource. ID for resource of type: factories
properties Properties of the trigger. Trigger (required)
type The resource type "Microsoft.DataFactory/factories/triggers@2018-06-01"

ParameterValueSpecification

Name Description Value

ParameterValueSpecification

Name Description Value

PipelineReference

Name Description Value
name Reference name. string
referenceName Reference pipeline name. string (required)
type Pipeline reference type. 'PipelineReference' (required)

RecurrenceSchedule

Name Description Value
hours The hours. int[]
minutes The minutes. int[]
monthDays The month days. int[]
monthlyOccurrences The monthly occurrences. RecurrenceScheduleOccurrence[]
weekDays The days of the week. String array containing any of:
'Friday'
'Monday'
'Saturday'
'Sunday'
'Thursday'
'Tuesday'
'Wednesday'

RecurrenceScheduleOccurrence

Name Description Value
day The day of the week. 'Friday'
'Monday'
'Saturday'
'Sunday'
'Thursday'
'Tuesday'
'Wednesday'
occurrence The occurrence. int

RerunTumblingWindowTrigger

Name Description Value
type Trigger type. 'RerunTumblingWindowTrigger' (required)
typeProperties Rerun Trigger properties. RerunTumblingWindowTriggerTypeProperties (required)

RerunTumblingWindowTriggerTypeProperties

Name Description Value
parentTrigger The parent trigger reference. any (required)
requestedEndTime The end time for the time period for which restatement is initiated. Only UTC time is currently supported. string (required)
requestedStartTime The start time for the time period for which restatement is initiated. Only UTC time is currently supported. string (required)
rerunConcurrency The max number of parallel time windows (ready for execution) for which a rerun is triggered. int

Constraints:
Min value = 1
Max value = 50 (required)

RetryPolicy

Name Description Value
count Maximum ordinary retry attempts. Default is 0. Type: integer (or Expression with resultType integer), minimum: 0. any
intervalInSeconds Interval between retries in seconds. Default is 30. int

Constraints:
Min value = 30
Max value = 86400

ScheduleTrigger

Name Description Value
pipelines Pipelines that need to be started. TriggerPipelineReference[]
type Trigger type. 'ScheduleTrigger' (required)
typeProperties Schedule Trigger properties. ScheduleTriggerTypeProperties (required)

ScheduleTriggerRecurrence

Name Description Value
endTime The end time. string
frequency The frequency. 'Day'
'Hour'
'Minute'
'Month'
'NotSpecified'
'Week'
'Year'
interval The interval. int
schedule The recurrence schedule. RecurrenceSchedule
startTime The start time. string
timeZone The time zone. string

ScheduleTriggerTypeProperties

Name Description Value
recurrence Recurrence schedule configuration. ScheduleTriggerRecurrence (required)

SelfDependencyTumblingWindowTriggerReference

Name Description Value
offset Timespan applied to the start time of a tumbling window when evaluating dependency. string

Constraints:
Min length = 8
Max length = 15
Pattern = -((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])) (required)
size The size of the window when evaluating the dependency. If undefined the frequency of the tumbling window will be used. string

Constraints:
Min length = 8
Max length = 15
Pattern = ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9]))
type The type of dependency reference. 'SelfDependencyTumblingWindowTriggerReference' (required)

Trigger

Name Description Value
annotations List of tags that can be used for describing the trigger. any[]
description Trigger description. string
type Set to 'BlobEventsTrigger' for type BlobEventsTrigger. Set to 'BlobTrigger' for type BlobTrigger. Set to 'ChainingTrigger' for type ChainingTrigger. Set to 'CustomEventsTrigger' for type CustomEventsTrigger. Set to 'ScheduleTrigger' for type ScheduleTrigger. Set to 'RerunTumblingWindowTrigger' for type RerunTumblingWindowTrigger. Set to 'TumblingWindowTrigger' for type TumblingWindowTrigger. 'BlobEventsTrigger'
'BlobTrigger'
'ChainingTrigger'
'CustomEventsTrigger'
'RerunTumblingWindowTrigger'
'ScheduleTrigger'
'TumblingWindowTrigger' (required)

TriggerPipelineReference

Name Description Value
parameters Pipeline parameters. ParameterValueSpecification
pipelineReference Pipeline reference. PipelineReference

TriggerReference

Name Description Value
referenceName Reference trigger name. string (required)
type Trigger reference type. 'TriggerReference' (required)

TumblingWindowTrigger

Name Description Value
pipeline Pipeline for which runs are created when an event is fired for trigger window that is ready. TriggerPipelineReference (required)
type Trigger type. 'TumblingWindowTrigger' (required)
typeProperties Tumbling Window Trigger properties. TumblingWindowTriggerTypeProperties (required)

TumblingWindowTriggerDependencyReference

Name Description Value
offset Timespan applied to the start time of a tumbling window when evaluating dependency. string

Constraints:
Min length = 8
Max length = 15
Pattern = -?((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9]))
referenceTrigger Referenced trigger. TriggerReference (required)
size The size of the window when evaluating the dependency. If undefined the frequency of the tumbling window will be used. string

Constraints:
Min length = 8
Max length = 15
Pattern = ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9]))
type The type of dependency reference. 'TumblingWindowTriggerDependencyReference' (required)

TumblingWindowTriggerTypeProperties

Name Description Value
delay Specifies how long the trigger waits past due time before triggering new run. It doesn't alter window start and end time. The default is 0. Type: string (or Expression with resultType string), pattern: ((\d+).)?(\d\d):(60 ([0-5][0-9])):(60 ([0-5][0-9])). any
dependsOn Triggers that this trigger depends on. Only tumbling window triggers are supported. DependencyReference[]
endTime The end time for the time period for the trigger during which events are fired for windows that are ready. Only UTC time is currently supported. string
frequency The frequency of the time windows. 'Hour'
'Minute'
'Month' (required)
interval The interval of the time windows. The minimum interval allowed is 15 Minutes. int (required)
maxConcurrency The max number of parallel time windows (ready for execution) for which a new run is triggered. int

Constraints:
Min value = 1
Max value = 50 (required)
retryPolicy Retry policy that will be applied for failed pipeline runs. RetryPolicy
startTime The start time for the time period for the trigger during which events are fired for windows that are ready. Only UTC time is currently supported. string (required)