from collections import OrderedDict from rest_framework.pagination import PageNumberPagination from rest_framework.response import Response class StandardResultsSetPagination(PageNumberPagination): page_size_query_param = 'limit' max_page_size = 1000 def get_paginated_response(self, data): return Response(OrderedDict([ ('total_pages', self.page.paginator.count), ('limit', self.page.paginator.per_page), ('page', self.page.number), ('data', data), ]))