Connect to anything with HTTP and custom actions
Oh no! You can’t find an action you need to add into your recipe – what can you do?
APIs are constantly evolving for almost every application out there – new functionality is added, some functionality may be removed. It’s almost impossible to monitor all changes across your entire application portfolio – until you’re missing functionality you expect!
Prefer video? Check out this segment of our recent Product Hour:
What are my options for adding missing actions?
You have a few options for adding missing actions, but all rely on there being an API endpoint available for the action you want to complete. There are two factors to consider when deciding what route to go: does a connector already exist for the action, and how often will the action be used:
Option 1: HTTP Connector
The HTTP connector is best used for one-off or infrequently used actions when there isn’t an existing connector. Configuration can be done via a guided setup, but it does require you to supply your own authentication.
Option 2: Custom actions
Custom actions are great for adding a bit of functionality to an existing connector, but still require configuration for each use. This option can also use the guided setup, but benefits from using the authentication of the existing connector.
Option 3: Custom SDK
The custom SDK is the most specialized option of the three. Requiring development time and resources, building a custom connector can be an undertaking, but offers the greatest reusability and standardization for repeated actions. Additionally, the custom SDK enables more sophisticated actions than the other options, such as file streaming for data integration use cases. We recommend you scour the community library and existing connectors before beginning development work – it’s quite likely someone else has built what you need!
How to use the HTTP connector and custom actions
To build an HTTP action, search for HTTP in the app selection menu when building a recipe. To build a custom action, select the app you will be working with, then scroll to the end of the pre-configured list and select Custom action.
For both HTTP and custom actions, we recommend the 3-step guided setup to build and test your endpoint. After the guided setup, you can pull in datapills to make the action dynamic and job-specific.
How to plan your action
- Explore what connectors are already available, both standard and custom. Make sure to search for the app or action while building your recipe, and also take a look at the community library to see if someone else has developed what you need.
- Find the API documentation for the action you wish to perform. The documentation will help identify the endpoint you are connecting, authentication instructions, required scopes or permissions, and any parameters or notes to help you make an efficient and easy connection.
- Ensure your authentication has the scopes for your action. If your authentication or login does not have the permissions to complete the action, the recipe will return with an error.
- Name your actions clearly. Especially with custom actions, action names and comments are critical for communicating what your step is doing to your other team members who aren’t familiar with the configuration.
Best practices when building
- Test early and often: we probably sound like a broken record when we say this, but we can’t advocate enough for testing as you go and rapidly adjusting to errors or configuration issues. Endpoint testing, including with parameters and request headers, is built into the guided setup.
- Choose secure authentication: There are many authentication types that Workato supports, but OAuth2 is the authentication standard adopted by a number of cloud apps. Use your API documentation and company policies to understand the best authentication option for you.
- Configure with performance in mind: Consider how to use pagination, limits, and parameters to limit the amount of data you process. Can you get the information you need from the most recent record vs. pulling over ten thousand?
- Proactively handle errors and edge cases: Wrap your actions in a handle errors block, include logging messages, and think through how your actions could break. What if an input is missing? What if a value isn’t what you expect?
Next time you run into a missing action, we hope you’re fully equipped to build what you need!