'.. http:get:: /api/1/revisions
Get a list of revisions
**Example Request**:
.. sourcecode:: http
GET /api/1/revisions?count=1 HTTP/1.1
Host: example.com
Accept: application/json
**Example Response**:
.. sourcecode:: http
HTTP/1.1 200 OK
Vary: Accept
Content-Type: application/json
"items": [
"account": "example_account",
"accounttype": "AWS",
"name": "Example Name",
"region": "us-east-1",
"item_id": 144,
"active": false,
"date_created": "2014-06-19 20:54:12.962951",
"technology": "sqs",
"id": 223757
"total": 1,
"page": 1,
"auth": {
"authenticated": true,
"user": "user@example.com"
:statuscode 200: no error
:statuscode 401: Authentication Error. Please Login.'

def get(self):

    self.reqparse.add_argument('count', type=int, default=30, location='args')
    self.reqparse.add_argument('page', type=int, default=1, location='args')
    self.reqparse.add_argument('active', type=str, default=None, location='args')
    self.reqparse.add_argument('regions', type=str, default=None, location='args')
    self.reqparse.add_argument('accounts', type=str, default=None, location='args')
    self.reqparse.add_argument('accounttypes', type=str, default=None, location='args')
    self.reqparse.add_argument('names', type=str, default=None, location='args')
    self.reqparse.add_argument('arns', type=str, default=None, location='args')
    self.reqparse.add_argument('technologies', type=str, default=None, location='args')
    self.reqparse.add_argument('searchconfig', type=str, default=None, location='args')
    args = self.reqparse.parse_args()
    page = args.pop('page', None)
    count = args.pop('count', None)
    for (k, v) in args.items():
        if (not v):
            del args[k]
    query = ItemRevision.query.join('item')
    if ('regions' in args):
        regions = args['regions'].split(',')
        query = query.filter(Item.region.in_(regions))
    if ('accounts' in args):
        accounts = args['accounts'].split(',')
        query = query.join((Account, (Account.id == Item.account_id)))
        query = query.filter(Account.name.in_(accounts))
    if ('accounttypes' in args):
        accounttypes = args['accounttypes'].split(',')
        query = query.join((Account, (Account.id == Item.account_id)))
        query = query.join((AccountType, (AccountType.id == Account.account_type_id)))
        query = query.filter(AccountType.name.in_(accounttypes))
    if ('technologies' in args):
        technologies = args['technologies'].split(',')
        query = query.join((Technology, (Technology.id == Item.tech_id)))
        query = query.filter(Technology.name.in_(technologies))
    if ('names' in args):
        names = args['names'].split(',')
        query = query.filter(Item.name.in_(names))
    if ('arns' in args):
        arns = args['arns'].split(',')
        query = query.filter(Item.arn.in_(arns))
    if ('active' in args):
        active = (args['active'].lower() == 'true')
        query = query.filter((ItemRevision.active == active))
    if ('searchconfig' in args):
        searchconfig = args['searchconfig']
        query = query.filter(cast(ItemRevision.config, String).ilike('%{}%'.format(searchconfig)))
    query = query.order_by(ItemRevision.date_created.desc())
    revisions = query.paginate(page, count)
    marshaled_dict = {'page': revisions.page, 'total': revisions.total, 'auth': self.auth_dict}
    items_marshaled = []
    for revision in revisions.items:
        item_marshaled = marshal(revision.item.__dict__, ITEM_FIELDS)
        revision_marshaled = marshal(revision.__dict__, REVISION_FIELDS)
        account_marshaled = {'account': revision.item.account.name}
        accounttype_marshaled = {'account_type': revision.item.account.account_type.name}
        technology_marshaled = {'technology': revision.item.technology.name}
        merged_marshaled = dict(((((item_marshaled.items() + revision_marshaled.items()) + account_marshaled.items()) + accounttype_marshaled.items()) + technology_marshaled.items()))
        items_marshaled.append(merged_marshaled)
    marshaled_dict['items'] = items_marshaled
    marshaled_dict['count'] = len(items_marshaled)
    return (marshaled_dict, 200)
