def METHOD_NAME(*args, **kwargs):
    duration_arg = parser.parse(
        {"duration": DurationField()},
        request,
        location="args_and_json",
        unknown=marshmallow.EXCLUDE,
    )
    if "duration" in duration_arg:
        duration = duration_arg["duration"]
        duration = DurationField.ground_from(
            duration,
            kwargs.get("start", kwargs.get("datetime", None)),
        )
        if not duration:  # TODO: deprecate
            extra_info = "Cannot parse 'duration' value."
            current_app.logger.warning(extra_info)
            return invalid_period(extra_info)
        kwargs["duration"] = duration
    else:
        kwargs["duration"] = default_duration
    return fn(*args, **kwargs)