Carlos Quintana
f05f01bf77
chore: QOL improvements on alias delete due to cascade FKs ( #2144 )
2024-07-08 14:39:18 +00:00
Adrià Casajús
8a77a8b251
Create jobs to trigger sending all alias as create events ( #2126 )
...
* Create jobs to trigger sending all alias as create events
* Set events in past tense
* fix test
* Removed debug log
* Log messages
2024-06-07 13:36:18 +00:00
Carlos Quintana
3e0b7bb369
Add sync events ( #2113 )
...
* feat: add protocol buffers for events
* chore: add EventDispatcher
* chore: add WebhookEvent class
* chore: emit events
* feat: initial version of event listener
* chore: emit user plan change with new timestamp
* feat: emit metrics + add alias status to create event
* chore: add newrelic decorator to functions
* fix: event emitter fixes
* fix: take null end_time into account
* fix: avoid double-commits
* chore: move UserDeleted event to User.delete method
* db: add index to sync_event created_at and taken_time columns
* chore: add index to model
2024-05-23 10:27:08 +02:00
Son Nguyen Kim
7705fa1c9b
reduce rate limit on /v2/aliases endpoint ( #1979 )
...
Co-authored-by: Son NK <son@simplelogin.io>
2023-12-27 16:42:58 +01:00
Adrià Casajús
2a9c1c5658
Increase limit for the dashboard and do it by user
2023-12-19 17:27:55 +01:00
Adrià Casajús
f81f8ca032
Further limit the index endpoint ( #1950 )
2023-11-21 17:44:33 +01:00
Adrià Casajús
45575261dc
Rate limit index endpoint ( #1948 )
2023-11-21 14:42:24 +01:00
Adrià Casajús
5dde39eb37
Prevent free users from creating reverse-alias
2022-05-12 13:20:05 +02:00
Son
a2c477a816
support "enabled" param in /api/v2/aliases
2022-04-28 17:24:35 +02:00
Son
58b332b7bc
add new parameter disabled in /GET /api/v2/aliases
2022-04-25 09:22:29 +02:00
Son
4d1c4cfdff
support pinned parameter in /api/v2/aliases
2022-02-03 11:16:49 +01:00
Son
b929dc5462
check if alias is not none
2022-01-18 09:40:50 +01:00
Son
1bdae7fbe8
handle CannotCreateContactForReverseAlias when user creates a new contact
2022-01-07 10:47:36 +01:00
Son
fdfa286d3e
allow contact email to be case sensitive
2021-11-18 16:44:04 +01:00
Son
9f9b470ab8
fix
2021-11-08 11:52:41 +01:00
Son
d7971953ac
return error if name too long when updating alias
2021-11-08 11:26:10 +01:00
Son
bc4805b1fa
Add POST /api/contacts/:contact_id/toggle
2021-10-28 10:14:20 +02:00
Son
372466ab06
do not use flask-sqlalchemy
...
- add __tablename__ for all models
- use sa and orm instead of db
- rollback all changes in tests
- remove session in @app.teardown_appcontext
2021-10-12 14:36:47 +02:00
Son Nguyen Kim
638e8137ec
fix test
2021-09-10 17:10:05 +02:00
Son Nguyen Kim
3ad4b6b76f
use flanker instead of parseaddr_unicode
2021-09-10 17:06:38 +02:00
Son NK
d5de99afe9
Restore /alias/custom/new as currently used by safari
2021-03-31 14:41:32 +02:00
Son NK
c87fe55898
POST /api/aliases/:alias_id/contacts: return 200 and existed=true
if contact is already added.
2021-03-17 20:29:34 +01:00
Son NK
0ee0167b8e
fix test
2021-01-11 12:31:05 +01:00
Son NK
01858ac452
sanitize contact email
2021-01-11 12:27:02 +01:00
Son Nguyen Kim
bf139f83b3
Merge pull request #342 from herrboyer/linting
...
Linting
2020-12-07 17:45:50 +01:00
Renaud Boyer
a2f3aeeece
linting
2020-12-06 22:10:42 +01:00
Son NK
ce2d68a64d
take into account include_sender_in_reverse_alias when creating reverse-alias
2020-12-06 19:37:20 +01:00
Son NK
836b602316
fix
2020-11-22 13:50:57 +01:00
Son NK
fbf242f6c6
handle new name can be null
2020-11-22 12:10:19 +01:00
Son NK
78ddf16c87
make sure alias name does not contain a linebreak
2020-11-20 18:39:23 +01:00
Son NK
319078fceb
use contact email when generating reply-email
2020-11-18 10:24:39 +01:00
Son NK
145fc9c67c
Add reverse_alias_address to GET /api/aliases/:alias_id/activities
2020-11-17 09:27:30 +01:00
Son NK
75ba1669e0
Create generate_reply_email() and refactor
2020-11-16 19:15:09 +01:00
Son NK
ae05c164c9
Support pinned in PATCH /api/aliases/:alias_id
2020-11-15 18:46:27 +01:00
Son NK
751cc05534
check contact address in POST /aliases/<int:alias_id>/contacts
2020-11-03 11:10:32 +01:00
Son NK
ec1b7dd8b8
return latest_activity=null if there's no activity in GET /api/v2/aliases
2020-11-01 12:32:20 +01:00
Son NK
5cf0a4bcfe
handle case alias can be None in toggle_alias
2020-09-05 20:54:08 +02:00
Son NK
30fe09185f
create get_alias_infos_with_pagination_v3 - reduce nb queries used in get_alias_infos_with_pagination_v2
2020-08-21 19:51:48 +02:00
Son NK
2f00294ba3
replace pgp_enabled by disable_pgp
2020-08-06 14:22:28 +02:00
Son NK
b3ca7d1d5b
Return pgp_enabled in GET /api/v2/aliases
2020-08-04 20:11:59 +02:00
Son NK
03841693ba
Return support_pgp in GET /api/v2/aliases
2020-08-04 20:09:42 +02:00
Son NK
204f5f9a0c
fix alias can be none in delete alias endpoint
2020-06-28 09:48:21 +02:00
Son NK
02bd45bc4a
fix alias can be none in update alias endpoint
2020-06-28 09:48:21 +02:00
Son NK
774ffcae3b
enable CORS on /api endpoints
2020-06-24 10:30:01 +02:00
Son NK
45a8b360e4
handle case where alias is None
2020-06-19 23:44:16 +02:00
Son NK
ce4992c7fb
check if alias exists
2020-06-07 12:50:30 +02:00
Son NK
42b3666f45
use the alias v2 format for GET /api/aliases/:alias_id, POST /api/v2/alias/custom/new, POST /api/v2/alias/random/new
2020-05-23 19:18:24 +02:00
Son NK
6280512adf
move get mailboxes to mailbox.py
2020-05-23 16:46:10 +02:00
Son NK
b167297808
Support disable_pgp in update alias endpoint
2020-05-16 20:51:07 +02:00
Son NK
0b652cf3f8
remove AliasMailbox.user_id column
2020-05-15 16:35:57 +02:00