Which API is used in controller-based architectures to interact with edge devices?