Index: services_admin_browse.inc
===================================================================
--- services_admin_browse.inc	(revision 22167)
+++ services_admin_browse.inc	(working copy)
@@ -111,10 +111,16 @@
 
     switch ($arg['#name']) {
       case 'hash':
+        $guess_hash = services_admin_browse_guess_key($_SERVER['HTTP_HOST']);
+        if ($guess_hash === FALSE) {
+          drupal_set_message(t("A key could not be found that matches the domain you are using with Services Browser (!domain). As a result, your method call on this page will probably not work. Add a new key for this domain !link",
+            array('!link' => l('here', 'admin/build/services/keys'), '!domain' => $_SERVER['HTTP_HOST'])), 'warning');
+          $guess_hash = services_admin_browse_guess_key();
+        }
         $form['arg'][$key] = array(
           '#title'          => 'Hash',
           '#type'           => 'textfield',
-          '#default_value'  => hash_hmac('sha256', $timestamp .';'. $_SERVER['HTTP_HOST'] .';'. $nonce .';'. arg(4), services_admin_browse_get_first_key())
+          '#default_value'  => hash_hmac('sha256', $timestamp .';'. $_SERVER['HTTP_HOST'] .';'. $nonce .';'. arg(4), $guess_hash)
         );
         break;
 
@@ -174,11 +180,20 @@
   return $form;
 }
 
-function services_admin_browse_get_first_key() {
+function services_admin_browse_guess_key($domain = NULL) {
   $keys = services_get_keys();
+  if (!empty($domain)) {
+    foreach ($keys as $kid => $key) {
+      if (strtolower($domain) == strtolower($key->domain)) {
+        return $kid;
+      }
+    }
+    return FALSE;
+  }
   foreach ($keys as $kid => $key) {
     return $kid;
   }
+  return FALSE;
 }
 
 function services_admin_browse_test_submit($form, $form_state) {
