Django utilities to help track emails sent using Postmark
Project description
# Django Postmark Utils
Django utilities to help track emails sent using Postmark.
## Features
- Store emails (including failed attempts) sent from within your project
- Receive and store webhook notifications, for email bounces and deliveries
- Track sent emails for errors, bounces, and deliveries
- Resend emails
## Prerequisites
- [Django](https://www.djangoproject.com/)
- [Postmark](https://postmarkapp.com/) account
## Installation
```
$ pip install git+https://github.com/regulusweb/django-postmark-utils.git
```
Django Postmark Utils makes use of the Django email backend provided by [Postmarker](https://postmarker.readthedocs.io/en/latest/), so first configure it in your project's settings, as per the [documentation](https://postmarker.readthedocs.io/en/latest/django.html).
```python
EMAIL_BACKEND = 'postmarker.django.EmailBackend'
POSTMARK = {
'TOKEN': '<YOUR POSTMARK SERVER TOKEN>',
'TEST_MODE': False,
'VERBOSITY': 0,
}
```
Add the app to your project's `INSTALLED_APPS` setting:
```python
INSTALLED_APPS = (
'django_postmark_utils',
)
```
Create the required database tables:
```
$ python manage.py migrate django_postmark_utils
```
To receive [bounce](https://postmarkapp.com/developer/webhooks/bounce-webhook) and [delivery](https://postmarkapp.com/developer/webhooks/delivery-webhook) [webhook notifications](https://postmarkapp.com/developer/webhooks/webhooks-overview) from Postmark, configure the webhook URLs in your project's URL configuration:
```python
urlpatterns = [
url(r'^postmark/', include('django_postmark_utils.urls')),
]
```
In your project's settings, configure a secret to be added to the webhook URLs:
```python
POSTMARK_UTILS_SECRET = '<YOUR WEBHOOK URLS SECRET>'
```
Add the webhook URLs to your Postmark account:
`https://example.com/postmark/<YOUR WEBHOOK URLS SECRET>/bounce-receiver/`
`https://example.com/postmark/<YOUR WEBHOOK URLS SECRET>/delivery-receiver/`
Optionally change the default email header field name (`X-DjangoPostmarkUtils-Resend-For`) used to match resent emails to the messages they are for, in your project's settings:
```python
MESSAGE_ID_HEADER_FIELD_NAME = '<YOUR CUSTOM EMAIL HEADER FIELD NAME>'
```
## Usage
Emails (including failed attempts) sent via the Postmarker email backend will be stored in the database, and can be viewed in the admin.
In the email change page, clicking on the `Go to resend list` link next to the `Resend` field will send you to a list from where you can use the `Resend emails` admin action to resend the email.
Django utilities to help track emails sent using Postmark.
## Features
- Store emails (including failed attempts) sent from within your project
- Receive and store webhook notifications, for email bounces and deliveries
- Track sent emails for errors, bounces, and deliveries
- Resend emails
## Prerequisites
- [Django](https://www.djangoproject.com/)
- [Postmark](https://postmarkapp.com/) account
## Installation
```
$ pip install git+https://github.com/regulusweb/django-postmark-utils.git
```
Django Postmark Utils makes use of the Django email backend provided by [Postmarker](https://postmarker.readthedocs.io/en/latest/), so first configure it in your project's settings, as per the [documentation](https://postmarker.readthedocs.io/en/latest/django.html).
```python
EMAIL_BACKEND = 'postmarker.django.EmailBackend'
POSTMARK = {
'TOKEN': '<YOUR POSTMARK SERVER TOKEN>',
'TEST_MODE': False,
'VERBOSITY': 0,
}
```
Add the app to your project's `INSTALLED_APPS` setting:
```python
INSTALLED_APPS = (
'django_postmark_utils',
)
```
Create the required database tables:
```
$ python manage.py migrate django_postmark_utils
```
To receive [bounce](https://postmarkapp.com/developer/webhooks/bounce-webhook) and [delivery](https://postmarkapp.com/developer/webhooks/delivery-webhook) [webhook notifications](https://postmarkapp.com/developer/webhooks/webhooks-overview) from Postmark, configure the webhook URLs in your project's URL configuration:
```python
urlpatterns = [
url(r'^postmark/', include('django_postmark_utils.urls')),
]
```
In your project's settings, configure a secret to be added to the webhook URLs:
```python
POSTMARK_UTILS_SECRET = '<YOUR WEBHOOK URLS SECRET>'
```
Add the webhook URLs to your Postmark account:
`https://example.com/postmark/<YOUR WEBHOOK URLS SECRET>/bounce-receiver/`
`https://example.com/postmark/<YOUR WEBHOOK URLS SECRET>/delivery-receiver/`
Optionally change the default email header field name (`X-DjangoPostmarkUtils-Resend-For`) used to match resent emails to the messages they are for, in your project's settings:
```python
MESSAGE_ID_HEADER_FIELD_NAME = '<YOUR CUSTOM EMAIL HEADER FIELD NAME>'
```
## Usage
Emails (including failed attempts) sent via the Postmarker email backend will be stored in the database, and can be viewed in the admin.
In the email change page, clicking on the `Go to resend list` link next to the `Resend` field will send you to a list from where you can use the `Resend emails` admin action to resend the email.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
No source distribution files available for this release.See tutorial on generating distribution archives.
Built Distribution
File details
Details for the file django_postmark_utils-0.1-py3-none-any.whl
.
File metadata
- Download URL: django_postmark_utils-0.1-py3-none-any.whl
- Upload date:
- Size: 17.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f033d7054faed54f8130d1ee77fab4b7ac83e5fa99590239080045e41d904ece |
|
MD5 | 7bb81a493b8ba151d27fabbe40fff1e4 |
|
BLAKE2b-256 | b19bba479d04c386590e8055b8bd68e3936b370b47a3caa4bc8cc08f07215dae |