Changelog¶
Information on the latest updates and additions to the Marigold Engage Delivery Cloud API and webhooks.
added
Add Webhook Dead Letters API, additional Webhook Subscriptions endpoints, soft deprecate old subscription endpoints¶
We updated or changed following endpoints:
- Add Webhook Dead Letters API
- Webhook Subscriptions have an ID now.
- Add Webhook Subscriptions endpoints to support CRUD operations for each individual subscription by ID.
- (Soft) Deprecate the older PUT/DELETE all Webhook Subscriptions
- Retrying the sending of webhook events is a bit more strict now, using a smaller delay in between, 1 second exponential.
For more information about the dead letters concept, see https://en.wikipedia.org/wiki/Dead_letter_queue.
View subscription details →View dead letter details →
added
Mail priority levels¶
A new field priority
has been added to the send email endpoint.
This allows you to specify the priority of your mails, allowing you to give business critical transactional emails more priority over regular sends.
Emails with a higher priority will be pushed in front of lower priority mails in the queue for processing. The system applies a smart structure to not starve other mailings. For that reason, there are limits in place for each level of priority:
- high: 1000 / min
- medium: 5000 / min
- low: No limit
if the cap is reached, new mailings will be pushed one step lower in priority
(high -> medium, medium -> low), without warning in the response of the API.
We will never block mails in a specific priority level if the rate is hit.
Access account information¶
A new endpoint has been added to allow you to access information about the settings of your account.
Access configured mail domains¶
A new endpoint has been added to allow you to access the configuration of your maildomains. This allows you to review and compare the settings with your expectations.
added
Delete individual messages¶
A new endpoint has been added to allow you to delete individual messages of a given profile.
This endpoint is added in addition to the existing bulk deletion endpoint for a given profile.
Webhook when message archive is available¶
You can now configure your account to receive a webhook when the archive of a message is available. This allows you to react immidiatly if needed. Only if the webhook is received can the system guarantee that the message content is available for retrieval.
Update
New authentication permissions¶
It is now possible to request more granular permissions for specific API authentication pairs.
You can now request up to 3 authentication pairs to be used to access EDC.
These keys can now also have different permissions:
- Account(s) it can act for
- Sending
- Access to archive
- Management of webhooks
New webhook filtering capabilities¶
When creating filters for your webhooks, you can now use advanced filters for filtering specific webhooks to your endpoints.
Any property that is defined in the documentation of a webhook, can be used, for example:
data.account_id
to filter on the account iddata.outcome_category
to filter on the outcome category
Update
Events / bounce documentation updates¶
EDC - Webhook events and bounce endpoints¶
On our bounce API endpoints, and on our failed webhook events there are 2 properties:
- outcome_category
- finalize_reason
The values for these fields are currently in Pascal case. However, our convention to keep everything uniform is:
- Properties: Snake case
- Values: Camel case
Concretely, this means that for both properties, the values will now be returned without a capital letter.
for outcome_category, the new values are:
- none
- error
- ok
- greyListed
- blackListed
- badUser
- unavailable
- senderProblem
- mailboxFull
- spam
- receiverProblem
- exclusion
for finalize_reason, the new values are:
- tooManyRetries
- tooManyDeferrals
- importBlacklist
- importFailed
- expired
- restriction
- mxServersDenied
- noMxServersAssigned
- nonExistingDomainName
- dnsServerError
- dnsTimeout
- hardBounce
- badTemplate
- cancelled
- clientCancelled
added
EDC - API update¶
New bounce retrieval endpoint¶
BETA
New list endpoints have been added allowing you to retreive bounces, list unsubscribe and complaint events that where triggered for the last 30 days.
The information these endpoints provide is the same as received through the webhook events.
Note that these endpoints are currently BETA. Please inform us of any issues you might encounter.
New endpoints:
View endpoints →EDC - Webhook update¶
new information fields¶
The com.sdc.deliveries.email.failed
event now contains 2 new fields:
outcome_category
which categorizes the SMTP response from the ISP in a more meaningful wayfinalize_reason
which categorizes the failure reason
We also split the documentation for the com.sdc.deliveries.email.failed
and com.sdc.deliveries.email.sent
events as their payloads are no longer the same.
API update¶
Send endpoint: new allowed headers¶
you can now use the following RFC headers on your mailings:
- List-Id
- List-Help
- Precedence
- Auto-Submitted
You can add them through the optional headers field when sending emails.
added
Events documentation updates¶
Webhook events¶
The Webhook events for email delivery have now been updated with event structure exposed.
Delivery Event changes¶
for Delivery events, the possible values for the type field have been updated. the possible values you can received have been reduced to:
com.sdc.deliveries.email.sent
: An event that is triggered when the e-mail message is sent towards the ISP and EDC has gotten ansuccess
ISP response back.com.sdc.deliveries.email.failed
: An event that is triggered when the e-mail message is sent towards the ISP and EDC has gotten anundeliverable
ISP response back.
Bounce events for EDC e-mail Added¶
You can now subscribe to bounce events coming from asynchronious feedback into the EDC system. More info can be found in the documentation
API documentation of EDC →
added
Webhook management: custom headers¶
When Configuring your webhook, it it now possible to provide custom headers, when calling the subscription endpoint
The following is an example to configure your webhook with basic authentication:
[
{
"filters": [
"com.smc.*"
],
"target_url": "www.example.com/smc"
},
{
"filters": [
"com.sdc.*"
],
"target_url": "www.example.com/sdc",
"headers": [
{
"name": "Authorization",
"value": "Basic TG9uZyBsaXZlIGRvZ2Uh"
}
]
}
]
The headers will be added to every call toward the target_url
To get started building with configuration of your webhooks, check out the guide and API reference.
updated
Webhooks and webhook management¶
The way you receive webhooks have been updated.
the OPTIONS call has been deprecated. You will not receive it anymore prior to receiving your actual webhook.
You can now also manage and configure webhooks yourself via de API:
- View your subscriptions
- Update your subscriptions
- Delete your subscriptions
To get started building with configuration of your webhooks, check out the guide and API reference.
added
Message archive¶
The EDC Message archive API has been extended with new options:
- the option to download message attachments.
- the option to view the subject lines & linked attachment for a message.
Example:
{
"value": [
{
"message_id": "370d25d7319b4549a88cefdda049989e_92233793802426",
"channel": "email",
"tags": ["zuppy-bounce", "resto-order-now-campaign-spring"],
"metadata": "{\"name\":\"jane.doe\",\"ref\":123456789}",
"profile": "crm-id-123456789",
"attachments": [
{
"file_name": "message_attachment.pdf",
"mime_type": "application/pdf"
}
],
"subject": "RestoBar - Order Now!",
"timestamp": "2022-03-16T12:56:00.1260605+00:00"
}
]
}
Review the EDC API reference for all the details.
added
Webhooks preview¶
The EDC webhook events have been included in the API reference and a guide on the webhook usage, has been published as "preview" for the upcoming release.
To get started building with Webhooks, check out the guide and API reference.
added
Early-access release¶
We released the Marigold Engage Developer Portal 🚀
The portal is a hub to all guides, tutorials, API & Event references. It provides detailed use cases & guides with code samples. You can find all Marigold Engage API references, which describes the API properties & operations in detailed manner.
As a playground, you can download ready-to-use Postman collections or the OpenAPI specifications. An easy to use search option, will help you find the relevant content you are looking for.