restricted api and types