Commit Graph

231 Commits

Author SHA1 Message Date
Abdullah Atta
cfe2875a67 api: refactor user subscription check for monograph embed & links 2025-10-07 16:44:15 +05:00
Abdullah Atta
9860df2379 identity: refactor sms mfa authorization check 2025-10-07 16:44:15 +05:00
Abdullah Atta
cc459f9fea common: add paddle v1 api client 2025-10-07 16:44:15 +05:00
Abdullah Atta
9e6a25ec1d common: fix plan change if subscription is trialing 2025-10-07 16:44:15 +05:00
Abdullah Atta
6304d8178f identity: fix delete subscription handling 2025-10-07 16:44:15 +05:00
Abdullah Atta
500a64de18 identity: use subscription v2 types & api 2025-10-07 16:44:15 +05:00
Abdullah Atta
55a2223198 common: add subscribe with semaphore to wamp to allow serial messaging 2025-10-07 16:44:15 +05:00
Abdullah Atta
3beb716b83 common: add paddle billing api client 2025-10-07 16:44:15 +05:00
Abdullah Atta
ed6e3c56f2 api: minor refactors aimed at improving memory consumption 2025-10-07 16:44:15 +05:00
Abdullah Atta
579e65b0be api: add support for storage limits 2025-10-07 16:44:15 +05:00
Abdullah Atta
b3dcdda697 api: improve sync hub auth 2025-10-07 16:44:15 +05:00
Abdullah Atta
44a9ff57e7 common: add new subscription types 2025-10-07 16:44:15 +05:00
Abdullah Atta
4361b90425 api: minor refactors 2025-10-07 16:44:15 +05:00
01zulfi
3471ecb21a feat: set up public inbox api server (#52)
* feat: set up public inbox api server

* feat: add zod validation for raw inbox item

* chore: update encrypted item type && raw inbox item schema

* feat: use symmetric & asymmetric combination for inbox encryption

* chore: improve error handling

* chore: update encrypted item type

* feat: add Dockerfile for Notesnook.Inbox.Api
2025-10-06 12:22:25 +05:00
01zulfi
5a9b98fd06 inbox: add GET public inbox key & POST inbox items endpoint (#51)
* inbox: add GET public inbox key && POST inbox items endpoint

* inbox: update SyncItem to support inbox items

* inbox: update post inbox items request payload

* inbox: update post inbox item endpoint
2025-10-06 12:21:31 +05:00
Abdullah Atta
34e5dc6a20 identity: fix super_strict rate limiting policy 2025-09-25 09:07:56 +05:00
Abdullah Atta
8f8c60e0b3 api: fix error on user patch 2025-09-17 11:38:33 +05:00
01zulfi
9b774d640c feat: get, add, & delete user's inbox api tokens (#50)
* feat: get, add, & delete user's inbox api tokens

* inbox: generate inbox api key on the server

* inbox: use nanoid to generate api key && set created date on server

* inbox: set api key in constructor && increase default expiry date to 1 year
2025-09-16 08:40:52 +05:00
Abdullah Atta
4a0aee1c44 monograph: fix json content serialized as html 2025-09-15 12:30:28 +05:00
Abdullah Atta
97fbd3226d monograph: add support for webrisk api for analyzing urls for pro users 2025-09-15 11:22:37 +05:00
Abdullah Atta
0f43b3ee66 monograph: remove links, embeds & images for non-pro users 2025-09-15 09:19:16 +05:00
Abdullah Atta
b469da70e8 api: only expose /metrics endpoint internally 2025-09-10 09:33:19 +05:00
01zulfi
10e33de897 api: include inbox keys in get user endpoint (#48) 2025-09-09 19:44:08 +05:00
01zulfi
6e8fb81ade sync: ensure monographs sync for first time ever on an existing device (#44) 2025-09-06 09:33:18 +05:00
01zulfi
34a09ad15d inbox: store user's inbox keys (#47) 2025-09-06 09:32:44 +05:00
Abdullah Atta
201a235357 identity: make otp rate limiting more strict 2025-08-25 10:46:31 +05:00
01zulfi
e68b8f7e7c sync: add RequestFetchV2 hub method (#43) 2025-08-20 11:20:50 +05:00
Abdullah Atta
a5b3a12914 monograph: fix some monographs can't be unpublished 2025-08-19 14:23:56 +05:00
Abdullah Atta
3ed30b206c api: run device cleanup job 1st of every month 2025-08-19 14:00:55 +05:00
Abdullah Atta
1344199807 api: add job to cleanup stale devices every 30 days 2025-08-19 12:24:43 +05:00
Abdullah Atta
33a189fe91 api: minor refactor v1.0-beta.3 2025-08-18 23:44:22 +05:00
Abdullah Atta
2f361db9df monographs: fix monographs not appearing on clients 2025-08-18 23:44:22 +05:00
Minecon724
bf6cd6cd46 docker: fix the mongo healthcheck (#42) 2025-08-18 23:43:01 +05:00
Abdullah Atta
54266d1ba3 sync: disable SendMonographs on sync since its not supported by clients yet 2025-08-18 18:23:42 +05:00
Abdullah Atta
d3894d2a9f sync: fix StorageLimit does not match any field or property 2025-08-18 17:54:14 +05:00
Abdullah Atta
00c089e677 docker: get rid of initiate-rs0 2025-08-18 14:22:31 +05:00
dyw770
fa8f69157a docker: Fix MongoDB container volume error (#12) v1.0-beta.2 2025-08-18 13:34:31 +05:00
dyw770
30d5394425 api: fix s3 multipart upload (#22)
* api: fix s3 multipart upload use external s3 url

* api: fix s3 multipart upload use external s3 url

* api: fix CompleteMultipartUploadRequest can not deserialize

* api: start multipart upload use s3 internal url

* Update Notesnook.API/Models/PartETagWrapper.cs

remove default constructor

Co-authored-by: Abdullah Atta <thecodrr@protonmail.com>

* api: remove default constructor

Co-authored-by: Abdullah Atta <thecodrr@protonmail.com>

* api: merge method call

Co-authored-by: Abdullah Atta <thecodrr@protonmail.com>

* api: revocation due to conflict

* api: revocation due to conflict

---------

Co-authored-by: Abdullah Atta <thecodrr@protonmail.com>
2025-08-18 13:33:49 +05:00
Vsevolod Volkov
037bf4c3ea api: update S3 client mode for presigned URL generation to EXTERNAL (#33)
Signed-off-by: Vsevolod Volkov <73965070+StLyn4@users.noreply.github.com>
2025-08-18 11:48:48 +05:00
01zulfi
6d6342dbff api: add user's monograph passwords key (#41) 2025-08-18 11:45:42 +05:00
01zulfi
8df70c81fc monograph: fix existing item condition in update endpoint (#40) 2025-08-04 13:00:55 +05:00
01zulfi
bf2e6efeff monograph: add sync support (#39)
* monograph: add sync support

* monograph: fix password field && improve syncing logic && fix delete endpoint

* sync: get rid of unnecessary .ToList & ToListAsync

* sync: AddIdsToAllDevices is no longer asynchronous

* monograph: simplify and fix several bugs

- we were sending the triggerSync event to all users instead of all devices
- asynchronous methods did not have the `Async` suffix
- we weren't properly replacing the deleted monograph

* monograph: fix minor issues
* fix publishing
* don't return deleted monograph in monographs/:id endpoint
* persist UserId when soft deleting monograph

* monograph: check soft delete status in several endpoints

---------

Co-authored-by: Abdullah Atta <abdullahatta@streetwriters.co>
2025-08-04 11:51:15 +05:00
Abdullah Atta
1e2ef0685d sync: don't break the loop if device id is same 2025-08-02 09:17:36 +05:00
Abdullah Atta
c1f0e24d21 sync: update LastAccessTime on push, pull & register 2025-08-01 11:39:18 +05:00
Abdullah Atta
a96b0e1e42 sync: use synchronous locks instead of semaphores 2025-08-01 10:52:48 +05:00
Abdullah Atta
76af2cbfc8 identity: fix 2fa recovery codes not working 2025-07-15 13:35:07 +05:00
Abdullah Atta
34fa43f302 global: add some basic rate limiting 2025-07-15 13:34:31 +05:00
Abdullah Atta
8c267e51f4 common: add gift card to SubscriptionProvider 2025-07-15 13:33:54 +05:00
Abdullah Atta
182558136a identify: validate mfa methods against user's enabled methods 2025-04-30 11:48:50 +05:00
Abdullah Atta
8d3b0d6dbf identity: validate mfa method against user's mfa methods 2025-04-30 11:45:18 +05:00