I’m quite not sure how you calculated the rate limit.
In term of endpoint not sure what you mean?
Example
Let says i have these 2 endpoints
{xxx}/users/{user1}/unread_message_count
{xxx}/users/{user2}/unread_message_count
Those 2 will calculated as same endpoints (use same rate limit)?
or those 2 have individual rate limit (not depend on each other)
This is a fantastic question. This ultimately boils down to whether the endpoint is listed under the explicit Rate-Limited APIs or not.
Taking your example, /{user_id}/unread_message_count is not listed there and thus both calls are captured under the Plan-based rate limitsGET
Now APIs that are outlined under the Rate-limited APIs are checked twice. First, we check it at the scope level of the specific call. For example, PUT /users/{user_id} is checked at the User scope meaning that a single user can only be updated 5 timers per second. However, these end points are also held to the plan based limit. Meaning, if you are only calling PUT /users/{user_id} 3 times per second for a specific user but you exceed the number of PUT requests for the overall plan, limiting will occur.
Example 1: PUT /users/john → 3 TPS
Outcome: No rate limit hit
Example 2: PUT /users/john → 6 TPS
Outcome: Rate limit hit on the 6th attempt each second
Example 3 (Assumes you have a 5K MAU Plan): PUT /users/john → 4 TPS PUT /users/harry → 4 TPS PUT //group_channels/{channel_url}/messages/mark_as_read → 3 TPS
Outcome: Rate limit hit as soon as the 11th PUT request is made.