Please note: this blog will focus on the tech side of Dux-Soup and is therefore written with the aim of helping programmers who want to integrate Dux-Soup into their own workflows or software.
This blog showcases an expert user interface. If you're unable to locate the options mentioned, you can easily activate them within the User tab found in the Dux-Soup Options.
As a developer, you will always be on the lookout for new and interesting ways to improve your workflows or update your software to increase the success of your outreach campaigns. The good news is that Dux-Soup Turbo not only provides users with a super-simple interface for managing LinkedIn automation activity, but it also offers an open API so you can test, refine and re-test your wofkflows as much as you want - until you find the optimum solution for your business.
Postman is an API platform for building and using APIs. It aims to simplify each step of the API lifecycle and streamlines collaboration so you can create better APIs - faster.
Here’s an example - a POST request to Dux-Soup might send a connection request, while a GET request might provide you with the Dux-Soup queue size. In order to test API endpoints, you might like to consider using Postman.
So for all you tech types out there, let’s take a closer look at what Dux-Soup API is all about.
Dux-Soup API
Dux-Soup Turbo offers an open API which makes it simple to test and integrate Dux-Soup anywhere.
Dux-Soup Remote Control API will allow you to:
- Execute LinkedIn Activity calls - connection requests, direct messages, InMails, and more. Take a look at our LinkedIn Activity API documentation for more info.
- Read and change user settings. Explore our User Settings API documentation for more details.
- Access a subset of the available UI actions that are commonly triggered by the end-user. Read the Dux Extension Control API documentation for further details.
- Access and control the queued activity. For more info, read our latest Queue Management API documentation.
- Access the details of the end user - take a look at the User Profile API documentation for more details.
Note that all API calls to Dux-Soup require authentication which is done using a cryptographically signed header ‘X-Dux-Signature: [SomeHash]’.
- For HTTP POST requests, the inputs for the function are 1) the API key of the user and 2) the JSON BODY of the HTTP request.
- For HTTP GET requests, the inputs for the function are 1) the API key of the user, and 2) the URL of the API endpoint of the HTTP request.
You can find the Authentication Key or the API key in Dux-Soup Options, Connect tab:
Find more details by reading Dux-Soup API documentation.
What is Postman?
So just to reiterate - Postman is an API platform for building and using APIs. Postman simplifies each step of the API lifecycle and streamlines collaboration so you can create better APIs - faster. You can set up a free account at https://www.postman.com/.
Dux-Soup API Test Tool
Spoiler - Dux-Soup Turbo has its own API test tool available at http://app.dux-soup.com/web/rc/test. With its help, you can generate the ‘curl’ command or execute the remote control call.
You can also use it to get the required HTTP request attributes for Postman by selecting the target command, populating the desired values and using the "generate curl" command. We will get back to this shortly.
Now, let’s jump to testing Dux-Soup API in Postman.
Testing the Dux-Soup API in Postman
Here, we will show you how to use Postman to test Dux-Soup API. As an example, let’s send a connection request using a POST request and get user settings using a GET request. The aim here is to be able to generate a ‘messageid’ response to determine that your action was successful.
POST request to Dux-Soup API
To start, let’s open the Dux-Soup API Test tool and select the API call ‘Send Connection request’. Enter details such as: User ID, the API key and target URL. The campaign name, time and message are optional. Then, click on the ‘Generate the ‘curl’ command.
Your JSON body text is therefore:
{"targeturl":"http://app.dux-soup.com/xapi/remote/control/114816760415792251001/queue","userid":"114816760415792251001","timestamp":1665652315987,"params":{"profile":"https://www.linkedin.com/in/giles-garnett/","messagetext":"Hi _FN_, Let's connect"},"command":"connect"}
Your POST request URL is therefore:
http://app.dux-soup.com/xapi/remote/control/114816760415792251001/queue
Let’s create a new HTTP request in Postman step-by-step:
Step 1: In the request URL field, enter https://app.dux-soup.com/xapi/remote/control/USERID/queue and type in the header key values:
Note: your USERID can be found from the Dux-Soup API Test Tool or in your Dux-Soup Options
Step 2: Add the header key values:
KEY: X-Dux-Signature VALUE: {{hmac}}
KEY: Content-Type VALUE: application/json
Step 3: Enter the POST body that needs to contain a JSON object with the minimum of the following fields, to ensure acceptance by the server:
targeturl The target URL of this command, where the command is delivered. Should start with https://app.dux-soup.com
timestamp Current ‘unix’ time in milliseconds. The timestamp needs to be within 5 minutes of the current time.
userid The userid to which the command will be sent for execution. Should correspond to the userid in the target URL.
You can use the JSON body text (from the Dux-Soup API Test Tool) to populate the required POST request attributes. These are added to the Postman ‘Body’. Ensure you select ‘raw:’
Step 4: Enter the Pre-request Script - for example:
Note: The API key needs to be used to generate a hash of the request, it shouldn't be sent with the request. The HTTP header that needs the value of the signature is called X-Dux-Signature, and should have its value set to {{hmac}}. This value should be calculated using the pre-request script (replace [DUX-SOUP-API-KEY] with the actual key).
Step 5: Once we've configured our request in Postman, save your work and then hit the "Send" button and see the response from the server. If you see the message ID, it means the request was successful.
This blog is written to help get understanding the Dux-Soup API and to help you start using and testing Dux-Soup with Postman. You can read more about the Dux-Soup API here on our Support pages: https://support.dux-soup.com/article/227-the-dux-soup-api
Have any feedback, questions, or comments? Send them over to info@dux-soup.com, we look forward to hearing from you!