                     if(isLogging){
                         print(parseError)
                     }
-                    callback(response: cloudBoostResponse)
+                    queue?.addOperationWithBlock {
+                        callback(response: cloudBoostResponse)
+                    }
                 }
             }
         })

                        if(isLogging){
                            print("Could not convert the response to NSMutalbeDictionary")
                        }
                        callback(response: cloudBoostResponse)
                    }
                    
                }catch let parseError {

                    let serialisedData = try NSJSONSerialization.JSONObjectWithData(data!, options: NSJSONReadingOptions.MutableContainers)
                    if let jsonObjectReult = serialisedData as? NSMutableDictionary {
                        cloudBoostResponse.object = jsonObjectReult
                        queue?.addOperationWithBlock {
                            callback(response: cloudBoostResponse)
                        }
                    }else if let  jsonArrayResult = serialisedData as? [NSDictionary] {
                        cloudBoostResponse.object = jsonArrayResult
                        queue?.addOperationWithBlock {
                            callback(response: cloudBoostResponse)
                        }
                    }else{
                        if let intVal = Int((NSString(data: data!, encoding: NSUTF8StringEncoding) as? String)!)  {
                            cloudBoostResponse.object = intVal
