A couple extra error checks
add recording dict, proper json responses