diff --git a/resources/user_resource.inc b/resources/user_resource.inc
index cd46157..b078cdc 100644
--- a/resources/user_resource.inc
+++ b/resources/user_resource.inc
@@ -158,6 +158,14 @@ function _user_resource_definition() {
               'source' => 'data',
               'optional' => FALSE,
             ),
+            array(
+              'name' => 'session',
+              'type' => 'int',
+              'description' => 'If true, a session for the user will be returned if possible.',
+              'source' => 'data',
+              'optional' => TRUE,
+              'default value' => 0,
+            ),
           ),
         ),
       ),
@@ -207,10 +215,18 @@ function _user_resource_retrieve($uid) {
  *  array formatted with '<role id>' => '<role id>', not including
  *  the authenticated user role, which is given by default.
  *
+ *  @param $session
+ *   A boolean flag.  If set, a session for the user will be returned
+ *   if possible.
+ *
  * @return
- *   The user object of the newly created user.
+ *   An associative array containing the new user's uid, and, if applicable,
+ *   the fully qualified URI to this resource.  If the $session flag is set,
+ *   and the new user is logged in from the registration process, session
+ *   information will also be returned.
+ *
  */
-function _user_resource_create($account) {
+function _user_resource_create($account, $session) {
   // Load the required includes for saving profile information
   // with drupal_execute().
   module_load_include('inc', 'user', 'user.pages');
@@ -230,13 +246,19 @@ function _user_resource_create($account) {
   if ($errors = form_get_errors()) {
     return services_error(implode(" ", $errors), 406, array('form_errors' => $errors));
   } else {
-    $user = array('uid' => $form_state['user']->uid);
-    if ($uri = services_resource_uri(array('user', $user['uid']))) {
-      $user['uri'] = $uri;
+    $result = array('uid' => $form_state['user']->uid);
+    if ($uri = services_resource_uri(array('user', $result['uid']))) {
+      $result['uri'] = $uri;
+    }
+    if ($session) {
+      global $user;
+      if ($user->uid && $user->uid == $result['uid']) {
+        //add session information to the new user
+        $result['session_name'] = session_name();
+        $result['sessid'] = session_id();
+      }
     }
-    return $user;
   }
-  return $form_state['user'];
 }
 
 /**
