farmap 0.9.1

A library for working with Farcaster label datasets
Documentation
use super::ImporterError;
use log::trace;
use reqwest::Response;
use serde_json::Value;

pub async fn parse_json_from_response(response: Response) -> Result<Value, ImporterError> {
    if !response.status().is_success() {
        return Err(ImporterError::FailedApiRequest);
    };

    let response_text = response
        .text()
        .await
        .map_err(|_| ImporterError::FailedApiRequest)?;

    trace!("response text: {:?}", response_text);
    serde_json::from_str(&response_text)
        .map_err(|_| ImporterError::BadApiResponse(response_text.to_string()))
}