Can permissions be set via the API?

I am looking to set Group permissions, for both site Roles, as well as the group-level roles (correct terminology?) of "Manager", "Member", and "Owner".  And by setting permissions, I mean setting the fine-grained permissions like "Create Posts", "Read Blog", "Rate Post", etc.

Based on what I see, there is no REST API for this.

Assuming that is correct, we are looking to develop a custom REST API as a plugin.  We have found the API to set permissions based on the site Role, but not for the group-level roles of "Manager", "Member", and "Owner".

Q1: Is it correct that the REST API has no ability to set these permissions?

Q2: Is there an in-process API to set permissions for the group-level "Manager", "Member", and "Owner" roles?

Q3: Is there a way to tie in to the built-in authentication so that our REST API validates the same API key as when we use the OOTB endpoints?

Many thanks.