August 2017 Release – Supercharge data transformations with custom code in Ruby, Python, Java and more

Table of Contents

More flexibility with connector extensions, custom code, enhanced access control and auto-retry

Connector Extensions

The pre-built Workato connectors for 300+ cloud apps allow you to interact with the most popular APIs of an app. On occasion, however, customers find that they want to interact with APIs that are not supported by the Workato connector for that app. The HTTP connector provides a way to circumvent this challenge by allowing users to easily and quickly build custom HTTP triggers and actions on the Workato platform.

When using the HTTP connector before this update, users had to go through a two step process:

  1. Enable the app connection by configuring the authorization
  2. Build the HTTP action with the app API

This means that, even when users were trying to build actions for an app that Workato already supported, they had to configure the authorization again instead of being able to utilize the authorization configuration that Workato had already built for that connector.

Now, you can use Connector Extensions. Connector Extensions simplify the development of custom HTTP actions for pre-built connectors. They piggyback on existing app authorizations configured by Workato (e.g. Salesforce, Slack connections) for pre-built connectors, thus eliminating the need for authentication configuration. Also, users do not need to create an additional HTTP connection for their custom HTTP action, instead utilizing the same app connection.

Apps that support Connector Extensions will have the option in the connector’s action selector picklist. Currently the custom actions are available for a select set of applications (e.g. Salesforce, Slack), but over time these will be added to additional apps on the Workato platform.

 

Custom Code in Recipes

For most customers, recipe building will remain a configure, not code experience. For those experts and advanced users, you can now combine the  power of easy-to-use, drag and drop actions on a visual interface with custom code that allows for more complex data handling, or build methods in Ruby, Python, Node.js (Javascript), Java and C#. Now you can use custom code to extend the set of actions available in a recipe. A few examples using Custom Methods are listed below:

Advanced Data Transformations:

  • Normalize phone number format for contacts using advanced regular expressions
  • Parse unstructured data and create structured output e.g. CSV
  • Cleanse contact address by running validation rules on address details.
  • Sort a large list of array to process order data by ascending or descending order date

Data Enrichment using 3rd Party APIs

  • Convert values from one currency to another by invoking an API call to a currency exchange service
  • Convert 5 digit zip codes into 9 digit zip codes by looking up addresses
  • Get the shipping status and details for an order using a 3rd party API
  • Retrieve ISO Country Code by looking up the IP address

The possibilities with code are only limited by your imagination. Custom methods can be added using Ruby Code Actions and the AWS Lambda connector.

 

Recovering from exceptions with Auto-Retry

 

Occasionally actions in recipes may not successfully execute owing to temporary exceptions e.g. unresponsive APIs, network issues or other impermanent conditions. We implemented the error monitor recipe step in order to catch such exceptions in the monitor block and allow users to be able to continue executing further actions in the Error block in cases of exceptions, e.g. if trying to create a new customer record fails, catch that exception and notify an administrator/the account manager.

The auto-retry feature provides users with the option to try executing the steps in the monitor block again even if there was an exception, e.g. if trying to create a new customer record fails, try to create the same record again. The auto-retry attempts can be set between zero (no retry) and 3. When the auto-retry is set to 1 or more, Workato will automatically make an attempt to execute the action after a period of time. The interval between each successive attempt increases to allow more time for the temporary disruptions to resolve.

If all the retry attempts fail to execute the action successfully, the actions in the error block will be processed. The auto-retry feature in the error monitor step gives more control in defining how to process and recover from exceptions.

 

Enhanced access control for better governance

 

The existing role based access with preset and custom roles has already provided Workato team admins the control to define and manage access to recipe assets. The access control has been further fine tuned to allow admins to control access to specific folders and connections. This allows team admins to implement more precise access to resources for team collaborators and also prevent inadvertent usage of resources e.g. connections.

For example, when team admins want collaborators to work only on recipes for marketing projects and use specific connections to Salesforce and Marketo, they can create a separate folder e.g. “Marketing” and include both the marketing recipes as well as Salesforce & Marketo connections in that folder; then they can grant access to the “Marketing” folder to a custom role e.g. “Marketing Ops”. This restricts the access of all collaborators with “Marketing Ops” role to the resources (recipes, connections) available in the “Marketing” folder only.

 

Ready to try out these new updates? Start building a recipe >

Was this post useful?

Get the best of Workato straight to your inbox.

Table of Contents