Skip to main content

unlimited-messaging

Official Python client for the Unlimited Messaging API — send and receive WhatsApp messages programmatically.

PyPI version PyPI downloads PyPI total downloads Python versions License CI

Installation

pip install unlimited-messaging

Quick start

import os
from unlimited_messaging import UnlimitedMessagingApi

client = UnlimitedMessagingApi(
    token=os.environ["API_TOKEN"],
)

# Send a WhatsApp message
message = client.message.send(
    recipient="+33612345678",
    text="Hello!",
)

print(message.id, message.status)

Authentication

Get your API token from the dashboard and pass it as the token argument.

client = UnlimitedMessagingApi(token="your_api_token")

Examples

Send a message

message = client.message.send(
    recipient="+33612345678",
    text="Hello from the SDK!",
    sim_id="optional-sim-id",  # force a specific SIM
)

List messages

result = client.message.find_all(
    page=1,
    limit=20,
    status="DELIVERED",   # PENDING | SENDING | SENT | DELIVERED | READ | FAILED
    search="keyword",
)

print(f"{result.total} messages")
for msg in result.data:
    print(msg.id, msg.status, msg.text)

Get a single message

msg = client.message.find_one("message-id")
print(msg.id, msg.status, msg.text)

List linked SIMs

sims = client.sim.get_linked_sims()

for sim in sims:
    print(sim.id, sim.phone_number)

Async support

import asyncio
from unlimited_messaging import AsyncUnlimitedMessagingApi

client = AsyncUnlimitedMessagingApi(token="your_api_token")

async def main():
    message = await client.message.send(
        recipient="+33612345678",
        text="Hello async!",
    )
    print(message.id, message.status)

asyncio.run(main())

API reference

Method Description
message.send Send a WhatsApp message
message.find_all List messages with pagination and filters
message.find_one Get a single message by ID
sim.get_linked_sims List linked SIMs

Official documentation: docs.unlimitedmessaging.app Full OpenAPI spec: openapi.yaml

Metadata

Release files for unlimited-messaging 0.1.25

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for unlimited-messaging 0.1.25
File Size Uploaded Provenance Actions
unlimited_messaging-0.1.25.tar.gz 64.7 kB Without provenance Details for unlimited_messaging-0.1.25.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for unlimited-messaging 0.1.25
File Interpreter ABI Platform Actions
unlimited_messaging-0.1.25-py3-none-any.whl Python 3 none any Details for unlimited_messaging-0.1.25-py3-none-any.whl

Total release size: 239.6 kB

Release files / unlimited_messaging-0.1.25.tar.gz

Download URL unlimited_messaging-0.1.25.tar.gz
Size 64.7 kB
Tags Source
SHA-256 checksum
How to use checksums
1600f505c9fd4121f451951adaea79fdbda954e3dbe0d175c28564915db0e8f4
BLAKE2b-256 checksum
How to use checksums
11616355608b547c747a2b98c73025c10d8879fcac257d8391dd387bbf21e0a1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / unlimited_messaging-0.1.25-py3-none-any.whl

Download URL unlimited_messaging-0.1.25-py3-none-any.whl
Size 175.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7998cc0eb95f9d6a4f5c8340d2818f21782b31e2f0d202b0de8c1b2ce16d0475
BLAKE2b-256 checksum
How to use checksums
2175145789dade88f681f2f34ebc518cd645510babeda9cc9580db3212039e14
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Security for unlimited-messaging 0.1.25

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page