pub async fn retry_with_auth<Fut, TResponse, TError, TRequest: Fn() -> Fut>(
    context: &Arc<RwLock<BotXApiContext>>,
    request: TRequest
) -> Result<TResponse, BotXApiError<TError>>where
    Fut: Future<Output = BotXApiResult<TResponse, TError>>,