[NetworkBearer] Handle API methods separately

The previous implementation was trying to share as much as possible code
between the Request and Release methods due to its similarities. It only
made the code more complex and the validation of the input parameters more
difficult.