--- id: pysignalclirestapi version: "0.3.25" license: unclear license_treatment: permissive maintenance: active --- # pysignalclirestapi — Small python library for the Signal Cli REST API License: permissive · Maintenance: active · Downloads: 75.3K/mo ## 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 above — verify before relying. Python client library for the Signal Cli REST API, enabling programmatic sending and receiving of Signal messages through an HTTP interface. 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 pip install pysignalclirestapi uv add pysignalclirestapi poetry add pysignalclirestapi ## Installing pysignalclirestapi 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. 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) 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. 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: not declared (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 75.3K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags signal messaging api python, signal cli rest client, send signal messages programmatically, signal api python wrapper, signal protocol http client, signal-messaging, rest-api-client [View on SkillFed](https://skillfed.io/packages/pysignalclirestapi) · [View on PyPI](https://pypi.org/project/pysignalclirestapi/)