Specify your phone number, that will be your identifier.
The phone number must include the country calling code, i.e. the number must start with a "+" sign.
+This flag must not be given for the `link` command.
+It is optional for the `daemon` command.
+For all other commands it is only optional if there is exactly one local user in the
+config directory.
+
*--dbus*::
Make request via user dbus.
*-a* [ATTACHMENT [ATTACHMENT ...]], *--attachment* [ATTACHMENT [ATTACHMENT ...]]::
Add one or more files as attachment.
+*--note-to-self*::
+Send the message to self without notification.
+
*-e*, *--endsession*::
Clear session state and send end session message.
*-r*, *--remove*::
Remove a reaction.
+=== remoteDelete
+
+Remotely delete a previously sent message.
+
+RECIPIENT::
+Specify the recipients’ phone number.
+
+*-g* GROUP, *--group* GROUP::
+Specify the recipient group ID in base64 encoding.
+
+*-t* TIMESTAMP, *--target-timestamp* TIMESTAMP::
+Specify the timestamp of the message to delete.
+
=== receive
Query the server for new messages.
=== joinGroup
Join a group via an invitation link.
+To be able to join a v2 group the account needs to have a profile (can be created
+with the `updateProfile` command)
*--uri*::
The invitation link URI (starts with `https://signal.group/#`)
Create or update a group.
If the user is a pending member, this command will accept the group invitation.
+To be able to join or create a v2 group the account needs to have a profile (can
+be created with the `updateProfile` command)
*-g* GROUP, *--group* GROUP::
Specify the recipient group ID in base64 encoding.
=== daemon
signal-cli can run in daemon mode and provides an experimental dbus interface.
+If no `-u` username is given, all local users will be exported as separate dbus
+objects under the same bus name.
*--system*::
Use DBus system bus instead of user bus.
Trust new key, without having verified it. Only use this if you don't care about security::
signal-cli -u USERNAME trust -a NUMBER
+== Exit codes
+* *1*: Error is probably caused and fixable by the user
+* *2*: Some unexpected error
+* *3*: Server or IO error
+* *4*: Sending failed due to untrusted key
+
== Files
The password and cryptographic keys are created when registering and stored in the current users home directory, the directory can be changed with *--config*: