Release notes

Action templates added 

You can see all the latest action templates added to Tines on this Notion page.

Self-hosted Note 


August 11, 2022 - 12.0.3 

Image digests:

tines/tines-app: sha256:4e09f070eff0aebeda345e1f41879e98beb53c9992c6a5941a0dc2b6d1906027
tines/tines-nginx: sha256:e721189f4697ba5b845ba46f4904379769dbc5dd605b6468753b10f7cdd93e8b


  • Beta release of NTLM auth

  • Fix issue related to the tooling for Formulas migrations

August 9, 2022 - 12.0.2 

Image digests:

tines/tines-app: sha256:ee823677cc91bfa25f0a2e270b7d4bbd4663b772811764d12a69b984ce370457
tines/tines-nginx: sha256:e721189f4697ba5b845ba46f4904379769dbc5dd605b6468753b10f7cdd93e8b


  • Fix issue related to the tooling for Formulas migrations

August 8, 2022 - 12.0.1 

Image digests:

tines/tines-app: sha256:30192d2df7c65fd9e838f81dfc489e8cf06d9776c3a8011ebe574f8dea4603c2
tines/tines-nginx: sha256:e721189f4697ba5b845ba46f4904379769dbc5dd605b6468753b10f7cdd93e8b


July 26, 2022 - 11.3.2

Image digests:

tines/tines-app: sha256:7b75c2f00f45c17ec6177a235da46743891f0870ff8c22433ac01799edc02314
tines/tines-nginx: sha256:e721189f4697ba5b845ba46f4904379769dbc5dd605b6468753b10f7cdd93e8b


  • Fix login issue related to avatars

  • Improved Formulas migration support

July 25, 2022 - 11.3.1

Image digests:

tines/tines-app: sha256:0be9cb4437e0069bec7ddb9cdd04fc0a913302f21678f955e3ccf0a921114155
tines/tines-nginx: sha256:e721189f4697ba5b845ba46f4904379769dbc5dd605b6468753b10f7cdd93e8b


July 11, 2022 - 11.2.0

Image digests:

tines/tines-app: sha256:6e9c4171b7d3040ac95ed8f36d98d4ec54f730f43c673445b0cb5b32a3f424e8
tines/tines-nginx: sha256:339fb41eb5b3450f95c6245aaf6a83dc739a6a309ea0f19d892d16ff8e545604


June 27, 2022 - 11.1.0  

Image digests:

tines/tines-app: sha256:d1b885140493c250a00bcd02b76d02cd552c56b26c57f0d81e41835fbef85e9f
tines/tines-nginx: sha256:339fb41eb5b3450f95c6245aaf6a83dc739a6a309ea0f19d892d16ff8e545604


June 15, 2022 - 11.0.1 

Image digests:

tines/tines-app: sha256:b0aa7957332be28bba05a633bf60a1ca0514f8b6a5092a82491c3ec8c4939561
tines/tines-nginx: sha256:339fb41eb5b3450f95c6245aaf6a83dc739a6a309ea0f19d892d16ff8e545604


  • This patch release contains fix for a set of database schema changes that can take potentially longer on some self-hosted tenants.

June 13, 2022 - 11.0.0 

tines/tines-app: sha256:7c226228bf9f2e6c2f65b9633dfe371b1dbffd4c5e941722085ae823be939775
tines/tines-nginx: sha256:339fb41eb5b3450f95c6245aaf6a83dc739a6a309ea0f19d892d16ff8e545604


May 31, 2022 - 10.3.1 

tines/tines-app: sha256:69c48fd38826bb3e752107b09d15b9a0a6eae1ae96f0878c54f6b453f05fb4c6
tines/tines-nginx: sha256:339fb41eb5b3450f95c6245aaf6a83dc739a6a309ea0f19d892d16ff8e545604

Fix TLS issues with SMTP servers

Fixed issues where customers that have disabled TLS on their custom SMTP servers could not send emails.

May 30, 2022 - 10.3.0 

Image digests:

tines/tines-app: sha256:33b2f984b454b17cea8f6d1462c535fa67c2185ff7f70b3389a7072da142da13
tines/tines-nginx: sha256:339fb41eb5b3450f95c6245aaf6a83dc739a6a309ea0f19d892d16ff8e545604

General improvements

This release focuses on various usability, security and performance improvements.

May 16, 2022 - 10.2.0 

Image digests:

tines/tines-app: sha256:e5eaf45bee6d2f0b5a51d734a974ffb8a60de9a601687970d49d57eb1cbf83c5
tines/tines-nginx: sha256:eac3bd5a26d4aea8b7bae67a17163791a76aee8861d131e0c510aac2ed81e008

Resizable Annotations

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

Resizable annotations

Event Payload Search Term Highlighting

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

Event Payload Search

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.

May 05, 2022 - 10.1.1 


tines/tines-app: sha256:d24f20d6a2fe32bff3681c406ec15afaf95db62d3807f09127099a3324d04914
tines/tines-nginx: sha256:eac3bd5a26d4aea8b7bae67a17163791a76aee8861d131e0c510aac2ed81e008

May 03, 2022 - 10.1.0 


Image digests:

tines/tines-app: sha256:c016d4e8f9486b9bbc2d85efaf5017da574959b19bc368833fd807ee171e6995
tines/tines-nginx: sha256:eac3bd5a26d4aea8b7bae67a17163791a76aee8861d131e0c510aac2ed81e008

Easier access to auto-align and auto-layout on the action bar

You can now access auto-layout and auto-align directly from the action bar.

Search users

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

Show impact of second Liquid interpolation pass for self-hosting customers

Self-hosted customers can now see the impact that a second Liquid interpolation pass is having on their actions by visiting <tenant-domain/admin/upgrade. This behaviour is deprecated and will be removed in a future release.

  • If you have been running 10.1.0 or a later version for longer than a couple of days, you can see which actions have been affected by the behaviour by visiting that page. The page will give further context and instructions on how to disable the behaviour.

  • If the section about this behaviour does not show up on the page, then you have no actions that have been affected. If this is the case, you don't need to take any further action.

April 19, 2022 - 10.0.0 

Image digests:

tines/tines-app: sha256:8327dfbe6f08ba5fdd1d86cd7c4c5ecef64249be1fd40ed344a202bc8f290427
tines/tines-nginx: sha256:eac3bd5a26d4aea8b7bae67a17163791a76aee8861d131e0c510aac2ed81e008

Reemit 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

April 4, 2022 - 9.3.1 

Image Digests:

tines/tines-app: sha256: 5a2bf245c880f3f76d3db145514bd54bc9565ccb6991fa136bbe05477396253a
tines/tines-nginx: sha256: c950c7f321753322fb3cf4e93bea6441f0c339990693cbf3580b467d0e9aac78

Removing plan limit environment variables

New self-hosted installations will now use default initial plan limits. As before, these can be updated to the correct limits from your plan through the /admin/configuration page on your tenant. Correspondingly, the USER_LIMITAGENT_LIMTEVENTS_PER_DAYSTORY_LIMIT and TEAM_LIMIT environment variables are totally ignored by the app, and can be removed from your .env file.


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.

March 21, 2022 - 9.2.0 

Image Digests:

tines/tines-app: sha256:32fbc91dcddd95dd4b398fa8911d8e16a9e76bafc47d437c04d74409720f6c0a
tines/tines-nginx: sha256:c950c7f321753322fb3cf4e93bea6441f0c339990693cbf3580b467d0e9aac78

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.

Create credentials from the storyboard

You can now create credentials from the storyboard.

Copy event key path as pill

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

March 7, 2022 - 9.1.0 

Image Digests:

tines/tines-app: sha256:c3a854c46a148ab328688e913ff9bf74451fa7b6480b5c63d67603f64663818e
tines/tines-nginx: sha256:c950c7f321753322fb3cf4e93bea6441f0c339990693cbf3580b467d0e9aac78

Auto align and Auto layout story actions

2 new features to help you arrange actions in your stories.

  1. Auto-align: Will snap selected items to a grid and ensure that items are equally spaced out for neatness

  2. Auto-layout: Will reflow the selected actions based on the current links

Custom certificate authority

You can now configure a custom certificate authority for use by all of your IMAP and HTTP Request actions.

URL recipients for action monitoring

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

February 21, 2022 - 9.0.0 

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.

{{ "" | is_ip_address}} evaluates to true

{{ "" | 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.

Image Digests:

tines/tines-app: sha256:253030844927af49487d930cec983477688d74ce709d92677c1f7c4f34de61b1
tines/tines-nginx: sha256:0a02365870a2fd30ce3046b6f685ab5ca8f439179c31336bccb060077acddb12

February 7, 2022 - 8.3.0 

See usage when deleting a credential

Now you can see which stories and actions use a credential before deleting it. You can click on the listed actions to open the story, centred on that action, in a new tab. Also, you can now delete a credential even if it’s being used in an action without having to delete the action first.

Story credentials list

You can now see which credentials are being used in a story, as well as any missing credentials that the story is referencing.

Image Digests

tines/tines-app: sha256:651b38a5f31760c6620481646366a266d428ae2e8e511e3bbb312fdd647ff0e5
tines/tines-nginx: sha256:0a02365870a2fd30ce3046b6f685ab5ca8f439179c31336bccb060077acddb12

January 24, 2022 - 8.2.0 

Self-hosted customers can now download ZIP files for releases through cloud tenants at the path /admin/upgrade. Contact Tines support to get this enabled for your cloud tenant. If you don’t have a cloud tenant, you can sign up for a free Community Edition tenant at

Randomize webhook secrets on export

When exporting a story, you can now check a checkbox to randomize the webhook secrets keeping your webhooks unique upon re-importing.

Breadcrumb navigation

Image Digests:

tines/tines-app: sha256:844cbddeaad894cbc01fb611140a1467b99d54d5f4a47d09977ac10c29fcf0d2
tines/tines-nginx: sha256:0a02365870a2fd30ce3046b6f685ab5ca8f439179c31336bccb060077acddb12

January 10, 2022 - 8.1.0 

Re-skinned Registration / Login flows

New Liquid Editor

The new liquid editor is now generally available for all tenants

No-code Development: Introducing the New Liquid Editor | Tines

Emit all held events on publish

When publishing a story, a checkbox can now be checked, to emit all held events upon publishing. In addition to this, when a story is unpublished with held events, a button appears in the publish dropdown allowing users to emit all held events.

Image Digests

tines/tines-app: sha256:4f4ed744f7e42cd15976ca4441c42d0021d7edebe4068232c8ad413e7cb1332e
tines/tines-nginx: sha256:0a02365870a2fd30ce3046b6f685ab5ca8f439179c31336bccb060077acddb12

December 13, 2021 - 8.0.0 


Looping support for Event Transformation actions

It is now possible to configure an Event Transformation action in message_only mode to loop through a list or and object in a incoming event.

  • Specify the path to a field in an incoming event that contains a list or an object and Tines will invoke the action for each element of the list or object.

  • When specifying the output event payload, a LOOP object will be provided for each loop iteration. The LOOP object will contain:

  • value – The current value in the loop.

  • index – The current index in the loop.

  • key - When iterating over key/value pairs in an object, this is the current key in the loop. This will be absent when iterating over a list.

  • previous_result – The result of the previous iteration.

  • A single output event will still be emitted.

  • The payload of the output event will always be a list. It can potentially contain NULL elements. 

Resource descriptions

You can now add descriptions to resources to store more information about them.

HS256 support for JWT credentials

JWT credentials can now use the HS256 algorithm instead of RS256.

Image digests:

tines/tines-app: sha256:468c47ef130eb62453fe2f777d29b170795b526b86c03a66e08fd37929db5a5d
tines/tines-nginx: sha256:0a02365870a2fd30ce3046b6f685ab5ca8f439179c31336bccb060077acddb12

November 29, 2021 - 7.3.0 

Global search

Clicking the search button now opens a new page which can search across all the stories, actions, credentials, users and resources that you have access to.

Credential descriptions

You can now add descriptions to credentials to store more information about them.

OIDC support for SSO

OpenID Connect is now a supported option when configuring your SSO authentication.

Transliterate Liquid filter

The new transliterate filter replaces non-ASCII characters with an ASCII approximation, or if none exists, a replacement character: ?.

Light/Dark mode hotkeys

You can now switch between light & dark mode with Ctrl + Shift + L ( + Shift + L on macOS).

Operation logging

tines-app container logs will now show when a user performs an operation through the UI or API that can change data, e.g. Performing GraphQL operation 'annotationContentChangeMutation' for user ID 4

Image digests:

tines/tines-app: sha256:f18e016f91b1bc3d56d59a0b6acdb37b48582ce318407f473ac42d5c5f715ef5
tines/tines-nginx: sha256:0a02365870a2fd30ce3046b6f685ab5ca8f439179c31336bccb060077acddb12

November 15, 2021 - 7.2.0 

Action configuration UI fixes

Fixed a couple of minor issues that occurred when editing an action.

Image digests:

tines/tines-app: sha256:f3b831e84442950e1b199e9c305202ebbc0ea15771656d5790a66140169d5d1f
tines/tines-nginx: sha256:0a02365870a2fd30ce3046b6f685ab5ca8f439179c31336bccb060077acddb12

November 1, 2021 - 7.1.0 

Inline errors in action editor

Configuration errors will now be shown inline beside the field where the error is located.

Fully customizable webhook URLs

Webhook actions now have a path option which specifies the first randomized path segment of the URL, which was previously unconfigurable.

Self-hosted: HTTPS connection to tines-app container

The tines-app container now serves HTTPS traffic on port 3001 if an SSL key pair is provided through Docker volumes at the correct paths:

  image: tines/tines-app:latest
  command: start-tines-app
    - ./tines-app.crt:/home/tines/tines/tines-app.crt
    - ./tines-app.key:/home/tines/tines/tines-app.key

Image digests:

tines/tines-app: sha256:7a9af8c3b1ce0abad020cbd602d3f131a337fb782a2cca22ab114eb14bb18556
tines/tines-nginx: sha256:17595e7d2e12e6fc049c3a269ef869f98a77aee566e84541f788ed0dd634cab3

October 18, 2021 - 7.0.1 


🕒 Story versioning 

Changes made to your stories are now stored in a version history, so you can restore old versions of a story at any time. Versions can be renamed to give them extra context, and you can export specific versions or clone them to a new story. 

META variables 

You can now use {{ META }} to access information about the current environment, like the name of the current team ({{ }}), the ID of the current action ({{ }}), or the domain of the current tenant ({{ META.tenant.domain }}). This makes it easier to do a range of things, like log data about action runs:

Send to Story triggered from action {{ }}

and send requests to your tenant's API:

url: https://{{ META.tenant.domain }}/api/v1/stories

You can now manually choose how to parse responses to HTTP requests. This is useful for APIs that respond with a misleading content type, or for cases where you want to keep the unparsed text. 

Image digests:

tines/tines-app: sha256:f5a5873cede22f74e31e169a32bba244885edef2fdd130a444138b0eb13bf1e6
tines/tines-nginx: sha256:765d2e68eb52c5fc8617afe996224bdea3b1aa1bdfdba858ff26de8a060fb2db

October 4, 2021 - 6.3.0 

More accurate “Edited at” timestamps.

The timestamps indicating when the story was last edited are now more accurate taking into account things like action options change.

Docker security enhancements

We’ve made a couple of security improvements to the Tines Tunnel Docker images:

  • The image now uses a user without root privileges (our main tines-app image has been doing this for a while).

  • The image can be run in a container with a read-only filesystem.

  • The image is now signed using Docker Content Trust, which allows customers to prove that the images they receive have not been tampered with by a third party. We’ll bring this to the tines-app image soon too.

Search stories/credentials/resources under folders

  • Searching now works within folders

Image digests:

tines/tines-app: sha256:4758756e31f697b6d4deb5d16589aaf52a9230a8771548a9cd992dd5c91dc20d
tines/tines-nginx: sha256:765d2e68eb52c5fc8617afe996224bdea3b1aa1bdfdba858ff26de8a060fb2db

September 20, 2021 - 6.2.0 

  • Tines now supports enhanced SAML security features, such as encrypted responses and signed requests & responses. Documentation can be found here:

  • Buttons now have focus states to allow for easier keyboard navigation in the app. 

Image digests:

tines/tines-app: sha256:8428471bb4d407fbcf321664a894a9b4ebb742772f6c84ea011f664bc01acc85
tines/tines-nginx: sha256:96ff54454b8b1b22d14469596758c9dc40549d1fc54666357c03c6f09997d313

September 6, 2021 - 6.1.0 

  • No code editor: It's now easier to build stories without writing any code. Add option blocks and configure actions visually, in a few clicks.

  • Event holding for unpublished stories: Events emitted by an webhook action or a scheduled action in an unpublished story will be held until manually emitted. This will enable unpublished stories to be tested safely without inadvertently triggering other actions that are not yet ready for production.

Image digests:

tines/tines-app: sha256:aca3ff89f89287b10fc5b42926e817e420ab35d459960b81d870f2a759c881e6
tines/tines-nginx: sha256:96ff54454b8b1b22d14469596758c9dc40549d1fc54666357c03c6f09997d313

August 23, 2021 - 6.0.1 


  • When editing an action in the UI, the action can be saved even if its configuration is invalid. This helps prevent losing progress when making changes to an action which can cause it to temporarily have an invalid configuration.

  • In self-hosted installations, admin users can now visit /admin/configuration to update their limits when updating their pricing plan.

Image digests:

tines/tines-app: sha256:c876e421ecc8c35cf8f0e0bf131881031fe43313df5fae73ca43811262d3735e
tines/tines-nginx: sha256:96ff54454b8b1b22d14469596758c9dc40549d1fc54666357c03c6f09997d313

August 9, 2021 - 5.3.0 

  • Convert cURL commands to Tines Actions

    Now you can now paste in cURL commands to the storyboard and you'll get a Tines Action created immediately. This feature should make it much easier to use any documentation that features cURL and kickstart utilizing those API calls within Tines.

  • Suggested action option examples can now be inserted into the code editor using the + in the editor menu. 

Image digests:

tines/tines-app: sha256:5640ce798a266b26cfdb2fd20b0add92373dad90cf3def4a39a17f0a2a0a5727
tines/tines-nginx: sha256:96ff54454b8b1b22d14469596758c9dc40549d1fc54666357c03c6f09997d313

July 26, 2021 - 5.2.0 

  • New Liquid filters:

    • in_cidr: Checks if an IP address is in a given range, expressed in CIDR notation - {{ ip_address | in_cidr: '' }}.

    • to_snake_case: Converts a string of text to snake_case - {{ 'Liquid filter' | to_snake_case }} becomes liquid_filter.

  • After renaming a resource or credential, any references to it which are located in the value of a resource or credential will be automatically updated.

  • When renaming a HTTP Request credential, the token location field will automatically update to reflect the new name.

  • For self-hosting customers, action templates are now stored in the app's database instead of Algolia. The latest public template data will be included automatically as part of every version upgrade.

    • Public templates can also be downloaded automatically from []( by setting SYNC_TEMPLATES=true in your instance's environment variables. When enabled, template data will be synchronized every hour.

    • Existing private templates will be downloaded to your instance's database as part of the upgrade process.

Image digests:

tines/tines-app: sha256:3306fbf58fb68b24728742d76fa0e20a3e3e80ee18965c572252bd39ff079c8e
tines/tines-nginx: sha256:96ff54454b8b1b22d14469596758c9dc40549d1fc54666357c03c6f09997d313

July 12, 2021 - 5.1.0 

  • Dark mode is now available. It will follow your system setting by default, or you can specify your preference from the user menu on the top left.

  • Dragging an Action/Annotation to the edge of the storyboard will now scroll the storyboard. This enables you to easily drag items to other areas in the storyboard without having so zoom out before dragging the item.

  • You can now move a story to new team or folder directly from the diagram.

Image digests:

tines/tines-app: sha256:9ec9c76ea20012583816b7b462e3370babd2374c330e3f84f6de5590932b08f6
tines/tines-nginx: sha256:25e35413e303b21de90efaa04fd7f0b2d382f62bcca8cc957e20307c0e42f40f

June 28, 2021 - 5.0.0 


  • Self-hosted installations will send some telemetry data to Tines by default, starting from this version. You can see what data is being sent, and enable/disable the sending of it, by visiting the /admin/telemetry path on your tenant. If you want to disable telemetry before this upgrade, you can do so by visiting the /admin/feature_flags path and enabling the telemetry_disabled feature flag. You can find more information about this here:

  • You can now pass initial values for form fields by adding query parameters to the form's URL: ![/release-notes-assets/image_(2) 1.png](/release-notes-assets/image_(2) 1.png)

  • The storyboard UI has been refreshed: 

  • When you rename an action, you will be prompted to update references to that action in downstream actions: 

  • Zooming and scrolling are now smoother and easier:

  • Webhook actions now support a Content-Encoding: gzip header. Encoded requests will be decoded and stored in the event body just like a normal request.

  • An API for reading, creating, updating and deleting annotations has been added:

Image digests:

tines/tines-app: sha256:24dd64ef6644379047de9478249fb3cd518186192396354ea3b5b64fd6ef0519
tines/tines-nginx: sha256:25e35413e303b21de90efaa04fd7f0b2d382f62bcca8cc957e20307c0e42f40f

June 14, 2021 - 4.3.0 

  • Self-hosted notes


June **30, 2021 - Updated to 4.3.6

-** Added the ability to opt-in to TLS 1.1 support for HTTP request actions.

Image digests:

tines/tines-app: sha256:7abbd0f9de4dc318fb33dec64d8e2accfad143b79b82deac49c22699b76b001a
tines/tines-nginx: sha256:25e35413e303b21de90efaa04fd7f0b2d382f62bcca8cc957e20307c0e42f40f

June **23, 2021 - Updated to 4.3.5

-** Added prepare-database command which idempotently handles database creation, schema creation, running database migrations, and seeding of initial data.

Image digests: tines/tines-app: sha256:4df18e1b0df0f3f28fef955b84a81a8d9d9e12cdc04796f4404677910a3aded9 tines/tines-nginx: sha256:25e35413e303b21de90efaa04fd7f0b2d382f62bcca8cc957e20307c0e42f40f


June **21, 2021 - Updated to 4.3.4

-** Fixed the app failing to start when the Postgres username does not match the Postgres database name.

Image digests: tines/tines-app: sha256:8c6aadab9d381dd799dc8e5ee113b3533f40d1ec2653e88f6cfef57732846910 tines/tines-nginx: sha256:25e35413e303b21de90efaa04fd7f0b2d382f62bcca8cc957e20307c0e42f40f


June **18, 2021 - Updated to 4.3.3

-** The command to create and seed the database can now run idempotently by running bundle exec rake db:prepare db:seed.

Image digests: tines/tines-app: sha256:c7dca8f6b75bc26d31407b02c1dbe4c7d6796efc1f62d46546f8447062377002 tines/tines-nginx: sha256:25e35413e303b21de90efaa04fd7f0b2d382f62bcca8cc957e20307c0e42f40f


June **18, 2021 - Updated to 4.3.2

-** Fixed an issue where stories could not be viewed if templates could not be loaded.

Image digests: tines/tines-app: sha256:b9ad5c41f960afd0ff337664e335ae81a6efec5069e205475511519bcd9154a0 tines/tines-nginx: sha256:25e35413e303b21de90efaa04fd7f0b2d382f62bcca8cc957e20307c0e42f40f


June **18, 2021 - Updated to 4.3.1

-** Fixed an issue where the app would crash on load in some AWS ECS environments.

Image digests: tines/tines-app: sha256:1e728c25beec99bc6a5979e9960f5627a669ca6f58ba63054f590f668af4d356 tines/tines-nginx: sha256:25e35413e303b21de90efaa04fd7f0b2d382f62bcca8cc957e20307c0e42f40f

  • Annotations can now contain Markdown. 

  • Folders can now have a custom icon and color.

  • New loading states on the story page.

  • You can now pass query parameters to the form in the URL bar. Support for multiple options in the options field will be added in following releases.

Image digests:

tines/tines-app: sha256:e1ce9808317bc06ec14a9a447476091106a1f2b83e329202600bac44d80ea9fb
tines/tines-nginx: sha256:25e35413e303b21de90efaa04fd7f0b2d382f62bcca8cc957e20307c0e42f40f

May 31, 2021 - 4.2.0 

  • Action events list updates in real-time. You no longer have to click Update so see recent events after you run an action 

  • New loading states 

Toasts redesign

– New floating toasts design

– New inline toast design

– Undo/Redo directly from a toast

Image digests:

tines/tines-app: sha256:873b3fb7d65326dfddb715813b3112dc29902d42fedc4a47d2932e9c8a39e40e
tines/tines-nginx: sha256:25e35413e303b21de90efaa04fd7f0b2d382f62bcca8cc957e20307c0e42f40f

May 17, 2021 - 4.1.0 

  • All modals have been redesigned: 

Image digests:

tines/tines-app: sha256:542b043a54bc006044800f80d526b15ae2b9a8bb4f2da82b9ff427e8a44c64aa
tines/tines-nginx: sha256:25e35413e303b21de90efaa04fd7f0b2d382f62bcca8cc957e20307c0e42f40f

May 4, 2021 - 4.0.0 


  • Annotations can now be added to a story: 

  • Autocomplete now suggests all actions upstream of the selected action, without the need for them to have emitted any events: 

  • When you add an email action to the story, its options will now default to your email address: 

  • When renaming a resource or credential, actions that reference the resource/credential will automatically be updated to reference the new name.

  • HTTP Request actions now default to a new /example-echo endpoint on your Tines tenant. When the action sends a request to this endpoint, the response will show what data the request contained.

  • Added API endpoints for:

Image digests:

tines/tines-app: sha256:a952afdbe3c9b0efec879ac26c7687aef6505755a537fd017b8e0ea8c9fb61fb
tines/tines-nginx: sha256:25e35413e303b21de90efaa04fd7f0b2d382f62bcca8cc957e20307c0e42f40f

April 19, 2021 - BC2444E, 3.3.0 


June 2, 2021 - Updated to 3.3.3

Image digests:

tines/tines-nginx: sha256:25e35413e303b21de90efaa04fd7f0b2d382f62bcca8cc957e20307c0e42f40f
  • User Credentials and Resources can now be made accessible to the entire tenant, not just the current team. This works identically to global/team access on Send to Story. 

  • The new Recent page shows the stories you visited most recently 

  • When renaming a story, actions that reference the story will automatically be updated to reference the new name

  • The app now updates the event list when you select the Events tab for an action

  • We've added an unzip Liquid filter

  • Updated to the latest stable nginx base image

Image digests:

tines/tines-app: sha256:89acb720306ff3687d02b558b46bc033c08a17335a532e54fd88802cabcf0460
tines/tines-nginx: sha256:25e35413e303b21de90efaa04fd7f0b2d382f62bcca8cc957e20307c0e42f40f

📈 New Action Templates

  • Google Name: Set Inbox Watch in Gmail
    Description: Creates a seven day watch period for a Pub/Sub topic that is receiving notifications from Gmail related to new events. To refresh the subscription, schedule this action to run daily.
    Product: Gmail

  • Google Cloud

    Name: Query Dataset in GCP BigQuery
    Description: Runs a query against a dataset in GCP BigQuery
    Product: BigQuery

    Name: List Datasets in GCP BigQuery
    Description: Lists datasets available in GCP BigQuery
    Product: BigQuery

    Name: Get Jobs in GCP BigQuery
    Description: Gets jobs present in GCP BigQuery
    Product: BigQuery

    Name: Get Job Results in GCP BigQuery
    Description: Gets job results in GCP BigQuery
    Product: BigQuery

    Name: Get Query Results by JobID in GCP BigQuery
    Description: Gets query results by "jobID" in GCP BigQuery
    Product: BigQuery

    Name: Get Tables in GCP BigQuery
    Description: Gets tables present for a dataset in GCP BigQuery
    Product: BigQuery

    Name: Get Query Results by JobID in GCP BigQuery
    Description: Gets query results by jobId in GCP BigQuery
    Product: BigQuery

  • HackerOne

    Name: Change State of Report in HackerOne
    Description: Changes the state of a report in HackerOne
    Product: HackerOne

    Name: Set Report Ineligible in HackerOne
    Description: Sets a report as ineligible in HackerOne
    Product: HackerOne

    Name: Assign Report in HackerOne
    Description: Assign Report in HackerOne
    Product: HackerOne

    Name: Set Issue Reference ID in HackerOne
    Description: Sets an issue reference ID, like an external case management system ticket number, in HackerOne
    Product: HackerOne

    Name: Add Summary to Report in HackerOne
    Description: Adds a summary to a report in HackerOne
    Product: HackerOne

    Name: Redact Report in HackerOne
    Description: Redacts a certain string within a report in HackerOne
    Product: HackerOne

    Name: Award Bounty in HackerOne
    Description: Awards a bounty to a report in HackerOne
    Product: HackerOne

    Name: Request Retest in HackerOne
    Description: Requests a retest of a report in HackerOne
    Product: HackerOne

    Name: Mark Ineligible for Bounty in HackerOne
    Description: Mark Ineligible for Bounty in HackerOne
    Product: HackerOne

    Name: Update Severity of Report in HackerOne
    Description: Updates the severity of a report in HackerOne
    Product: HackerOne

    Name: Update Title of Report in HackerOne
    Description: Updates the title of a report in HackerOne
    Product: HackerOne

April 6, 2021 - 8635E2A, 3.2.0 

Image digests:

tines/tines-app: sha256:1a15501b71f48e50685bce42425a45aa12612e3eac2eae5756628a9221448e0a
tines/tines-nginx: sha256:82e8ceb3df86b1b335c621cea44281b31a618fcf1b9ee3a64e265b3cde7dbaa9

March 22, 2021 - E21B345, 3.1.0 


  • You can now press ⌘+Z (Mac) or ctrl+Z (Windows) to undo changes on the diagram. ⌘+shift+Z (Mac) or ctrl+shift+Z (Windows) will redo previously undone changes.

  • The API now supports creating a story and updating story attributes such as name and the retention period for events.

  • The conditions option for IMAP actions has been removed in favour of using simpler Trigger actions.

  • option+drag (Mac) or alt+drag (Windows) can once again be used to clone an action or group of selected actions on the diagram.

  • Webhook actions now log more information if they receive requests with an incorrect secret or HTTP request verb.

Image digests:

tines/tines-app: sha256:eb11a16e2b0696ec263ee7824749dadb5d51794a315fd0192c924da186c90fc3
tines/tines-nginx: sha256:82e8ceb3df86b1b335c621cea44281b31a618fcf1b9ee3a64e265b3cde7dbaa9

📈 New Action Templates

  • GreyNoise

    Name: Lookup IP in GreyNoise Community
    Description: Lookup an IP using the unauthenticated GreyNoise Community API
    Product: GreyNoise

  • Area 1 Security

    Name: Get Mail Traces by ID in Area 1
    Description: Gets mail traces by ID in Area 1
    Product: Area 1

    Name: Search Detections in Area 1
    Description: Searches detections in Area 1 for specific values
    Product: Area 1

    Name: Get Alerts in Area 1
    Description: Gets all alerts over a time period in Area 1
    Product: Area 1

    Name: Get Email from Alert in Area 1
    Description: Gets the raw email file which triggered an alert in Area 1
    Product: Area 1

    Name: Get Indicators in Area 1
    Description: Gets indicators seen in Area 1
    Product: Area 1

  • Palo Alto

    Name: Get File Analysis Verdict to Palo Alto WildFire
    Description: Retrieves the analysis verdict of a file scanned by Palo Alto WildFire
    Product: WildFire

    Name: Submit Link to Palo Alto WildFire
    Description: Submits a link to Palo Alto WildFire for analysis
    Product: WildFire

  • Palantir

    Name: Receive PhishCatch Alert
    Description: An endpoint for receiving PhishCatch reports from users.
    Product: PhishCatch

  • Sublime Security

    Name: Analyze Message with Rules in Sublime Security
    Description: Run a raw email message through detection rules in Sublime Security
    Product: Sublime Security

  • Pulsedive

    Name: Get Indicator Info by Value in Pulsedive
    Description: Get Indicator Info by Value in Pulsedive
    Product: Pulsedive

    Name: Get Indicator Info by ID in Pulsedive
    Description: Get Indicator Info by ID in Pulsedive
    Product: Pulsedive

    Name: Scan an Indicator in Pulsedive
    Description: Scan an Indicator in Pulsedive
    Product: Pulsedive

    Name: Get an Indicator Scan in Pulsedive
    Description: Get an Indicator Scan in Pulsedive
    Product: Pulsedive

    Name: Get Threat Info by ID in Pulsedive
    Description: Get Threat Info by ID in Pulsedive
    Product: Pulsedive

    Name: Get Threat Info by Name in Pulsedive
    Description: Get Threat Info by Name in Pulsedive
    Product: Pulsedive

    Name: Get Threat Info by Name with Split Risk in Pulsedive
    Description: Get Threat Info by Name with Split Risk in Pulsedive
    Product: Pulsedive

    Name: Perform a Search in Pulsedive
    Description: Perform a Search in Pulsedive
    Product: Pulsedive

    Name: Get a Feed by Name in Pulsedive
    Description: Get a Feed by Name in Pulsedive
    Product: Pulsedive

March 8, 2021 - 57e9782, 3.0.0 


This is the first 3.x release of Tines - upgrades to this version are only possible from a 2.x release. We recommend self-hosting customers upgrade to 2.3.4 before upgrading to 3.0.0 to ensure that the upgrade process is as smooth as possible


**March 9, 2021 - Updated to 3.0.1

-** Fixed an issue where all agents would be moved to the same diagram position during the upgrade.

Image digests:

tines/tines-app: sha256:313480685708b506ea67c5a3728c84d9494d104d9c34ccfa82786626a6f77e42
tines/tines-nginx: sha256:82e8ceb3df86b1b335c621cea44281b31a618fcf1b9ee3a64e265b3cde7dbaa9
  • You can now upload a file as a global resource value. The contents of the file will be base64-encoded when saved.

  • Agents have been renamed to Actions.

  • Email actions can now be run manually and scheduled.

  • Webhook actions now handle uncommon content types more correctly.

  • SSO configuration can now be updated in the Tines UI by admin users.

  • A Send-to-Story action can now send a string payload.

  • Autocomplete now completes paths inside global resource values.

  • HTTP Request action headers can now be set by using as_object

Image digests:

tines/tines-app: sha256:2ca87bba01e486c255b9f8b2748338c5f8367e96562eea23dafe0746e43091e3
tines/tines-nginx: sha256:82e8ceb3df86b1b335c621cea44281b31a618fcf1b9ee3a64e265b3cde7dbaa9

📈 New Action Templates

  • Google Drive

    Name: Upload File to Google Drive
    Description: Upload a File to Google Drive
    Product: Drive

    Name: Get Drives in Google Drive
    Description: Get Drives in Google Drive
    Product: Drive

    Name: Get Files in Google Drive
    Description: Get Files in Google Drive
    Product: Drive

    Name: Get Files by ID With All Metadata in Google Drive
    Description: Get a file by ID in Google Drive with all associated metadata fields for the file
    Product: Drive

    Name: Get Files by ID with Specific Metadata in Google Drive
    Description: Get a file by ID in Google Drive with specific metadata fields for the file.
    Product: Drive

    Name: Set Open File Permissions in Google Drive
    Description: Set a Google Drive's file permissions as accessible by anyone.
    Product: Drive

    Name: Set File Properties in Google Drive
    Description: Update a Google Drive file with new properties.
    Product: Drive

    Name: Remove Open File Permissions in Google Drive
    Description: Update a Google Drive file's permissions by removing open access to the file.
    Product: Drive

    Name: Get File Permissions in Google Drive
    Description: Get a file's permissions in Google Drive
    Product: Drive

  • Duo Security

    Name: Get Alert Verification Push Status in Duo Security
    Description: Get an asynchronous alert verification push status in Duo Security. Used after sending an asynchronous alert prompt to a device.
    Vendor: Duo Security
    Product: Duo Security

    Name: Send Alert Verification Push Async in Duo Security
    Description: Send an asynchronous alert verification push in Duo Security. To get the result, utilize the push status endpoint.
    Product: Duo Security

    Name: Get U2F Tokens in Duo Security
    Description: Get U2F tokens in Duo Security.
    Product: Duo Security

    Name: Get Hardware Tokens in Duo Security
    Description: Get hardware tokens in Duo Security.
    Product: Duo Security

    Name: Get Phones in Duo Security
    Description: Get phones in Duo Security.
    Product: Duo Security

    Name: Get Authentication Logs in Duo Security
    Description: Get authentication logs in Duo Security.
    Product: Duo Security

    Name: Get Admin Logs in Duo Security
    Description: Get admin logs in Duo Security.
    Product: Duo Security

    Name: Get Groups in Duo Security
    Description: Get groups in Duo Security.
    Product: Duo Security

    Name: Get Users in Duo Security
    Description: Get users in Duo Security.
    Product: Duo Security

    Name: Send Alert Verification Push in Duo Security
    Description: Send a synchronous alert verification push to a device in Duo Security.
    Product: Duo Security

    Name: Get Endpoints in Duo Security
    Description: Get endpoints in Duo Security.
    Product: Duo Security

    Name: Send API Request to Duo Security
    Description: Send an signed HMAC-SHA1 request to Duo Security's API. Should be used with Send to Story agent template examples for best results.
    Product: Duo Security

  • AWS Name: Describe an AWS Organization
    Description: Describes an AWS organization entity.
    Product: AWS

February 22, 2021 - 34d11da, 2.3.0 


**March 9, 2021 - Updated to 2.3.4

-** Fixed an issue where all agents would be moved to the same diagram position during the upgrade.

Image digests:

tines/tines-app: sha256:cd89ea68b25ca098f42b0e8572b189cfc621250154509a36f82623318b684918
tines/tines-nginx: sha256:82e8ceb3df86b1b335c621cea44281b31a618fcf1b9ee3a64e265b3cde7dbaa9

**March 2, 2021 - Updated to 2.3.3

-** Fixed an issue where requests to the nginx domain fail.

  • Fixed emails failing to send when the app is configured to use AWS SES for SMTP.

Image digests: tines/tines-app: sha256:597ac14fd0441fcaec0509151cdec44b60dfd1cab5ff1def80a88b01c8d9e20a tines/tines-nginx: sha256:82e8ceb3df86b1b335c621cea44281b31a618fcf1b9ee3a64e265b3cde7dbaa9

  • The default user agent for HTTP requests has been changed from Tines - Advanced Security Automation. to Tines (Advanced Security Automation;, which should prevent requests being blocked by some services.

  • Viewing the diagram of a story which is emitting a lot of events will no longer cause jobs and webhooks to take longer to process.

  • Added passwordless sign-in & Google sign-in.

  • Ctrl+A (Cmd+A on macOS) now selects all agents in the diagram.

  • AWS Credentials rework. AWS keys and roles now more clearly separate configuration options. Region and service for request signing will now be inferred from the HTTP request.

Image digests:

tines/tines-app: sha256:e24d7a5ae225d2375894ad013b7f6847c661f1aff98ac24046963bfcef6ebe72
tines/tines-nginx: sha256:82e8ceb3df86b1b335c621cea44281b31a618fcf1b9ee3a64e265b3cde7dbaa9

📈 New Action Templates

  • Elasticsearch Name: Create Document in Elasticsearch
    Description: Create a new document in an Elasticsearch index.
    Product: Elasticsearch

  • LimaCharlie

    Name: Isolate Sensor in LimaCharlie
    Description: Isolate a sensor in LimaCharlie, limiting network connectivity for an endpoint.
    Product: LimaCharlie

    Name: Remove Sensor from Isolation in LimaCharlie
    Description: Remove a sensor from an isolated state in LimaCharlie, restoring network connectivity.
    Product: LimaCharlie

    Name: Delete Output in LimaCharlie
    Description: Delete an output in LimaCharlie.
    Product: LimaCharlie

February 8, 2021 - 52e74a4, 2.2.0 

  • Event transformation agents can now be run manually and scheduled.

  • Added sha1 Liquid filter.

  • Failed credential refresh jobs now link to their corresponding credential in the UI.

  • New styling for administrative emails.

Image digests:

tines/tines-app: sha256:00ecc72f0d199a5095ea89cff00612d6995d8c59ff4dda7729158b6717f414ec
tines/tines-nginx: sha256:82e8ceb3df86b1b335c621cea44281b31a618fcf1b9ee3a64e265b3cde7dbaa9

Upgrading from all versions prior to 2.2.0

When upgrading to version 2.2.0 or higher, the values of the following environment variables will be copied into the database. After the upgrade they can be removed from your .env file along with any associated comments, as they no longer affect the app in any way:


The value of the DOMAIN variable in your .env file will also be copied to the database, but you can only remove this variable if you create another variable named STATIC_DOMAIN with the same value. The STATIC_DOMAIN variable will be required in a future update.

To update the tenant name or domain in the database on version 2.2.0 or higher, you can use the functions included in the []( script in the ZIP file:


To see the values stored in the database for the tenant on version 2.2.0 or higher, you can use the tines-tenant-info function:


The following environment variables are no longer used and can be deleted from your .env file:


January 26, 2021 - b3cfc13, 2.1.1 

  • remove and remove_first liquid filters now also work on arrays when terminated with as_object{{ .array | remove: '<element>' | as_object }}

  • The "auto layout" feature has been removed from the diagram based on repeated issues with its behavior.

  • New variable style look up for Send to Story agents, allowing you to disambiguate between stories with the same name in different teamsstory: {{ .STORY.team_name.story_name }}

  • For self-hosting customers:

Image digests:

tines/tines-app: sha256:5aae9cceca2df9064a7f9220c44375cd04b691d45e6bafe58bd5c6c03d19a90c
tines/tines-nginx: sha256:5c77243bf57e385f6351b6aae4a6e5a5b6d123b2660eb67b8471e166aae942ec

Upgrading from all versions prior to January 26, 2021 - b3cfc13, 2.1.1

When upgrading to version 2.1.0 or higher, the values of the following environment variables will be copied into the database. After the upgrade they can be removed from your .env file along with any associated comments, as they no longer affect the app in any way:



To change the agent, user, or daily event limit on version 2.1.0 or higher, you can use the tines-update-tenant-limits shell function included in the []( script in the ZIP file:


The following environment variables are also no longer used and can be deleted from your .env file:


January 11, 2021 - ec98687, 2.0.0 

  • Teams

    • We built Teams to allow you to invite as many other users as you want to the Tines platform, and to allow you to keep your sensitive and critical stories separate to and private from other users.

    • Create ‘Teams' to manage your stories, credentials and resources within Tines. When you log in to Tines you'll see a new menu on the left hand side showing all teams you are a member of. You'll be able to create a new team, add and delete members, and you'll have the ability to create folders within Teams to manage your stories more cleanly.

    • You'll also see 'Drafts' section in the menu. This is an area for your personal stories that are private to you. Think of it as your own mini-team. The credentials and Resources that are stored there are private to you and not shared with any teams you are a member of.

    • You can have as many teams as you like, and as many members as you like within a team.

  • User credentials can now be edited after they are created. You can't see the existing value for sensitive fields like passwords or secret keys, but you can still set new values for them.

  • Files sent through HTTP Request Agents no longer need to have the key file This means you can send multiple files through a single agent.

  • If you cancel the tutorial while it's in progress, it will no longer restart the next time you open a story. You can select Start tutorial from your user menu if you want to restart it.

For self-hosting customers: As mentioned in the notes for 1.34.0, we've now made a couple of changes to our release process:

  • New minor versions will be released every 2 weeks, instead of every week.

  • Upgrades of major versions will only be supported between consecutive major versions, i.e. upgrading from 2.x to 3.x will be supported, but not from 1.x to 3.x or 2.x to 4.x. Upgrades of minor versions will all be supported.

We recommend self-hosting customers upgrade to 1.34.0 before upgrading to 2.0.0, but upgrades will be supported from older 1.x versions as well.

Image digests:

tines/tines-app: sha256:6c92925f00289430f9a5f70ee3fdea05514b9a8f72a5872f096dbebde8d5dc95
tines/tines-nginx: sha256:5c77243bf57e385f6351b6aae4a6e5a5b6d123b2660eb67b8471e166aae942ec

Upgrading from all versions prior to January 11, 2021 - ec98687, 2.0.0

After upgrading to version 2.0 or higher, all of the following environment variables can be removed from your .env file along with any associated comments, as they no longer affect the app in any way:










January 5, 2021 - 666d275, 1.34.0 


**January 21, 2021 - Updated to 1.34.2

-** Fixed an issue which caused a migration to fail in some scenarios

Image digests: tines/tines-app: sha256:9597edda8dd646add24e0f2018173047bf43fed62857bbd025c635285da3a17b tines/tines-nginx: sha256:5c77243bf57e385f6351b6aae4a6e5a5b6d123b2660eb67b8471e166aae942ec

January 21, 2021 - Updated to 1.34.2

For self-hosting customers: This will be the last Tines release before we release version 2.0.0 next Monday. From that point there will be a couple of changes to our release process:

  • New minor versions will be released every 2 weeks, instead of every week.

  • Upgrades of major versions will only be supported between consecutive major versions, i.e. upgrading from 2.x to 3.x will be supported, but not from 1.x to 3.x or 2.x to 4.x. Upgrades of minor versions will all be supported.

We recommend self-hosting customers upgrade to 1.34.0 before upgrading to 2.0.0, but upgrades will be supported from older 1.x versions as well.

  • Disabled agents can now be copied & pasted.

  • Added a date field to Webhook agent headers, containing the date & time at which the event was received. 

  • Agent templates can now be added by all users.

  • Bug fixes:

    • When event limit is exceeded & a form is submitted from the form builder, an event limit exceeded modal is now showed to the user.

Image digests:

tines/tines-app: sha256:f8050e0ebead00480fef3b85ea27677894643a3c8d2b235d60d869056b940940
tines/tines-nginx: sha256:5c77243bf57e385f6351b6aae4a6e5a5b6d123b2660eb67b8471e166aae942ec

December 21, 2020 - ec98687, 1.33.0 

  • Fixed a visual bug with arrow alignment on the diagram when renaming agents.

  • Redesigned user profile page to match the new style across the rest of the app.

  • Private agent templates can now be managed by non-admin users as well as admins.

Image digests:

tines/tines-app: sha256:60038f7dc923314b0a00332a56c466c29ed3c8019f1987a47c49186bedaa517b
tines/tines-nginx: sha256:5c77243bf57e385f6351b6aae4a6e5a5b6d123b2660eb67b8471e166aae942ec

December 14, 2020 - 6d0dc99, 1.32.0 

  • Failures in Liquid expressions now log at the Info level instead of the Error level, meaning agents where this happens won't show a red dot.

Image digests:

tines/tines-app: sha256:ff83beed6fd519bdba073773179924c56a2c6855a5d027c6aad664007be9ebc9
tines/tines-nginx: sha256:5c77243bf57e385f6351b6aae4a6e5a5b6d123b2660eb67b8471e166aae942ec

December 7, 2020 - 6d0dc99, 1.31.1 

  • When an agent's options contain Liquid code with syntax errors, the error message will now show the specific piece of code which is causing the error.

  • Added new pluralize Liquid filter. You can find more information on this in our documentation.

  • You can now check the documentation for agent options while editing an agent from the story diagram: 

Image digests:

tines/tines-app: sha256:ec9e798ccaaca5b49881d37b0a9037cc35001155e231a8310c950db6c41cee40
tines/tines-nginx: sha256:5c77243bf57e385f6351b6aae4a6e5a5b6d123b2660eb67b8471e166aae942ec

November 30, 2020 - 4ee0530, 1.30.1 

  • Selected agents can now be deleted by pressing the Delete key, as well as the Backspace key.

  • When creating/editing the JWT user credential, the payload field now has a code editor & pre-populated key names for ease of use.

Image digests:

tines/tines-app: sha256:706f94b1353ffdfbf0d9aaf32c452def55a195530aa39e57ac664da7ec7f4351
tines/tines-nginx: sha256:40342854de7594871e53617d0d217d69419954e0a54a04dc725242e625340554

November 23, 2020 - 1b6b372, 1.29.0 

  • Autocomplete now works with keys that have periods or spaces in them.

  • New design for Resources, Credentials & Stories pages.

  • New HTTP Request agent user credential UI. The options for the HTTP request agent are now directly specified when creating the credential (previously an agent on a story had to be created and linked in the user credential screen). The options can be run to obtain a sample response and extract the location of token from it.

  • The app no longer plays any sound effects.

Image digests:

tines/tines-app: sha256:4abf2bfa9392c69595aa67aa75bd1c2e5a7e6babbbfb9793c20ef5c388661c40
tines/tines-nginx: sha256:40342854de7594871e53617d0d217d69419954e0a54a04dc725242e625340554

November 16, 2020 - 722a41b, 1.28.0 

  • Holding down the shift key while pressing the enter key in the Agent options builder will insert a new line.

  • When using an AWS user credential with a HTTP Request Agent, you can now choose to assume a role before making the HTTP request. See our docs for more information. 

Image digests:

tines/tines-app: sha256:e36133d8bb1919c26d762a17a062ab33bb07277c63e9ba0e2009027ee8bf9ee3
tines/tines-nginx: sha256:40342854de7594871e53617d0d217d69419954e0a54a04dc725242e625340554

November 9, 2020 - d2ad762, 1.27.0 

  • When deleting a story, you no longer are asked if you want to move the agents to a default story. Instead you have the option to export the story to JSON before deleting it. 

  • Bug Fixes

    • Firefox users and Chrome users with the Adblock Plus extension installed will no longer be navigated to an incorrect /blank URL when viewing a story.

    • Fixed incorrectly serializing some strings as numbers in requests from HTTP Request Agents.

Image digests:

tines/tines-app: sha256:fed321478a690699be17b3ddc79a6e4c0a900383fae0463caec9734db8da1975
tines/tines-nginx: sha256:40342854de7594871e53617d0d217d69419954e0a54a04dc725242e625340554

November 2, 2020 - e056641, 1.26.1 

  • The append API action for Global Resources now supports appending a text value to a text Global Resource.

  • HTTP Request Agents no longer sort parameters, as required by some APIs (e.g. Microsoft Sharepoint).

  • Trigger Agents now include information on whether and how each individual rule matched in the Events that they output. 

Image digests:

tines/tines-app: sha256:885c159746f440c9a4b624d218e268cd4115ccafa0faf72b11a2a9c8dadd7a75
tines/tines-nginx: sha256:87afa700e3f1228305e1866b3ca88e23c373254d11294fb0a6e9beda2b2de39d

October 27, 2020 - 939970d, 1.25.0 

  • Improved performance when processing events with large payloads.

  • Added ability to view and clear jobs per story. 

Image digests:

tines/tines-app: sha256:9a0a568da676394146d176148fe8f2914e33e361d81ffb3318b420a9da6cca7b
tines/tines-nginx: sha256:87afa700e3f1228305e1866b3ca88e23c373254d11294fb0a6e9beda2b2de39d

October 19, 2020 - 1d96e62, 1.24.0 

  • New syntax is now supported for Credential Widgets and Global Resource Widgets. This new syntax allows Liquid filters to be applied to the values of credentials and global resources much more easily. Examples of the new syntax can be found in our documentation here.

  • Admin users will now receive an email when the daily event limit has been reached.

  • Paths now stay expanded as you navigate through events in the events modal, making it easier to compare event contents and find the event you want: 

  • You can now re-emit an event directly from the events modal: 

Image digests:

tines/tines-app: sha256:3cb31a231a5192936c81de84f94ca7b5f3fad076586f79818aeeec572d0c2ded
tines/tines-nginx: sha256:87afa700e3f1228305e1866b3ca88e23c373254d11294fb0a6e9beda2b2de39d

October 12, 2020 - 1d96e62, 1.23.1 

  • The expected_update_period_in_days agent option no longer has any effect. Agent Monitoring provides a way to be notified when no events are emitted by an agent in a given time period, so this option was not needed any more.

  • Added agent & event limit modals which appear on the story when these limits are exceeded. The event limit modal shows agents with high numbers of emitted events while the agent limit modal shows agents which have not recently emitted or received events.

Image digests:

tines/tines-app: sha256:d5c0e6e55338c424eddd77009229bee6ebda176db5a7a7c45cf03691c9acdc63
tines/tines-nginx: sha256:87afa700e3f1228305e1866b3ca88e23c373254d11294fb0a6e9beda2b2de39d

October 2, 2020 - 2d0bc22, 1.22.2 

  • Event limit indicator pill & badge. When the daily event limit is reached a badge will appear on the cog menu and the limit pill will turn red.

  • Added a total agent count out of the agent limit pill above the agent templates. When the limit is exceeded the pill turns red.

  • New send_payload_as_body option for Send-to-Story agents, that wraps the payload of the Send-to-Story agent in a body key on its receipt by the target Webhook agent. This lines up the behaviors of Send-to-Story and receiving real webhooks at a Webhook agent that has include_headers enabled. All existing Send-to-Story agents have been initialized with send_payload_as_body: false . If omitted, send_payload_as_body will default to true.

Image digests:

tines/tines-app: sha256:5baba3c2b28a0516e9771f8eb54cb44131627c5a50d776785327cbd201c6f43c
tines/tines-nginx: sha256:87afa700e3f1228305e1866b3ca88e23c373254d11294fb0a6e9beda2b2de39d

Upgrading from all versions prior to October 2, 2020 - 2d0bc22, 1.22.2

If you are using the docker-compose.yml file that we provide, you will need to make sure that you are using Docker Engine version 17.04.0 or higher. You can run docker version to check which version you are on.

If you are using the docker-compose.yml file that we provide and you also have a docker-compose.override.yml file, you will need to change the first line of your docker-compose.override.yml file to read version: "2.2".

(These changes are necessary as, to take advantage of some newer docker-compose features, we have changed the value of the version field in the docker-compose.yml file that we provide from 2 to 2.2.)

September 25, 2020 - e8ec61d, 1.21.1 

  • New "Success Message" option in Forms, allowing users to specify the message visible in the post-submission screen. This message can also include links.

  • Public Forms can now be displayed in iframe elements in other websites.

  • Bug Fixes:

    • Agent schedules will now be correctly reactivated when re-enabling a disabled agent

    • Fixed issues with switching tabs while selecting multiple agents

    • Fixed an issue where deleting a large volume of events could time out

Image digests:

tines/tines-app: sha256:7f6f59260a00d09c053074ec27ae61ca4d3aba7d32fb9e7c68ca5d7931dedaa4
tines/tines-nginx: sha256:87afa700e3f1228305e1866b3ca88e23c373254d11294fb0a6e9beda2b2de39d

September 18, 2020 - 57bfb7e, 1.20.0 

  • New default behaviour for the include_headers & log_error_on_status options, and message_only agent payloads:

    • When include_headers is omitted from a Webhook agent's options, the agent will now default to including the header data under the headers key, and body data will be included under a body key. Existing agents that do not have a value set for include_headers have had the false value set, which will preserve their existing behaviour.

    • When log_error_on_status is omitted from a HTTP Request agent's options, the agent will now default to logging errors for status codes in the range 400-599, and status code 0 which represents a network failure. Existing agents that do not have a value set for log_error_on_status have had the [] value set, which will preserve their existing behaviour.

    • The fields in the payloads of Event Transformation agents in message_only mode are now nested in the payload field of the agent's options, instead of being set at the top level of the options. Existing agents have been updated to move these fields under the payload field. The emitted event is unchanged as the payload field is stripped.

  • The async option for Webhook agents no longer has any effect - due to performance improvements in other areas the async mode is no longer necessary

  • Added html_encode and html_decode custom Liquid filters

  • Bug Fixes:

    • Fix UTF-8 encoding in eml_parse filter

    • Fix dismissing onboarding on legacy pages

    • Fix errors when loading the dead jobs page

    • Saving a global resource with invalid Liquid syntax is no longer allowed

Docker image digests for self-hosting customers:

tines/tines-app: sha256:227b7b9a260dd35dee249d332f0372039de1ba66a3dd462c969ab5c6d055d790
tines/tines-nginx: sha256:87afa700e3f1228305e1866b3ca88e23c373254d11294fb0a6e9beda2b2de39d

September 11, 2020 - 1db6ebaa, 1.19.0 

  • Added include_headers option to Webhook agents to allow HTTP headers in events and headers are now included by default in form submission events.

  • When viewing one of an agent's events, you can now navigate to the previous or next event using the on-screen arrows or using your keyboard.

  • URLs in form descriptions and form field descriptions are now clickable, and the first field automatically has focus when a form is opened.

  • Bug Fixes:

    • Fixed story import failing if a sub-story was skipped.

    • Fixed incorrect lists of which agents a credential or global resource was used in.

September 4, 2020 - c836859, 1.18.0 

  • Added retry_on_status and log_error_on_status options to HTTP Request agents. These can be used to specify which status codes should cause an agent to retry a request or log an error.

  • The agent properties panel has been rearranged to make it easier to edit agent options.

  • Forms documentation added.

  • Bug Fixes:

    • Fixed HTTP Request agent failing if the URL had leading or trailing whitespace

    • Fixed opening a story in a new tab by clicking while holding down Ctrl/Cmd

    • Fixed the zoom level changing when switching browser tabs while viewing a story

    • Show longer autocomplete suggestions in "Plain Code" agent options editor

August 28, 2020 - bf3f756, 1.17.0 

  • Alongside the "not in" Trigger Agent rule type, we now additionally support "in". See our documentation for full details.

  • The main Stories (index) page now lists your Stories by last 'Updated' (as the default) rather than by alphabetical 'Name' order, getting you back to where you were, faster.

  • You can now specify custom recipients for a story's monitored agents, alongside the story owner:

  • Retries that happen as a result of a HTTP Request Agent fail_on_status failure or an IMAP Agent connection error will now run over a much shorter period of time. Previously these retries could run for up to 21 days. We will now retry 25 times over approximately 3.5 hours.

  • When the 25 retry attempts for an agent have been exhausted we now record an error in the agent's log. If you have monitoring enabled for the agent, this error message will be emailed to you.

  • Bug Fixes:

    • Eliminated a performance issue where an unterminated liquid filter ({{ …)of significant length could cause an outage.

    • The Trigger Agent "not in" rule type's behavior now works exactly as documented.

    • Fixed an issue with deleting schedules, where a "loading" state would incorrectly linger.

For self-hosting customers:

  • We've simplified the deployment by removing the requirement to run the tines-assets container. This will remove a class of errors that can arise when the tines-assets and tines-app containers aren't upgraded in lockstep. (See the self-hosted upgrade nodes for more.)

Upgrading from all versions prior to August 28, 2020 - bf3f756, 1.17.0

Upgrading to the latest version will remove the requirement to run the tines-assets container.

If you are not using the docker-compose.yml file that we provide (or have customized it), then you will need to make changes to your docker-compose.yml file (or k8s configuration, etc.) to remove all references to the tines-assets container.

If you are running a custom nginx or k8s ingress container, you should alter its configuration to send all traffic to the tines-app container instead of sending requests for /assets/* and /packs/* to the tines-assets container.

See the latest reference docker-compose.yml below.

August 21st, 2020 - cc3ef95, 1.16.3 

  • Forms! Create beautiful, powerful forms for your automation stories. Build interfaces between teams that increase the speed and accuracy at which important work gets done.

  • Bug Fixes:

    • Fix to allow the autocomplete dropdown to expand in width to display longer suggestions.

    • Fix to correctly delete elements of a Global Resource that's an array.

    • Fix small UI issues related to editing schedules.

    • Fix failures to dry-run an EventTransformationAgent in "explode" mode on a path that doesn't exist.

    • Fix layout issues when a Credential or Global Resource has a very long name

For self-hosting customers:

  • For enhanced security, all processes inside our containers now run as a non-root user. (See the self-hosted upgrade nodes for more.)

Upgrading from all versions prior to August 21st, 2020 - 51bb3ad, 1.16.3

If you are not using the docker-compose.yml file that we provide (or have customized it), then you may need to change how the values from the .env file are made available to the docker containers.

This is due to a change to run the software inside all containers as a non-root user to improve the security posture.

The contents of the .env file should be made available to the containers via the docker-compose env_file: .env construct (or a similar k8s feature etc.) instead of mounting it as a volume into the containers (see the latest reference docker-compose.yml below).

If that is not possible, and you need to continue to make the .env file available to the containers by mounting it as a volume, then you will need to make sure that the .env file is globally readable.

August 14th, 2020 - 5ec2eb5, 1.15.0 

  • When a single agent is selected on the story diagram, the page's URL is updated to capture its details. Copying and pasting that URL into another browser tab will then bring you back to that agent.

  • Bug Fixes:

    • Fix page occasionally going blank when interacting with an agent with a schedule.

    • Fix scrollbars appearing and disappearing while editing an agent's options.

August 7th, 2020 - beff597, 1.14.0 

  • Mutual TLS is now supported in HTTP Request Agents using MTLS Credentials

  • Bug Fixes:

    • Fix error messages not being visible when updating OAuth credentials

    • Fix global resources not appearing in search

    • Fix error when using the zip filter

July 31st, 2020 - 21c4433, 1.13.2 

  • Added the option to mark a story as high priority. Events for high priority stories are processed before events for all other stories. To make a story 'high priority' simply select the option in the Story Properties panel:

  • Autocomplete has been improved:

    • You no longer need to add closing tags for it to trigger

    • It now suggests widget types when you type {%

    • Event payload autocomplete now works in widgets

  • Search now returns more relevant results in less time

  • The daily event limit is now based on the number of events created in the current calendar day. Previously it was based on the number created in the last 24 hours.

Bug fixes:

  • Fixed real-time UI updates not happening when a large number of events are queued.

  • Fixed IMAP agent issues for inboxes with multiple folders

  • Fixed agent template groups appearing in unsorted order

July 24th, 2020 - b20c3d3, 1.12.1 

  • Liquid filter for parsing CSV data now automatically detects different delimiters.

  • Improved performance with managing connections between agents on very large stories.

  • Bug fixes:

    • Fix issue with copy/paste

    • Fix issue with downloading a story JSON file

    • Fix issue with navigating to the stories list from a story

For self-hosting customers:

  • If using our standard script, database changes now run prior to restarting the Docker containers, reducing downtime during an upgrade.

July 17th, 2020 - 17ccf1d, 1.11.4 

  • Refreshed navigation bar design.

  • By default, a HTTPRequestAgent will now emit an event with a status value of 0 if it fails due to a TCP connection, DNS resolution or SSL error. When the fail_on_status flag is set, no event will be emitted in these situations and the failed request will be retried.

  • New Liquid filter for parsing and serializing CSV data.

  • Bug fixes:

    • Fix issues with storyboard toolbar layout

    • Fix issue with configuring HTTPRequestAgent basic auth via an array

    • Fix issue with dry running an IMAPAgent that hasn’t run before

    • Fix issue with agent monitoring incorrectly firing for “no events in 0 minutes”

For self-hosting customers:

  • The memory footprint of the redis container has been vastly reduced

Upgrading from all versions prior to July 17th, 2020 - 17ccf1d, 1.11.4

Upgrading to the latest version can potentially take up to an additional 1 hour due to a migration that deletes unused Redis data. This change drastically reduces the Redis memory footprint.

July 13th, 2020 - 3a6de8d, 1.10.1 

  • Bug fixes:

    • Fix issue with extra URL encoding applied to data received by a webhook agent

    • Fix issue with removing agents with monitoring configured

July 10th, 2020 - 90d6e36, 1.10.0 

  • Agents can be copied (Ctrl+C/Cmd+C) and pasted (Ctrl+V/Cmd+V). This works across stories.

  • Holding down Ctrl/Cmd and clicking on multiple agents, or holding down ctrl/cmd and dragging across multiple agents on the storyboard, will select all of those agents together. From there you can move, clone, delete, copy and paste the selected agents as one.

  • Agent’s can now be “monitored”, to notify you via email when they have encountered an error, emitted any events and/or emitted no events for a specified time period.

  • New Liquid filters for generating random numbers, choosing a random element from an array and parsing and serializing CSV data.

  • The name of the current story is now visible in the top left corner of the storyboard at all times.

  • Stories will now load up to 10 times faster.

  • Previously invisible new-line characters are now shown as ↵ in an Agent options and Global Resources

  • Bug fixes:

    • Fix issue with importing very old story JSON files

    • Fix issue with a dry run of an IMAP agent updating that agent’s memory

    • Make our webhook handling more lenient when incorrectly escaped % characters are received

For self-hosting customers:

  • The base Docker image as been updated to address some CVEs

June 26th, 2020 - ba04c40, 1.8.0 

  • Added the ability to send feedback and make feature requests in Tines directly from the app

  • Clicking the New Story button will now create a story immediately. The name and description can be changed when viewing the story.

  • Added the ability to append to a Global Resource through the API when its value is an array

  • Minor updates to the story diagram UI

  • Bug fixes

    • Fixed "invalid_request" error when creating a GSuite OAuth token

    • Fix pagination for the Agent Events API

    • Fix setting the value of a Global Resource to a number through the API

June 19th, 2020 - ee5fc8d, 1.7.1 

  • Improved story import UI to allow replacing, overwriting or merging of existing stories

  • Improved UI for setting agent schedules

  • Bug fixes

    • Fix updating global resources with JSON array and JSON object values through the API

    • Fix importing a story that has Send to Story enabled but doesn't have both an entry and exit agents set

June 12th, 2020 - 5f46972, 1.7.0 

  • Improved agent scheduling to allow multiple, more granular schedules 

  • Body data sent to a webhook without an application/json content type will now show up in the event data under the body key

  • Log messages from IMAP agents are now simpler

  • Nested attachments within EML files are no longer extracted

  • Improved performance of explode agents

  • Documentation fixes

  • Bug fixes:

    • Fixed incorrect permissions errors when updating a story

    • Fixed HTTP Request credentials not resolving on dry runs

    • Fixed browser zoom happening when zooming on a story diagram

    • Fixed occasional browser error when deleting a template

    • Fixed occasional error when viewing in-progress jobs

    • Fixed agents occasionally getting stuck while executing

Note for self-hosting customers: the tines-jobs service has been removed from our docker-compose.yml as it is no longer needed.

June 6th, 2020 - daccc30, 1.6.3 

  • Bug fixes

    • Remove duplication of data in webhook agent events and fix issue with async webhook agents

June 5th, 2020 - aca8e90, 1.6.2 

  • Bug fixes

    • Show correct error message when an action fails because the user is not authorized to do it

    • Fix incorrect label on Exit Agent property

    • Allow previously forbidden parameters (e.g. user_id) in requests to webhook agents

    • Fix signing of agent payload for PUT requests

May 29nd, 2020 - 2b99c44, 1.6.1 

Added support for downloading files

Files with binary content will now automatically be base64 encoded. You can now download (and upload - see March 18th, 2020 - cdf4841) PDFs, ZIPs, Images and more

  "url": "",
  "content_type": "json",
  "method": "get"

Support for sending attachments

You can now send one or multiple attachments using the Email agent in Tines

  "recipients": "",
  "subject": "See Attached",
  "body": "See attached the file I mentioned",
  "attachments": [
      "filename": "{{.download_file.body.filename}}",
      "base64encodedcontents": "{{.download_file.body.base64encodedcontents}}"

New API to get Story Runs for Tines Story

  "url": "https://{% global_resource tines_domain %}/api/v1/stories/{{.story_id}}/story_runs",
  "content_type": "json",
  "method": "get",
  "headers": {
    "x-user-email": "{% global_resource tines_api_email %}",
    "x-user-token": "{% credential tines_user_token %}"
  • Documentation fixes

  • Bug fixes:

    • Fix assigning and unassigning admin privileges to users

    • Fix error when trying to import a story without specifying a file

    • Fix deleting a user that owns a global resource

May 22nd, 2020 - b06b6ea, 1.6.0 

  • Show related events (i.e. the path of the selected event) on story run screen

  • Allow files to be posted or uploaded to a Webhook agent. e.g.:

curl []( -k --form 'file=@email.eml'
  • Allow sorting by more columns when listing stories, events, and agents

  • Allow the "response" field on webhook agents to be an object or array instead of a string

  • Updates to the diagram zoom UI

  • Bug Fixes:

    • Fix scrolling issues when using Microsoft Edge

    • Fix issue receiving data containing null characters

    • Fix issue loading data when one global resource name is a substring of another

    • Fixes to inviting users when SSO or SAML is enabled

    • Fix icons when exporting a story to PNG

  • Performance improvements

Upgrading from all versions prior to May 22nd, 2020 - b06b6ea, 1.6.0

Upgrading to the latest version can potentially take up to an additional 30 minutes due to a database column format change in the events table. This change was necessary to prevent errors with storing events with certain character sequences.

Upgrading to the latest version will remove the tines-jobs container. If you are not using the docker-compose.yml file that we provide (or have customized it), then you will need to make changes to your docker-compose.yml file (or k8s configuration, etc.) to remove all references to the tines-job container. See the latest reference docker-compose.yml below.

April 28th, 2020 - bb7ddd7, 1.5.1 

Minor bug fix related to the base64 encoding of email attachments.

April 27th, 2020 - 0ae8518, 1.5.0 

  • Real-time updates for story runs: 

  • Onboarding for new users: 

April 24th, 2020 - 81f472a, 1.4.3 

  • Bug fix related to use of certain HTML tags in Email agent

  • Remove limit of elements that can be exploded using an explode mode Event Transformation Agent

April 14th, 2020 - af7f2cc, 1.4.2 

Improvements to how large strings from events are rendered.

April 7th, 2020 - c13ff44, 1.4.1 

Bug fix where agent options would crash when long strings were included.

April 6th, 2020 - bb01375, 1.4.0 

Minor big fixes related to reading email attachments in IMAP agent and eml_parse liquid filter.

March 26th, 2020 - ea8b77b, 1.3.4 

Minor bug fixes in JSON editor

March 18th, 2020 - cdf4841, 1.3.0 

Agent Builder

  • Disable agent properties panel max-width:

  • Ground-up redesign of agent options code editor:

    • Syntax highlighting

    • Current line highlighting

    • Code folding

    • Error detection and highlighting

    • Line numbers 

Liquid filters

  • jsonpath liquid filter for complex paths: {{ cbliveresponse | jsonpath: '$.body[?(@.sensor_id==690)].session_id' }}

  • zip liquid filter to allow, for example, zipping and password protecting malicious files before uploading to Jira: {{ .stream_to_zip | zip: 'optional_filename', 'optional_password' }}

Minor improvements

  • Updated API autocomplete style

  • New async option in webhook agents to offload handling to background workers meaning better scalability for noisy webhook sources

Bug fixes

  • Add expiration date and time to story runs

  • Support dry-run in all event transformation modes

  • Change webhook agent URL structure so they are no longer tied to a user

  • Fix bug related to profile updates

  • Fixed bug where eml_parse liquid filter would occasionally emit duplicate attachments

  • Fixed bug where disabled Webhook agents would under certain circumstances continue to emit events

February 21st, 2020 - fa496a8 

  • Redesigned dry-run modal:

    • No longer have to load entire event to dry-run

    • Choose a recent event and either dry-run immediately or load in builder and edit

  • Update URL with permalinks in story runs and individual events

  • {% story_run_link %} and {% story_run_guid %} widgets

  • Add bcc option to Email Agent

  • Fix bug related duplicate credential names

  • Add a limit option with a default of 500 to 'explode mode' Event Transformation agents

  • Add a button to event as json in story run events

  • Events in property panel loaded on-demand

February 4th, 2020 - 9abbdb6 

  • Allow copying of permalink to story run event

  • Show Event In and Out from logs in modal

  • Allow empty body in Webhook agent response

  • Improve logs truncation

  • Hide diagram on initial load for story run event page

  • Save and restore scroll position for story runs

  • Show parsing errors under JSONEditor and disable Editor tab