summaryrefslogtreecommitdiff
path: root/packages/backend/src/server/api
diff options
context:
space:
mode:
authorHazelnoot <acomputerdog@gmail.com>2025-02-05 10:04:42 -0500
committerHazelnoot <acomputerdog@gmail.com>2025-02-05 11:20:25 -0500
commitd4311ea041eb746f3fdc5b4d8dbba2adb2470380 (patch)
tree9eb763450503d20d1dbf42c42e80fd33e9ae0b68 /packages/backend/src/server/api
parentlookup and cache rate limit factors directly within SkRateLimiterService (diff)
downloadsharkey-d4311ea041eb746f3fdc5b4d8dbba2adb2470380.tar.gz
sharkey-d4311ea041eb746f3fdc5b4d8dbba2adb2470380.tar.bz2
sharkey-d4311ea041eb746f3fdc5b4d8dbba2adb2470380.zip
document new rate limit factor calculations
Diffstat (limited to 'packages/backend/src/server/api')
-rw-r--r--packages/backend/src/server/api/SkRateLimiterService.ts10
1 files changed, 9 insertions, 1 deletions
diff --git a/packages/backend/src/server/api/SkRateLimiterService.ts b/packages/backend/src/server/api/SkRateLimiterService.ts
index 70103222f3..038f12cb25 100644
--- a/packages/backend/src/server/api/SkRateLimiterService.ts
+++ b/packages/backend/src/server/api/SkRateLimiterService.ts
@@ -40,7 +40,15 @@ export class SkRateLimiterService {
}
/**
- * Check & increment a rate limit for a client
+ * Check & increment a rate limit for a client.
+ *
+ * If the client (actorOrUser) is passed as a string, then it uses the default rate limit factor from the role template.
+ * If the client (actorOrUser) is passed as an MiUser, then it queries the user's actual rate limit factor from their assigned roles.
+ *
+ * A factor of zero (0) will disable the limit, while any negative number will produce an error.
+ * A factor between zero (0) and one (1) will increase the limit from its default values (allowing more actions per time interval).
+ * A factor greater than one (1) will decrease the limit from its default values (allowing fewer actions per time interval).
+ *
* @param limit The limit definition
* @param actorOrUser authenticated client user or IP hash
*/