Changelog

This changelog is generated automatically from GitHub Releases.

v0.4.1

2026-06-03 · GitHub

[0.4.1] - 2026-06-03

Changed

  • Migrate the HTTP backend from httpx to httpx2, the Pydantic-maintained fork, after the original httpx project paused releases and locked down its issue tracker. httpx2 is imported internally as httpx, so the public API and all call sites are unchanged.
  • TLS certificates are now validated against the operating system trust store (via truststore, the httpx2 default) instead of the bundled certifi CA list. If you self-host Listmonk behind a custom or corporate CA, install that CA in your OS trust store or set SSL_CERT_FILE / SSL_CERT_DIR. See the new SSL entry in the README F.A.Q.
  • If you pass a custom timeout_config, construct it with httpx2.Timeout(...) (now the bundled dependency) instead of httpx.Timeout(...).

v0.4.0

2026-04-08 · GitHub

[0.4.0] - 2026-04-08

Added

v0.3.13

2026-04-04 · GitHub

[0.3.13] - 2026-04-03

Fixed

  • Fix confirm_optin() returning False on non-English Listmonk instances by using HTTP status codes instead of hardcoded English response strings (fixes #23)

v0.3.12

2026-04-04 · GitHub

Make subscriber name optional, bump version to 0.3.12 to match Listmonk API/UI behavior (fixes #15)

This update aligns the SDK with the Listmonk API and UI by making the name field optional for subscribers. The change propagates through the data models (Subscriber, CreateSubscriberModel) and the create_subscriber() helper. The changelog is updated to reflect version 0.3.12, and the release comparison links are adjusted accordingly.

v0.3.11

2026-04-04 · GitHub

[0.3.11] - 2026-04-03

Fixed

  • Fix campaign creation failing with listmonk server 6.0.0 - headers field now correctly uses a list of dictionaries instead of a plain dictionary (PR #28)

v0.3.10

2026-01-28 · GitHub

[0.3.10] - 2026-01-28

Added

v0.3.9

2026-01-06 · GitHub

[0.3.9] - 2026-01-05

Added

Changed

  • Loosen some of the types to allow more flexible usage (avoid type errors when DTOs/ViewModels/etc have VALUE|None typing but are known to be in a good state)
  • Refactor client implementation to improve organization and maintainability

v0.3.8

2025-10-22 · GitHub

Added

  • Support for subject parameter in transactional templates (PR #24)
  • FAQ section to README.md (PR #22)
  • Four new API methods to the public interface
  • CLAUDE.md with project overview, development commands, code style, and key patterns
  • WARP.md documentation
  • Ruff formatting configuration

Changed

  • Extensive type annotation improvements for better IDE support (PyLance/VS Code)
  • HTTP response validation and parsing refactored for better error handling
  • Headers type fix: now properly uses string values instead of list of dictionaries
  • Code formatting with ruff throughout the codebase
  • Documentation improvements in README.md

Fixed

  • Custom exception renamed from FileNotFoundError to ListmonkFileNotFoundError to avoid builtin conflict
  • Non-string to string types in __all__ exports
  • Type inference error in code fragments

Thanks @neilime and @obrizan for the PRs.

v0.3.7

2025-05-24 · GitHub

Restores custom header functionality for send_transactional_email() And create/delete list was, well, deleted.

It looks like this was some kind of failed merge, maybe. I’m not sure what happened here. Sorry folks.

v0.3.6

2025-05-20 · GitHub

Bump version to fix project definition. strenum wasn’t included in the pyproject.toml’s dependencies. No functional changes.

v0.3.5

2025-05-18 · GitHub

Add an optional timeout parameter (httpx.Timeout) for all network operations.

v0.3.4

2025-05-07 · GitHub

Adds new features from two recent PRs:

  • Allow to send headers to the /api/tx endpoint. https://github.com/mikeckennedy/listmonk/pull/20
  • Create and delete lists. https://github.com/mikeckennedy/listmonk/pull/19

v0.3.3

2024-12-01 · GitHub

Adds support for this library on Python 3.10 by replacing enum.StrEnum with github.com/irgeek/StrEnum.

v0.3.0

2024-11-12 · GitHub

Adds two new features:

  • 📨 Manage campaign (bulk) emails from the API.
  • 🎨 Edit and create templates to control the over all look and feel of campaigns.

Thank you @pastorhudson for the PRs.

v0.2.1

2024-10-29 · GitHub

This release updates the library to work with Listmonk 4.0+ which was released yesterday.

v0.1.8

2024-04-06 · GitHub

Bug fix: Searching for users with listmonk.all_subscribers() with a query parameter crashes (on the server, should be 400 but here’s the fix nonetheless).

v0.1.7

2024-02-02 · GitHub

Add ability to add attachments to transactional mails, see #5

v0.1.6

2024-01-29 · GitHub

Make from email option on transactional emails.

v0.1.5

2024-01-24 · GitHub

Loosen some pydantic constraints for some situations.

v0.1.4

2024-01-22 · GitHub

Added doc strings for most data and methods and specific exception types.

v0.1.3

2024-01-21 · GitHub

Fix bug where emails with a + wouldn’t work on retrieval.

v0.1.2

2024-01-21 · GitHub

Added opt-in / confirm subscription method.