Program extensions expand the ways you can use programs. With program extension, you can do things like:
Send a postcard by using Lob. Learn more in Program extensions: Lob.
Add a contact to a list in another account in Dotdigital.
Create custom extensions so you can make HTTP requests to selected endpoints.
Enable your program extension
There are differences between enabling a program extension, specifically if you already have one that’s set up or want to add a custom one.
Existing program nodes
Make sure you have an active account with the extension provider.
Enable the extension provider in your account by contacting your Customer Success representative.
To create a profile for the extension, expand the User menu and go to Settings > Access > Extension profiles, and select ADD. You can create multiple profiles per extension.
After creating a profile, you are ready to use the extension in the program builder. You can access the extension by going to Extensions.
Custom program nodes
If an extension doesn’t exist in Dotdigital and you want to add one:
1. Contact your Customer Success representative
Supply our team with the following details:
Custom name for the extension provider
A notification is sent to your when this is set up on our end. Only basic authentication and no authentication are supported for custom extension providers.
2. Create the extension profile
To create a profile for the extension, expand the User menu and go to Settings > Access > Extension profiles.
Select ADD and enter the details for your custom extension.
You can create multiple profiles per extension.
Configure a program extension node
Once a program extension is available in the program builder, you need to configure it, so it can perform an action.
Drag the node to the program builder canvas from the Extensions area of the left side panel.
Select the node.
Configure the node.
Test a node
You should test your extensions, so you can be sure they are working properly. This is helpful because you can identify and fix any problems before program activation. If your extension doesn’t work as expected, you are informed by a response code, and it shows you what needs to be fixed.
It's important to keep the following in mind:
Make sure you're supplying accurate data in your requests, otherwise your extension won’t work.
We can’t guarantee the success of your extension requests, or verify whether your data is executable, before you use a custom extension node.
Make sure you’re complying with the data requirements of the extension provider.
Here is an explanation of the terminology you may encounter:
A group of personalised web requests that are sent to the request executor.
An HTTP request generated from a web hook request; sent to the third party end point.
An HTTP response received from the third party end point.
Defining requests and responses
Here are the request and response restrictions:
The internal HttpClient has a timeout that defaults to 5 seconds. Once exceeded, the request is marked as failed. This doesn’t terminate the rest of the batch.
An HTTP request body cannot exceed the default maximum size of 10000 bytes. If the request body exceeds this value, the extension request fails. This doesn’t terminate the rest of the batch.
An HTTP response body cannot exceed the default maximum size of 10000 bytes. If the response body size exceeds this value, the response body is cut down a bit before storage.
On receipt of an HTTP response with a status code of
401 unauthorised, the entire batch is terminated.