diff --git a/uploader.go b/uploader.go
index 29241ba..0b84151 100644
--- a/uploader.go
+++ b/uploader.go
@@ -57,17 +57,12 @@
 	if (err != nil) {
 		return false, err
 	} else {
-		log.Debugf("signed URL : %s", signedUrl)
-		return true, nil
-		//return uploadFileToDatastore(completeFilePath, signedUrl)
+		return uploadFileToDatastore(completeFilePath, signedUrl)
 	}
 }
 
 func getSignedUrl(tenant, relativeFilePath, completeFilePath string) (string, error) {
-	//uapCollectionUrl := config.GetString(uapServerBase) + "/analytics"
-
-	// localTesting
-	uapCollectionUrl := config.GetString(uapServerBase) + "/v1/upload/location"
+	uapCollectionUrl := config.GetString(uapServerBase) + "/analytics"
 
 	req, err := http.NewRequest("GET", uapCollectionUrl, nil)
 	if err != nil {
@@ -81,8 +76,8 @@
 	q.Add("dataset", "api")
 
 	q.Add("tenant", tenant)
-	q.Add("relativeFilePath", relativeFilePath)
-	q.Add("contentType", "application/x-gzip")
+	q.Add("relative_file_path", relativeFilePath)
+	q.Add("file_content_type", "application/x-gzip")
 	req.URL.RawQuery = q.Encode()
 
 	addHeaders(req)
