Skip to main content

JMAP client library for Python

Project description

jmapc: A JMAP client library for Python

PyPI PyPI - Python Version Build codecov GitHub stars

jmapc

Currently implemented:

  • Basic models
  • Request methods:
    • Core/echo
    • Email/changes
    • Email/copy
    • Email/get
    • Email/query
    • Email/queryChanges
    • Email/set
    • EmailSubmission/* (get, changes, query, queryChanges, set)
    • Identity/* (get, changes, set)
    • Mailbox/* (get, changes, query, queryChanges, set)
    • Thread/* (get, changes)
    • Arbitrary methods via the CustomMethod class
  • Combined requests with support for result references
  • Basic JMAP method response error handling
  • EventSource event handling
  • Unit tests for basic functionality and methods

Installation

jmapc is available on PyPI:

pip install jmapc

Development

Prerequisites: Poetry

  • Repository setup: poetry install
  • Run all tests: poetry run poe test
  • Fix linting errors: poetry run poe lint

Examples

Any of the included examples can be invoked with poetry run:

JMAP_HOST=jmap.example.com \
JMAP_API_TOKEN=ness__pk_fire \
poetry run examples/identity_get.py

If successful, examples/identity_get.py should output something like:

Identity 12345 is for Ness at ness@onett.example.com
Identity 67890 is for Ness at ness-alternate@onett.example.com

Created from smkent/cookie-python using cookiecutter

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jmapc-0.2.4.tar.gz (30.7 kB view hashes)

Uploaded Source

Built Distribution

jmapc-0.2.4-py3-none-any.whl (33.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page