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

jmapc is in initial development.

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.2.tar.gz (30.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jmapc-0.2.2-py3-none-any.whl (32.8 kB view details)

Uploaded Python 3

File details

Details for the file jmapc-0.2.2.tar.gz.

File metadata

  • Download URL: jmapc-0.2.2.tar.gz
  • Upload date:
  • Size: 30.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for jmapc-0.2.2.tar.gz
Algorithm Hash digest
SHA256 e1bd6a9f5a08a2984f3d828f35fdd77948cd68311260c2925f86fef1dd2f8fca
MD5 2c780e45b8aaef711a7b11e1581f570f
BLAKE2b-256 cb3d70803dc0c144a0ad908886f66ea19d6c7a9f3434db582634a8f5684f51e0

See more details on using hashes here.

File details

Details for the file jmapc-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: jmapc-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 32.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for jmapc-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d309561b8d2792cb5d504fc7afbc026894befa1592581afc0bd29d3156caf7a0
MD5 05b3fc143ad46c76a90c83f8e7f191f3
BLAKE2b-256 b89efe309b4b0c40ba033bfe393e450be44b68d8eecda2c1dc643e21bb7879f9

See more details on using hashes here.

Supported by

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