/** * Add the array of Bit API Hub headers for the call * * @param array $headers The array of existing headers * @return array $headers with the Bit API Hub headers added on */ public static function get_headers(array $headers) { $api = \V1\Model\APIs::get_api(); $account = \V1\Model\Account::get_account(); $forwarded_for = \Input::real_ip('0.0.0.0', true); if ($internal_call = \Utility::is_internal_call()) { $forwarded_for = \Config::get('engine.call_test_ip'); } $headers = array_replace($headers, array('User-Agent' => 'API Optimization Engine/V1', 'X-Forwarded-For' => $forwarded_for)); if (\Config::get('engine.send_engine_auth', false) === true) { // If the API hasn't yet received a secret identity, generate one. if (empty($api['secret'])) { $secret = \V1\Model\APIs::set_api_secret($api['id']); } else { $secret = \Crypt::decode($api['secret']); } $headers = array_replace($headers, array('X-AOE-Secret' => $secret, 'X-AOE-Account' => $account['id'], 'X-AOE-Version' => 'V1')); } return $headers; }