def get_all(self, requester_user, show_secrets=None, limit=None, offset=0):
        """
        List all keys.

        Handles requests:
            GET /apikeys/
        """
        mask_secrets = self._get_mask_secrets(
            show_secrets=show_secrets, requester_user=requester_user
        )

        limit = resource.validate_limit_query_param(
            limit, requester_user=requester_user
        )

        try:
            api_key_dbs = ApiKey.get_all(limit=limit, offset=offset)
            api_keys = [
                ApiKeyAPI.from_model(api_key_db, mask_secrets=mask_secrets)
                for api_key_db in api_key_dbs
            ]
        except OverflowError:
            msg = 'Offset "%s" specified is more than 32 bit int' % (offset)
            raise ValueError(msg)

        resp = Response(json=api_keys)
        resp.headers["X-Total-Count"] = str(api_key_dbs.count())

        if limit:
            resp.headers["X-Limit"] = str(limit)

        return resp

        List all keys.

        Handles requests:
            GET /apikeys/
        
st2api/st2api/controllers/v1/auth.py