Create the different entities in DAL and DTO.
Create an API for the registration request.
If a standard login API with username and password does not exist, create it as well.
Create an API that allows the admin to view users who want to register.
Create an API that allows the admin to approve a new user.
Assign the appropriate permissions to all existing and new API calls.