Adding generated REST API docs and swagger
diff --git a/docs/document.html b/docs/document.html
new file mode 100644
index 0000000..4c00c4d
--- /dev/null
+++ b/docs/document.html
@@ -0,0 +1,1042 @@
+<!DOCTYPE html>
+<html>
+<title>API Document</title>
+
+<xmp theme="united" style="display:none;">
+#Qakka
+
+
+API for Qakka Queue System
+
+
+
+**Version** v1
+
+[**Apache 2.0**](http://www.apache.org/licenses/LICENSE-2.0.html)
+
+
+
+
+
+
+
+
+
+
+# APIs
+
+
+## /queues
+
+
+### GET
+
+<a id="getListOfQueues">Get list of all Queues.</a>
+
+
+
+
+
+
+
+
+
+#### Request
+
+
+
+##### Parameters
+
+
+
+
+
+
+#### Response
+
+**Content-Type: ** application/json
+
+
+| Status Code | Reason      | Response Model |
+|-------------|-------------|----------------|
+| 200    | successful operation | <a href="#/definitions/ApiResponse">ApiResponse</a>|
+
+
+
+
+
+
+
+### POST
+
+
+<a id="createQueue">Create new queue.</a>
+
+
+
+
+
+
+
+
+
+#### Request
+
+
+**Content-Type: ** application/json
+
+##### Parameters
+
+
+
+
+
+
+#### Response
+
+**Content-Type: ** application/json
+
+
+| Status Code | Reason      | Response Model |
+|-------------|-------------|----------------|
+| 200    | successful operation | <a href="#/definitions/ApiResponse">ApiResponse</a>|
+| 400    | No Queue object posted, or name field is missing |  - |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## /queues/{queueName}
+
+
+
+
+
+
+
+
+### DELETE
+
+<a id="deleteQueue">Delete Queue.</a>
+
+
+
+
+
+
+
+
+
+#### Request
+
+
+
+##### Parameters
+
+<table border="1">
+    <tr>
+        <th>Name</th>
+        <th>Located in</th>
+        <th>Required</th>
+        <th>Description</th>
+        <th>Default</th>
+        <th>Schema</th>
+    </tr>
+
+
+
+<tr>
+    <th>queueName</th>
+    <td>path</td>
+    <td>yes</td>
+    <td></td>
+    <td> - </td>
+
+    
+            <td>string </td>
+    
+
+</tr>
+
+<tr>
+    <th>confirm</th>
+    <td>query</td>
+    <td>no</td>
+    <td></td>
+    <td> - </td>
+
+    
+            <td>boolean </td>
+    
+
+</tr>
+
+
+</table>
+
+
+
+#### Response
+
+**Content-Type: ** application/json
+
+
+| Status Code | Reason      | Response Model |
+|-------------|-------------|----------------|
+| 200    | successful operation | <a href="#/definitions/ApiResponse">ApiResponse</a>|
+| 400    | Queue name or confirm flag missing. |  - |
+
+
+
+
+
+
+
+
+
+
+
+
+## /queues/{queueName}/config
+
+
+### GET
+
+<a id="getQueueConfig">Get Queue config.</a>
+
+
+
+
+
+
+
+
+
+#### Request
+
+
+
+##### Parameters
+
+<table border="1">
+    <tr>
+        <th>Name</th>
+        <th>Located in</th>
+        <th>Required</th>
+        <th>Description</th>
+        <th>Default</th>
+        <th>Schema</th>
+    </tr>
+
+
+
+<tr>
+    <th>queueName</th>
+    <td>path</td>
+    <td>yes</td>
+    <td>Name of Queue</td>
+    <td> - </td>
+
+    
+            <td>string </td>
+    
+
+</tr>
+
+
+</table>
+
+
+
+#### Response
+
+**Content-Type: ** application/json
+
+
+| Status Code | Reason      | Response Model |
+|-------------|-------------|----------------|
+| 200    | successful operation | <a href="#/definitions/ApiResponse">ApiResponse</a>|
+| 400    | Queue name or confirm flag missing. |  - |
+
+
+
+
+
+### PUT
+
+<a id="updateQueueConfig">Update Queue configuration.</a>
+
+
+
+
+
+
+
+
+
+#### Request
+
+
+**Content-Type: ** application/json
+
+##### Parameters
+
+<table border="1">
+    <tr>
+        <th>Name</th>
+        <th>Located in</th>
+        <th>Required</th>
+        <th>Description</th>
+        <th>Default</th>
+        <th>Schema</th>
+    </tr>
+
+
+
+<tr>
+    <th>queueName</th>
+    <td>path</td>
+    <td>yes</td>
+    <td></td>
+    <td> - </td>
+
+    
+            <td>string </td>
+    
+
+</tr>
+
+
+</table>
+
+
+
+#### Response
+
+**Content-Type: ** application/json
+
+
+| Status Code | Reason      | Response Model |
+|-------------|-------------|----------------|
+| 200    | successful operation | <a href="#/definitions/ApiResponse">ApiResponse</a>|
+| 400    | No Queue object posted, or name field is missing |  - |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## /queues/{queueName}/data/{queueMessageId}
+
+
+### GET
+
+<a id="getMessageData">Get data associated with a Queue Message.</a>
+
+
+
+
+
+
+
+
+
+#### Request
+
+
+
+##### Parameters
+
+<table border="1">
+    <tr>
+        <th>Name</th>
+        <th>Located in</th>
+        <th>Required</th>
+        <th>Description</th>
+        <th>Default</th>
+        <th>Schema</th>
+    </tr>
+
+
+
+<tr>
+    <th>queueName</th>
+    <td>path</td>
+    <td>yes</td>
+    <td>Name of Queue</td>
+    <td> - </td>
+
+    
+            <td>string </td>
+    
+
+</tr>
+
+<tr>
+    <th>queueMessageId</th>
+    <td>path</td>
+    <td>yes</td>
+    <td>ID of Queue Message for which data is to be returned</td>
+    <td> - </td>
+
+    
+            <td>string </td>
+    
+
+</tr>
+
+
+</table>
+
+
+
+#### Response
+
+
+
+
+| Status Code | Reason      | Response Model |
+|-------------|-------------|----------------|
+| 200    | successful operation | <a href="#/definitions/ApiResponse">ApiResponse</a>|
+| 400    | Message ID invalid |  - |
+| 404    | Queue Message or data not found |  - |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## /queues/{queueName}/messages
+
+
+### GET
+
+<a id="getNextMessages">Get next Queue Messages from a Queue</a>
+
+
+
+
+
+
+
+
+
+#### Request
+
+
+
+##### Parameters
+
+<table border="1">
+    <tr>
+        <th>Name</th>
+        <th>Located in</th>
+        <th>Required</th>
+        <th>Description</th>
+        <th>Default</th>
+        <th>Schema</th>
+    </tr>
+
+
+
+<tr>
+    <th>queueName</th>
+    <td>path</td>
+    <td>yes</td>
+    <td>Name of Queue</td>
+    <td> - </td>
+
+    
+            <td>string </td>
+    
+
+</tr>
+
+<tr>
+    <th>count</th>
+    <td>query</td>
+    <td>no</td>
+    <td>Number of messages to get</td>
+    <td> - </td>
+
+    
+            <td>string </td>
+    
+
+</tr>
+
+
+</table>
+
+
+
+#### Response
+
+**Content-Type: ** application/json
+
+
+| Status Code | Reason      | Response Model |
+|-------------|-------------|----------------|
+| 200    | successful operation | <a href="#/definitions/ApiResponse">ApiResponse</a>|
+| 400    | Invalid count parameter |  - |
+
+
+
+
+
+
+
+### POST
+
+
+<a id="sendMessageBinary">Send Queue Message with a binary data (blob) payload.</a>
+
+
+
+
+
+
+
+
+
+#### Request
+
+
+**Content-Type: ** application/octet-stream
+
+##### Parameters
+
+<table border="1">
+    <tr>
+        <th>Name</th>
+        <th>Located in</th>
+        <th>Required</th>
+        <th>Description</th>
+        <th>Default</th>
+        <th>Schema</th>
+    </tr>
+
+
+
+<tr>
+    <th>queueName</th>
+    <td>path</td>
+    <td>yes</td>
+    <td>Name of Queue</td>
+    <td> - </td>
+
+    
+            <td>string </td>
+    
+
+</tr>
+
+<tr>
+    <th>regions</th>
+    <td>query</td>
+    <td>no</td>
+    <td>Regions to which message is to be sent</td>
+    <td> - </td>
+
+    
+            <td>string </td>
+    
+
+</tr>
+
+<tr>
+    <th>delay</th>
+    <td>query</td>
+    <td>no</td>
+    <td></td>
+    <td> - </td>
+
+    
+            <td>string </td>
+    
+
+</tr>
+
+<tr>
+    <th>expiration</th>
+    <td>query</td>
+    <td>no</td>
+    <td></td>
+    <td> - </td>
+
+    
+            <td>string </td>
+    
+
+</tr>
+
+<tr>
+    <th>contentType</th>
+    <td>query</td>
+    <td>yes</td>
+    <td>Content type of the data to be sent with Queue Message</td>
+    <td> - </td>
+
+    
+            <td>string </td>
+    
+
+</tr>
+
+<tr>
+    <th>body</th>
+    <td>body</td>
+    <td>yes</td>
+    <td>Data to be send with Queue Message</td>
+    <td> - </td>
+
+    <td>
+    Array[<a href=""></a>]
+    
+    </td>
+
+</tr>
+
+
+</table>
+
+
+
+#### Response
+
+**Content-Type: ** application/json
+
+
+| Status Code | Reason      | Response Model |
+|-------------|-------------|----------------|
+| 200    | successful operation | <a href="#/definitions/ApiResponse">ApiResponse</a>|
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## /queues/{queueName}/messages/{queueMessageId}
+
+
+
+
+
+
+
+
+### DELETE
+
+<a id="ackMessage">Acknowledge that Queue Message has been processed.</a>
+
+
+
+
+
+
+
+
+
+#### Request
+
+
+
+##### Parameters
+
+<table border="1">
+    <tr>
+        <th>Name</th>
+        <th>Located in</th>
+        <th>Required</th>
+        <th>Description</th>
+        <th>Default</th>
+        <th>Schema</th>
+    </tr>
+
+
+
+<tr>
+    <th>queueName</th>
+    <td>path</td>
+    <td>yes</td>
+    <td>Name of Queue</td>
+    <td> - </td>
+
+    
+            <td>string </td>
+    
+
+</tr>
+
+<tr>
+    <th>queueMessageId</th>
+    <td>path</td>
+    <td>yes</td>
+    <td>ID of Queue Message to be acknowledged</td>
+    <td> - </td>
+
+    
+            <td>string </td>
+    
+
+</tr>
+
+
+</table>
+
+
+
+#### Response
+
+**Content-Type: ** application/json
+
+
+| Status Code | Reason      | Response Model |
+|-------------|-------------|----------------|
+| 200    | successful operation | <a href="#/definitions/ApiResponse">ApiResponse</a>|
+| 400    | Queue Message ID invalid, or message not in-flight |  - |
+
+
+
+
+
+
+
+
+
+
+
+
+## /status
+
+
+### GET
+
+<a id="status">Status of webapp.</a>
+
+
+
+
+
+
+
+
+
+#### Request
+
+
+
+##### Parameters
+
+
+
+
+
+
+#### Response
+
+**Content-Type: ** application/json
+
+
+| Status Code | Reason      | Response Model |
+|-------------|-------------|----------------|
+| 200    | successful operation | |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+# Definitions
+
+## <a name="/definitions/ApiResponse">ApiResponse</a>
+
+<p> Response returned by most Queue API calls. </p>
+
+<table border="1">
+    <tr>
+        <th>name</th>
+        <th>type</th>
+        <th>required</th>
+        <th>description</th>
+        <th>example</th>
+    </tr>
+    
+        <tr>
+            <td>message</td>
+            <td>
+                
+                    
+                    string
+                
+            </td>
+            <td>optional</td>
+            <td>Informative message intended for client.</td>
+            <td></td>
+        </tr>
+    
+        <tr>
+            <td>count</td>
+            <td>
+                
+                    
+                    integer (int32)
+                
+            </td>
+            <td>optional</td>
+            <td>Count of Queues or QueueMessages returned by the call.</td>
+            <td></td>
+        </tr>
+    
+        <tr>
+            <td>queues</td>
+            <td>
+                
+                
+                    array[<a href="#/definitions/Queue">Queue</a>]
+                
+                
+                
+            </td>
+            <td>optional</td>
+            <td>Queues returned but the call, or empty if not applicable.</td>
+            <td></td>
+        </tr>
+    
+        <tr>
+            <td>queueMessages</td>
+            <td>
+                
+                
+                    array[<a href="#/definitions/QueueMessage">QueueMessage</a>]
+                
+                
+                
+            </td>
+            <td>optional</td>
+            <td>Queues Messages returned by the call, or empty if not applicable.</td>
+            <td></td>
+        </tr>
+    
+</table>
+
+## <a name="/definitions/Queue">Queue</a>
+
+<p> Specifies the configuration for a Queue. </p>
+
+<table border="1">
+    <tr>
+        <th>name</th>
+        <th>type</th>
+        <th>required</th>
+        <th>description</th>
+        <th>example</th>
+    </tr>
+    
+        <tr>
+            <td>name</td>
+            <td>
+                
+                    
+                    string
+                
+            </td>
+            <td>required</td>
+            <td>Name of queue, must be unique.</td>
+            <td></td>
+        </tr>
+    
+</table>
+
+## <a name="/definitions/QueueMessage">QueueMessage</a>
+
+<p> A Queue Message </p>
+
+<table border="1">
+    <tr>
+        <th>name</th>
+        <th>type</th>
+        <th>required</th>
+        <th>description</th>
+        <th>example</th>
+    </tr>
+    
+        <tr>
+            <td>queueMessageId</td>
+            <td>
+                
+                    
+                    string (uuid)
+                
+            </td>
+            <td>optional</td>
+            <td>UUID of Queue Message in local region.</td>
+            <td></td>
+        </tr>
+    
+        <tr>
+            <td>messageId</td>
+            <td>
+                
+                    
+                    string (uuid)
+                
+            </td>
+            <td>optional</td>
+            <td>UUID of Message Data associated with this Queue Message</td>
+            <td></td>
+        </tr>
+    
+        <tr>
+            <td>queueName</td>
+            <td>
+                
+                    
+                    string
+                
+            </td>
+            <td>required</td>
+            <td>Name of Queue for message.</td>
+            <td></td>
+        </tr>
+    
+        <tr>
+            <td>sendingRegion</td>
+            <td>
+                
+                    
+                    string
+                
+            </td>
+            <td>optional</td>
+            <td>Region from which was sent</td>
+            <td></td>
+        </tr>
+    
+        <tr>
+            <td>receivingRegion</td>
+            <td>
+                
+                    
+                    string
+                
+            </td>
+            <td>optional</td>
+            <td>Regions to which message will be sent</td>
+            <td></td>
+        </tr>
+    
+        <tr>
+            <td>createDate</td>
+            <td>
+                
+                    
+                    integer (int64)
+                
+            </td>
+            <td>optional</td>
+            <td>Date that message was received by system.</td>
+            <td></td>
+        </tr>
+    
+        <tr>
+            <td>contentType</td>
+            <td>
+                
+                    
+                    string
+                
+            </td>
+            <td>optional</td>
+            <td>Content-type of data associated with QueueMessage.</td>
+            <td></td>
+        </tr>
+    
+        <tr>
+            <td>data</td>
+            <td>
+                
+                    
+                    string
+                
+            </td>
+            <td>optional</td>
+            <td>Embedded JSON to be sent with Queue Message.</td>
+            <td></td>
+        </tr>
+    
+        <tr>
+            <td>href</td>
+            <td>
+                
+                    
+                    string
+                
+            </td>
+            <td>optional</td>
+            <td>URL of data associated with Queue Message (if not embedded JSON)</td>
+            <td></td>
+        </tr>
+    
+</table>
+
+
+
+</xmp>
+
+<script src="http://strapdownjs.com/v/0.2/strapdown.js"></script>
+</html>
\ No newline at end of file
diff --git a/docs/swagger.json b/docs/swagger.json
new file mode 100644
index 0000000..55b70ca
--- /dev/null
+++ b/docs/swagger.json
@@ -0,0 +1,405 @@
+{
+  "swagger" : "2.0",
+  "info" : {
+    "description" : "API for Qakka Queue System",
+    "version" : "v1",
+    "title" : "Qakka",
+    "license" : {
+      "name" : "Apache 2.0",
+      "url" : "http://www.apache.org/licenses/LICENSE-2.0.html"
+    }
+  },
+  "tags" : [ {
+    "name" : "queues",
+    "description" : "Queue management, send, get and ack."
+  }, {
+    "name" : "status",
+    "description" : "Status end-point."
+  } ],
+  "paths" : {
+    "/queues" : {
+      "get" : {
+        "tags" : [ "queues" ],
+        "summary" : "Get list of all Queues.",
+        "description" : "",
+        "operationId" : "getListOfQueues",
+        "produces" : [ "application/json" ],
+        "responses" : {
+          "200" : {
+            "description" : "successful operation",
+            "schema" : {
+              "$ref" : "#/definitions/ApiResponse"
+            }
+          }
+        }
+      },
+      "post" : {
+        "tags" : [ "queues" ],
+        "summary" : "Create new queue.",
+        "description" : "",
+        "operationId" : "createQueue",
+        "consumes" : [ "application/json" ],
+        "produces" : [ "application/json" ],
+        "responses" : {
+          "200" : {
+            "description" : "successful operation",
+            "schema" : {
+              "$ref" : "#/definitions/ApiResponse"
+            }
+          },
+          "400" : {
+            "description" : "No Queue object posted, or name field is missing"
+          }
+        }
+      }
+    },
+    "/queues/{queueName}" : {
+      "delete" : {
+        "tags" : [ "queues" ],
+        "summary" : "Delete Queue.",
+        "description" : "",
+        "operationId" : "deleteQueue",
+        "produces" : [ "application/json" ],
+        "parameters" : [ {
+          "name" : "queueName",
+          "in" : "path",
+          "required" : true,
+          "type" : "string"
+        }, {
+          "name" : "confirm",
+          "in" : "query",
+          "required" : false,
+          "type" : "boolean",
+          "default" : false
+        } ],
+        "responses" : {
+          "200" : {
+            "description" : "successful operation",
+            "schema" : {
+              "$ref" : "#/definitions/ApiResponse"
+            }
+          },
+          "400" : {
+            "description" : "Queue name or confirm flag missing."
+          }
+        }
+      }
+    },
+    "/queues/{queueName}/config" : {
+      "get" : {
+        "tags" : [ "queues" ],
+        "summary" : "Get Queue config.",
+        "description" : "",
+        "operationId" : "getQueueConfig",
+        "produces" : [ "application/json" ],
+        "parameters" : [ {
+          "name" : "queueName",
+          "in" : "path",
+          "description" : "Name of Queue",
+          "required" : true,
+          "type" : "string"
+        } ],
+        "responses" : {
+          "200" : {
+            "description" : "successful operation",
+            "schema" : {
+              "$ref" : "#/definitions/ApiResponse"
+            }
+          },
+          "400" : {
+            "description" : "Queue name or confirm flag missing."
+          }
+        }
+      },
+      "put" : {
+        "tags" : [ "queues" ],
+        "summary" : "Update Queue configuration.",
+        "description" : "",
+        "operationId" : "updateQueueConfig",
+        "consumes" : [ "application/json" ],
+        "produces" : [ "application/json" ],
+        "parameters" : [ {
+          "name" : "queueName",
+          "in" : "path",
+          "required" : true,
+          "type" : "string"
+        } ],
+        "responses" : {
+          "200" : {
+            "description" : "successful operation",
+            "schema" : {
+              "$ref" : "#/definitions/ApiResponse"
+            }
+          },
+          "400" : {
+            "description" : "No Queue object posted, or name field is missing"
+          }
+        }
+      }
+    },
+    "/queues/{queueName}/data/{queueMessageId}" : {
+      "get" : {
+        "tags" : [ "queues" ],
+        "summary" : "Get data associated with a Queue Message.",
+        "description" : "",
+        "operationId" : "getMessageData",
+        "parameters" : [ {
+          "name" : "queueName",
+          "in" : "path",
+          "description" : "Name of Queue",
+          "required" : true,
+          "type" : "string"
+        }, {
+          "name" : "queueMessageId",
+          "in" : "path",
+          "description" : "ID of Queue Message for which data is to be returned",
+          "required" : true,
+          "type" : "string"
+        } ],
+        "responses" : {
+          "200" : {
+            "description" : "successful operation",
+            "schema" : {
+              "$ref" : "#/definitions/ApiResponse"
+            }
+          },
+          "400" : {
+            "description" : "Message ID invalid"
+          },
+          "404" : {
+            "description" : "Queue Message or data not found"
+          }
+        }
+      }
+    },
+    "/queues/{queueName}/messages" : {
+      "get" : {
+        "tags" : [ "queues" ],
+        "summary" : "Get next Queue Messages from a Queue",
+        "description" : "",
+        "operationId" : "getNextMessages",
+        "produces" : [ "application/json" ],
+        "parameters" : [ {
+          "name" : "queueName",
+          "in" : "path",
+          "description" : "Name of Queue",
+          "required" : true,
+          "type" : "string"
+        }, {
+          "name" : "count",
+          "in" : "query",
+          "description" : "Number of messages to get",
+          "required" : false,
+          "type" : "string",
+          "default" : "1"
+        } ],
+        "responses" : {
+          "200" : {
+            "description" : "successful operation",
+            "schema" : {
+              "$ref" : "#/definitions/ApiResponse"
+            }
+          },
+          "400" : {
+            "description" : "Invalid count parameter"
+          }
+        }
+      },
+      "post" : {
+        "tags" : [ "queues" ],
+        "summary" : "Send Queue Message with a binary data (blob) payload.",
+        "description" : "",
+        "operationId" : "sendMessageBinary",
+        "consumes" : [ "application/octet-stream" ],
+        "produces" : [ "application/json" ],
+        "parameters" : [ {
+          "name" : "queueName",
+          "in" : "path",
+          "description" : "Name of Queue",
+          "required" : true,
+          "type" : "string"
+        }, {
+          "name" : "regions",
+          "in" : "query",
+          "description" : "Regions to which message is to be sent",
+          "required" : false,
+          "type" : "string"
+        }, {
+          "name" : "delay",
+          "in" : "query",
+          "required" : false,
+          "type" : "string"
+        }, {
+          "name" : "expiration",
+          "in" : "query",
+          "required" : false,
+          "type" : "string"
+        }, {
+          "name" : "contentType",
+          "in" : "query",
+          "description" : "Content type of the data to be sent with Queue Message",
+          "required" : true,
+          "type" : "string"
+        }, {
+          "in" : "body",
+          "name" : "body",
+          "description" : "Data to be send with Queue Message",
+          "required" : true,
+          "schema" : {
+            "type" : "array",
+            "items" : {
+              "type" : "string",
+              "format" : "byte"
+            }
+          }
+        } ],
+        "responses" : {
+          "200" : {
+            "description" : "successful operation",
+            "schema" : {
+              "$ref" : "#/definitions/ApiResponse"
+            }
+          }
+        }
+      }
+    },
+    "/queues/{queueName}/messages/{queueMessageId}" : {
+      "delete" : {
+        "tags" : [ "queues" ],
+        "summary" : "Acknowledge that Queue Message has been processed.",
+        "description" : "",
+        "operationId" : "ackMessage",
+        "produces" : [ "application/json" ],
+        "parameters" : [ {
+          "name" : "queueName",
+          "in" : "path",
+          "description" : "Name of Queue",
+          "required" : true,
+          "type" : "string"
+        }, {
+          "name" : "queueMessageId",
+          "in" : "path",
+          "description" : "ID of Queue Message to be acknowledged",
+          "required" : true,
+          "type" : "string"
+        } ],
+        "responses" : {
+          "200" : {
+            "description" : "successful operation",
+            "schema" : {
+              "$ref" : "#/definitions/ApiResponse"
+            }
+          },
+          "400" : {
+            "description" : "Queue Message ID invalid, or message not in-flight"
+          }
+        }
+      }
+    },
+    "/status" : {
+      "get" : {
+        "tags" : [ "status" ],
+        "summary" : "Status of webapp.",
+        "description" : "",
+        "operationId" : "status",
+        "produces" : [ "application/json" ],
+        "responses" : {
+          "200" : {
+            "description" : "successful operation",
+            "schema" : {
+              "type" : "object"
+            }
+          }
+        }
+      }
+    }
+  },
+  "definitions" : {
+    "ApiResponse" : {
+      "type" : "object",
+      "properties" : {
+        "message" : {
+          "type" : "string",
+          "description" : "Informative message intended for client."
+        },
+        "count" : {
+          "type" : "integer",
+          "format" : "int32",
+          "description" : "Count of Queues or QueueMessages returned by the call."
+        },
+        "queues" : {
+          "type" : "array",
+          "description" : "Queues returned but the call, or empty if not applicable.",
+          "items" : {
+            "$ref" : "#/definitions/Queue"
+          }
+        },
+        "queueMessages" : {
+          "type" : "array",
+          "description" : "Queues Messages returned by the call, or empty if not applicable.",
+          "items" : {
+            "$ref" : "#/definitions/QueueMessage"
+          }
+        }
+      },
+      "description" : "Response returned by most Queue API calls."
+    },
+    "Queue" : {
+      "type" : "object",
+      "required" : [ "name" ],
+      "properties" : {
+        "name" : {
+          "type" : "string",
+          "description" : "Name of queue, must be unique."
+        }
+      },
+      "description" : "Specifies the configuration for a Queue."
+    },
+    "QueueMessage" : {
+      "type" : "object",
+      "required" : [ "queueName" ],
+      "properties" : {
+        "queueMessageId" : {
+          "type" : "string",
+          "format" : "uuid",
+          "description" : "UUID of Queue Message in local region."
+        },
+        "messageId" : {
+          "type" : "string",
+          "format" : "uuid",
+          "description" : "UUID of Message Data associated with this Queue Message"
+        },
+        "queueName" : {
+          "type" : "string",
+          "description" : "Name of Queue for message."
+        },
+        "sendingRegion" : {
+          "type" : "string",
+          "description" : "Region from which was sent"
+        },
+        "receivingRegion" : {
+          "type" : "string",
+          "description" : "Regions to which message will be sent"
+        },
+        "createDate" : {
+          "type" : "integer",
+          "format" : "int64",
+          "description" : "Date that message was received by system."
+        },
+        "contentType" : {
+          "type" : "string",
+          "description" : "Content-type of data associated with QueueMessage."
+        },
+        "data" : {
+          "type" : "string",
+          "description" : "Embedded JSON to be sent with Queue Message."
+        },
+        "href" : {
+          "type" : "string",
+          "description" : "URL of data associated with Queue Message (if not embedded JSON)"
+        }
+      },
+      "description" : "A Queue Message"
+    }
+  }
+}
\ No newline at end of file