Changelog¶
All notable changes to evolution-whatsapp are documented here. The format
follows the spirit of the R package's NEWS.md.
0.1.0 (unreleased)¶
First release — the Python twin of the R
evolution package.
Messaging (parity with R)¶
EvoClient/AsyncEvoClient: preconfigured sync and async clients onhttpx, with theapikeyheader, a custom User-Agent, configurable timeout (EVOLUTION_TIMEOUTenv ortimeout=) and automatic retries with backoff.send_text,send_status,send_media,send_whatsapp_audio,send_sticker,send_location,send_contact,send_reaction,send_buttons,send_poll,send_list— full parity with the Rsend_*family, including camelCase body keys andNone-compaction.check_is_whatsapp(+check_numbersalias) andjid()(vectorized).- Local file paths (incl.
~) auto-encoded to base64 forsend_media,send_sticker,send_whatsapp_audio. send_buttons/send_listemit a Baileys-not-supported warning suggestingsend_poll, matching the R behaviour.- Typed errors:
EvolutionAPIError(surfaces the API message), plusEvolutionConnectionErrorandEvolutionConfigError. - Structured, timed logging via
verbose=True(structlog).
New vs. the R package¶
connection_state()—GET /instance/connectionState/{instance}health check.- Receiving side for data pipelines: pydantic v2 event models and
parse_webhook(); optionalwebhook_router()(extrafastapi) andas_dataframe()(extrapandas).
Packaging¶
- Distribution
evolution-whatsapp; importevolution_api. mypy --strictclean,ruffclean, tested on Python 3.11/3.12/3.13.