Manage custom steps
After you create a custom step, you might want to change things by editing the step. Until the step is used in a flow, you can edit it all you want. However, after you or someone in your organization has used it in a flow, it's a little less straightforward. We don't want you to break flows you might not know about, so there are three types of changes:
- Non-breaking changes.
- Changes that impact the results of the step but don't technically break it. We let you make these changes, but we warn you which flows it might impact.
- Breaking changes that we stop you from making until you've removed the step from the flows it's used in.
We also don't let you delete a custom step that's still used in a flow because that's the ultimate breaking change.
Edit a custom step
The process of editing a step is similar to creating the step in the first place.
- To edit a step, click the Custom tab in the palette and click the pencil icon next to the step.
- Before you start editing, check to see if there is a Usage tab. This tab appears when the step is used in a flow, and lets you see where the step is used, what flows your change might impact, and what changes you might not be able to make.
- Make your changes.
- If you're prevented from making a change, it means that change that could break an existing flow. There are two ways you could make the change. The first option is to use the Usage tab to find where the step is used and remove it from the flow, and then come back and make the change. The other option is to create a new step, including the changes you want, then come back to this step and see where it's used on the Usage tab, replacing those instances with the new step, if appropriate.
- If you've made changes to the endpoint or inputs that impact the script, make sure you update that.
- Click Save when you're done making your changes.
Making changes when a step is in use
The following table lists which changes are allowed when the step is in use, which are not allowed, and which are allowed in certain situations or where there's some detail you should be aware of (these are marked with a ~ in the table). All of these changes are allowed if the step isn't in use.
|Endpoint type||~||You can change the current endpoint type to Any (but not to any other type).|
|Endpoint label||~||The script is not updated automatically, so make sure you update any references to the endpoint.|
|Endpoint requirement removed||~||You can add an endpoint but this may break flows where the step is used.|
|Endpoint requirement added||No||Not allowed since any steps already in use would not have the endpoint configured.|
|Add an input||~||You can add a non-required input anytime, but you can't add a required input if the step is not in use, since existing steps might not have this input configured.|
|Add/update a default value for an input||Yes||Existing steps won't be updated to use the default value.|
|Add/update help text||Yes||—|
|Rename an input||~||The script is not updated automatically, so make sure to update any references to the input.|
|Remove an input||~||The script is not updated automatically, so make sure to update it to remove the input.|
|Make an input required||No||This is not allowed since it would break existing instances of the step.|
|Change the minimum and maximum length||~||While you can't increase the minimum or decrease the maximum length for an input since this would break existing instances of the step, you can decrease the minimum or increase the maximum.|
|Add a new output||Y||—|
|Rename an output||No||You can't rename an output since this could break flows where the step is used.|
|Remove an output||No||You can't remove an output since this could break flows where the step is used.|
|Edit the script||~||This is allowed because there are countless reasons why you might want or need to edit your script. However, we recommend you check the Usage tab first just to double-check that you want the change to apply everywhere the step is used.|
Delete a custom step from the palette
Deleting custom steps from a flow is the same as deleting any other step: hover over the step and click the delete icon (the trash can). To delete the step from the palette so it cannot be used, you first need to make sure it is not used in any flows.
- Click the Custom tab in the palette and click the delete icon beside the step.
- If the step is used somewhere, a message displays where it is in use so you can find those instances and remove them without breaking your flows.
- When the step is not used in any flows, a message prompts you to confirm that you want to delete the step. Click Delete to confirm.