Я знаю, что могу определить, запускается ли функция администратором с помощью:
Mage::getSingleton('admin/session')->isLoggedIn();
Но я не уверен, существует ли подобный вызов, чтобы определить, является ли среда вызовом API по сравнению свеб-визит.
Вы можете проверить, был ли инициализирован синглтон Mage_Api_Model_Server:
Mage_Api_Model_Server
$apiRunning = Mage::getSingleton('api/server')->getAdapter() != null;
Для тех из вас, кто сталкивается с этим вопросом, кому нужно что-то, что работает для v2 API, мне кажется, что это работает:
Mage::getSingleton('api2/request')->getApiType() !== null