Skip to main content

A JMAP client library for Python

Project description

jmapc

A JMAP client library for Python

License PyPI Python CI Coverage Renovate 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)
    • SearchSnippet/* (get)
    • Thread/* (get, changes)
    • Arbitrary methods via the CustomMethod class
  • Fastmail-specific methods:
  • Combined requests with support for result references
  • Basic JMAP method response error handling
  • EventSource event handling
  • Unit tests for basic functionality and methods

Installation

Install in any environment where pip is available:

pip install jmapc

Installation in projects

Install in a project, such as with uv or poetry:

uv add jmapc
poetry add jmapc

Examples

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

JMAP_HOST=jmap.example.com \
JMAP_API_TOKEN=ness__pk_fire \
uv 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

Project template

This project is generated and maintained with copier-python.

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.3.0.tar.gz (46.6 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.3.0-py3-none-any.whl (36.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: jmapc-0.3.0.tar.gz
  • Upload date:
  • Size: 46.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for jmapc-0.3.0.tar.gz
Algorithm Hash digest
SHA256 66b22e0217ab914d2a0ff788f17db2985630110f4b43be71db407ab91488aac0
MD5 160a7f1a0d97e8b48181500de416ed51
BLAKE2b-256 d4413ccc2078893827beb82c0154f4cab0bd35ecc8cbc4e76841f0288aa031c6

See more details on using hashes here.

Provenance

The following attestation bundles were made for jmapc-0.3.0.tar.gz:

Publisher: release.yaml on smkent/jmapc

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

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

File metadata

  • Download URL: jmapc-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 36.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for jmapc-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8380fff64c9f0ccf5da167a9cfdf47675678571a88bd0c194e64659c847dd1c8
MD5 edb34cbbce0e5d5ab7c8fae9c744744f
BLAKE2b-256 92db685ec010eba840f5f94dc486787ef664df038615ca37bc43f835b63de55f

See more details on using hashes here.

Provenance

The following attestation bundles were made for jmapc-0.3.0-py3-none-any.whl:

Publisher: release.yaml on smkent/jmapc

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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