usergrid-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From timangl...@apache.org
Subject svn commit: r1543106 [11/23] - in /incubator/usergrid/site: ./ content/ content/bootstrap/ content/community/ content/css/ content/docs/ content/font/ content/img/ content/img/check_flat/ content/js/ content/static/ layouts/ lib/ lib/helpers/ publish/ ...
Date Mon, 18 Nov 2013 18:51:22 GMT
Added: incubator/usergrid/site/content/docs/organizations-admins.md
URL: http://svn.apache.org/viewvc/incubator/usergrid/site/content/docs/organizations-admins.md?rev=1543106&view=auto
==============================================================================
--- incubator/usergrid/site/content/docs/organizations-admins.md (added)
+++ incubator/usergrid/site/content/docs/organizations-admins.md Mon Nov 18 18:51:18 2013
@@ -0,0 +1,1814 @@
+---
+title: Organizations & Admins
+category: docs
+layout: docs
+---
+
+Organizations
+-------------
+
+An organization represents the highest level of the Apache Usergrid data
+hierarchy. It contains applications (and the entities and collections
+they contain) and is associated with one or more administrators. An
+organization can be representative of a company, team, or project. It
+allows multiple applications  to be shared within the organization with
+other administrators.
+
+Using the App services API, you can create an organization through a
+form post and get an organization by UUID or name. In addition, you can
+activate or reactivate an organization, generate and retrieve an
+organization's client credentials, and get an organization's activity
+feed. You can also create an organization application through a form
+post, generate and retrieve credentials for the application, and delete
+the application. You can also get the applications in an organization.
+Additionally, you can add an admin user to an organization, get the
+admin users in an organization, and remove an admin user from an
+organization.
+
+Property                                Type      Description
+--------------------------------------- --------- ---------------------------------------------------------------------
+uuid                                    UUID      Organization’s unique entity ID
+type                                    string    "organization"
+created                                 long      [UNIX timestamp](http://en.wikipedia.org/wiki/Unix_time) of entity creation
+modified                                long      [UNIX timestamp](http://en.wikipedia.org/wiki/Unix_time) of entity modification
+organization                            string    The name of the organization.
+username                                string    The username of the administrator.
+name                                    string    The name of the administrator.
+email                                   string    The email address of the administrator.
+password                                string    The password of the administrator. (create-only)
+
+
+
+### Activating an organization
+
+Use the GET method to activate an organization from a link provided in
+an email notification.
+
+#### Request URL
+
+GET
+/organizations|orgs/{org\_name}|{uuid}/activate?token={token}&confirm={confirm\_email}
+
+Parameters
+
+  Parameter                   Description
+  --------------------------- -------------------------------------------------
+  string org\_name|arg uuid   Organization name or organization UUID.
+  string token                Activation token (supplied via email).
+  boolean confirm\_email      Send confirmation email (false is the default).
+
+ 
+
+#### Example - Request
+
+-   [cURL](#curl_activate_org)
+-   [JavaScript (HTML5)](#javascript_activate_org)
+-   [Ruby](#ruby_activate_org)
+-   [Node.js](#nodejs_activate_org)
+
+<!-- -->
+
+    curl -X GET "https://api.usergrid.com/management/orgs/testorg/activate?token=33dd0563-cd0c-11e1-bcf7-12313d1c4491"
+
+It is recommended that you use the [Admin
+Portal](http://apigee.com/usergrid) for administrative activities
+instead of using JavaScript to do them programmatically in your app.
+
+**Note:**You can see the response below in the Admin Portal by using the
+[JavaScript
+Console](/docs/usergrid/content/displaying-app-services-api-calls-curl-commands).
+
+The example assumes use of the [Ruby
+SDK](https://github.com/scottganyo/usergrid_iron).
+
+    mgmt = Usergrid::Management.new 'https://api.usergrid.com/'
+    mgmt['orgs/testorg/activate'].get params: { token: '33dd0563-cd0c-11e1-bcf7-12313d1c4491' }
+
+The example assumes use of the [Node.js
+module](https://github.com/apigee/usergrid-node-module).
+
+    var options = {
+        method:'GET',
+        endpoint:'management/orgs/testorg/activate',
+        qs:{token:'33dd0563-cd0c-11e1-bcf7-12313d1c4491'}
+    };
+    client.request(options, function (err, data) {
+        if (err) {
+            //error — GET failed
+        } else {
+            //success — data will contain raw results from API call       
+        }
+    });
+
+#### Example - Response
+
+    {
+      "action": "activate organization",
+      "timestamp": 1337928462810,              
+      "duration": 3342
+    }
+
+### Reactivating an organization
+
+Use the GET method to reactivate an organization.
+
+#### Request URI
+
+GET /organizations|orgs/{org\_name}|{uuid}/reactivate
+
+Parameters
+
+  Parameter                   Description
+  --------------------------- -----------------------------------------
+  string org\_name|arg uuid   Organization name or organization UUID.
+
+ 
+
+#### Example - Request
+
+-   [cURL](#curl_reactivate_org)
+-   [JavaScript (HTML5)](#javascript_reactivate_org)
+-   [Ruby](#ruby_reactivate_org)
+-   [Node.js](#nodejs_reactivate_org)
+
+<!-- -->
+
+    curl -X GET "https://api.usergrid.com/management/orgs/testorg/reactivate"
+
+It is recommended that you use the [Admin
+Portal](http://apigee.com/usergrid) for administrative activities
+instead of using JavaScript to do them programmatically in your app.
+
+**Note:**You can see the response below in the Admin Portal by using the
+[JavaScript
+Console](/docs/usergrid/content/displaying-app-services-api-calls-curl-commands).
+
+ 
+
+The example assumes use of the [Ruby
+SDK](https://github.com/scottganyo/usergrid_iron).
+
+    mgmt = Usergrid::Management.new 'https://api.usergrid.com/'
+    mgmt['orgs/testorg/reactivate']
+
+The example assumes use of the [Node.js
+module](https://github.com/apigee/usergrid-node-module).
+
+    var options = {
+        method:'GET',
+        endpoint:'management/orgs/testorg/reactivate'
+    };
+    client.request(options, function (err, data) {
+        if (err) {
+            //error — GET failed
+        } else {
+            //success — data will contain raw results from API call       
+        }
+    });
+
+#### Example - Response
+
+    {
+      "action": "reactivate organization",
+      "timestamp": 1349385280891,
+      "duration": 3612
+    }
+
+### Generating organization client credentials
+
+Use the POST method to generate new credentials for an organization
+client.
+
+#### Request URI
+
+POST /organizations|orgs/{org\_name}|{uuid}/credentials
+
+Parameters
+
+  Parameter                   Description
+  --------------------------- -----------------------------------------
+  string org\_name|arg uuid   Organization name or organization UUID.
+
+**Note:** You also need to provide a valid access token with the API
+call. See [Authenticating users and application
+clients](/authenticating-users-and-application-clients) for details.
+
+ 
+
+#### Example - Request
+
+-   [cURL](#curl_gen_org_credentials)
+-   [JavaScript](#javascript_gen_org_credentials)
+-   [Ruby](#ruby_gen_org_credentials)
+-   [Node.js](#nodejs_gen_org_credentials)
+
+<!-- -->
+
+    curl -X POST "https://api.usergrid.com/management/orgs/credentials"
+
+It is recommended that you use the [Admin
+Portal](http://apigee.com/usergrid) for administrative activities
+instead of using JavaScript to do them programmatically in your app.
+
+**Note:**You can see the response below in the Admin Portal by using the
+[JavaScript
+Console](/docs/usergrid/content/displaying-app-services-api-calls-curl-commands).
+
+The example assumes use of the [Ruby
+SDK](https://github.com/scottganyo/usergrid_iron).
+
+    mgmt = Usergrid::Management.new 'https://api.usergrid.com/'
+    mgmt['orgs/credentials'].create
+
+The example assumes use of the [Node.js
+module](https://github.com/apigee/usergrid-node-module).
+
+    var options = {
+        method:'POST',
+        endpoint:'management/orgs/credentials'
+    };
+    client.request(options, function (err, data) {
+        if (err) {
+            //error — POST failed
+        } else {
+            //success — data will contain raw results from API call       
+        }
+    });
+
+#### Example - Response
+
+    {
+      "action": "generate organization client credentials",
+      "timestamp": 1349385795647,
+      "duration": 7,
+      "credentials":  {
+        "client_id": "c2V7N61DY90MCdG78xIxPRxFdQ",                  
+        "client_secret": "c2V7WEdXIutZWEkWdySLCt_lYDFVMMN"                      
+      }
+    }
+
+### Retrieving organization client credentials
+
+Use the GET method to retrieve the credentials for an organization
+client.
+
+#### Request URL
+
+GET /organizations|orgs/{org\_name}|{uuid}/credentials
+
+Parameters
+
+  Parameter                   Description
+  --------------------------- -----------------------------------------
+  string org\_name|arg uuid   Organization name or organization UUID.
+
+**Note:** You also need to provide a valid access token with the API
+call. See [Authenticating users and application
+clients](/authenticating-users-and-application-clients) for details.
+
+ 
+
+#### Example - Request
+
+-   [cURL](#curl_get_org_credentials)
+-   [JavaScript (HTML5)](#javascript_get_org_credentials)
+-   [Ruby](#ruby_get_org_credentials)
+-   [Node.js](#nodejs_get_org_credentials)
+
+<!-- -->
+
+    curl -X GET "https://api.usergrid.com/management/orgs/testorg/credentials"
+
+It is recommended that you use the [Admin
+Portal](http://apigee.com/usergrid) for administrative activities
+instead of using JavaScript to do them programmatically in your app.
+
+**Note:**You can see the response below in the Admin Portal by using the
+[JavaScript
+Console](/docs/usergrid/content/displaying-app-services-api-calls-curl-commands).
+
+The example assumes use of the [Ruby
+SDK](https://github.com/scottganyo/usergrid_iron).
+
+    mgmt = Usergrid::Management.new 'https://api.usergrid.com/'
+    mgmt['orgs/testorg/credentials']
+
+The example assumes use of the [Node.js
+module](https://github.com/apigee/usergrid-node-module).
+
+    var options = {
+        method:'GET',
+        endpoint:'management/orgs/testorg/credentials'
+    };
+    client.request(options, function (err, data) {
+        if (err) {
+            //error — GET failed
+        } else {
+            //success — data will contain raw results from API call       
+        }
+    });
+
+#### Example - Response
+
+    {
+      "action": "get organization client credentials",
+      "timestamp": 1349386672984,
+      "duration": 690,
+      "credentials":  {
+        "client_id": "c2V7N61DY90MCdG78xIxPRxFdQ",                  
+        "client_secret": "c2V7WEdXIutZWEkWdySLCt_lYDFVMMN"                      
+      }
+    }
+
+### Getting an organization's activity feed
+
+Use the GET method to get an organization's activity feed.
+
+#### Request URI
+
+GET /organizations|orgs/{org\_name}|{uuid}/feed
+
+Parameters
+
+  Parameter                   Description
+  --------------------------- -----------------------------------------
+  string org\_name|arg uuid   Organization name or organization UUID.
+
+**Note:** You also need to provide a valid access token with the API
+call. See [Authenticating users and application
+clients](/authenticating-users-and-application-clients) for details.
+
+ 
+
+#### Example - Request
+
+-   [cURL](#curl_get_org_feed)
+-   [JavaScript (HTML5)](#javascript_get_org_feed)
+-   [Ruby](#ruby_get_org_feed)
+-   [Node.js](#nodejs_get_org_feed)
+
+<!-- -->
+
+    curl -X GET "https://api.usergrid.com/management/orgs/testorg/feed"
+
+It is recommended that you use the [Admin
+Portal](http://apigee.com/usergrid) for administrative activities
+instead of using JavaScript to do them programmatically in your app.
+
+**Note:**You can see the response below in the Admin Portal by using the
+[JavaScript
+Console](/docs/usergrid/content/displaying-app-services-api-calls-curl-commands).
+
+The example assumes use of the [Ruby
+SDK](https://github.com/scottganyo/usergrid_iron).
+
+    mgmt = Usergrid::Management.new 'https://api.usergrid.com/'
+    activities = mgmt['orgs/testorg/feed'].collection
+
+The example assumes use of the [Node.js
+module](https://github.com/apigee/usergrid-node-module).
+
+    var options = {
+        method:'GET',
+        endpoint:'management/orgs/testorg/feed'
+    };
+    client.request(options, function (err, data) {
+        if (err) {
+            //error — GET failed
+        } else {
+            //success — data will contain raw results from API call       
+        }
+    });
+
+#### Example - Response
+
+    {
+     {
+      "action": "get organization feed",
+      "status": "ok",
+      "entities":  [
+         {
+          "uuid": "cf4d981c-fe90-11e1-95c8-12313b122c56",
+          "type": "activity",
+          "created": 1347643370454,
+          "modified": 1347643370454,
+          "actor":  {
+            "displayName": "tester123",
+            "objectType": "person",
+            "uuid": "327b527f-cd0c-11e1-bcf7-12313d1c4491",
+            "entityType": "user"
+          },
+          "category": "admin",
+          "metadata":  {
+            "cursor": "gGkAAQMAgGkABgE5xc3r1gCAdQAQz02YHP6QEeGVyBIxOxIsVgCAdQAQz3SoH_6QEeGVyBIxOxIsVgA",
+            "path": "/groups/33dd0563-cd0c-11e1-bcf7-12313d1c4491/feed/cf4d981c-fe90-11e1-95c8-12313b122c56"
+          },
+    "object":  {
+            "displayName": "testapp2",
+            "objectType": "Application",
+            "uuid": "cede5b7e-fe90-11e1-95c8-12313b122c56",
+            "entityType": "application_info"
+          },
+          "published": 1347643370454,
+          "title": "<a mailto="mailto:tester123@hotmail.com">tester123 (tester123@hotmail.com)</a> created a new application named testapp2",
+          "verb": "create"
+        },...
+    ,
+      "timestamp": 1349387253811,
+
+### Creating an organization application
+
+Use the POST method to create an application for an organization through
+a form post.
+
+#### Request URI
+
+POST /organizations|orgs/{org\_name}|{org\_uuid}/apps {request body}
+
+#### Parameters
+
+Parameter
+
+Description
+
+request body
+
+The following set of organization properties supplied through a form:.
+
+Property
+
+Description
+
+access token (string)
+
+The OAuth2 access token.
+
+name (string)
+
+The name of the application.
+
+ 
+
+#### Example - Request
+
+-   [cURL](#curl_create_org_app)
+-   [JavaScript (HTML5)](#javascript_create_org_app)
+-   [Ruby](#ruby_create_org_app)
+-   [Node.js](#nodejs_create_org_app)
+
+<!-- -->
+
+    curl -X -i POST "https://api.usergrid.com/management/orgs/testorg/apps" -d '{"access_token":"YWMtmNIFFBI6EeKvXSIACowF7QAAATpL0bVQtGOWe8PMwLfQ9kD_VKQa7IH4UBQ","name":"testapp1"}'
+
+It is recommended that you use the [Admin
+Portal](http://apigee.com/usergrid) for administrative activities
+instead of using JavaScript to do them programmatically in your app.
+
+**Note:**You can see the response below in the Admin Portal by using the
+[JavaScript
+Console](/docs/usergrid/content/displaying-app-services-api-calls-curl-commands).
+
+ 
+
+The example assumes use of the [Ruby
+SDK](https://github.com/scottganyo/usergrid_iron).
+
+    mgmt = Usergrid::Management.new 'https://api.usergrid.com/'
+    mynewapp = mgmt['orgs/testorg/apps'].create name: 'testapp1', access_token: 'YWMtmNIFFBI6EeKvXSIACowF7QAAATpL0bVQtGOWe8PMwLfQ9kD_VKQa7IH4UBQ'
+
+The example assumes use of the [Node.js
+module](https://github.com/apigee/usergrid-node-module).
+
+    var options = {
+        method:'POST',
+        endpoint:'management/orgs/testorg/apps',
+        body:{ 
+              access_token:'YWMtmNIFFBI6EeKvXSIACowF7QAAATpL0bVQtGOWe8PMwLfQ9kD_VKQa7IH4UBQ', 
+              name:'testapp1' 
+        }    
+    };
+    client.request(options, function (err, data) {
+        if (err) {
+            //error — POST failed
+        } else {
+            //success — data will contain raw results from API call        
+        }
+    });
+
+#### Example - Response
+
+    {
+      "action": "new application for organization",
+      "timestamp": 1338914698135,
+      "duration": 701
+    }
+
+### Deleting an organization application
+
+Use the DELETE method to delete an application from an organization.
+
+#### Request URI
+
+DELETE
+/organizations|orgs/{org\_name}|{org\_uuid}/apps/{app\_name}|{app\_uuid}
+
+Parameters
+
+  Parameter                   Description
+  --------------------------- -----------------------------------------
+  string org\_name|arg uuid   Organization name or organization UUID.
+  string app\_name|arg uuid   Application name or application UUID.
+
+**Note:** You also need to provide a valid access token with the API
+call. See [Authenticating users and application
+clients](/authenticating-users-and-application-clients) for details.
+
+ 
+
+#### Example - Request
+
+-   [cURL](#curl_delete_org_app)
+-   [JavaScript (HTML5)](#javascript_delete_org_app)
+-   [Ruby](#ruby_delete_org_app)
+-   [Node.js](#nodejs_delete_org_app)
+
+<!-- -->
+
+    curl -X DELETE "https://api.usergrid.com/management/orgs/testorg/apps/testapp1"
+
+It is recommended that you use the [Admin
+Portal](http://apigee.com/usergrid) for administrative activities
+instead of using JavaScript to do them programmatically in your app.
+
+**Note:**You can see the response below in the Admin Portal by using the
+[JavaScript
+Console](/docs/usergrid/content/displaying-app-services-api-calls-curl-commands).
+
+ 
+
+The example assumes use of the [Ruby
+SDK](https://github.com/scottganyo/usergrid_iron).
+
+    mgmt = Usergrid::Management.new 'https://api.usergrid.com/'
+    mgmt['orgs/testorg/apps/testapp1'].delete
+
+The example assumes use of the [Node.js
+module](https://github.com/apigee/usergrid-node-module).
+
+    var options = {
+        method:'DELETE',
+        endpoint:'management/orgs/testorg/apps/testapp1'
+    };
+    client.request(options, function (err, data) {
+        if (err) {
+            //error — DELETE failed
+        } else {
+            //success — data will contain raw results from API call       
+        }
+    });
+
+#### Example - Response
+
+    {
+      "action": "delete application from organization",
+      "timestamp": 1349817715666,
+      "duration": 0
+    }
+
+### Generating application credentials
+
+Use the POST method to generate the client ID and client secret
+credentials for an application in an organization.
+
+#### Request URI
+
+POST
+/organizations|orgs/{org\_name}|{uuid}/applications|apps/{app\_name}|{uuid}/credentials
+
+Parameters
+
+  Parameter                   Description
+  --------------------------- -----------------------------------------
+  string org\_name|arg uuid   Organization name or organization UUID.
+  string app\_name|arg uuid   Application name or application UUID.
+
+**Note:** You also need to provide a valid access token with the API
+call. See [Authenticating users and application
+clients](/authenticating-users-and-application-clients) for details.
+
+ 
+
+#### Example - Request
+
+-   [cURL](#curl_gen_app_credentials)
+-   [JavaScript (HTML5)](#javascript_gen_app_credentials)
+-   [Ruby](#ruby_gen_app_credentials)
+-   [Node.js](#nodejs_gen_app_credentials)
+
+<!-- -->
+
+    curl -X POST "https://api.usergrid.com/management/orgs/testorg/apps/testapp1/credentials"
+
+It is recommended that you use the [Admin
+Portal](http://apigee.com/usergrid) for administrative activities
+instead of using JavaScript to do them programmatically in your app.
+
+**Note:**You can see the response below in the Admin Portal by using the
+[JavaScript
+Console](/docs/usergrid/content/displaying-app-services-api-calls-curl-commands).
+
+The example assumes use of the [Ruby
+SDK](https://github.com/scottganyo/usergrid_iron).
+
+    mgmt = Usergrid::Management.new 'https://api.usergrid.com/'
+    mgmt['orgs/testorg/apps/testapp1/credentials'].create
+
+The example assumes use of the [Node.js
+module](https://github.com/scottganyo/usergrid_iron).
+
+    var options = {
+        method:'POST',
+        endpoint:'management/orgs/testorg/apps/testapp1/credentials'
+    };
+    client.request(options, function (err, data) {
+        if (err) {
+            //error — POST failed
+        } else {
+            //success — data will contain raw results from API call       
+        }
+    });
+
+#### Example - Response
+
+    {
+      "action": "generate application client credentials",
+      "timestamp": 1349815979529,
+      "duration": 535,
+      "credentials":  {
+        "client_id": "YXA7ygil-f3TEeG-yhIxPQK1cQ",
+        "client_secret": "YXA65gYlqja8aYYSAy8Ox3Vg5aRZp48"
+      }
+    }
+
+### Getting application credentials
+
+Use the GET method to retrieve the client ID and client secret
+credentials for an application in an organization.
+
+#### Request URI
+
+GET
+/organizations|orgs/{org\_name}|{uuid}/applications|apps/{app\_name}|{uuid}/credentials
+
+Parameters
+
+  Parameter                   Description
+  --------------------------- -----------------------------------------
+  string org\_name|arg uuid   Organization name or organization UUID.
+  string app\_name|arg uuid   Application name or application UUID.
+
+**Note:** You also need to provide a valid access token with the API
+call. See [Authenticating users and application
+clients](/authenticating-users-and-application-clients) for details.
+
+ 
+
+#### Example - Request
+
+-   [cURL](#curl_get_app_credentials)
+-   [JavaScript (HTML5)](#javascript_get_app_credentials)
+-   [Ruby](#ruby_get_app_credentials)
+-   [Node.js](#nodejs_get_app_credentials)
+
+<!-- -->
+
+    curl -X GET "https://api.usergrid.com/management/orgs/testorg/apps/testapp1/credentials"
+
+It is recommended that you use the [Admin
+Portal](http://apigee.com/usergrid) for administrative activities
+instead of using JavaScript to do them programmatically in your app.
+
+**Note:**You can see the response below in the Admin Portal by using the
+[JavaScript
+Console](/docs/usergrid/content/displaying-app-services-api-calls-curl-commands).
+
+The example assumes use of the [Ruby
+SDK](https://github.com/scottganyo/usergrid_iron).
+
+    mgmt = Usergrid::Management.new 'https://api.usergrid.com/'
+    mgmt['orgs/testorg/apps/testapp1/credentials']
+
+The example assumes use of the [Node.js
+module](https://github.com/apigee/usergrid-node-module).
+
+    var options = {
+        method:'GET',
+        endpoint:'management/orgs/testorg/apps/testapp1/credentials'
+    };
+    client.request(options, function (err, data) {
+        if (err) {
+            //error — GET failed
+        } else {
+            //success — data will contain raw results from API call       
+        }
+    });
+
+#### Example - Response
+
+    {
+      "action": "get application client credentials",
+      "timestamp": 1349816819545,
+      "duration": 7,
+      "credentials":  {
+        "client_id": "YXA7ygil-f3TEeG-yhIxPQK1cQ",
+        "client_secret": "YXA65gYlqja8aYYSAy8Ox3Vg5aRZp48"
+      }
+    }
+
+### Getting the applications in an organization
+
+Use the GET method to retrieve the applications in an organization.
+
+#### Request URI
+
+GET /organizations|orgs/{org\_name}|{uuid}/applications|apps
+
+Parameters
+
+  Parameter                   Description
+  --------------------------- -----------------------------------------
+  string org\_name|arg uuid   Organization name or organization UUID.
+
+**Note:** You also need to provide a valid access token with the API
+call. See [Authenticating users and application
+clients](/authenticating-users-and-application-clients) for details.
+
+ 
+
+#### Example - Request
+
+-   [cURL](#curl_get_apps_org)
+-   [JavaScript (HTML5)](#javascript_get_apps_org)
+-   [Ruby](#ruby_get_apps_org)
+-   [Node.js](#nodejs_get_apps_org)
+
+<!-- -->
+
+    curl -X GET "https://api.usergrid.com/management/orgs/testorg/apps"
+
+It is recommended that you use the [Admin
+Portal](http://apigee.com/usergrid) for administrative activities
+instead of using JavaScript to do them programmatically in your app.
+
+**Note:**You can see the response below in the Admin Portal by using the
+[JavaScript
+Console](/docs/usergrid/content/displaying-app-services-api-calls-curl-commands).
+
+ 
+
+The example assumes use of the [Ruby
+SDK](https://github.com/scottganyo/usergrid_iron).
+
+    mgmt = Usergrid::Management.new 'https://api.usergrid.com/'
+    apps = mgmt['orgs/testorg/apps'].collection
+
+The example assumes use of the [Node.js
+module](https://github.com/apigee/usergrid-node-module).
+
+    var options = {
+        method:'GET',
+        endpoint:'management/orgs/testorg/apps'
+    };
+    client.request(options, function (err, data) {
+        if (err) {
+            //error — GET failed
+        } else {
+            //success — data will contain raw results from API call       
+        }
+    });
+
+ 
+
+#### Example - Response
+
+    {
+      "action": "get organization application",
+      "data":  {
+        "testorg/sandbox": "3500ba10-cd0c-11e1-bcf8-12313d1c5591",
+        "testorg/testapp1": "be09a5f9-fdd3-11e1-beca-12313d027361",
+        "testorg/testapp2": "cede5b8e-fe90-11e1-65c8-12313b111c56"    
+      },
+      "timestamp": 1349815338635,
+      "duration": 22
+    }
+
+### Adding an admin user to an organization
+
+Use the PUT method to add an existing admin user to an organization.
+
+#### Request URI
+
+PUT
+/organizations|orgs/{org\_name}|{org\_uuid}/users/{username|email|uuid}
+
+#### Parameters
+
+  Parameter                               Description
+  --------------------------------------- ----------------------------------------------
+  string org\_name|arg org\_uuid          Organization name or organization UUID.
+  string username|string email|arg uuid   User name, user email address, or user UUID.
+
+ 
+
+#### Example - Request
+
+-   [cURL](#curl_add_admin_user)
+-   [JavaScript (HTML5)](#javascript_add_admin_user)
+-   [Ruby](#ruby_add_admin_user)
+-   [Node.js](#nodejs_add_admin_user)
+
+<!-- -->
+
+    curl -X PUT "https://api.usergrid.com/management/orgs/testorg/users/test123"
+
+It is recommended that you use the [Admin
+Portal](http://apigee.com/usergrid) for administrative activities
+instead of using JavaScript to do them programmatically in your app.
+
+**Note:**You can see the response below in the Admin Portal by using the
+[JavaScript
+Console](/docs/usergrid/content/displaying-app-services-api-calls-curl-commands).
+
+The example assumes use of the [Ruby
+SDK](https://github.com/scottganyo/usergrid_iron).
+
+    mgmt = Usergrid::Management.new 'https://api.usergrid.com/'
+    mgmt['orgs/testorg/users/test123'].put nil
+
+The example assumes use of the [Node.js
+module](https://github.com/apigee/usergrid-node-module).
+
+    var options = {
+        method:'PUT',
+        endpoint:'management/orgs/testorg/users/test123'
+    };
+    client.request(options, function (err, data) {
+        if (err) {
+            //error — PUT failed
+        } else {
+            //success — data will contain raw results from API call       
+        }
+    });
+
+#### Example - Response
+
+    {
+      "action": "add user to organization",
+      "status": "ok",
+      "data":  {
+        "user":  {
+          "applicationId": "00000000-0000-0000-0000-000000000001",
+          "username": "tester123",
+          "name": "test",
+          "email": "tester123@hotmail.com",
+          "activated": true,
+          "disabled": false,
+          "uuid": "335b527f-cd0d-11e1-bef8-12331d1c5591",
+          "adminUser": true,
+          "displayEmailAddress": "tester123 <tester123@hotmail.com>",
+          "htmldisplayEmailAddress": "tester123 <<a href="mailto:tester123@hotmail.com">tester123@hotmail.com</a>>"
+        }
+      },
+      "timestamp": 1349390189106,
+      "duration": 11808
+    }
+
+### Getting the admin users in an organization
+
+Use the GET method to retrieve details about the admin users in an
+organization.
+
+#### Request URI
+
+GET /organizations|orgs/{org\_name}|{org\_uuid}/users
+
+#### Parameters
+
+  Parameter                        Description
+  -------------------------------- -----------------------------------------
+  string org\_name|arg org\_uuid   Organization name or organization UUID.
+
+ 
+
+#### Example - Request
+
+-   [cURL](#curl_get_admin_users)
+-   [JavaScript (HTML5)](#javascript_get_admin_users)
+-   [Ruby](#ruby_get_admin_users)
+-   [Node.js](#nodejs_get_admin_users)
+
+<!-- -->
+
+    curl -X GET "https://api.usergrid.com/management/orgs/testorg/users"
+
+It is recommended that you use the [Admin
+Portal](http://apigee.com/usergrid) for administrative activities
+instead of using JavaScript to do them programmatically in your app.
+
+**Note:**You can see the response below in the Admin Portal by using the
+[JavaScript
+Console](/docs/usergrid/content/displaying-app-services-api-calls-curl-commands).
+
+The example assumes use of the [Ruby
+SDK](https://github.com/scottganyo/usergrid_iron).
+
+    mgmt = Usergrid::Management.new 'https://api.usergrid.com/'
+    admins = mgmt['orgs/testorg/users']
+
+The example assumes use of the [Node.js
+module](https://github.com/apigee/usergrid-node-module).
+
+    var options = {
+        method:'GET',
+        endpoint:'management/orgs/testorg/users'
+    };
+    client.request(options, function (err, data) {
+        if (err) {
+            //error — GET failed
+        } else {
+            //success — data will contain raw results from API call       
+        }
+    });
+
+#### Example - Response
+
+    {
+      "action": "get organization users",
+      "data":  {
+        "user":  {
+          "applicationId": "00000000-0000-0000-0000-000000000001",
+          "username": "tester123",
+          "name": "test",
+          "email": "tester123@hotmail.com",
+          "activated": true,
+          "disabled": false,
+          "uuid": "335b527f-cd0d-11e1-bef8-12331d1c5591",
+          "adminUser": true,
+          "displayEmailAddress": "tester123 <tester123@hotmail.com>",
+          "htmldisplayEmailAddress": "tester123 <<a href="mailto:tester123@hotmail.com">tester123@hotmail.com</a>>"
+        }
+      },
+      "timestamp": 13494542201685,
+      "duration": 10
+    }
+
+### Removing an admin user from an organization
+
+Use the DELETE method to remove an admin user from an organization.
+
+#### Request URI
+
+DELETE
+/organizations|orgs/{org\_name}|{org\_uuid}/users/{username|email|uuid}
+
+#### Parameters
+
+  Parameter                               Description
+  --------------------------------------- ----------------------------------------------
+  string org\_name|arg org\_uuid          Organization name or organization UUID.
+  string username|string email|arg uuid   User name, user email address, or user UUID.
+
+ 
+
+#### Example - Request
+
+-   [cURL](#curl_delete_admin_user)
+-   [JavaScript (HTML5)](#javascript_delete_admin_user)
+-   [Ruby](#ruby_delete_admin_user)
+-   [Node.js](#nodejs_delete_admin_user)
+
+<!-- -->
+
+    curl -X DELETE "https://api.usergrid.com/management/orgs/testorg/users/test123"
+
+It is recommended that you use the [Admin
+Portal](http://apigee.com/usergrid) for administrative activities
+instead of using JavaScript to do them programmatically in your app.
+
+**Note:**You can see the response below in the Admin Portal by using the
+[JavaScript
+Console](/docs/usergrid/content/displaying-app-services-api-calls-curl-commands).
+
+The example assumes use of the [Ruby
+SDK](https://github.com/scottganyo/usergrid_iron).
+
+    mgmt = Usergrid::Management.new 'https://api.usergrid.com/'
+    mgmt['orgs/testorg/users/test123'].delete
+
+The example assumes use of the [Node.js
+module](https://github.com/apigee/usergrid-node-module).
+
+    var options = {
+        method:'DELETE',
+        endpoint:'management/orgs/testorg/users/test123'
+    };
+    client.request(options, function (err, data) {
+        if (err) {
+            //error — DELETE failed
+        } else {
+            //success — data will contain raw results from API call       
+        }
+    });
+
+#### Example - Response
+
+    {
+      "action": "remove user from organization",
+      "status": "ok",
+      "data":  {
+        "user":  {
+          "applicationId": "00000000-0000-0000-0000-000000000001",
+          "username": "tester123",
+          "name": "test",
+          "email": "tester123@hotmail.com",
+          "activated": true,
+          "disabled": false,
+          "uuid": "335b527f-cd0d-11e1-bef8-12331d1c5591",
+          "adminUser": true,
+          "displayEmailAddress": "tester123 <tester123@hotmail.com>",
+          "htmldisplayEmailAddress": "tester123 <<a href="mailto:tester123@hotmail.com">tester123@hotmail.com</a>>"
+        }
+      },
+      "timestamp": 1349453590005,
+      "duration": 727
+    }
+
+
+
+Admins
+------
+
+[See all management
+resources](/docs/usergrid/content/management-resources)[![](/docs/sites/docs/files/learnmore%20arrow_0.png)](/docs/usergrid/content/management-resources)
+
+An admin user has full access to perform any operation on all
+organization accounts of which the admin user is a member. Using the App
+services API, you can create, update, or retrieve an admin user. You can
+also set or reset an admin user's password, activite or reactivate an
+admin user, and get an admin user's activity feed.
+
+In addition, you can add,  retrieve, or remove an admin user from an
+organization. For information on these organization-related operations,
+see [Organization](/organization).
+
+**Note:** Although not shown in the API examples below, you need to
+provide a valid access token with each API call. See [Authenticating
+users and application
+clients](/authenticating-users-and-application-clients) for details.
+
+### Creating an admin user
+
+Use the POST method to create an admin user.
+
+#### Request URI
+
+POST /management/organizations/{org}/users {request body}
+
+#### Parameters
+
++--------------------------------------+--------------------------------------+
+| Parameter                            | Description                          |
++======================================+======================================+
+| request body                         | One or more sets of user properties, |
+|                                      | of which username is mandatory and   |
+|                                      | must be unique:                      |
+|                                      |                                      |
+|                                      |     {                                |
+|                                      |       "username" : "jim.admin",      |
+|                                      |       "email" : "jim.admin@gmail.com |
+|                                      | ",                                   |
+|                                      |       "name" : "Jim Admin",          |
+|                                      |       "password" : "test12345"       |
+|                                      |     }                                |
++--------------------------------------+--------------------------------------+
+
+ 
+
+#### Example - Request
+
+-   [cURL](#curl_create_admin_user)
+-   [JavaScript (HTML5)](#javascript_create_admin_user)
+-   [Ruby](#ruby_create_admin_user)
+-   [Node.js](#nodejs_create_admin_user)
+
+<!-- -->
+
+    curl -X -i POST "https://api.usergrid.com/management/organizations/my-org/users" -d '{"username":"jim.admin","name":"Jim Admin","email":"jim.admin@gmail.com","password":"test12345"}'
+
+It is recommended that you use the [Admin
+Portal](http://apigee.com/usergrid) for administrative activities
+instead of using JavaScript to do them programmatically in your app.
+
+**Note:**You can see the response below in the Admin Portal by using the
+[JavaScript
+Console](/docs/usergrid/content/displaying-app-services-api-calls-curl-commands).
+
+The example assumes use of the [Ruby
+SDK](https://github.com/scottganyo/usergrid_iron).
+
+    mgmt = Usergrid::Management.new 'https://api.usergrid.com/management/organizations/my-org/'
+    result = mgmt.create_user username: 'jim.admin', name: 'Jim Admin', email: 'jim.admin@gmail.com', password: 'test12345'
+    jim_admin = result.entity
+
+The example assumes use of the [Node.js
+module](https://github.com/apigee/usergrid-node-module).
+
+    var options = {
+        method:'POST',
+        endpoint:'management/organizations/my-org/users',
+        body:{ username:'jim.admin', name:'Jim Admin', email:'jim.admin@gmail.com',  
+        password:'test12345' }
+    };
+    client.request(options, function (err, data) {
+        if (err) {
+            //error — POST failed
+        } else {
+            //success — data will contain raw results from API call        
+        }
+    });
+
+#### Example - Response
+
+    {
+      "action": "post",
+      "status": "ok",
+      "data":  {
+        "user":  {
+          "applicationId": "00000000-0000-0000-0000-000000000001",
+          "username": "jim.admin",
+          "name": "Jim Admin",
+          "email": "jim.admin@gmail.com",
+          "activated": true,
+          "disabled": false,
+          "uuid": "335b527f-cd0d-11e1-bef8-12331d1c5591",
+          "adminUser": true,
+          "displayEmailAddress": "jim.admin <jim.admin@gmail.com>",
+          "htmldisplayEmailAddress": "jim.admin <a href="mailto:jim.admin@gmail.com">jinm.admin@gmail.com</a>"
+        }
+      },
+      "timestamp": 1349390189106,
+      "duration": 11808
+    }
+
+### Updating an admin user
+
+Use the PUT method to update an admin user.
+
+#### Request URI
+
+PUT /management/organizations/{org}/users/{user|username|email|uuid}
+{request body}
+
+#### Parameters
+
++--------------------------------------+--------------------------------------+
+| Parameter                            | Description                          |
++======================================+======================================+
+| string user|string username|string   | Admin username, name, email address, |
+| email|arg uuid                       | or UUID.                             |
++--------------------------------------+--------------------------------------+
+| request body                         | One or more sets of user properties: |
+|                                      |                                      |
+|                                      |     {                                |
+|                                      |       "city" : "San Francisco",      |
+|                                      |       "state" : "California"         |
+|                                      |     }                                |
++--------------------------------------+--------------------------------------+
+
+ 
+
+#### Example - Request
+
+-   [cURL](#curl_update_admin_user)
+-   [JavaScript (HTML5)](#javascript_update_admin_user)
+-   [Ruby](#ruby_update_admin_user)
+-   [Node.js](#nodejs_update_admin_user)
+
+<!-- -->
+
+    curl -X -i PUT "https://api.usergrid.com/management/organizations/my-org/users/jim.admin" -d '{"city":"San Francisco","state":"California"}'
+
+It is recommended that you use the [Admin
+Portal](http://apigee.com/usergrid) for administrative activities
+instead of using JavaScript to do them programmatically in your app.
+
+**Note:**You can see the response below in the Admin Portal by using the
+[JavaScript
+Console](/docs/usergrid/content/displaying-app-services-api-calls-curl-commands).
+
+The example assumes use of the [Ruby
+SDK](https://github.com/scottganyo/usergrid_iron).
+
+    mgmt = Usergrid::Management.new 'https://api.usergrid.com/management/organizations/my-org/'
+    jim_admin = mgmt['users/jim.admin'].entity
+    jim_admin.city = 'San Francisco'
+    jim_admin.state = 'California'
+    jim_admin.save
+
+The example assumes use of the [Node.js
+module](https://github.com/apigee/usergrid-node-module).
+
+    var options = {
+        method:'PUT',
+        endpoint:'management/organizations/my-org/users/jim.admin',
+        body:{ email:'john.doe@mail.com', city:'San Francisco', state:'California' }
+    };
+    client.request(options, function (err, data) {
+        if (err) {
+            //error — PUT failed
+        } else {
+            //success — data will contain raw results from API call        
+        }
+    });
+
+#### Example - Response
+
+    {
+      "action": "update user info",
+      "timestamp": 1349479321874,
+      "duration": 0
+    }
+
+### Getting an admin user
+
+Use the GET method to retrieve details about an admin user.
+
+#### Request URI
+
+GET /management/organizations/{org}/users/{user|username|email|uuid}
+
+#### Parameters
+
+  Parameter                                           Description
+  --------------------------------------------------- -----------------------------------------------
+  string user|string username|string email|arg uuid   Admin username, name, email address, or UUID.
+
+ 
+
+#### Example - Request
+
+-   [cURL](#curl_get_admin_user)
+-   [JavaScript (HTML5)](#javascript_get_admin_user)
+-   [Ruby](#ruby_get_admin_user)
+-   [Node.js](#nodejs_get_admin_user)
+
+<!-- -->
+
+    curl -X GET "https://api.usergrid.com/management/organizations/my-org/users/jim.admin"
+
+It is recommended that you use the [Admin
+Portal](http://apigee.com/usergrid) for administrative activities
+instead of using JavaScript to do them programmatically in your app.
+
+**Note:**You can see the response below in the Admin Portal by using the
+[JavaScript
+Console](/docs/usergrid/content/displaying-app-services-api-calls-curl-commands).
+
+The example assumes use of the [Ruby
+SDK](https://github.com/scottganyo/usergrid_iron).
+
+    mgmt = Usergrid::Management.new 'https://api.usergrid.com/management/organizations/my-org/'
+    jim_admin = mgmt['users/jim.admin'].entity
+
+The example assumes use of the [Node.js
+module](https://github.com/apigee/usergrid-node-module).
+
+    var options = {
+        method:'GET',
+        endpoint:'management/organizations/my-org/users/jim.admin'
+    };
+    client.request(options, function (err, data) {
+        if (err) {
+            //error — GET failed
+        } else {
+            //success — data will contain raw results from API call       
+        }
+    });
+
+#### Example - Response
+
+    {
+      "action": "get admin user",
+      "status": "ok",
+      "data":  {
+        "username": "jim.admin",
+        "token": "YWMt4NqE8Q9GEeLYJhIxPSiO4AAAATo5fQfcG0cEd2h9nwmDmRorkNNrEeQyDOF",
+        "email": "edort1@gmail.com",
+        "organizations":  {
+          "jim.admin":  {
+            "users":  {
+              "jim.admin":  {
+                "applicationId": "00000000-0000-0000-0000-000000000001",
+                "username": "jim.admin",
+                "name": "Jim Admin",
+                "email": "jim.admin@gmail.com",
+                "activated": true,
+                "disabled": false,
+                "uuid": "328b526e-cd0c-11e1-bcf8-12424d1c4491",
+                "adminUser": true,
+                "displayEmailAddress": "jim.admin <jim.admin@gmail.com>",
+                "htmldisplayEmailAddress": "jim.admin <<a href="mailto:jim.admin@gmail.com">jim.admin@gmail.com>"
+        },
+        ...
+        "adminUser": true,
+        "activated": true,
+        "name": "edort1",
+        "applicationId": "00000000-0000-0000-0000-000000000001",
+        "uuid": "328b526e-cd0c-11e1-bcf8-12424d1c4491",
+        "htmldisplayEmailAddress": "jim.admin <<a href="mailto:jim.admin@gmail.com">jim.admin@gmail.com>>",
+        "displayEmailAddress": "jim.admin <jim.admin@gmail.com>",
+        "disabled": false
+      },
+      "timestamp": 1349480786906,
+
+### Setting an admin user's password
+
+Use the PUT method to update an admin user's password.
+
+#### Request URI
+
+PUT
+/management/organizations/{org}/users/{user|username|email|uuid}/password
+{request body}
+
+#### Parameters
+
++--------------------------------------+--------------------------------------+
+| Parameter                            | Description                          |
++======================================+======================================+
+| string user|string username|string   | Admin username, name, email address, |
+| email|arg uuid                       | or UUID.                             |
++--------------------------------------+--------------------------------------+
+| request body                         | The password property and value:     |
+|                                      |                                      |
+|                                      |     {                                |
+|                                      |       "password": "test123"          |
+|                                      |     }                                |
++--------------------------------------+--------------------------------------+
+
+ 
+
+#### Example - Request
+
+-   [cURL](#curl_set_admin_pw)
+-   [JavaScript (HTML5)](#javascript_set_admin_pw)
+-   [Ruby](#ruby_set_admin_pw)
+-   [Node.js](#nodejs_set_admin_pw)
+
+<!-- -->
+
+    curl -X -i PUT "https://api.usergrid.com/management/organizations/my-org/users/jim.admin/password" -d '{"password":"test123"}'
+
+It is recommended that you use the [Admin
+Portal](http://apigee.com/usergrid) for administrative activities
+instead of using JavaScript to do them programmatically in your app.
+
+**Note:**You can see the response below in the Admin Portal by using the
+[JavaScript
+Console](/docs/usergrid/content/displaying-app-services-api-calls-curl-commands).
+
+ 
+
+The example assumes use of the [Ruby
+SDK](https://github.com/scottganyo/usergrid_iron).
+
+    mgmt = Usergrid::Management.new 'https://api.usergrid.com/management/organizations/my-org'
+    jim_admin = mgmt['users/jim.admin'].entity
+    jim_admin.password = 'test123'
+    jim_admin.save
+
+The example assumes use of the [Node.js
+module](https://github.com/apigee/usergrid-node-module).
+
+    var options = {
+        method:'PUT',
+        endpoint:'management/organizations/my-org/users/jim.admin',
+        body:{ password:'test123' }
+    };
+    client.request(options, function (err, data) {
+        if (err) {
+            //error — PUT failed
+        } else {
+            //success — data will contain raw results from API call       
+        }
+    });
+
+#### Example - Response
+
+    {
+      "action": "set user password",
+      "timestamp": 1349714010142,
+      "duration": 0
+    }
+
+### Resetting an admin user's password
+
+Resetting an admin user's password is a two step process. In the first
+step, you initiate the password reset. This returns a browser page. The
+page includes a field for the user to enter his or her email address,
+and a field to enter a response to a Captcha challenge. In the second
+step, you handle the user's responses from the form.
+
+#### Initiating a password reset
+
+Use the GET method to initiate the password reset.
+
+#### Request URI
+
+GET /management/organizations/{org}/users/resetpw
+
+#### Example - Request
+
+-   [cURL](#curl_init_pw_reset)
+-   [JavaScript (HTML5)](#javascript_init_pw_reset)
+-   [Ruby](#ruby_init_pw_reset)
+-   [Node.js](#nodejs_init_pw_reset)
+
+<!-- -->
+
+    curl -X GET "https://api.usergrid.com/management/organizations/my-org/users/resetpw"
+
+It is recommended that you use the [Admin
+Portal](http://apigee.com/usergrid) for administrative activities
+instead of using JavaScript to do them programmatically in your app.
+
+**Note:**You can see the response below in the Admin Portal by using the
+[JavaScript
+Console](/docs/usergrid/content/displaying-app-services-api-calls-curl-commands).
+
+The example assumes use of the [Ruby
+SDK](https://github.com/scottganyo/usergrid_iron).
+
+    mgmt = Usergrid::Management.new 'https://api.usergrid.com/management/organizations/my-org/'
+    resetpw = mgmt['users/resetpw']
+
+The example assumes use of the [Node.js
+module](https://github.com/apigee/usergrid-node-module).
+
+    var options = {
+        method:'GET',
+        endpoint:'management/organizations/my-org/users/resetpw'
+    };
+    client.request(options, function (err, data) {
+        if (err) {
+            //error — GET failed
+        } else {
+            //success — data will contain raw results from API call       
+        }
+    });
+
+#### Example - Response
+
+    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+    <html>
+    <head>
+        <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+        <title>Reset Password</title>
+        <link rel="stylesheet" type="text/css" href="../../css/styles.css" />
+        <script type="text/javascript">>
+            var RecaptchaOptions = {
+                theme : 'clean'
+            };
+        </script>
+    </head>
+    <body>
+
+        <div class="dialog-area">
+            <div class="dialog-form-message">Incorrect Captcha, try again...</div>
+            <form class="dialog-form" action="" method="post">
+                <fieldset>
+                    <p>
+                        <label for="email">Please type your <strong>email
+                                address</strong> or <strong>username</strong> below.</label>
+                    </p>
+                    <p>
+                        <input class="text_field" id="email" name="email" type="text" />
+                    </p>
+                    <p id="human-proof"></p>
+                    <script type="text/javascript" src="https://www.google.com/recaptcha/api/challenge?k=6LdSTNESAAAAAKHdVglHmMu86_EoYxsJjqQD1IpZ"></script>
+
+                    <p class="buttons">
+                        <button type="submit">Submit</button>
+                    </p>
+                </fieldset>
+            </form>
+        </div>
+    </pre>
+
+#### Completing a password reset
+
+Use the POST method to complete the password reset.
+
+#### Request URI
+
+POST /management/organizations/{org}/users/resetpw {request body}
+
+#### Parameters
+
++--------------------------------------+--------------------------------------+
+| Parameter                            | Description                          |
++======================================+======================================+
+| request body                         | Parameters and value for the Captcha |
+|                                      | challenge, the admin user's response |
+|                                      | to the Captcha challenge, and the    |
+|                                      | admin user's email address, for      |
+|                                      | example:                             |
+|                                      |                                      |
+|                                      |     {                                |
+|                                      |       "recaptcha_response_field" : " |
+|                                      | Atistophanes tseFia",                |
+|                                      |       "recaptcha_challenge_field" :  |
+|                                      | "Atistophanes tseFia",               |
+|                                      |       "email" : "jim.admin@gmail.com |
+|                                      | "                                    |
+|                                      |     }                                |
++--------------------------------------+--------------------------------------+
+
+ 
+
+#### Example - Request
+
+-   [cURL](#curl_complete_pw_reset)
+-   [JavaScript (HTML5)](#javascript_complete_pw_reset)
+-   [Ruby](#ruby_complete_pw_reset)
+-   [Node.js](#nodejs_complete_pw_reset)
+
+<!-- -->
+
+    curl -X -i POST "https://api.usergrid.com/management/organizations/my-org/users/resetpw" -d '{"recaptcha_response_field":"Atistophanes tseFia","recaptcha_challenge_field":"Atistophanes tseFia","email":"jim.admin@gmail.com"}'
+
+It is recommended that you use the [Admin
+Portal](http://apigee.com/usergrid) for administrative activities
+instead of using JavaScript to do them programmatically in your app.
+
+**Note:**You can see the response below in the Admin Portal by using the
+[JavaScript
+Console](/docs/usergrid/content/displaying-app-services-api-calls-curl-commands).
+
+ 
+
+The example assumes use of the [Ruby
+SDK](https://github.com/scottganyo/usergrid_iron).
+
+    mgmt = Usergrid::Management.new 'https://api.usergrid.com/management/organizations/my-org/'
+    resetpw = mgmt['users/resetpw']
+    resetpw { recaptcha_response_field: 'Atistophanes tseFia', recaptcha_challenge_field: 'Atistophanes tseFia', email: 'jim.admin@gmail.com' }
+
+The example assumes use of the [Node.js
+module](https://github.com/apigee/usergrid-node-module).
+
+    var options = {
+        method:'POST',
+        endpoint:'management/organizations/my-org/users/resetpw',
+        body:{ 
+           recaptcha_response_field:'Atistophanes tseFia', 
+           recaptcha_challenge_field:'Atistophanes tseFia', 
+           email:'jim.admin@gmail.com' 
+        }
+    };
+    client.request(options, function (err, data) {
+        if (err) {
+            //error — POST failed
+        } else {
+            //success — data will contain raw results from API call       
+        }
+    });
+
+#### Example - Response
+
+    {
+      "action": "reset user password",
+      "timestamp": 13546154010321,
+      "duration": 0
+    }
+
+### Activating an admin user
+
+Use the GET method to activate an admin user from a link provided in an
+email notification.
+
+#### Request URI
+
+GET
+/management/organizations/{org}/users/{user|username|email|uuid}/activate?token={token}&confirm={confirm\_email}
+
+#### Parameters
+
+  Parameter                                           Description
+  --------------------------------------------------- -------------------------------------------------
+  string user|string username|string email|arg uuid   Admin username, name, email address, or UUID.
+  string token                                        Activation token (supplied via email).
+  boolean confirm\_email                              Send confirmation email (false is the default).
+
+ 
+
+#### Example - Request
+
+-   [cURL](#curl_activate_admin_user)
+-   [JavaScript (HTML5)](#javascript_activate_admin_user)
+-   [Ruby](#ruby_activate_admin_user)
+-   [Node.js](#nodejs_activate_admin_user)
+
+<!-- -->
+
+    curl -X GET "https://api.usergrid.com/management/organizations/my-org/users/jim.admin/activate?token=33dd0563-cd0c-11e1-bcf7-12313d1c4491"
+
+It is recommended that you use the [Admin
+Portal](http://apigee.com/usergrid) for administrative activities
+instead of using JavaScript to do them programmatically in your app.
+
+**Note:**You can see the response below in the Admin Portal by using the
+[JavaScript
+Console](/docs/usergrid/content/displaying-app-services-api-calls-curl-commands).
+
+The example assumes use of the [Ruby
+SDK](https://github.com/scottganyo/usergrid_iron).
+
+    mgmt = Usergrid::Management.new 'https://api.usergrid.com/management/organizations/my-org/'
+    mgmt['users/jim.admin/activate'].get params: { token: '33dd0563-cd0c-11e1-bcf7-12313d1c4491' }
+
+The example assumes use of the [Node.js
+module](https://github.com/apigee/usergrid-node-module).
+
+    var options = {
+        method:'GET',
+        endpoint:'management/organizations/my-org/users/jim.admin/activate',
+        qs:{token:'33dd0563-cd0c-11e1-bcf7-12313d1c4491'}
+    };
+    client.request(options, function (err, data) {
+        if (err) {
+            //error — GET failed
+        } else {
+            //success — data will contain raw results from API call       
+        }
+    });
+
+#### Example - Response
+
+    {
+      "action": "activate user",
+      "timestamp": 1349718021324,
+      "duration": 0
+    }
+
+### Reactivating an admin user
+
+Use the GET method to reactivate an admin user.
+
+#### Request URI
+
+GET
+/management/organizations/{org}/users/{user|username|email|uuid}/reactivate
+
+#### Parameters
+
+  Parameter                                           Description
+  --------------------------------------------------- -----------------------------------------------
+  string user|string username|string email|arg uuid   Admin username, name, email address, or UUID.
+
+ 
+
+#### Example - Request
+
+-   [cURL](#curl_reactivate_admin_user)
+-   [JavaScript (HTML5)](#javascript_reactivate_admin_user)
+-   [Ruby](#ruby_reactivate_admin_user)
+-   [Node.js](#nodejs_reactivate_admin_user)
+
+<!-- -->
+
+    curl -X GET "https://api.usergrid.com/management/organizations/my-org/users/jim.admin/reactivate"
+
+It is recommended that you use the [Admin
+Portal](http://apigee.com/usergrid) for administrative activities
+instead of using JavaScript to do them programmatically in your app.
+
+**Note:**You can see the response below in the Admin Portal by using the
+[JavaScript
+Console](/docs/usergrid/content/displaying-app-services-api-calls-curl-commands).
+
+The example assumes use of the [Ruby
+SDK](https://github.com/scottganyo/usergrid_iron).
+
+    mgmt = Usergrid::Management.new 'https://api.usergrid.com/management/organizations/my-org/'
+    mgmt['users/jim.admin/reactivate']
+
+The example assumes use of the [Node.js
+module](https://github.com/apigee/usergrid-node-module).
+
+    var options = {
+        method:'GET',
+        endpoint:'management/organizations/my-org/users/jim.admin/reactivate'
+    };
+    client.request(options, function (err, data) {
+        if (err) {
+            //error — GET failed
+        } else {
+            //success — data will contain raw results from API call       
+        }
+    });
+
+#### Example - Response
+
+    {
+      "action": "reactivate user",
+      "timestamp": 1349735217217,
+      "duration": 3541
+    }
+
+### Getting an admin user's activity feed
+
+Use the GET method to retrieve an admin user's activity feed.
+
+#### Request URI
+
+GET
+/management/organizations/{org}/users/{user|username|email|uuid}/feed
+
+#### Parameters
+
+  Parameter                                           Description
+  --------------------------------------------------- -----------------------------------------------
+  string user|string username|string email|arg uuid   Admin username, name, email address, or UUID.
+
+#### Example - Request
+
+-   [cURL](#curl_get_user_feed)
+-   [JavaScript (HTML5)](#javascript_get_user_feed)
+-   [Ruby](#ruby_get_user_feed)
+-   [Node.js](#nodejs_get_user_feed)
+
+<!-- -->
+
+    curl -X GET "https://api.usergrid.com/management/organizations/my-org/users/jim.admin/feed"
+
+It is recommended that you use the [Admin
+Portal](http://apigee.com/usergrid) for administrative activities
+instead of using JavaScript to do them programmatically in your app.
+
+**Note:**You can see the response below in the Admin Portal by using the
+[JavaScript
+Console](/docs/usergrid/content/displaying-app-services-api-calls-curl-commands).
+
+The example assumes use of the [Ruby
+SDK](https://github.com/scottganyo/usergrid_iron).
+
+    mgmt = Usergrid::Management.new 'https://api.usergrid.com/management/organizations/my-org/'
+    mgmt['users/jim.admin/feed'].get
+
+The example assumes use of the [Node.js
+module](https://github.com/apigee/usergrid-node-module).
+
+    var options = {
+        method:'GET',
+        endpoint:'management/organizations/my-org/users/jim.admin/feed'
+    };
+    client.request(options, function (err, data) {
+        if (err) {
+            //error — GET failed
+        } else {
+            //success — data will contain raw results from API call       
+        }
+    });
+
+#### Example - Response
+
+    {
+      "action": "get admin user feed",
+      "status": "ok",
+     "entities":  [
+         {
+          "uuid": "cf3e981c-fe80-11e1-95c8-12331b144c65",
+          "type": "activity",
+          "created": 1347643370454,
+          "modified": 1347643370454,
+          "actor":  {
+            "displayName": "jim.admin",
+            "objectType": "person",
+            "uuid": "335b527f-cd0d-11e1-bef8-12331d1c5591",
+            "entityType": "user"
+          },
+          "category": "admin",
+          "metadata":  {
+            "cursor": "gGkAAQMAgGkABgE5xc3r1gCAdQAQz02YHP6QEeGVyBIxOxIsVgCAdQAQz4ZbYf6QEeGVyBIxOxIsVgA",
+            "path": "/users/327b527f-cd0c-11e1-bcf7-12313d1c4491/feed/cf4d981c-fe90-11e1-95c8-12313b122c56"
+          },
+        "object":  {
+        ...
+        },
+        "published": 1342198809251,
+                "title": "<a mailto="jim.admingmail.com">jim.admin (jim.admin@gmail.com)</a> created a new organization account named jim.admin",
+                "verb": "create"
+              }
+            ],
+      "timestamp": 1349735719320,

Added: incubator/usergrid/site/content/docs/overview.md
URL: http://svn.apache.org/viewvc/incubator/usergrid/site/content/docs/overview.md?rev=1543106&view=auto
==============================================================================
--- incubator/usergrid/site/content/docs/overview.md (added)
+++ incubator/usergrid/site/content/docs/overview.md Mon Nov 18 18:51:18 2013
@@ -0,0 +1,41 @@
+---
+title: App Security Overview
+category: docs
+layout: docs
+---
+
+App Security Overview
+=====================
+
+Any app you put into production should feature security that protects
+your app, your users, and your app's data. Implementing security means
+taking steps in your mobile app's code and in your Apache Usergrid
+application.
+
+**Warning:** When you register for Apache Usergrid, you get a sandbox
+application that you can use to try things out. This application is not
+for use in production. By default, the sandbox application is not
+protected by any security measures whatsoever. Use the sandbox only for
+experimentation, and only with data that isn't in any way sensitive.
+
+When securing your app, follow these high-level steps:
+
+1.  In your Apache Usergrid application, use the admin portal to define
+    your app users' access to your app's data and features. You do this
+    by creating permission rules, then associating those rules with your
+    users. For more information, see [Managing access by defining
+    permission rules](/managing-access-defining-permission-rules).
+2.  In your app, write code through which your app's users can verify
+    who they are to your Apache Usergrid application. You do this by
+    writing code that uses their username and password as credentials to
+    initially authenticate with the Apache Usergrid application, then uses
+    a token thereafter. (This authentication style supports the OAuth
+    2.0 model.) For more information, see [Authenticating users and
+    application clients](/authenticating-users-and-application-clients).
+3.  Be sure to use coding best practices that help ensure that your app
+    is protected from malicious attacks. For more information, see
+    [Securing your app](/securing-your-app).
+
+The following illustration describes these high-level areas.
+
+![](/docs/sites/docs/files/styles/large/public/security_model_0.png?itok=_fErNYbL)

Added: incubator/usergrid/site/content/docs/queries-and-parameters.md
URL: http://svn.apache.org/viewvc/incubator/usergrid/site/content/docs/queries-and-parameters.md?rev=1543106&view=auto
==============================================================================
--- incubator/usergrid/site/content/docs/queries-and-parameters.md (added)
+++ incubator/usergrid/site/content/docs/queries-and-parameters.md Mon Nov 18 18:51:18 2013
@@ -0,0 +1,62 @@
+---
+title: Apache Usergrid data query overview
+category: docs
+layout: docs
+---
+
+Apache Usergrid data query overview
+================================
+
+You can write code to query for data you've stored in your Apache Usergrid
+application. You'll most likely use queries as filters to retrieve
+specific entities. For example, you might want to get data about users
+who are "following" a specific other user, businesses in specific
+geographical locations, and so on.
+
+The following example retrieves a list of restaurants (from a
+restaurants collection) whose name property contains the value "diner",
+sorting the list in ascending order by name:
+
+    /restaurants?ql=select * where name contains 'diner' order by name asc
+
+> **Note:**Query examples in this content are shown unencoded to make
+> them easier to read. Keep in mind that you might need to encode query
+> strings if you're sending them as part of URLs, such as when you're
+> executing them with the cURL tool.
+
+Having retrieved the list of restaurants, your code could display the
+list to your users. You could also use a query to retrieve a list of
+diners that are located within a particular geographical area (such as
+near your user's current location).
+
+> **Important:** By default, results from queries of your Apache Usergrid
+> data are limited to 10 items at a time. You can control this with the
+> `limit` parameter, as discussed in [Working with
+> queries](/working-queries).
+
+You query your Apache Usergrid data by using a query syntax that's like
+Structured Query Language (SQL), the query language for relational
+databases. Unlike a relational database, where you specify tables and
+columns containing the data you want to query, in your Apache Usergrid
+queries you specify collections and entities.
+
+> **Note:** The syntax of Apache Usergrid queries only *resembles* SQL to
+> make queries familiar and easier to write. However, the language isn't
+> SQL. Only the syntax items documented here are supported.
+
+The examples in these topics illustrate queries using simple strings to
+make the queries easier to read. You can also use one of the Apigee
+SDKs, which provide functions through which you can pass query strings,
+and in some cases shortcuts for bypassing queries altogether.
+
+> **Note:** Queries replace filters, which are deprecated.
+
+For more detail about support for queries your Apache Usergrid database,
+see the following topics:
+
+-   [Basic query syntax](/basic-query-syntax)
+-   [Query response values](/query-response-values)
+-   [Data types supported in queries](/data-types-supported-queries)
+-   [Querying data from the admin portal](/querying-data-admin-portal)
+-   [Working with queries](/working-queries)
+

Added: incubator/usergrid/site/content/docs/query-response-values.md
URL: http://svn.apache.org/viewvc/incubator/usergrid/site/content/docs/query-response-values.md?rev=1543106&view=auto
==============================================================================
--- incubator/usergrid/site/content/docs/query-response-values.md (added)
+++ incubator/usergrid/site/content/docs/query-response-values.md Mon Nov 18 18:51:18 2013
@@ -0,0 +1,108 @@
+---
+title: Query response values
+category: docs
+layout: docs
+---
+
+When you query Apache Usergrid data, the query’s response is formatted in
+JavaScript Object Notation (JSON). This is a common format used for
+parameter and return values in REST web services.
+
+So for the following query:
+
+    /users?ql=select * where name = ‘Gladys Kravitz’
+
+...you would get a response such as the the one below. The JSON format
+arranges the data in name/value pairs. Many of the values correspond to
+specifics of the request, including the request’s HTTP action (GET), the
+application’s UUID, the request’s parameters (the query string you
+sent), and so on.
+
+> **Note:**Query examples in this content are shown unencoded to make
+> them easier to read. Keep in mind that you might need to encode query
+> strings if you're sending them as part of URLs, such as when you're
+> executing them with the cURL tool.
+
+Here, the query is asking for whole entities in the users collection.
+Data corresponding to the response is captured in the response’s
+`entities` array. The array has one member here, corresponding to the
+one user found by the query (another kind of query might have found more
+users). That one member gives the UUID of the entity (user), the entity
+type, and values for properties such as name, username, email, and so
+on.
+
+```js
+{
+  "action" : "get",
+  "application" : "8272c9b0-d86a-11e2-92e2-cdf1ce04c1c0",
+  "params" : {
+    "ql" : [ "select * where name = 'Gladys Kravitz'" ]
+  },
+  "path" : "/users",
+  "uri" : "http://api.usergrid.com/myorg/myapp/users",
+  "entities" : [ {
+    "uuid" : "d0d7d0ba-e97b-11e2-8cef-411c466c4f2c",
+    "type" : "user",
+    "name" : "Gladys Kravitz",
+    "created" : 1373472876859,
+    "modified" : 1373472876859,
+    "username" : "gladys",
+    "email" : "gladys@example.com",
+    "activated" : true,
+    "picture" : "http://www.gravatar.com/avatar/20c57d4f41cf51f2db44165eb058b3b2",
+    "metadata" : {
+      "path" : "/users/d0d7d0ba-e97b-11e2-8cef-411c466c4f2c",
+      "sets" : {
+        "rolenames" : "/users/d0d7d0ba-e97b-11e2-8cef-411c466c4f2c/rolenames",
+        "permissions" : "/users/d0d7d0ba-e97b-11e2-8cef-411c466c4f2c/permissions"
+      },
+      "connections" : {
+        "firstname" : "/users/d0d7d0ba-e97b-11e2-8cef-411c466c4f2c/firstname",
+        "lastname" : "/users/d0d7d0ba-e97b-11e2-8cef-411c466c4f2c/lastname"
+      },
+      "collections" : {
+        "activities" : "/users/d0d7d0ba-e97b-11e2-8cef-411c466c4f2c/activities",
+        "devices" : "/users/d0d7d0ba-e97b-11e2-8cef-411c466c4f2c/devices",
+        "feed" : "/users/d0d7d0ba-e97b-11e2-8cef-411c466c4f2c/feed",
+        "groups" : "/users/d0d7d0ba-e97b-11e2-8cef-411c466c4f2c/groups",
+        "roles" : "/users/d0d7d0ba-e97b-11e2-8cef-411c466c4f2c/roles",
+        "following" : "/users/d0d7d0ba-e97b-11e2-8cef-411c466c4f2c/following",
+        "followers" : "/users/d0d7d0ba-e97b-11e2-8cef-411c466c4f2c/followers"
+      }
+    }
+  } ],
+  "timestamp" : 1374694196061,
+  "duration" : 48,
+  "organization" : "myorg",
+  "applicationName" : "myapp",
+  "count" : 1
+}
+```
+
+Compare the preceding example with the following for another kind of
+query. Imagine the following request string, where the query string is
+asking for only the values of two of the entity’s properties (username
+and name):
+
+    /users?ql=select username,name where name=’Gladys Kravitz’
+
+In the response JSON from this query, the return value is specified as
+the property of the `list` item -- here, an array containing only the
+values of the properties the query asked for, in the order they were
+requested (username first, then name).
+
+    {
+      "action" : "get",
+      "application" : "8272c9b0-d86a-11e2-92e2-cdf1ce04c1c0",
+      "params" : {
+        "ql" : [ "select username,name where name='Gladys Kravitz'" ]
+      },
+      "path" : "/users",
+      "uri" : "http://api.usergrid.com/myorg/myapp/users",
+      "list" : [ [ "gladys", "Gladys Kravitz" ] ],
+      "timestamp" : 1374697463190,
+      "duration" : 25,
+      "organization" : "myorg",
+      "applicationName" : "myapp",
+      "count" : 1
+    }

Added: incubator/usergrid/site/content/docs/querying-data-admin-portal.md
URL: http://svn.apache.org/viewvc/incubator/usergrid/site/content/docs/querying-data-admin-portal.md?rev=1543106&view=auto
==============================================================================
--- incubator/usergrid/site/content/docs/querying-data-admin-portal.md (added)
+++ incubator/usergrid/site/content/docs/querying-data-admin-portal.md Mon Nov 18 18:51:18 2013
@@ -0,0 +1,40 @@
+---
+title: Querying data from the admin portal
+category: docs
+layout: docs
+---
+
+Querying data from the admin portal
+===================================
+
+The easiest way to try out Apache Usergrid queries you're considering is to
+use the admin portal, which you can reach at
+[https://apigee.com/usergrid/](https://apigee.com/usergrid/).
+
+To try out queries in the portal, use the following steps:
+
+1.  Go to the **Data Explorer** using the left navigation pane.
+2.  Under **Method**, select the HTTP method you want to use, as
+    follows:
+    -   GET to retrieve data.
+    -   POST to create data.
+    -   PUT to update data.
+    -   DELETE to delete data.
+
+3.  In the **Path** box, enter the path to the collection you're
+    querying.
+4.  In the **Query String** box, enter your query string.
+
+    Note that you put the path and query string in separate fields,
+    rather than appending the query string to the path in the **Path**
+    box.
+
+The admin portal transforms queries into standard URL-encoded parameters
+before issuing HTTP requests. For example, given the following query
+resulting from what you've entered in the portal:
+
+    /users?ql=select * where name = 'gladys*'
+
+The string received by Apigee would be the following:
+
+    /users?ql=select%20*%20where%20name%20%3d%20'gladys*'

Added: incubator/usergrid/site/content/docs/querying-your-app-services-data.md
URL: http://svn.apache.org/viewvc/incubator/usergrid/site/content/docs/querying-your-app-services-data.md?rev=1543106&view=auto
==============================================================================
--- incubator/usergrid/site/content/docs/querying-your-app-services-data.md (added)
+++ incubator/usergrid/site/content/docs/querying-your-app-services-data.md Mon Nov 18 18:51:18 2013
@@ -0,0 +1,81 @@
+---
+title: Querying your Apache Usergrid data
+category: docs
+layout: docs
+---
+
+Querying your Apache Usergrid data
+===============================
+
+You can write code to query for data you've stored in your Apache Usergrid
+application. You'll most likely use queries as filters to retrieve
+specific entities. For example, you might want to get data about users
+who are "following" a specific other user, businesses in specific
+geographical locations, and so on.
+
+The following example retrieves a list of restaurants (from a
+restaurants collection) whose name property contains the value "diner",
+sorting the list in ascending order by name:
+
+    /restaurants?ql=select * where name contains 'diner' order by name asc
+
+Having retrieved the list of restaurants, your code could display the
+list to your users. You could also use a query to retrieve a list of
+diners that are located within a particular geographical area (such as
+near your user's current location).
+
+> **Important:** By default, results from queries of your Apache Usergrid
+> data are limited to 10 items at a time. You can control this with the
+> `limit` parameter, as discussed [Working with
+> queries](/working-queries#cursor).
+
+You query your Apache Usergrid data by using a query syntax that's like
+Structured Query Language (SQL), the query language for relational
+databases. Unlike a relational database, where you specify tables and
+columns containing the data you want to query, in your Apache Usergrid
+queries you specify collections and entities.
+
+The examples in this section illustrate queries using simple strings to
+make the queries easier to read. You can also use one of the Apigee
+SDKs, which provide functions through which you can pass query strings,
+and in some cases shortcuts for bypassing queries altogether.
+
+**Note:** Queries replace filters, which are deprecated.
+
+Querying data from the admin portal
+-----------------------------------
+
+The easiest way to try out queries you're considering is to use the
+admin portal, which you can reach at
+[https://apigee.com/usergrid/](https://apigee.com/usergrid/).
+
+To try out queries in the portal, use the following steps:
+
+1.  Go to the **Data Explorer** using the left navigation pane.
+
+    ![](/docs/sites/docs/files/styles/large/public/as_push_console_delete.png?itok=BFAfMReE)
+
+2.  Under **Method**, select the HTTP method you want to use, as
+    follows:\
+    -   GET to retrieve data.
+    -   POST to create data.
+    -   PUT to update data.
+    -   DELETE to delete data.
+
+3.  In the **Path** box, enter the path to the collection you're
+    querying.
+4.  In the **Query String** box, enter your query string.
+
+    Note that you put the path and query string in separate fields,
+    rather than appending the query string to the path in the **Path**
+    box.
+
+The admin portal transforms queries into standard URL-encoded parameters
+before issuing HTTP requests. For example, given the following query
+resulting from what you've entered in the portal:
+
+    /users?ql=select * where name = 'gladys*'
+
+The string received by Apigee would be the following:
+
+    /users?ql=select%20*%20where%20name%20%3d%20'gladys*'

Added: incubator/usergrid/site/content/docs/rest-api.md
URL: http://svn.apache.org/viewvc/incubator/usergrid/site/content/docs/rest-api.md?rev=1543106&view=auto
==============================================================================
--- incubator/usergrid/site/content/docs/rest-api.md (added)
+++ incubator/usergrid/site/content/docs/rest-api.md Mon Nov 18 18:51:18 2013
@@ -0,0 +1,17 @@
+---
+title: REST API
+category: docs
+layout: docs
+---
+
+Organizations
+-------------
+
+```bash
+# Create an Organization
+curl -X POST "https://api.usergrid.com/management/organizations" \
+     -d '{ "password":"test12345", "email":"tester123@hotmail.com", "name":"test", "username":"test123", "organization":"testorg" }'
+
+# Read an Organization
+curl -X GET "https://api.usergrid.com/management/organizations/testorg"
+```
\ No newline at end of file



Mime
View raw message