API request for specific category permissions

Users don’t join categories. They join groups. You can then use groups to control access to categories.

If you’re planning to have the users use Discourse, and not do this via some remote system that you’re trying to integrate, then it just works.

Or maybe you want to display categories for people who aren’t group members?