diff --git services.runtime.inc services.runtime.inc
index ed20ca5..7a8733c 100644
--- services.runtime.inc
+++ services.runtime.inc
@@ -160,8 +160,16 @@ function services_controller_execute($controller, $args = array(), $auth_args =
     }
   }
 
+  $max_key = max(array_keys($args));
+  $i = 0;
+  $shifted_args = array();
+  while ($i <= $max_key) {
+    $shifted_args[$i] = (isset($args[$i])) ? $args[$i] : NULL;
+    $i++;
+  }
+
   // Execute the controller callback
-  $result = call_user_func_array($controller['callback'], $args);
+  $result = call_user_func_array($controller['callback'], $shifted_args);
 
   if ($server_info) {
     chdir($server_root);
