Integrating Mailsoftly automations with other applications

You can establish a data flow connection to feed the system externally by facilitating communication between Mailsoftly and third-party applications (or your own application). You can process data coming from third-party applications in Mailsoftly to create contacts, send emails, create and edit drafts or templates, and accomplish many other tasks through Mailsoftly's own automation ecosystem.


For a third-party application to communicate with Mailsoftly, it needs to be able to send requests (webhooks) to an endpoint created with your Mailsoftly account. If you are not familiar with this process, please contact your application developer for data flow assistance.

Another requirement is to have a Mailsoftly account. Since webhook endpoints are firm-specific, direct API communication is not possible without an account. A user who meets these two conditions can establish communication between Mailsoftly and any desired application, utilizing automation features along with incoming data.

Overview of the Process

The technical process for the third-party application to communicate with Mailsoftly is as follows:

  • The user creates a unique endpoint on Mailsoftly on their behalf.
  • They obtain an API key to communicate with the API.
  • The necessary information is provided to the third-party application, and a test connection is established (Requests are tested by the user during setup before listening for requests begins).
  • When a webhook is captured, an automation system determines how the incoming data will be used in Mailsoftly.

This process summarizes how Mailsoftly communicates with third-party applications via webhooks. Now let's examine this communication step by step and create your first request and automation together.

Creating an API Key and Endpoint in Mailsoftly

After logging into your Mailsoftly account, you can access Mailsoftly's advanced options by navigating through Settings > Company Settings on the left-hand side navigation menu.

The things we need for communication are:

  • A webhook endpoint to which requests will be sent.
  • An API Key to parse the sent requests.

To create an endpoint, let's switch to the Webhook Endpoint tab on the left-hand side of the page that opens up and start creating an endpoint.

Creating a Webhook Endpoint

In the Webhook Endpoint tab, we can view the endpoints we have previously created. While one endpoint can serve multiple automations simultaneously, an automation can only be fed by one endpoint's incoming data. With this in mind, we can create different endpoints or automations to perform the desired tasks. To prevent confusion and ensure ease of use, automations and endpoints can be named by the user. If you don't have any endpoints yet, let's click on the Create New Endpoint button to create our first endpoint.

When we create an endpoint, a unique catch URL will be assigned to us, where we can listen to and utilize incoming requests to set up automations. As soon as we click, an endpoint is created with a random name. If we want to change the name, we can click on the name of the endpoint and enter the desired name. Now that we have an endpoint, we can move on to the next step.

Creating an API Key

The API key is a name given to a key that is specially created for users to verify that the request sent to us is forwarded by us. To prevent misuse of incoming requests and for security measures, it is necessary to send requests with the correct key to the correct endpoint.

To create a key, let's switch to the API Keys tab on the left-hand side.

In the relevant tab, we encounter the API keys we previously created and the 'Create Access Key' button. If you haven't created an API key yet, let's click on the 'Create Access Key' button and create our first API key.

Important note: When we create an API key, a modal will appear showing us our API key. For security reasons, once you close this modal, you will not have the chance to see the key again. Please make sure to note down your key in a secure location before proceeding.

Great! We have created the necessary two basic elements for communication. Now we can proceed to receiving and processing requests.

Testing connections, listening, and creating automations

Since there is nothing left to do on the Settings page, let's click on the 'Automations' link in the left-hand navigation and proceed to the page where we can manage automations. The Automations page is a general page where we can view, manage, and create new automations. If you don't have any automations yet, we can proceed to create one. Before moving on to this step, let's have a quick tutorial about automations.

Endpoint Automations and Campaign Automations

Mailsoftly automations are divided into two categories: endpoint automations and campaign automations. Campaign automations are designed to perform a series of tasks for each contact who interacts with a campaign after it has been sent. Endpoint automations, on the other hand, are meant to carry out a series of actions based on information received from webhooks. Since we need an Endpoint Automation, let's click on the 'Create an Endpoint Automation' button in the top right corner and start building our first automation.

Creating an Endpoint Automation

The dialog prompts us to select an endpoint in order to create an endpoint automation. Since we intend to define an automation for a previously created endpoint to process incoming data there, after selecting the relevant endpoint from the dropdown, we can proceed to the automation wizard by clicking the 'Create an Automation' button.

The wizard screen contains an area where we can create a trigger (the trigger always represents the request sent to the endpoint in endpoint automations) and a series of tasks. The boxes indicating triggers and actions are called Automation Nodes or simply Nodes. Since it's not possible to add tasks without setting up the trigger, let's click on the trigger node in the wizard and examine the event details panel that opens on the right side.

To set up the trigger, we need to follow the instructions in the opened Event Details panel by sending a request and validating the incoming data. If a third-party application provides us with an option to send a test request, we can use that. Otherwise, we should simulate an event that will trigger the webhook by sending a request (either by ourselves or through some means) with the appropriate parameters to the URL in Mailsoftly. Once we are sure that the request has been sent, we click on the 'I Sent a Request' button.

If a request has been captured, the button color will turn green and display 'Data Found'. In this case, we can use the 'Show Captured Data' button to examine the captured data. If everything looks as expected, we can proceed to create action nodes to process the data in the incoming request. If the request hasn't reached the application, please wait a few minutes to ensure its delivery. If it still hasn't arrived, we recommend reaching out to your application's support team for assistance.

Creating Event Nodes & Sequence

Let's click on the 'Add Event' button on the left side of the wizard. Upon clicking, a new Node will appear with 'Select Event' written on it. To assign a task to this Node, we click on it and reopen the event details panel on the right side.

Upon clicking, the event details panel will display a dropdown menu titled 'Select an Event Type'. Let's imagine that we want to send an email with the incoming data. To achieve this, we select the 'Run a Task' option. Then, the dropdown menu changes to 'Select the task you want to be performed'. From here, we select the 'Send Email' option.

To send an email in Mailsoftly, we need to use a template. If you haven't created a template before, you can generate a new one by clicking the 'Create New' button next to the 'Select Campaign Draft' text, and then return to this section and use refresh button then select the template you created. This is necessary for mapping and replacing the Custom Fields in the created template with the data from the incoming request. Manipulating and personalizing a plain email with the incoming data is not possible; Custom Fields must be used for this purpose.

To verify whether we have made the correct selection, we can use the 'View Selected Campaign' option. This opens a preview panel where we can see a preview of the template. If everything looks correct, we can proceed by clicking the 'Update' button.

Placing the incoming data into the fields of the email template

When we click the 'Update' button, we automatically proceed to the next step, which is the Matching step. Here, we need to match the custom fields in the campaign with the incoming data in order to send the email and determine who the email will be sent to. The 'Contact's email address' section is where we determine who will receive the email. It could be an email address from the incoming data or a fixed email address (for tasks like sending notifications to ourselves via webhook, for example). If the selected campaign contains custom fields, they will be automatically brought here and presented to us as options. We can choose the data from the dropdown menu below to indicate which data will replace that custom field. The dropdown menus contain the names of the data and their corresponding values in the incoming test data. After making the appropriate selections, we can click the 'Finish Matching' button.

Congratulations! We have now created a system that can send us an email whenever a webhook is received. After clicking the 'Save Automation' button in the top right corner and saving the automation, all valid requests sent to this endpoint will trigger an email to be sent to us (or to the recipients we specify).


We've taken a quick tour of Mailsoftly's Endpoint Automation system. It's possible to automate various tasks from simple email sending to more complex timed processes. Now, you can create automations as you wish and start using them as part of your workflows.