Python client library for Postmark API.
Postmarker can be obtained with pip
:
$ pip install postmarker
NOTE:
The attributes of all classes are provided as is, without transformation to snake case. We don't want to introduce new names for existing entities.
Send single email:
>>> from postmarker.core import PostmarkClient
>>> postmark = PostmarkClient(server_token='API_TOKEN')
>>> postmark.emails.send(
From='[email protected]',
To='[email protected]',
Subject='Postmark test',
HtmlBody='<html><body><strong>Hello</strong> dear Postmark user.</body></html>'
)
Send batch:
>>> postmark.emails.send_batch(
{
'From': '[email protected]',
'To': '[email protected]',
'Subject': 'Postmark test',
'HtmlBody': '<html><body><strong>Hello</strong> dear Postmark user.</body></html>',
},
{
'From': '[email protected]',
'To': '[email protected]',
'Subject': 'Postmark test 2',
'HtmlBody': '<html><body><strong>Hello</strong> dear Postmark user.</body></html>',
}
)
Setup an email:
>>> email = postmark.emails.Email(
From='[email protected]',
To='[email protected]',
Subject='Postmark test',
HtmlBody='<html><body><strong>Hello</strong> dear Postmark user.</body></html>'
)
>>> email['X-Accept-Language'] = 'en-us, en'
>>> email.attach('/home/user/readme.txt')
>>> email.attach_binary(content=b'content', filename='readme.txt')
>>> email.send()
There are a lot of features available. Check it out in our documentation! Here's just a few of them:
- Support for sending Python email instances.
- Bounces, Domains, Messages, Templates, Sender signatures, Status, Stats & Server API.
- Django email backend.
- Tornado helper.
- Spam check API.
- Wrappers for Bounce, Inbound, Open and Delivery webhooks.
You can view the documentation online at:
Or you can look at the docs/ directory in the repository.
Postmarker supports Python 2.7, 3.4, 3.5, 3.6, 3.7, PyPy, PyPy3 and Jython.
Many thanks to Shmele and lobziik for their reviews and advices :)