What I’d do is try to get some statistics about the usage of API and then test the performance of the ones that are used the most, to see how much they can handle. As for the users, you could you some library (like Faker) to generate large amounts of credible-looking fake data:
The above are good ideas from a pragmatic perspective of “Where is the system likely to fail under real usage?”
From a systems perspective, if you’d like to get an understanding of your real bottlenecks are (and where things may fail in the future as the composition of “real usage” changes), I’d review the code and categorize endpoints as “High IO” (network/DB calls, writing to disk, etc) or “High CPU/Memory” since those scenarios are likely bottlenecks. Then I’d build those into my stress testing plan and as well.