Sendinblue: Support send_at

Add support for delayed sending via
Sendinblue's public beta "scheduledAt"
parameter.

Closes #280
This commit is contained in:
medmunds
2022-12-18 15:44:25 -08:00
committed by Mike Edmunds
parent a8cfb2e5eb
commit 287c2175f4
6 changed files with 58 additions and 9 deletions

View File

@@ -40,7 +40,7 @@ Email Service Provider |Amazon SES| |Mailgun| |Mailje
:attr:`~AnymailMessage.envelope_sender` Yes Domain only Yes Domain only Yes No No No Yes
:attr:`~AnymailMessage.metadata` Yes Yes Yes Yes No Yes Yes Yes Yes
:attr:`~AnymailMessage.merge_metadata` No Yes Yes Yes No Yes Yes No Yes
:attr:`~AnymailMessage.send_at` No Yes No Yes No No Yes No Yes
:attr:`~AnymailMessage.send_at` No Yes No Yes No No Yes Yes Yes
:attr:`~AnymailMessage.tags` Yes Yes Max 1 tag Yes Max 1 tag Max 1 tag Yes Yes Max 1 tag
:attr:`~AnymailMessage.track_clicks` No Yes Yes Yes No Yes Yes No Yes
:attr:`~AnymailMessage.track_opens` No Yes Yes Yes No Yes Yes No Yes

View File

@@ -78,18 +78,20 @@ set a message's :attr:`~anymail.message.AnymailMessage.esp_extra` to
a `dict` that will be merged into the json sent to Sendinblue's
`smtp/email API`_.
Example:
For example, you could set Sendinblue's *batchId* for use with
their `batched scheduled sending`_:
.. code-block:: python
message.esp_extra = {
'hypotheticalFutureSendinblueParam': '2022', # merged into send params
'batchId': '275d3289-d5cb-4768-9460-a990054b6c81', # merged into send params
}
(You can also set `"esp_extra"` in Anymail's :ref:`global send defaults <send-defaults>`
to apply it to all messages.)
.. _batched scheduled sending: https://developers.sendinblue.com/docs/schedule-batch-sendings
.. _smtp/email API: https://developers.sendinblue.com/v3.0/reference#sendtransacemail
@@ -141,8 +143,10 @@ Sendinblue can handle.
as a JSON-encoded string using their :mailheader:`X-Mailin-custom` email header.
The metadata is available in tracking webhooks.
**No delayed sending**
Sendinblue does not support :attr:`~anymail.message.AnymailMessage.send_at`.
**Delayed sending**
.. versionadded:: 9.0
Earlier versions of Anymail did not support :attr:`~anymail.message.AnymailMessage.send_at`
with Sendinblue.
**No click-tracking or open-tracking options**
Sendinblue does not provide a way to control open or click tracking for individual