@classmethod
def build_request(cls, request_type, event):
    """
        Maps the input body to the appropriate request
        object based on the request type
        :param request_type: Indicates the event type
        :param event: the incoming event body
        :return: The constructed request object
        """
    body = event.get('body')
    headers = event.get('headers')
    claims = {}
    if 'requestContext' in event:
        authorizer = event.get('requestContext').get('authorizer')
        claims = authorizer.get('claims') if authorizer else {}
    request = request_type(body, headers, claims)
    return request
