You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@usergrid.apache.org by sn...@apache.org on 2015/08/05 14:25:34 UTC
[8/8] incubator-usergrid git commit: Converted Orgs & Apps section to
Markdown.
Converted Orgs & Apps section to Markdown.
Project: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/commit/d7bae265
Tree: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/tree/d7bae265
Diff: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/diff/d7bae265
Branch: refs/heads/ug2-doc-update
Commit: d7bae265dc2c7e600d429923847eace0f706ee31
Parents: d97f378
Author: Dave Johnson <sn...@apache.org>
Authored: Wed Aug 5 08:25:09 2015 -0400
Committer: Dave Johnson <sn...@apache.org>
Committed: Wed Aug 5 08:25:09 2015 -0400
----------------------------------------------------------------------
docs/index.rst | 5 +-
docs/orgs-and-apps/admin-user.md | 352 +++++++++++++++++++
docs/orgs-and-apps/application.md | 100 ++++++
docs/orgs-and-apps/applications.md | 78 -----
docs/orgs-and-apps/managing.md | 50 +++
docs/orgs-and-apps/organization.md | 435 ++++++++++++++++++++++++
docs/orgs-and-apps/organizations-admins.md | 43 ---
docs/orgs-and-apps/tbd.md | 1 -
8 files changed, 941 insertions(+), 123 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/d7bae265/docs/index.rst
----------------------------------------------------------------------
diff --git a/docs/index.rst b/docs/index.rst
index 331f96d..b68cf36 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -116,7 +116,10 @@ Apache Usergrid Documentation
:maxdepth: 2
:caption: Organizations & Applications
- orgs-and-apps/tbd
+ orgs-and-apps/managing
+ orgs-and-apps/organization
+ orgs-and-apps/application
+ orgs-and-apps/adminuser
.. _push-notifications:
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/d7bae265/docs/orgs-and-apps/admin-user.md
----------------------------------------------------------------------
diff --git a/docs/orgs-and-apps/admin-user.md b/docs/orgs-and-apps/admin-user.md
new file mode 100644
index 0000000..87b96f9
--- /dev/null
+++ b/docs/orgs-and-apps/admin-user.md
@@ -0,0 +1,352 @@
+# Admin user$
+An admin user has full access to perform any operation on all organization accounts of which the admin user is a member. Using the API Services BaaS 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.html).
+
+__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](../security_and_auth/authenticating-users-and-application-clients.html) for details.
+
+## Creating an admin user
+Use the POST method to create an admin user.
+
+### Request URI
+
+ POST /management/organizations/{org}/users {request body}
+
+In the request body send a JSON object that represents the new user, for example:
+
+ {
+ "username" : "jim.admin",
+ "email" : "jim.admin@gmail.com",
+ "name" : "Jim Admin",
+ "password" : "test12345"
+ }
+
+
+### Example - Request
+
+ 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"}'
+
+### 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 <ji...@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
+--------- -----------
+User identifier Username, name, email address, or UUID.
+request body JSON object containing propties you would like to add/update on user.
+
+For example, to add city and state to user, send this:
+
+ {
+ "city" : "San Francisco",
+ "state" : "California"
+ }
+
+### Example - Request
+
+ curl -X -i PUT "https://api.usergrid.com/management/organizations/my-org/users/jim.admin" -d '{"city":"San Francisco","state":"California"}'
+
+### 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
+--------- -----------
+User identifier Admin username, name, email address, or UUID.
+
+
+### Example - Request
+
+ curl -X GET "https://api.usergrid.com/management/organizations/my-org/users/jim.admin"
+
+### 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 <ji...@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 <ji...@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/users/{user|username|email|uuid}/password {request body}
+
+Parameters
+
+Parameter Description
+--------- -----------
+User identifier Admin username, name, email address, or UUID.
+
+Expects new and old password to be sent in request body:
+
+ {
+ "password": <old_password>
+ "newpassword":<new_password>
+ }
+
+### Example - Request
+
+ curl -X -i PUT "https://api.usergrid.com/management/users/jim.admin/password" -d '{"oldpassword":"test123", "newpassword":"mynewpassword"}'
+
+### 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 -X GET "https://api.usergrid.com/management/organizations/my-org/users/resetpw"
+
+### 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}
+
+In the request body send 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 -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"}'
+
+### 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
+--------- -----------
+User identifier Admin username, name, email address, or UUID.
+string token Activation token (supplied via email).
+confirm_email Send confirmation email (false is the default).
+
+### Example - Request
+
+ curl -X GET "https://api.usergrid.com/management/organizations/my-org/users/jim.admin/activate?token=33dd0563-cd0c-11e1-bcf7-12313d1c4491"
+
+### 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
+--------- -----------
+User identifier Admin username, name, email address, or UUID.
+
+## Example - Request
+
+ curl -X GET "https://api.usergrid.com/management/organizations/my-org/users/jim.admin/reactivate"
+
+### 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
+--------- -----------
+User identifier Admin username, name, email address, or UUID.
+
+### Example - Request
+
+ curl -X GET "https://api.usergrid.com/management/organizations/my-org/users/jim.admin/feed"
+
+### 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,
+ }
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/d7bae265/docs/orgs-and-apps/application.md
----------------------------------------------------------------------
diff --git a/docs/orgs-and-apps/application.md b/docs/orgs-and-apps/application.md
new file mode 100644
index 0000000..7495aee
--- /dev/null
+++ b/docs/orgs-and-apps/application.md
@@ -0,0 +1,100 @@
+# Application
+You can create a new application in an organization through the Admin portal. The Admin portal creates the new application by issuing a post against the management endpoint (see the "Creating an organization application" section in Organization for details). If you need to create an application programmatically in your app, you can also use the API to do this. You can access application entities using your app name or UUID, prefixed with the organization name or UUID:
+
+ https://api.usergrid.com/{org_name|uuid}/{app_name|uuid}
+
+Most mobile apps never access the application entity directly. For example you might have a server-side web app that accesses the application entity for configuration purposes. If you want to access your application entity programmatically, you can use the API.
+
+## Creating an application
+To create an application you POST a JSON object containing (at a minimum) the name of the new application.
+You will also need to pass authentication credentials.
+
+### Request URI
+
+ POST /management/organizations|orgs/{org_name}|{org_uuid}/apps {request body}
+
+Parameters
+
+Parameter Sent in Description
+--------- ------- -----------
+grant_type Query string Only the value 'client_credentials' is supported.
+client_id Query string The org-level client id for your org, found in the 'Org Administration' menu of Usergrid portal.
+client_secret Query string The org-level client secret for your org, found in the 'Org Administration' menu Usergrid portal.
+name Request Body The name of the application.
+
+### Example - Request
+
+ curl -X -i POST "https://api.usergrid.com/management/orgs/testorg/apps?grant_type=client_credentials&client_id=b3U68vghI6FmEeKn9wLoGtzz0A&client_secret=b3U6ZuZ5_U8Y-bOaViJt0OyRkJFES-A" -d '{"name":"testapp1"}'
+
+### Example - Response
+
+ {
+ "action": "new application for organization",
+ "timestamp": 1338914698135,
+ "duration": 701
+ }
+
+## 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](../security_and_auth/authenticating-users-and-application-clients.html) for details.
+
+### Example - Request
+
+ curl -X POST "https://api.usergrid.com/management/orgs/testorg/apps/testapp1/credentials"
+
+### 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](../security_and_auth/authenticating-users-and-application-clients.html) for details.
+
+### Example - Request
+
+ curl -X GET "https://api.usergrid.com/management/orgs/testorg/apps/testapp1/credentials"
+
+### Example - Response
+
+ {
+ "action": "get application client credentials",
+ "timestamp": 1349816819545,
+ "duration": 7,
+ "credentials": {
+ "client_id": "YXA7ygil-f3TEeG-yhIxPQK1cQ",
+ "client_secret": "YXA65gYlqja8aYYSAy8Ox3Vg5aRZp48"
+ }
+ }
+
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/d7bae265/docs/orgs-and-apps/applications.md
----------------------------------------------------------------------
diff --git a/docs/orgs-and-apps/applications.md b/docs/orgs-and-apps/applications.md
deleted file mode 100644
index 262ef2b..0000000
--- a/docs/orgs-and-apps/applications.md
+++ /dev/null
@@ -1,78 +0,0 @@
-# Applications
-
-You can create a new application in an organization through the [Admin
-portal](/admin-portal). The Admin portal creates the new application by
-issuing a post against the management endpoint (see the "Creating an
-organization application" section in [Organization](/organization) for
-details). If you need to create an application programmatically in your
-app, you can also use the API to do this. You can access application
-entities using your app name or UUID, prefixed with the organization
-name or UUID:
-
-[https://api.usergrid.com](http://api.usergrid.com/)/{org\_name|uuid}/{app\_name|uuid}
-
-Most mobile apps never access the application entity directly. For
-example you might have a server-side web app that accesses the
-application entity for configuration purposes. If you want to access
-your application entity programmatically, you can use the API.
-
-### Application properties
-
-The following are the system-defined properties for application
-entities. You can create application-specific properties for an
-application entity in addition to the system-defined properties. The
-system-defined properties are reserved. You cannot use these names to
-create other properties for an application entity. In addition the
-applications name is reserved for the applications collection — you
-can't use it to name another collection.
-
-The look-up properties for the entities of type application are uuid and
-name, that is, you can use the uuid and name properties to reference an
-application entity in an API call. However, you can search on a role
-using any property of the application entity. See [Queries and
-parameters](/queries-and-parameters) for details on searching.
-
- Property Type Description
- --------------------------------------- --------- ---------------------------------------------------------------------------------
- uuid UUID Application’s unique entity ID
- type string "application"
- 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
- name string Application name (mandatory)
- title string Application title
- description string Application description
- activated boolean Whether application is activated
- disabled boolean Whether application is administratively disabled
- allowOpenRegistration boolean Whether application allows any user to register
- registrationRequiresEmailConfirmation boolean Whether registration requires email confirmation
- registrationRequiresAdminApproval boolean Whether registration requires admin approval
- accesstokenttl long Time to live value for an access token obtained within the application
-
-### Set properties
-
-The set properties for applications are listed in the table below.
-
- Set Type Description
- ---------------- -------- ----------------------------------------------------
- collections string Set of collections
- rolenames string Set of roles assigned to an application
- counters string Set of counters assigned to an application
- oauthproviders string Set of OAuth providers for the application
- credentials string Set of credentials required to run the application
-
-### Collections
-
-The collections for applications are listed in the table below.
-
- Collection Type Description
- --------------- -------------- ----------------------------------------------------------------------------------
- users user Collection of users
- groups group Collection of groups
- folders folder Collection of assets that represent folder-like objects
- events event Collection of events posted by the application
- assets asset Collection of assets that represent file-like objects
- activities activity Collection of activity stream actions
- devices device Collection of devices in the service
- notifiers notifier Collection of notifiers used for push notifications
- notifications notification Collection of push notifications that have been sent or are scheduled to be sent
- receipts receipt Collection of receipts from push notifications that were sent
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/d7bae265/docs/orgs-and-apps/managing.md
----------------------------------------------------------------------
diff --git a/docs/orgs-and-apps/managing.md b/docs/orgs-and-apps/managing.md
new file mode 100644
index 0000000..3c09807
--- /dev/null
+++ b/docs/orgs-and-apps/managing.md
@@ -0,0 +1,50 @@
+# Organization & application management
+Your application can use the App Services API to request a variety of management operations on App Services resources. For example, your application can request an access token to use in operations on entities and collections. Or it can create an organization to contain the applications, entities, and collections for a company, team, or project.
+
+Your application makes requests through the API using HTTP methods such as GET, POST, PUT, and DELETE, and specifies the pertinent resource URL. For management operations, the URL begins with ``/management/``. See [Using the API](../getting-started/using-the-api.html) for general usage information, such as how to construct an API request.
+
+The following table lists and describes resources accessible through the App Services API on which your application can perform management operations. Click on a resource for further details about the resource and its methods.
+
+<table class="usergrid-table">
+<tr>
+ <th>
+ Resource
+ </th>
+ <th>
+ Description
+ </th>
+</tr>
+<tr>
+ <td>
+ [Access Token](../security-and-auth/authenticating-users-and-application-clients.html)
+ </td>
+ <td>
+ Carries the credentials and authorization information needed to access other resources through the Usergrid API.
+ </td>
+</tr>
+<tr>
+ <td>
+ [Client Authorization](../security-and-auth/authenticating-api-requests.html)
+ </td>
+ <td>
+ Authorizes the client.
+ </td>
+</tr>
+<tr>
+ <td>
+ [Organization](organization.html)
+ </td>
+ <td>
+ The highest level structure in the Usergrid data hierarchy.
+ </td>
+</tr>
+<tr>
+ <td>
+ [Admin User](adminuser.html)
+ </td>
+ <td>
+ A user that has full access to perform any operation on all organization accounts of which the user is a member.
+ </td>
+</tr>
+</table>
+
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/d7bae265/docs/orgs-and-apps/organization.md
----------------------------------------------------------------------
diff --git a/docs/orgs-and-apps/organization.md b/docs/orgs-and-apps/organization.md
new file mode 100644
index 0000000..3980ae9
--- /dev/null
+++ b/docs/orgs-and-apps/organization.md
@@ -0,0 +1,435 @@
+# Organization
+
+An organization represents the highest level of the API Services BaaS 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.
+
+## Creating an organization
+Use the POST method to create an organization through a form post.
+
+### Request URI
+
+ POST /organizations|orgs {request body}
+
+Parameters
+
+Expected to be sent form data in the body of the request.
+
+Parameter Description
+--------- -----------
+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.
+
+
+### Example - Request
+
+ curl -X -i POST "https://api.usergrid.com/management/orgs" -d '{"password":"test12345","email":"tester123@hotmail.com","name":"test","username":"test123","organization":"testorg"}'
+
+### Example - Response
+
+ {
+ "action": "new organization",
+ "status": "ok",
+ "data": {
+ "owner": {
+ "applicationId": "00000000-0000-0000-0000-000000000001",
+ "username": "tester123",
+ "name": "test",
+ "email": "tester123@hotmail.com",
+ "activated": false,
+ "disabled": false,
+ "uuid": "48c92c73-0d7e-11e2-98b9-12313d288ee0",
+ "adminUser": true,
+ "displayEmailAddress": "tester123 <te...@hotmail.com>",
+ "htmldisplayEmailAddress": "tester123 <<a href="mailto:tester123@hotmail.com">tester123@hotmail.com</a>>"
+ },
+ "organization": {
+ "name": "testorg",
+ "uuid": "5de0bb69-0d7f-11e2-87b9-12313d288ff0"
+ }
+ },
+ "timestamp": 1349284674173,
+ "duration": 21376
+ }
+
+## Getting an organization
+Use the GET method to retrieve an organization given a specified UUID or username.
+
+### Request URI
+
+ GET /organizations|orgs/{org_name}|{uuid}
+
+Parameters
+
+Parameter Description
+--------- -----------
+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](../security-and-auth/authenticating-users-and-application-clients.html) for details.
+
+### Example - Request
+
+ curl -X GET "https://api.usergrid.com/management/orgs/testorg"
+
+### Example - Response
+
+ {
+ "timestamp": 1349286861746,
+ "duration": 18,
+ "organization": {
+ "users": {
+ "tester123": {
+ "applicationId": "00000000-0000-0000-0000-000000000001",
+ "username": "tester123",
+ "name": "test",
+ "email": "tester123@hotmail.com",
+ "activated": true,
+ "disabled": false,
+ "uuid": "327b527f-cd0c-11e1-bcf7-12313d1c4491",
+ "adminUser": true,
+ "displayEmailAddress": "tester123 <te...@hotmail.com>",
+ "htmldisplayEmailAddress": "tester123 <<a href="mailto:tester123@hotmail.com">tester123@hotmail.com</a>>"
+ }
+ },
+ "name": "testorg",
+ "applications": {
+ "tester123/sandbox": "3400ba10-cd0c-11e1-bcf7-12313d1c4491",
+ "tester123/testapp1": "be08a5f9-fdd3-11e1-beca-12313d027471",
+ "tester123/testapp2": "cede5b7e-fe90-11e1-95c8-12313b122c56"
+ },
+ "uuid": "33dd0563-cd0c-11e1-bcf7-12313d1c4491"
+ }
+
+## 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
+--------- -----------
+org_name|arg uuid Organization name or organization UUID.
+token Activation token (supplied via email).
+confirm_email (boolean) Send confirmation email (false is the default).
+
+
+### Example - Request
+
+ curl -X GET "https://api.usergrid.com/management/orgs/testorg/activate?token=33dd0563-cd0c-11e1-bcf7-12313d1c4491"
+
+### 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 -X GET "https://api.usergrid.com/management/orgs/testorg/reactivate"
+
+### 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. [Authenticating users and application clients](../security_and_auth/authenticating-users-and-application-clients.html) for details.
+
+### Example - Request
+
+ curl -X POST "https://api.usergrid.com/management/orgs/credentials"
+
+### 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](../security_and_auth/authenticating-users-and-application-clients.html) for details.
+
+### Example - Request
+
+ curl -X GET "https://api.usergrid.com/management/orgs/testorg/credentials"
+
+### 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](../security_and_auth/authenticating-users-and-application-clients.html) for details.
+
+### Example - Request
+
+ curl -X GET "https://api.usergrid.com/management/orgs/testorg/feed"
+
+### 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
+ }
+
+## 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](../security_and_auth/authenticating-users-and-application-clients.html) for details.
+
+### Example - Request
+
+ curl -X GET "https://api.usergrid.com/management/orgs/testorg/apps"
+
+### 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 -X PUT "https://api.usergrid.com/management/orgs/testorg/users/test123"
+
+### 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 <te...@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
+--------- -----------
+org_name|arg org_uuid Organization name or organization UUID.
+
+### Example - Request
+
+ curl -X GET "https://api.usergrid.com/management/orgs/testorg/users"
+
+### 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 <te...@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. All organizations must have a minimum
+of one user with org admin privileges. If you attempt to delete the last org admin in an organization,
+the API will return a 400 Bad Request error.
+
+### Request URI
+
+ DELETE /organizations|orgs/{org_name}|{org_uuid}/users/{username|email|uuid}
+
+Parameters
+
+Parameter Description
+--------- -----------
+org_name|arg org_uuid Organization name or organization UUID.
+username|string email|arg uuid User name, user email address, or user UUID.
+
+### Example - Request
+
+ curl -X DELETE "https://api.usergrid.com/management/orgs/testorg/users/test123"
+
+### 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 <te...@hotmail.com>",
+ "htmldisplayEmailAddress": "tester123 <<a href="mailto:tester123@hotmail.com">tester123@hotmail.com</a>>"
+ }
+ },
+ "timestamp": 1349453590005,
+ "duration": 727
+ }
+
+
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/d7bae265/docs/orgs-and-apps/organizations-admins.md
----------------------------------------------------------------------
diff --git a/docs/orgs-and-apps/organizations-admins.md b/docs/orgs-and-apps/organizations-admins.md
deleted file mode 100644
index cbbbc99..0000000
--- a/docs/orgs-and-apps/organizations-admins.md
+++ /dev/null
@@ -1,43 +0,0 @@
-Organizations & Admins
-==================================================
-
-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.
-
-+----------------+----------+--------------------------------------------------------------------------------------+
-| 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) |
-+----------------+----------+--------------------------------------------------------------------------------------+
-
-Admins
-
-
-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.
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/d7bae265/docs/orgs-and-apps/tbd.md
----------------------------------------------------------------------
diff --git a/docs/orgs-and-apps/tbd.md b/docs/orgs-and-apps/tbd.md
deleted file mode 100644
index 279d128..0000000
--- a/docs/orgs-and-apps/tbd.md
+++ /dev/null
@@ -1 +0,0 @@
-# COMING SOON...
\ No newline at end of file