Legacy SDKs
These Legacy SDKs use outdated technology that limits your extension opportunities. We've built a new Platform SDK using Python and the latest open-source technology to deliver a vastly improved development experience. Go to Platform SDK to get started!
Engine and HTML GUI SDKs
Build Custom Tools
While Alteryx provides a wide range of functionality with the available tools, you may find that you perform a specific action that could be better served by creating a custom tool. Custom tools allow for distribution within your organization and environment while still leveraging the speed and flexibility of Designer and Gallery.
Custom Tool Components
A custom tool, or HTML5 Plugin, consists of 2 components:
- The GUI, shown in Designer’s Configuration window. The GUI component must be written in HTML5 using the HTML GUI SDK.
- The Engine, which processes logic to handle records passed to and from the AlteryxEngine. The engine component can be created using one of a variety of back end options, which include:
Prerequisites
Custom tool creation involves working with several SDKs that require familiarity with these:
- HTML
- JavaScript
- Python, C++, or Alteryx Macros
- File Management
Create a Tool Folder
An HTML5 plugin and its file components reside in the Alteryx installation in this location: \bin\HtmlPlugins
The name of the subdirectory you create is used as the label for the tool in Designer. For example, \bin\HtmlPlugins\MyNiftyPlugin displays as a tool called "MyNiftyPlugin" in Designer.
Tool Files
A custom tool needs the following files to execute correctly. These pages can be built manually or can be created using the Alteryx Tool Generator.
- A .xml file to define tool configuration.
- \MyNiftyPlugin\MyNiftyPluginConfig.xml
- A file that defines tool function. The file type varies by the back end you use. Your back end options include:
- A .html file that defines your tool's appearance. See HTML GUI SDK.
- \MyNiftyPlugin\MyNiftyPluginGui.html
- A .png icon to display as your tool's icon within Designer.
- \MyNiftyPlugin\MyNiftyPluginIcon.png
The directory must include all dependencies required by the tool, such as JavaScript libraries, style sheets, and help files.