diff --git a/consensus/bor/rest.go b/consensus/bor/rest.go
index 9c525d6df6c5b355e6a403845adbb0cb748f6d17..91aae237a7bbcfa78deff355510504286e4011aa 100644
--- a/consensus/bor/rest.go
+++ b/consensus/bor/rest.go
@@ -86,18 +86,22 @@ func (h *HeimdallClient) internalFetch(u *url.URL) (*ResponseWithHeight, error)
 	defer res.Body.Close()
 
 	// check status code
-	if res.StatusCode != 200 {
+	if res.StatusCode != 200 && res.StatusCode != 204 {
 		return nil, fmt.Errorf("Error while fetching data from Heimdall")
 	}
 
+	// unmarshall data from buffer
+	var response ResponseWithHeight
+	if res.StatusCode == 204 {
+		return &response, nil
+	}
+
 	// get response
 	body, err := ioutil.ReadAll(res.Body)
 	if err != nil {
 		return nil, err
 	}
 
-	// unmarshall data from buffer
-	var response ResponseWithHeight
 	if err := json.Unmarshal(body, &response); err != nil {
 		return nil, err
 	}