You must provide a dedicated class that contains the input parameter for each task and version. The class' name must be:

Input parameter class name

public class <task name>Parameter


The class must declare public fields only. Properties are not allowed!
Several generic C# types are supported.

Supported generic C# types

bool, int, long, double, float, string
Nullable<T> where T is one of the above-mentioned generic types

The Nullable<T> declaration allows to define optional input parameters according to the definition described in section Optional parameter. Using Nullable<T> will mean that the default value of the variable will be the default value of type T (C#: default(T)). If you want to specify a different default value have a look in section ParameterDescription.
Additionally, there are some complex reference types available that simplify the usage of VidiFlow URIs (see section PlatformUri).

Supported complex C# types for VidiFlow URIs

FileReference, StorageReference, ItemReference

Use the ParameterDescription attribute to mark fields that shall be part of the task contract shown in the Workflow Designer.