Release Notes
Install the latest version here: https://appexchange.salesforce.com/listingDetail?listingId=a0N4V00000FNBsKUAX
We strive to maintain backward compatibility with every release. We strongly recommend testing new app versions in a sandbox before deploying the latest version in your production org.
Version 8.16
- When handling inbound calls, you can now map nodes from the request body directly into the response body. See the inbound template response JSON builder.
- You can now edit the details of a scheduled call job in the Administration page.
- When making a call from a custom button or making a call in a screen flow, you can now choose to make the call directly, without a confirmation page.
Version 8.14
- You can now use Custom Labels for merging and mapping into URL / headers / request body / response body and Salesforce fields
- You can now provide the JSON to be sent in a node manually and merge values from the main object, labels, custom metadata or custom settings. Learn more about manually defined JSON nodes.
- Small design changes to improve the user experience
Version 8.12
- Retry for Inbound Call Logs: You can now re-run template actions from inbound call logs. This new feature allows you to retry the actions directly from the log details, improving troubleshooting. Learn more about retries with Declarative Webhooks
- JSON nodes that are conditionally generated based on specific criteria now have a small icon next to the node name, making it easier to identify and work with these nodes.
- Is your inbound call taking too long? We’ve introduced support for running certain actions asynchronously, allowing the response to be generated faster while the remaining tasks continue in the background. Learn more about the inbound call actions.
- For inbound templates using Salesforce REST API authentication, deployments are now easier! URL now reference the Template Developer Name instead of the Template ID, streamlining the configuration process.
Version 8.8
- When building Inbound Call responses, you now have the ability to map fields and flow output variables from actions other than the main object. Learn more about generating a response to an inbound call.
- When mapping a field into a List of Values JSON node, you can now split the value by a character or text, line new lines or semicolon.
Version 8.7
- Bug fixes
Version 8.6
- Added support for handling response headers in callout templates
Version: 8.4
- More control over the user that runs the inbound calls. To change the running user to the current user, go to Administration tab, Inbound Call Templates subtab.
Version: 8.3
- Ability to ignore inbound calls based on criteria from the request body
- Ability to ignore duplicate inbound calls identified by a header value (like Webhook Id header)
- Learn more about ignoring inbound calls
Version: 8.2
- Support for merging Custom Metadata and Custom Settings in inbound calls authentication fields. Learn more about merging data into authentication fields.
- Ability to clone individual actions in the same Callout Template or Inbound Call Template.
Version: 8.1
- New Permission Set for Experience Cloud Users. View more in the Security Details section.
- New Authentication method for inbound calls: SHA256 Signed URL + Request Body
- Added ROUND() function to formulas. Learn how to use formulas in Declarative Webhooks
- More flexibility when trying to set a lookup field using an External Id
- Ability to Label your actions, to easily identify them when editing or in Advanced Debug log. Learn more about using callout response actions or inbound call actions.
Version: 8.0
- Improvements and fixes to Date and DateTime parsing methods. View more in the Using Formulas section.
- Improved the handling of calls made after big data loads, by adding queueable to the decision tree when a callout is triggered from flow
- Ability to use a formula to identify the main record in inbound call templates, aside from incoming JSON nodes or URL parameters. Learn more about how to identify a record and update when an inbound call takes place.
- Follow 3XX redirects: if the external system returns a redirect code (3XX), your template can now follow that redirect URL. Check the Advanced tab in the Callout Template page.
Version: 7.36
- When making synchronous calls from a flow, you can delay the creation of records and other Declarative Webhooks related DMLs, so you can make additional calls in the same flow. See more details about synchronous calls here.
- Ability to create, send and map input parameters from a flow to a template, allowing you to dynamically send context-specific data without being part of the main object. Learn more.
- Better visibility into what classes were created for a template to be used as synchronous calls from flows. Learn more about making synchronous calls from flows.
- Ability to create JWT JSON nodes.
Version: 7.30
- Added ability to create more dynamic Lists of Values when generating JSON requests and responses, with values from different sources and each value having its own criteria. Learn more in the “Selecting a Source” section of this page.
- Added formula functions that are able to parse dates and date/times that are in custom formats. See Using Formulas to learn more.
- Support for application/x-www-form-urlencoded body format is now available in both request and response bodies
- application/x-www-form-urlencoded body values are now URL encoded by default
Version: 7.25
- We’ve added an “Advanced Debug” option in Callout Templates and Inbound Call Templates that will generate a more advanced debug in the Call Log record. Look under Advanced tab.
- Added ADDHOURS and ADDMINUTES functions in formulas
- If Flow actions (for both inbound and outbound templates) you can now map the generated Call Log Id in a flow variable
Version: 7.19
- When constructing a JSON body, you can now create a JSON ‘Parameter list’ of objects node, allowing you to add multiple objects to a list, with each having fields mapped individually. Learn more about parameter lists
- When parsing a JSON list, you can now include a filter to select the correct object from the list.
- In record upsert actions, there’s now an option to set a field as ‘Only on Update,’ similar to how ‘Only on Create’ works.
- When testing inbound calls on the template page, you can choose to ‘Avoid authentication’ or run with authentication.
- If you’re using the ‘Upsert a list of records’ action, you can now select values from outside the main list when mapping nodes to fields.
Version: 7.16
- When creating or updating records through a response action (or inbound call action), you now have the possibility to set a lookup field based on an external id received in the request body.
Version: 7.13
- In the process of defining the request body for outbound calls or the response body for inbound calls, you now possess the capability to choose values from related objects and delve into related lists to any desired depth. The previous restriction of being confined to a single level in related lists has been lifted. For instance, you can now map children and grandchildren, as well as related lists from associated objects. Additionally, you have the flexibility to filter any related list when mapping simple values or lists.
- You are no longer limited to static node names. When defining the request body for outbound calls or the response body for inbound calls, you can now define a JSON or URL-encoded node name based on a field, formula, custom metadata, or custom setting.
- You are no longer limited to a fixed request body structure in callout templates (or a fixed response body structure in inbound call templates). Now, you can define criteria to generate a node or not, using a formula.
- The latest version of Declarative Webhooks empowers you to define the order in which response actions or inbound call actions run. If your actions depend on each other, you no longer have to worry about the sequence in which they execute.
Version: 7.10
- Bug fixes and optimizations
Version: 7.8
- Made testing your template faster and easier with a new interface
- Made exporting templates faster and easier
- Optimized formula parsing to improve CPU usage
- Optimized field mapping to improve CPU usage
- Other small improvements to the interface
Version: 7.3
- Small improvements to the new Lightning interface
- Bug fixes
Version: 7.2
- Enjoy the new Lightning-fast interface built with Lightning Web Components that allows you to access and edit your Callout Templates and Inbound Call Templates much faster than before.
Version: 6.16
- We’ve added FILES support to Declarative Webhooks! You can now send or receive Salesforce Attachments or Salesforce Files in both outbound and inbound integrations. File contents are supported as JSON nodes or x-www-form-urlencoded nodes in base64, hex or raw format.
Version: 6.14
- You can now import Callout Templates from a Postman Collection v2.1! Learn more
- New functions are now available in formulas: INDEXOF, LASTINDEXOF, LEN, LENBYTES, LEFTBYTES, RIGHTBYTES. Learn more about how to use formulas
- Callout Templates: You can now add response actions even when you don’t have a main object, allowing you to take actions without using a support object or custom setting.
- You can now edit the main object of a template (and other fields) even if JSON nodes are already added, as long as there are no field mappings or formula nodes. This allows you to edit template details without having to recreate the request body or actions.
Version: 6.12
- Formulas now works with fields from related objects! Learn more about how to use formulas.
- You can now use Custom Setting records as main objects in Callout and Inbound Call templates
- Bug fixes
Version: 6.10
- New functions are now available in formulas. Learn more about how to use formulas.
- Date and date/time manipulation functions: ADDDAYS, ADDMONTHS, ADDYEARS
- Text manipulation functions: LEFT, MID, RIGHT, ESCAPEJAVA, UNESCAPEJAVA, SUBSTITUTE
- You are now able to reference values from Custom Metadata and Custom Settings when building the callout URL, Headers, Authentication fields, JSON Builder and Field Mappings
Version: 6.6
- When testing an Inbound Call Template, you can now specify sample URL parameters, headers and request body to simulate an inbound call. Learn how you can test your inbound call.
- When you are using Response Actions and Inbound Call Actions to map nodes from the callout response body or inbound call request body into Salesforce fields, you can now transform the values with the power of formulas. Additionally, formulas now support two more functions: ESCAPEHTML and UNESCAPEHTML. Learn more about how to use formulas.
- Worried about hitting the callout/inbound call limits? With version 6.6, you will be notified by email when the number of calls are at 80% of the limit and again when the limits are reached. Make sure to set your email address in the Administration page.
- If you are integrating with external systems that require Webhook Validation, like Zoom, you are covered! Declarative Webhooks now supports Webhook Validation!
Version: 6.4
- Inbound call templates now support all HTTP methods: GET, POST, PATCH, PUT and DELETE, so you can implement a wider variety of inbound integrations
- We added support for URL parameters in Inbound call templates. You can now use the URL parameters to identify records, map into fields and define action criteria
- Bug fixes
Version: 6.2
- Starting with this version, you can configure the response code when an inbound call authentication fails. While before, the app returns 403, now you can choose between 401 and 403
- When your application is in trial, you can now quickly access subscription links from the Home page and Administration page, making it easier to activate your license
- Small bug fixes
Version: 6.0
- Starting with version 6.0, editing a template or sequence generates a Developer Name, unique to the org. This developer name can now be used to reference templates and sequences in flows, buttons or code. This helps out with deployment and avoids hardcoding record Ids in your Salesforce setup.
- You can now define the Node Data Type for JSON nodes, instead of using the “With Quotes” checkbox. This feature makes mapping fields more reliable.
- You can now make a callout synchronously in a flow and use the callout response in the flow logic after the callout.
- You can now start a flow as a Callout Response Action or Inbound Call Action and map simple values from the Callout Response Body or Inbound Call Request Body into flow input variables.
- Details for Callout Response Action: https://dwguide.omnitoria.io/step-5-callout-template-response-actions/
- Details for Inbound Call Action: https://dwguide.omnitoria.io/step-3-inbound-template-actions/
Version 5.12
- Added Basic (Username & Password) authentication type for inbound calls
- Added Custom (apex-based) authentication for inbound calls
- Added an option to skip an inbound call action if the main action does not result in a record (either found or created)
Version 5.10
- Improved bulkification of invokable callouts and sequences
- Added ability to generate a JSON body based on main object fields
Version 5.9
- Relay Server improvements
- Custom icon for Declarative Webhooks flow actions
- Bug fixes
Version 5.6
- Added support for callouts initiated by Guest User
Version 5.5
- Added new authentication options for inbound calls: “Bearer Token”, “API Key”, “SHA-256 Signed Body”
- Added a secondary set of fields to use to identify main record for an inbound call
Version 5.2
- Added Formula support in JSON Builder to map to nodes
- Bug fixes
Version 4.3
- Added more flexibility to the “Make Callout” Visualforce page with parameters to change the Title, Button Label and Success Message
- Bug fixes
Version 4.2
- Improved navigation and visuals on the Wizards
- Permission Sets created for Admins and Users
- Added an “Initial Log” lookup for retry Call Logs
- Bug fixes
Version 4.1
- Improved Callout Sequences Main Object selection for sequence nodes
- Callout Sequences: Option to choose an object created in the previous action
Version 4.0
- Callout Sequences
- Bug fixes
Version 3.8
- Inbound Form-Encoded Requests: Form-encoded requests are most often used for sending a POST from a web form. It may also be used to send structured data in URL query strings. So, send your query string along or if you’re feeling ambitious we can show you some cool web-to-custom object and related object use cases.
- Private Inbound Templates: Worried about exposing your Salesforce webhook URL publicly? So long as you can handle Salesforce authentication, you can still leverage the power of configurable inbound webhooks and response actions.
- Redesigned Admin Page: Monitor your usage, manage your templates, schedule jobs and more with a beautifully redesigned admin experience.
Version 3.6
- Configurable Responses to Inbound Calls: With configurable responses to inbound calls, you now control how you respond to inbound calls. Respond with a record Id along with your 200 response code or customize a failure message.
- New and Improved Home Screen: The new and improved home screen allows you to easily access all areas of the application, create callout templates, access the admin guide, request support and more. This is just the begining of a major UI/UX redesign so stay tuned!
Version 3.0
- Export and import callout templates and inbound call templates: Quickly and easily move your templates between orgs. This is quite handy for production releases and sandbox refreshes.
- Searchable comboboxes to easily select fields and objects: Have you ever gotten super annoyed searching through an endless list of objects and fields? We wanted to make field selection both fast and painless by making it searchable.
- Outbound calls now supports form-encoded request body: Not all integrations use JSON and form-encoded is a fairly common standard when sending a request to an external service. You requested it and we delivered.
Version 2.14
- Retry functionality for outbound calls
Version 2.11
- Conditional Response Actions / Inbound Call Actions: You can decide when the actions take place, based on response code, header values or nodes from the JSON body.
- Upsert record(s): You can now update / upsert a record or a list of records as response actions / inbound call action by matching a salesforce field with a JSON node value.
- Apex support: You can now generate the URL, Header values or parts of the JSON body using apex.
- Apex support: You can now run apex as response actions or inbound call actions
- Merging fields in URL or Header Values: You can now merge fields from related objects in the URL or header values {!Custom_Relation__r.Custom_Field__c}