Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Python Wrapper for Postmark Inbound
Python
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
postmark_inbound
tests/fixtures
.gitignore
.travis.yml
LICENSE
MANIFEST.in
README.md
setup.cfg
setup.py
test.py
tox.ini

README.md

Postmark Inbound Hook Build Status

This is a simple API wrapper for Postmark Inbound Hook in Python inspired by jjaffeux.

Install

Using Github:

git clone git@github.com:jpadilla/postmark-inbound-python.git

Using pip:

pip install python-postmark-inbound

Using easy_install:

easy_install python-postmark-inbound

Usage

from postmark_inbound import PostmarkInbound


# load json
json_data = open('./tests/fixtures/valid_http_post.json').read()
inbound = PostmarkInbound(json=json_data)

# content
inbound.subject()
inbound.sender()
inbound.to()
inbound.bcc()
inbound.tag()
inbound.message_id()
inbound.mailbox_hash()
inbound.reply_to()
inbound.html_body()
inbound.text_body()
inbound.send_date()

# headers
inbound.headers()  # default to get Date
inbound.headers('MIME-Version')
inbound.headers('Received-SPF')

# spam
inbound.headers('X-Spam-Checker-Version')
inbound.headers('X-Spam-Score')
inbound.headers('X-Spam-Tests')
inbound.headers('X-Spam-Status')

# attachments
inbound.has_attachments() # boolean
attachments = inbound.attachments()

first_attachment = attachments[0]
first_attachment.name()

second_attachment = attachments[1]
second_attachment.content_length()

for a in attachments:
    a.name()
    a.content_type()
    a.content_length()
    a.download('./tests/', ['image/png'], '10000')

# raw data
inbound.json
inbound.source

Bug tracker

Have a bug? Please create an issue here on GitHub!

Contributions

  • Fork
  • Write tests
  • Write Code
  • Pull request

Thanks for your help.

TODO

  • Write more tests

Authors

José Padilla

Inspiration

Thanks to jjaffeux for the original PHP wrapper

Other libraries

License

MIT License

Something went wrong with that request. Please try again.