able to parse new response from blob server
diff --git a/bundle.go b/bundle.go
index 43f243e..3aaa584 100644
--- a/bundle.go
+++ b/bundle.go
@@ -15,6 +15,7 @@
 
 import (
 	"encoding/base64"
+	"encoding/json"
 	"fmt"
 	"io"
 	"io/ioutil"
@@ -28,7 +29,7 @@
 )
 
 const (
-	blobStoreUri = "/v1/blobs/{blobId}/signedurl"
+	blobStoreUri = "blobs/{blobId}/signedurl"
 )
 
 type bundleManagerInterface interface {
@@ -55,6 +56,14 @@
 	workers                   []*BundleDownloader
 }
 
+type blobServerResponse struct {
+	id                       string `json:"id"`
+	kind                     string `json:"kind"`
+	self                     string `json:"self"`
+	signedUrl                string `json:"signedurl"`
+	signedUrlExpiryTimestamp string `json:"signedurlexpirytimestamp"`
+}
+
 func (bm *bundleManager) initializeBundleDownloading() {
 	atomic.StoreInt32(bm.isClosed, 0)
 	bm.workers = make([]*BundleDownloader, bm.concurrentDownloads)
@@ -211,7 +220,6 @@
 	blobUri.Path += strings.Replace(blobStoreUri, "{blobId}", blobId, 1)
 	parameters := url.Values{}
 	parameters.Add("action", "GET")
-	parameters.Add("key", blobId)
 	blobUri.RawQuery = parameters.Encode()
 
 	uri := blobUri.String()
@@ -222,12 +230,19 @@
 		return "", err
 	}
 
-	signedURL, err := ioutil.ReadAll(surl)
+	body, err := ioutil.ReadAll(surl)
 	if err != nil {
 		log.Errorf("Invalid response from BlobServer for {%s} error: {%v}", uri, err)
 		return "", err
 	}
-	return string(signedURL), nil
+	res := blobServerResponse{}
+	err = json.Unmarshal(body, &res)
+	if err != nil {
+		log.Errorf("Invalid response from BlobServer for {%s} error: {%v}", uri, err)
+		return "", err
+	}
+
+	return string(res.signedUrl), nil
 }
 
 // downloadFromURI involves retrieving the signed URL for the blob, and storing the resource locally