--- title: "SDK: Default Parameters and Custom Editors (Basic)" slug: "flow-steps-rule-steps-simple-default-parameters-custom-editors" description: "Learn how to customize default input values for public methods in a custom Decisions step using Visual Studio code." updated: 2026-04-27T20:46:52Z published: 2026-04-28T14:12:58Z canonical: "documentation.decisions.com/flow-steps-rule-steps-simple-default-parameters-custom-editors" --- > ## Documentation Index > Fetch the complete documentation index at: https://documentation.decisions.com/llms.txt > Use this file to discover all available pages before exploring further. # SDK: Default Parameters and Custom Editors (Basic) **Version 7.x .NET Architecture Change** - Versions 7.0.1 - 7.1 require [.NET Core 3.1](https://dotnet.microsoft.com/en-us/download/dotnet/3.1) - Versions 7.2 - 7.9 require [.NET 5](https://dotnet.microsoft.com/en-us/download/dotnet/5.0) - Versions 7.10+ require [.NET 6](https://dotnet.microsoft.com/en-us/download/dotnet/6.0) ## Overview When creating simple steps by registering public methods, default values can also be set for the inputs of those methods. This allows users to still change these input values but populates the inputs with default values when the step is first used. Custom codes are located here: C:\Program Files\Decisions\Decisions Server\Instances\Control\CustomReferencesDecisions has a [Public GitHub Repository](https://github.com/decisions-com/sdk-examples) with various SDK examples available. ## Example The following code example demonstrates how to write a step to upload a file to an FTP server and having the server address and server port populated by default. Below is the code example of the method with the options parameters with the default inputs. ```csharp public void FtpUpload(string username, string password, string serverAddress = "myftpserver.com", int serverPort = 21) { //upload files to ftp site } ``` When the user places this step in a Flow, the serverAddress and serverPort inputs will be populated. Custom editors can also be supplied on property values in the same manner. ```csharp public static void CreateUserAdvanced( string ouPath, string loginName, [PasswordText] string userPassword, string email, string firstName, string lastName, string department, [PropertyClassification(0, INPUT_NAME_SYSTEM_USER_NAME, PROPERTY_NODE_ROOT, PROPERTY_NODE_LDAP_SETTINGS)] string systemUserName, [PasswordText] [PropertyClassification(1, INPUT_NAME_SYSTEM_PASSWORD, PROPERTY_NODE_ROOT, PROPERTY_NODE_LDAP_SETTINGS)] string systemPassword, [PropertyClassification(2, INPUT_NAME_LDAP_SERVER_ADDRESS, PROPERTY_NODE_ROOT, PROPERTY_NODE_LDAP_SETTINGS)] string ldapServerAddress) ```