Action cards UI refresh

As part of our evolving product visual language, Action cards now have a fresh new look and feel on the Storyboard. Action types are now more clear, and it's easier to know which action is selected within a Story.

Action cards UI refresh

Forms on the Storyboard

Forms are now built and updated directly on the Storyboard, making their integration into Stories much clearer.

Additionally, we’ve enabled you to build multiple forms per Story. To create additional forms, use the new Tools menu on the left panel.

Your existing forms are migrated onto the Storyboard and continue to work as before. If you are not using the Webhook Action beyond your form, it can be deleted.

Forms on the Storyboard

Domain restricted Credentials

You can now ensure that a Credential can only be used in HTTP requests to a specific domain. If a restricted Credential is used in a HTTP request to a different domain, or in a non-HTTP Request Action, it will fail.

PKCE Support for OAuth 2.0

We've added support for OAuth Authorization Code flow with Proof Key for Code Exchange (PKCE).

When creating a new OAuth 2.0 credential with Authorization Code grant type, you'll have the option to select a PKCE code challenge method.

This PKCE code challenge method is optional when creating OAuth credentials. You may select either plain or SHA-256 if you know the OAuth provider you're creating a credential for supports PKCE.


For more information on PKCE, see the RFC.

New folder icons and more color options

We've added more folder icons to choose from, as well as added the capacity to pick your own colors for them using hex color values.

Functions for AES encryption/decryption

We now have AES_ENCRYPT and AES_DECRYPT functions, for converting plain text to and from AES-256-CBC-encrypted representations.

Detachable Events Console

You can now open the Events Console in a new window alongside the diagram. Detach and re-attach the Events Console using the new buttons in the Events Console header.

Time Saved API

The Time Saved API is an access point to the time saved data gathered through Reporting. The data can be filtered by team, story, and date, and can be grouped by hour, day, week, or month.

Story Library

You can now access the Story Library from the Story Library section of the left-hand-side panel.

The Story Library modal allows you to search & filter Stories to find one to suit your needs. You can then further explore selected Stories or import a Story directly to your tenant.

New SHUFFLE Formula function

Added a new formula function:

SHUFFLE(array) - Shuffles all the elements in an array.

Search team members

You can now search a team member by their name or email address from the team member management page.

Reporting drill-down filters

The charts on the reporting page can now be filtered (where applicable) by story, team, and date range.

Call Webhook Actions from the Web

It’s now possible to make a request to a Webhook Action to kick off your Story directly from websites and browser applications.

To opt into the behavior, add the ‘Enable CORS’ configuration option, and specify which origin websites you’d like to be able to make requests:

Support for NTLM authentication

We now support NTLM-based authentication, which can be required to access some Windows-based systems. In any Tines HTTP Request Action, just enable ‘Use NTLM authentication’ and pass your username and password with basic auth to connect this way.

New CSV_PARSE_TO_OBJECTS Formula function

A new CSV_PARSE_TO_OBJECTS Formula function has been added.

CSV_PARSE_TO_OBJECTS(input) - parses a csv input into an array of objects.

Deleting and restoring Stories

Introducing trash!

Deleting a Story will now move it to your team's trash. From the trash, Stories can either be restored or permanently deleted.

The trash may also be emptied, permanently deleting all the Stories it contains.

Support for ES256 JWT credentials

We now support the ES256 algorithm (i.e. ECDSA using P-256 and SHA-256) in our JWT credential type. This algorithm is a requirement for interacting with some APIs, for example Apple’s App Store Connect.

In addition to our existing support for HS256 and RS256 algorithms, this rounds out our coverage for all recommended implementations in the JWT standard, as defined in RFC 7519.

Less friction in unpublished Stories

Previously, you had to publish your Story before events from the outside world – like responding to webhooks or emails – would flow through it. These events would be “held” in a pending queue, requiring button clicks to get them to flow, which added friction and frustration.

Now, things are simpler: everything flows automatically while you’re working on (or just viewing) an unpublished story. Then, once you’re ready for the Story to run autonomously in the background, just hit publish.

Simplified navigation

We've simplified navigation across the product. From a Story, you can now get back to the dashboard in a single click, and actions are now consistent across Story, Story Runs, and Forms. You can also easily manage or switch tenants from the dashboard menu.

New REGEX_EXTRACT Formula function

Redirect authorization in HTTP Request Action

Our HTTP Request Action follows redirects – i.e. when an API you request sends you to another URL with a 3XX response. However, for best-practice security reasons, we don’t forward the Authorization header if the hostname changes in the redirect.

Now, you can opt-in to forwarding the header using our new ‘redirect authorization’ option. This will help in cases where APIs use and redirect to multiple hostnames, requiring authorization to be passed along.

Audit logs: enriched user information

Four new response fields have been added to the audit log API: request_ip, request_user_agent, user_email, and user_name.

Move credentials and resources between teams

Credentials and resources can now be moved between teams.

Surfacing full timestamps for events

Now, in addition to seeing the relative time for an event, we show you the full UTC date and time in the top right of the event viewer. Additionally, you can now hover over any relative time to see the full timestamp.

Quickly re-emit an action's last event

When working on a story, it's often useful to re-emit an action's last emitted event. You can now do this directly from the action bar.

No code comes to HTTP Request Credentials

The HTTP Request credential now supports no code mode.

Pills in JWT credential payload

The JWT credential now supports pills in its payload.

Searchable Annotations

Annotations are great for documenting how your Tines stories work, right on the diagram.

Now, you can query their content and find them in Search, alongside existing results like Actions and Credentials.

Story list presence

Collaboration is core to how people use Tines, so we're putting a spotlight on it. Avatars of teammates who are active (or recently active) are now visible on the dashboard.

Automatic cleanup of action logs

As a means of reducing outdated action logs on your story, action logs now automatically expire along with events. As always, you can adjust when events and logs expire using the "Keep events and logs" dropdown when viewing a story.

Receive Email Action

The Email Action and IMAP Action are now called Send Email Action and Receive Email Action respectively. Rest assured, their existing functionalities have not changed. This is to differentiate between actions after introducing a brand new way of receiving emails.

The Receive Email Action now has two different modes:

  • IMAP mode - All Receive Email actions default to the IMAP mode, which has the original IMAP functionality.

  • Email mode - A new mode in the Receive Email Action. The action can now receive emails at a unique Tines-generated email address. Available for cloud tenants now.

With this change, users may now receive and process emails in Tines without configuring IMAP options.

Rest assured that existing Email and IMAP Actions have not changed - create a new Receive Email action if you want to give the new mode a spin!

Unveiling the new events panel!


The new events panel can be opened when an action is selected with the shortcut ⌘ + E/CTRL + E, by clicking the events badge in the top-right corner of an action, or by clicking the Events button in the action bar, as shown in the video above.

This panel provides all the functionality that previously appeared in the right-hand panel's events tab, with a host of new features:

  • Switch between events in the left hand list while examining their contents on the right

  • Expand and collapse JSON

  • Select multiple events to re-emit or delete

  • Pin an event to keep it open while exploring the rest of your story

  • Drag to adjust height

Tines Tunnel for IMAP Actions

IMAP Actions can now use the Tines Tunnel to connect to email servers in your private, internal networks. For more information on the Tunnel service, see our docs.

Left Panel Redesign

We have redesigned the left-hand-side panel in the story view.

Actions and annotations have been unified and given a fresh new look.

Templates now have their own section and expand automatically when searched.

Indicator for throttled stories

There is now a label on the toolbar indicating when a story is being throttled. A story is throttled if it emits more than 1000 events in a span of five minutes or if it contains an action taking more than 90 seconds to run. Throttling a story helps keep your tenant running smoothly by lowering its priority and leaving capacity for other stories to continue running unaffected.

Story and Group rename from the toolbar

Users now can rename stories and groups directly from the toolbar.

Public group templates

We have made a number of public group templates available to Formulas-enabled tenants. You can see all the latest templates added to Tines on this Notion page.

Group templates allow templates to offer a simpler interface, like this Slack template below, or offer more complex abilities like automatically paginating when making requests to APIs.

Updated form builder

We have made a number of improvements to the form builder. The new field selector makes it easier to add different types of fields.

We have also added support for two new field types: Number and Boolean. In addition we have added a new "date picker" for the date field.

Audit logs

Admins can now view a log of every change made on their tenant through the Audit log API.

Story locking

Users can now lock stories to prevent accidental changes. When a story is locked and a user attempts a state changing operation, the story will not be interactable and a toast indicating the locked state of the story will be shown. To make changes again, the story must be unlocked.

Undo story deletion

We've added an 'undo' button to restore a recently deleted story.

MATCH & KEYS Formulas Functions

Added two new Formulas functions:

  • MATCH - Returns true if text contains the regex expression regex_to_match and false otherwise.

  • KEYS - Returns an array of keys present in the object.

Visible OAuth error messages

Setting up new OAuth 2.0 credentials can be a fickle process. For one, different OAuth providers may have unique or badly documented requirements for how you pass through your configuration. For another, there can be latency between publishing up a remote credential and it being available for use by consumers like Tines.

Now, for authorization_code grants, we surface the full error context we receive from the remote provider if anything goes wrong, making it much easier to debug issues.

Copy HTTP Request as cURL

We've added a new feature where you can copy any test HTTP Action runs as cURL. This can be useful when debugging HTTP Actions.

Customize sender name in Email Action

We've added a new option to the Email Action which allows users to set a custom sender name for emails sent by the Action. This allows emails to appear in inboxes using your custom name as the sender instead of Tines. The underlying sender address will remain mail@tines.io.

For new Email Actions, the current user's full name will be set as the sender name by default.

Resources on the storyboard

Just like Credentials, it’s now possible to see and manage all of the Resources your Story uses, right there in the sidebar.

UUID function

You can now easily generate UUIDs within Tines.

Clickable action event badges

You can now click the action events count badge to quickly open the action events tabs. Similarly, clicking the error badge will open the action logs tab.

Profile avatars

User avatars throughout the app will now use existing Google profile or Gravatar photos, when available.

Refresh Oauth token button

We've added a "Refresh token" button to the Oauth credential modal!

This will allow users to refresh their Oauth token manually.

Credential Details

We've added a Details tab to the Credentials popover within stories!

This will allow users to update and view credential details from within a story.

New event retention options

We've added new 14, 60, 90 and 180 day options to the the "Keep events" dropdown for a story.

Reporting

We have replaced the Dashboard page with Reporting!

This new page contains all the information from the dashboard along with new charts giving you valuable usage metrics. Of particular note is the Reporting overview chart, which displays the real human hours saved through Tines automated actions. Find out more about tracking the time you're saving with Tines here.

New Email Action sender address

The default Email Action sender has been changed from support@tines.io to mail@tines.io. This does not impact any of your Stories in Tines, but may require an update to any mail filtering rules that have been created on your corporate mail gateway. The new mailing address does not accept email replies, so a ‘Reply To’ address should be configured on Email Actions to avoid bounce-backs. Customers that sign up before May 30th will already have the new address enabled.

Resizable Annotations

You can now change the width of an annotation to better fit the content and your story.

Event Payload Search Term Highlighting

Relevant search term from Event Payload Search will now be highlighted on match.

You can now perform full text search within all event payloads.

Other Teams View

Admins can now access teams they are not members of through the Other Teams list, located below the My Teams list on the left-hand navigation bar.

Search users

You can now search a user by their name or email address from the user management page.

Re‑emit API

You can now re‑emit an event through the Tines API. Re‑emitting events duplicates them and passes them down to receiving actions. Learn more

Clear events for multiple actions from the action bar

You can now clear events for multiple actions from the action bar.

Groups

Groups enable a better organization of complex stories by extracting well-defined branches of a story into a group. Learn more

Select data to implode

Event Transformation Actions in "implode" mode have a new option: "Item path". Using this option, you can select the data from the events being imploded to include in the output event.

Clear events from the action bar

You can now clear events for the selected action from the action bar.

Create credentials from the storyboard

You can now create credentials from the storyboard.

Credentials on the storyboard

4 new features to help you more efficiently manage credentials in your stories.

  1. List: You will now see a list of the credentials that are referenced throughout your story in the sidebar.

  2. Missing Credentials: will be surfaced in the credentials list.

  3. Reference Overview: You will be able to see which actions reference the credential in both existing and missing credentials.

  4. Story wide replace: You will be able to replace your credentials story wide in just a few clicks.

Copy event key path as pill

Double click on a key in an event payload to copy its path as a pill.

URL recipients for action monitoring

You can now set a URL as an action monitoring recipient.

Story presence

Collaboration within a story is now much easier: see when someone else on your team is viewing the same story and follow along as you both work through your stories together.

Email action Reply-To option

You can now specify a Reply-To address when configuring an email action.

Trigger action editor

The interface for configuring Trigger actions has been revised to make it read more naturally.

is_ip_address Liquid filter

is_ip_address Liquid filter has been added. It checks if a piece of text is a valid IP address.

{{ "10.0.0.1" | is_ip_address}} evaluates to true

{{ "10.0.0.888" | is_ip_address }} evaluates to false

Pill drag and drop

Our options editor now supports cutting, pasting, dragging and dropping value and tag pills.

Action bar

The controls for running, testing, copying and deleting an action are now shown in a new action bar beside an action when it's selected.