134 Commits

Author SHA1 Message Date
Bernhard B
4404929c90 added API endpoints to set/remove a pin
see #660
2025-02-26 22:26:13 +01:00
Malcolm Crum
4b05e8b409
Path parameter is required 2025-02-25 20:31:00 +11:00
Bernhard B
4f07a64d68 improved swagger documentation
* documented styling options in v2/send endpoint
2025-02-09 22:40:01 +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
3752538e9b added plugin mechanism 2025-01-06 22:08:29 +01:00
Bernhard B
d5a1d252a2 fixed swagger API documentation 2024-12-24 23:16:50 +01:00
Bernhard B
a70c2994c3 added possibility to escape formatting characters
see #562
2024-12-24 23:05:22 +01:00
Bernhard B
db97de3d81 fixed swagger documentation for search endpoint
see #622
2024-11-29 22:21:31 +01:00
Bernhard B
2c4ef753ab added expiration_time to Update Groups endpoint
see #616
2024-11-15 22:43:02 +01:00
Bernhard B.
6b08159fe3
Merge pull request #609 from crummy/master
Swagger fixes
2024-11-04 21:59:48 +01:00
crummy
3eeaafca4d Correct field name 2024-11-04 19:41:14 +13:00
crummy
d652d418d3 Return upon failure 2024-11-01 21:15:23 +13:00
crummy
1237c528f5 Found a proper way to escape it 2024-10-28 21:00:52 +13:00
crummy
d17e3d7eb9 Handle phone numbers that start with "%25" (as + is commonly escaped with) 2024-10-28 20:49:29 +13:00
crummy
8ac02d28eb Correct "number" - it's actually the phone number 2024-10-28 13:37:50 +13:00
crummy
26a5a6039b Update swagger files from code, with swag tool 2024-10-28 13:07:05 +13:00
Matthew Rider
57dcb2f281 Add a pointer to conditionally send about string to signal-cli 2024-10-22 10:27:32 +02:00
Matthew Rider
f6c3f263e8 Add ability to update about text in UpdateProfileRequest 2024-10-21 11:35:39 +02:00
Bernhard B
94e93cbe35 added expiration_time parameter to create group endpoint
see #587
2024-10-07 23:02:33 +02:00
Jonathan Beaulieu
47390f85df Add missing groupid parameter
Was missing from delete and add group admin and member.
2024-09-13 11:24:48 +00:00
Bernhard B.
4bf70dd456
Merge pull request #573 from ahatius/master
Add support to disable notify-self flag on /v2/send endpoint
2024-08-20 21:43:26 +02:00
Bernhard B
e6ff51e3d8 fixed deadlock in json-rpc mode
* properly unlock mutex to avoid deadlock

see #572
2024-08-09 23:03:22 +02:00
ahatius
8cd60ff6c3 Add support to disable notify-self flag on /v2/send endpoint 2024-08-07 18:54:24 +02:00
Bernhard B
f3289395ae fixed deadlock in Websocket write
* properly unlock mutex to avoid deadlock

see #572
2024-08-07 17:07:12 +02:00
Bernhard B
d1694ee88c add account to SendMessageError json response
* when a rate limiting error is returned, also include the account
  information (this is quite useful for multi account setups).

see #566
2024-07-23 20:42:29 +02:00
Bernhard B
cd996e1814 protect websocket write with mutex
* Gorilla Websocket only allows one concurrent writer. As there are
  multiple goroutines that could write concurrently to the websocket,
  the websocket write needs to be protected by a Mutext. This is not
  particular nice, but a complete rewrite of the connection handling
  would be quite a lot of work.

see #556
2024-07-09 21:19:49 +02:00
Bernhard B
8929326f5f beautified code with gofmt 2024-06-18 19:49:47 +02:00
mattwr18
ee10b6bc32 Expose listContacts endpoint 2024-06-18 18:40:32 +02:00
Bernhard B
bbd088fc0b added username support to /v2/send endpoint 2024-05-22 19:22:39 +02:00
Bernhard B
4b029b9e98 improved error handling
* ensure that number is provided in send receipt endpoint.
2024-05-11 17:27:54 +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
16a3f896ad return HTTP status code 429 in case of rate limiting 2024-03-28 19:28:13 +01:00
Bernhard B
0757c3bf53 Revert "added debug logging"
This reverts commit 3915bd83eb4eece70125dba9b350cf29abd9c496.
2024-03-28 19:27:34 +01:00
Bernhard B
3915bd83eb added debug logging 2024-03-27 16:37:36 +01:00
Bernhard B
d083ba84e3 fixed bug in /v2/send error parsing 2024-03-27 16:34:24 +01:00
Bernhard B
de631edfb0 return challenge tokens in send endpoint as explicit key 2024-03-25 16:11:04 +01: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
9c365e6f84 add possibility to edit messages
see #485
2024-03-07 20:11:57 +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
03af708f11 added hidden 'recipient' parameter to /v2/send endpoint
* some REST API consumers (like the Synology NAS) do not allow
  to use an array for the recipients. So, in order to support
  those platforms as well, a 'recipient' string parameter is added.

  As most users are perfectly fine with the array parameter, the
  recipient parameter won't be exposed in the Swagger UI.

see #428
2024-02-16 19:18:48 +01:00
Bernhard B
d5210041c6 fixed typo in swagger documentation
see #466
2024-01-08 20:49:29 +01:00
Bernhard B
3d7b73560a fixed bug in golang channel handling (json-rpc mode)
* golang channels are meant to be 1:1 channels, so if multiple
  goroutines listen on the same channel for messages, only one will
  receive the message and the others are not, which lead to lost
  messages.

  In order to fix that, we create a dedicated golang channel for every
  websocket connection.

see #451
2023-12-11 22:18:23 +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
c493655f14
Merge pull request #434 from bbernhard/multimaster_mode
Multimaster mode
2023-10-30 20:03:28 +01:00
Bernhard B
6feb7078f1 improved misleading comment 2023-10-30 20:00:16 +01:00
Bernhard B
a06a9f873b switched implementation to multi-account mode
* instead of starting signal-cli in json-rpc mode with the '-u',
  we start signal-cli without the '-u' parameter (also known as
  multi-account mode). This makes it possible to register a number in
  json-rpc mode.
2023-10-30 14:49:11 +01:00
Tomek Osika
56eaa7b79b update group name 2023-10-29 17:04:52 +01:00
Bernhard B
b45aab70a7 improved REST API documentation 2023-10-07 11:29:41 +02:00