Skip to main content

Small python library for the Signal Cli REST API

Project description

Small python library for the Signal Cli REST API

Quickstart

If you have set up the REST API already, you can start sending and receiving messages in Python!

Intialize the client

# Seperated for clarity
SERVER = "http://localhose:8080" # Your server address and port
SERVER_NUMBER ="+123456789" # The phone number you registered with the API


signal = SignalCliRestApi(SERVER,SERVER_NUMBER) 

Send a message

myMessage = "Hello World" # Your message
myFriendSteve = +987654321 # The number you want to message (must be registered with Signal)

sendMe = signal.send_message(message=myMessage,recipients=myFriendSteve)

receive messages

myMessages = signal.receive(send_read_receipts=True) # Send read receipts so everyone knows you have seen their message

Endpoint progress tracking

Anything that was already part of the package before I added stuff should work, but I haven't fully tested all the ones I have added, which is why I haven't tried to merge yet! If an endpoint is not listed, assume it is not added.

General

Service Status Function Name Notes
about Working about() Was already here.
No other general endpoints have been added.

Devices

No device endpoints have been added.

Accounts

No accounts endpoints have been added.

Groups

Service Status Function Name Notes
GET groups Working list_groups()
POST groups In Progress create_group() Have not run into any issues yet
GET group Working get_group() Want to try messing with the group IDs to see how it reacts
PUT group Working update_group() Images now work
DELETE group In Progress delete_group() Need to try deleting a group that I do not own
POST group admins In Progress add_group_admins() Need to try different number types and formats
DELETE group admins In Progress remove_group_admins() Need to try different number types and formats
POST block group Untested block_group() Need a group I didn't create to test with
POST join group Untested join_group() Need a group I didn't create to test with
POST group members In Progress add_group_members() Need to try different number types and formats
DELETE group members In Progress remove_group_members() Need to try different number types and formats
POST quit group Untested leave_group() Need a group I didn't create to test with

Messages

Service Status Function Name Description
receive Working receive() Was working when I got here, added some more args and a docstring
send Working* send_message() Have not tested with API V1

Attachments

Service Status Function Name Description
attachments Working list_attachments() Converted to new sender
GET attachment Working get_attachment() Converted to new sender
DELETE attachment Working delete_attachment() Haven't touched

Profiles

Service Status Function Name Description
profiles Testing update_profile Converted to new sender, no issues yet

Identities

Service Status Function Name Description
identities Working list_identities()
trust identities In Progress verify_identity() Not sure if this should be renamed, also had some issues with the trust all known keys

Reactions

Service Status Function Name Description
POST reaction Working add_reaction()
DELETE reaction Working remove_reaction()

Receipts

Service Status Function Name Description
receipts In Progress send_receipt()

Search

Service Status Function Name Description
search Working* search() Seems to only work with numbers in your account region?

Sticker Packs

No sticker pack endpoints have been added.

Contacts

Service Status Function Name Description
GET contacts Working get_contacts()
POST contacts Untested update_contact() Must have API set up as main device, which mine is not
sync contacts Untested sync_contacts() Must have API set up as main device, which mine is not

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pysignalclirestapi-0.3.25.tar.gz (13.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pysignalclirestapi-0.3.25-py3-none-any.whl (12.9 kB view details)

Uploaded Python 3

File details

Details for the file pysignalclirestapi-0.3.25.tar.gz.

File metadata

  • Download URL: pysignalclirestapi-0.3.25.tar.gz
  • Upload date:
  • Size: 13.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.2

File hashes

Hashes for pysignalclirestapi-0.3.25.tar.gz
Algorithm Hash digest
SHA256 b538966e5bb1699314359827d6aea1560815eba377ae6caaa4ae4140ecefe72b
MD5 9f5cc07057c8a979afccf624ba823949
BLAKE2b-256 aa531e17f9790800de3340f1a166c2370023714127d5a44404eadec8746110d0

See more details on using hashes here.

File details

Details for the file pysignalclirestapi-0.3.25-py3-none-any.whl.

File metadata

File hashes

Hashes for pysignalclirestapi-0.3.25-py3-none-any.whl
Algorithm Hash digest
SHA256 ab8f68b388d48283f44c5a346c31ab0d415883e44f56f99cc0f03391e3000f01
MD5 28fd6533f3fccc4e6584fb48dd256019
BLAKE2b-256 8db759551f6fbf58d24de61dc7ec5217b70dd76b11e051f176b4eb6e273b7573

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page