diff --git a/acquia_search/acquia_search.install b/acquia_search/acquia_search.install
index c53061e..89d412e 100644
--- a/acquia_search/acquia_search.install
+++ b/acquia_search/acquia_search.install
@@ -131,7 +131,8 @@ function _acquia_search_get_default_facets() {
  * Implementation of hook_uninstall().
  */
 function acquia_search_uninstall() {
-  variable_del('acquia_search_url');
+  variable_del('acquia_search_path');
+  variable_del('acquia_search_base_url');
 }
 
 /**
@@ -142,3 +143,11 @@ function acquia_search_update_7000() {
   variable_del('acquia_search_port');
   variable_del('acquia_search_path');
 }
+
+/**
+ * Removing acquia_search_url variable as it has been split up
+ * to acquia_search_base_url and acquia_search_path
+ */
+function acquia_search_update_7001() {
+  variable_del('acquia_search_url');
+}
diff --git a/acquia_search/acquia_search.module b/acquia_search/acquia_search.module
index e886956..74c65e9 100644
--- a/acquia_search/acquia_search.module
+++ b/acquia_search/acquia_search.module
@@ -13,16 +13,24 @@ define('ACQUIA_SEARCH_ENVIRONMENT_ID', 'acquia_search_server_1');
 function acquia_search_get_environment($conf = array()) {
   if (!empty($conf['acquia_subscription_id'])) {
     $identifier = $conf['acquia_subscription_id'];
+    $subscription = acquia_agent_get_subscription($params = array(), $identifier);
   }
   else {
     $identifier = acquia_agent_settings('acquia_identifier');
+    $subscription = acquia_agent_settings('acquia_subscription_data');
+  }
+  // Adding the subscription specific colony to the heartbeat data
+  if (!empty($subscription['heartbeat_data']['search_service_colony'])) {
+    $search_base_url = 'http://' . $subscription['heartbeat_data']['search_service_colony'];
+  }
+  else {
+    $search_base_url = variable_get('acquia_search_base_url', 'http://search.acquia.com');
   }
   $environment = array(
     // @todo - server URL may depend on region info.
-    'url' => variable_get('acquia_search_url', 'http://search.acquia.com/solr/'. $identifier),
+    'url' => $search_base_url . variable_get('acquia_search_path', '/solr/'. $identifier),
     'service_class' => 'AcquiaSearchService',
   );
-
   return $environment;
 }
 
@@ -65,8 +73,11 @@ function acquia_search_enable_acquia_solr_environment() {
     apachesolr_default_environment(ACQUIA_SEARCH_ENVIRONMENT_ID);
     $environment['conf'] = array();
   }
-
-  $environment = array_merge(acquia_search_get_environment(), $environment);
+  $acquia_environment = acquia_search_get_environment();
+  // Override default values
+  foreach($acquia_environment as $key => $value) {
+    $environment[$key] = $value;
+  }
   $environment['env_id'] = ACQUIA_SEARCH_ENVIRONMENT_ID;
   $environment['name'] = t('Acquia Search');
   apachesolr_environment_save($environment);
