pysignalclirestapi
Small python library for the Signal Cli REST API
Decision gist · record as of 2026-08-14
Yes, if you already have signal-cli-rest-api running and need a Python client. The library is actively maintained, has low install friction, and covers the core messaging use cases (send, receive, groups). However, be aware that many endpoints are marked untested or in-progress; test thoroughly before relying on group management or contact sync in production. The small community (30 stars) means fewer real-world bug reports.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- The signal-cli-rest-api HTTP service must be running and accessible at the specified server address, and your account must be registered with a valid Signal phone number.
- Low install friction with only two runtime dependencies (requests and six).
- Active maintenance with a recent commit on 2026-07-03 and a release on 2026-03-19, though the repository is small (30 stars) and the package acknowledges incomplete endpoint testing.
License · maintenance · safety
permissive license (permissive) — MIT license (permissive) means you can use, modify, and distribute this package freely with minimal restrictions.
last release 2026-03-19 (148 days) · last repo commit 2026-07-03 · 30 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 75,313 downloads/mo, #14,731 on PyPI
Alternatives
Verify before relying
pip install pysignalclirestapi
from pysignalclirestapi import SignalCliRestApi
signal = SignalCliRestApi(SERVER, SERVER_NUMBER)
message = signal.send_message(message=myMessage, recipients=myFriendSteve)
received = signal.receive(send_read_receipts=True)- Whether all endpoints marked 'In Progress' or 'Untested' in the documentation are production-ready or carry known limitations
- Compatibility with different versions of the signal-cli-rest-api backend service
- Whether the package works with both API V1 and V2 (send_message notes V1 untested)
What it is and what it does
pysignalclirestapi is a thin Python wrapper around the Signal Cli REST API, a separate HTTP service that bridges Signal messaging into programmatic workflows. It provides methods to send and receive Signal messages, manage groups, handle attachments, manage contacts, and interact with Signal identities and reactions—all by wrapping HTTP calls to an already-running signal-cli-rest-api server.
The library depends on requests for HTTP communication and six for Python 2/3 compatibility. Many endpoints are marked as working, but the maintainer notes incomplete testing on newer additions; some group operations, contact sync, and device-specific features remain untested or in-progress. You must have the signal-cli-rest-api service running separately and registered with a Signal phone number before using this library.
Use it for
- Send automated Signal notifications or alerts from a Python application to registered Signal users.
- Build a bot or automation that receives and responds to Signal messages programmatically.
- Manage Signal groups (create, update, add/remove members) from a Python script or service.
- Integrate Signal messaging into a larger application workflow without direct Signal client integration.
- Retrieve and manage Signal attachments, profiles, and contact information via API.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you already have signal-cli-rest-api running and need a Python client.
The library is actively maintained, has low install friction, and covers the core messaging use cases (send, receive, groups). However, be aware that many endpoints are marked untested or in-progress; test thoroughly before relying on group management or contact sync in production. The small community (30 stars) means fewer real-world bug reports.
Install
pysignalclirestapi on PyPI
Before you install
Low install friction with only two runtime dependencies (requests and six). Active maintenance with a recent commit on 2026-07-03 and a release on 2026-03-19, though the repository is small (30 stars) and the package acknowledges incomplete endpoint testing.
The signal-cli-rest-api HTTP service must be running and accessible at the specified server address, and your account must be registered with a valid Signal phone number.
License in practice
MIT license (permissive) means you can use, modify, and distribute this package freely with minimal restrictions.
Quickstart
pip install pysignalclirestapi
from pysignalclirestapi import SignalCliRestApi
signal = SignalCliRestApi(SERVER, SERVER_NUMBER)
message = signal.send_message(message=myMessage, recipients=myFriendSteve)
received = signal.receive(send_read_receipts=True)
Verify before relying
- Whether all endpoints marked 'In Progress' or 'Untested' in the documentation are production-ready or carry known limitations
- Compatibility with different versions of the signal-cli-rest-api backend service
- Whether the package works with both API V1 and V2 (send_message notes V1 untested)
Package facts
| License | permissive license permissive |
| Python support | Supports the current Python release >=2.7 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 2 packagesrequestssix |
| Maintenance | Actively maintained 148 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 75,313 / month, #14,731 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | License :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: Python :: 3 |
Evidence: pysignalclirestapi-0.3.25-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “signal messaging api python”
- pysignalclirestapiPython client library for the Signal Cli REST API, enabling…
- PyPyDispatcherPyPyDispatcher implements a multi-producer-multi-consumer signal…
- PypubsubProvides a publish-subscribe messaging system for event-driven…
Give your agent the search over MCP, or paste the wish link into any chat.
More Internet packages
Botocore provides low-level, data-driven access to Amazon Web Services APIs, serving as the foundation for the AWS CLI and boto3 libraries.
Install it if you need programmatic access to AWS services.
Provides an async client for AWS services using botocore and aiohttp, allowing you to call AWS APIs asynchronously within asyncio-based applications.
Install it if you need to call AWS services from async Python code; it is the standard way to do so.
Pydantic validates Python data structures against type hints, coercing and checking input at runtime to ensure it matches a declared schema.
Provides a platform-independent file locking mechanism to coordinate access to files across processes and threads.
FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.
Provides common Protocol Buffer message definitions used across Google Cloud APIs, enabling Python clients to interact with Google services.
See also pydiscourse · slackweb · PyDispatcher · qsAPI · smsapi-client · aiosignal · wslink · python-redmine · django-signal-webhooks · PyPyDispatcher