Creating a custom error for mapping Errors to return result from the library handles
The possible errors so far are BadJSONData and HTTPRequestError
BadJSONData maps to a serde_json::error::Error
HTTPRequestError maps to a reqwest::Error
Main function of the library which asynchronously sends the request and returns the status code
response. Will error out on a reqwest::Error if the send results in a failure