         let url = "\(CLIENT_API_V1_ENDPOINT)/clients/\(clientId)/interests/"
         let params: [String: Any] = ["app_key": pusherAppKey, "interests": interests]
         let request = self.setRequest(url: url, params: params, change: .setSubscriptions)
-        self.modifySubscription(interests: interests, request: request, change: .setSubscriptions, successCallback: successCallback)
-    }
-
-    private func modifySubscription(interests: Array<String>, request: URLRequest, change: SubscriptionChange, successCallback: @escaping (Any?) -> Void) {
+        self.doURLRequest(interests: interests, request: request, change: .setSubscriptions, successCallback: successCallback)
+    }
+
+    private func doURLRequest(interests: Array<String>, request: URLRequest, change: SubscriptionChange, successCallback: @escaping (Any?) -> Void) {
         self.delegate?.debugLog?(message: "Attempt number: \(self.failedRequestAttempts + 1) of \(maxFailedRequestAttempts)")
 
         let task = URLSession.dataTask(

    */
    private func addSubscriptionChangeToTaskQueue(interestName: String, change: SubscriptionChange) {
        requestQueue.tasks += { _, next in
            self.modifySubscription(
                interest: interestName,
                change: change,
                successCallback: next

        - parameter change:       Whether to subscribe or unsubscribe
        - parameter callback:     Callback to be called upon success
    */
    private func subscribeOrUnsubscribeInterest(interest: String, change: SubscriptionChange, successCallback: @escaping (Any?) -> Void) {
        guard
            let clientId = clientId,
            let pusherAppKey = pusherAppKey
