91 Commits

Author SHA1 Message Date
Mads L. Nielsen
aa8709359f
Merge branch 'master' into master 2026-05-26 09:21:47 +02:00
Bernhard B
6e7941b1c1 improved plugin mechanism + added sqlite3 plugin 2026-05-23 13:18:37 +02:00
zetles
0651bca94b fix: Fixed potential errors / vulnerabilities found by gosec 2026-05-21 14:48:06 +02:00
Era Dorta
3dd0001a32 Set docs version dynamically. 2026-04-06 18:15:06 +02:00
Bernhard B
eb34542216 increased timeout to account for slow startup on slow machines 2026-04-01 22:47:21 +02:00
Bernhard B
7687c5240b added API endpoints for pinning/unpinning messages in groups
see #820
2026-04-01 22:47:21 +02:00
Bernhard B
f142e8089c added new json-rpc-native mode 2026-03-21 19:49:26 +01:00
Brian (bex) Exelbierd
2760fe0b70 add --ignore-avatars and --ignore-stickers support
Expose the new signal-cli v0.14.0 --ignore-avatars and --ignore-stickers
flags across all modes:

* JSON-RPC mode: JSON_RPC_IGNORE_AVATARS and JSON_RPC_IGNORE_STICKERS
  environment variables
* Normal/Native mode: ignore_avatars and ignore_stickers query parameters
  on the /v1/receive endpoint
* Auto-receive scheduler: AUTO_RECEIVE_SCHEDULE_IGNORE_AVATARS and
  AUTO_RECEIVE_SCHEDULE_IGNORE_STICKERS environment variables

Follows the existing pattern of --ignore-attachments and --ignore-stories.

Refs #776, #723

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-07 22:52:26 +01:00
Bernhard B
af18c7aea8 switched to signal-cli daemon mode
* this gets rid off the ugly netcat workaround and should improve
  the general stability of the connection to the signal-cli binary
  in json-rpc mode.
2026-03-05 20:41:17 +01:00
Bernhard B
7711ad5503 added REST API endpoints for Signal Polls
see #765
2026-01-24 17:37:20 +01:00
Samuel Rodrigues
2e507699c5 Changed the ListDevices endpoint to return the device id, created three new endpoints, one to return the device link to permit new device links without the qrcode, one to remove the linked devices and another to delete local-data 2026-01-08 15:46:13 +00:00
Bernhard B
08cd2bd12c added two new endpoints
* added endpoint to list a contact
* added endpoint to get a contact's avatar
2025-09-30 22:31:10 +02:00
Era Dorta
af3eadbbc0 Replace the handler from post to delete 2025-08-29 19:59:56 +02:00
Era Dorta
9325022e46 Add message deletion endpoint 2025-08-28 00:27:09 +02:00
Bernhard B
e87ff58762 fixed typo in error message
see #729
2025-08-01 21:12:39 +02:00
Bernhard B
94cf8100ba added possibility to call a webhook when a message is received 2025-06-29 16:42:43 +02:00
Bernhard B
b3a6ee1e5d added new endpoint to return a group's avatar 2025-06-03 22:18:29 +02:00
Bernhard B
40bbdc63f1 added env variable LOG_LEVEL
* this environment variable allows to change the log level of the
  application
2025-04-22 23:35:01 +02:00
Bernhard B
60c395d4a8 fixed bug in swagger documentation
* use configured SWAGGER_HOST env variable when generating
  the URL for the swagger documentation file.

see #683
2025-04-14 22:49:21 +02:00
Bernhard B
3497b3d806 exposed 'listDevices' signal-cli command via REST
* the signal-cli command 'listDevices' is now exposed as
  /v1/devices/<number> endpoint.

see #676
2025-03-30 23:14:16 +02:00
Bernhard B
4404929c90 added API endpoints to set/remove a pin
see #660
2025-02-26 22:26:13 +01:00
Bernhard B
49f121a249 implemented plugin endpoints as shared objects
* the plugin mechanism is an optional extension to the REST
  API. As the plugin mechanism depends on gopher-lua (and a bunch of
  gopher-lua plugins), it adds quite some dependencies to the project.
  Since most of the REST API users won't need the plugin mechanism, it
  makes sense to move that functionality (including all the
  dependencies) to a dedicated shared object, which gets loaded when
  needed.
2025-02-03 23:23:07 +01:00
Bernhard B
3914178ec7 add possibility to specify HTTPS as default scheme in the swagger UI
see #639
2025-01-06 22:29:55 +01:00
Bernhard B
3752538e9b added plugin mechanism 2025-01-06 22:08:29 +01:00
crummy
26a5a6039b Update swagger files from code, with swag tool 2024-10-28 13:07:05 +13:00
Klaas Sangers
531c673b7e Add SWAGGER_HOST environment variable support
- Add `SWAGGER_HOST` environment variable to `README.md` for Swagger UI configuration.
- Update `main.go` to use `SWAGGER_HOST` environment variable for Swagger UI host configuration.
2024-08-03 16:41:13 +02:00
mattwr18
ee10b6bc32 Expose listContacts endpoint 2024-06-18 18:40:32 +02:00
Brett Profitt
44cc1692a9 Add endpoint support for read receipts. 2024-05-10 20:29:57 -04:00
Jonathan Neidel
b23ee29b1f Add support for read receipts on /receive 2024-04-26 12:50:53 +02:00
Bernhard B
efee49e792 add API endpoints to list and add sticker packs
see #398
2024-03-13 21:10:23 +01:00
Bernhard B
f57512216c added endpoints to set/remove a username + change the account settings 2024-03-06 18:27:17 +01:00
Bernhard B
13236b7c66 added /v1/rate-limit-challenge endpoint
see #456
2023-12-01 21:29:00 +01:00
Tomek Osika
385a591b32 get accounts 2023-11-12 02:19:13 +01:00
Bernhard B
9e09775d94 implemented "sendContacts" functionality
see #416
2023-10-07 11:18:16 +02:00
Greyson Parrelli
4eaf9a971b Update to a PUT request. 2023-09-09 08:00:33 -04:00
Greyson Parrelli
6ec00f4589 Add the ability to refresh a group. 2023-09-06 00:59:14 -04:00
Bernhard B
4dc19813b6 fixed bug in search endpoint
* when multiple accounts are registered, signal-cli expects the account
  specified with '-a'. In order to stay backwards compatible, the search
  endpoint was extended with an optional number parameter. i.e:
  '/search/{number}'. In case only one account is registered, the number
  parameter can be omitted.

see #369
2023-05-26 18:09:06 +02:00
Bernhard B
99c760df66 handle non existing accounts.json gracefully
see #363
2023-05-16 21:26:26 +02:00
Bernhard B
0dd742cb23 extended receive endpoint + AUTO_RECEIVE_SCHEDULE functionality
* added timeout, ignore_attachments and ignore_stories query parameter
  to receive endpoint.

* added AUTO_RECEIVE_SCHEDULE_RECEIVE_TIMEOUT,
  AUTO_RECEIVE_SCHEDULE_IGNORE_ATTACHMENTS and
  AUTO_RECEIVE_SCHEDULE_IGNORE_STORIES environment variables to the
  AUTO_RECEIVE_SCHEDULE functionality.

see #365
2023-05-14 21:21:38 +02:00
Bernhard B
99da94d048 consider linked number in AUTO_RECEIVE_SCHEDULE
* up to now, linked numbers weren't considered in the
  AUTO_RECEIVE_SCHEDULE.

see #363
2023-05-11 20:49:23 +02:00
Bernhard B
798f897ad1 added trust mode parameter to json-rpc mode
see #240
2022-05-08 20:23:54 +02:00
Bernhard B
25775a4c10 implemented trust mode
* implemented possibility to set the trust mode globally

see #240
2022-05-06 19:28:23 +02:00
Bernhard B
d34fcb905e added new API endpoints to add/remove admins to/from Signal Groups
see #232
2022-03-29 19:20:57 +02:00
Bernhard B
3fcd6221d2 added new REST API endpoints
* added endpoint to add members to an existing group
* added endpoint to remove members from an existing group

see #210
2022-03-20 20:39:40 +01:00
Bernhard B
cc3277c64a added 'add device' endpoint
see #165
2022-03-19 19:00:48 +01:00
Bernhard B
8a0ce92936 added "update contacts" endpoint
see #228
2022-03-13 20:10:15 +01:00
Bernhard B
bede4bc022 fixed swagger.json url
* the url to the swagger.json uses now the correct ip address.

see #225
2022-03-06 18:11:06 +01:00
Bernhard B
f411b558a8 made swagger ip configurable
* the swagger ip used in the interactive examples is now configurable.

see #225
2022-03-04 21:18:36 +01:00
Bernhard B
ba7e2358c5 made http scheme in swagger documentation the default 2022-02-19 11:22:45 +01:00
Bernhard B
1f622e3305 added unregister API endpoint
see #71
2022-01-15 19:54:09 +01:00