add checks on Some("")
add type safe passing requests