diff --git a/rackspace/db/v1/backups/fixtures.go b/rackspace/db/v1/backups/fixtures.go
index 92b9c08..a1012aa 100644
--- a/rackspace/db/v1/backups/fixtures.go
+++ b/rackspace/db/v1/backups/fixtures.go
@@ -9,6 +9,28 @@
 	"github.com/rackspace/gophercloud/testhelper/client"
 )
 
+var singleBackup = `
+{
+  "backup": {
+    "created": "2014-02-13T21:47:16",
+    "description": "My Backup",
+    "id": "61f12fef-edb1-4561-8122-e7c00ef26a82",
+    "instance_id": "d4603f69-ec7e-4e9b-803f-600b9205576f",
+    "locationRef": null,
+    "name": "snapshot",
+    "parent_id": null,
+    "size": 100,
+    "status": "NEW",
+		"datastore": {
+			"version": "5.1",
+			"type": "MySQL",
+			"version_id": "20000000-0000-0000-0000-000000000002"
+		},
+    "updated": "2014-02-13T21:47:16"
+  }
+}
+`
+
 func SetupHandler(t *testing.T, url, method, requestBody, responseBody string, status int) {
 	th.Mux.HandleFunc(url, func(w http.ResponseWriter, r *http.Request) {
 		th.TestMethod(t, r, method)
@@ -41,24 +63,7 @@
 }
 `
 
-	responseJSON := `
-{
-  "backup": {
-    "created": "2014-02-13T21:47:16",
-    "description": "My Backup",
-    "id": "61f12fef-edb1-4561-8122-e7c00ef26a82",
-    "instance_id": "d4603f69-ec7e-4e9b-803f-600b9205576f",
-    "locationRef": null,
-    "name": "snapshot",
-    "parent_id": null,
-    "size": 100,
-    "status": "NEW",
-    "updated": "2014-02-13T21:47:16"
-  }
-}
-`
-
-	SetupHandler(t, "/backups", "POST", requestJSON, responseJSON, 202)
+	SetupHandler(t, "/backups", "POST", requestJSON, singleBackup, 202)
 }
 
 func HandleListSuccessfully(t *testing.T) {
@@ -69,7 +74,11 @@
       "status": "COMPLETED",
       "updated": "2014-06-18T21:24:39",
       "description": "Backup from Restored Instance",
-
+      "datastore": {
+        "version": "5.1",
+        "type": "MySQL",
+        "version_id": "20000000-0000-0000-0000-000000000002"
+      },
       "id": "87972694-4be2-40f5-83f8-501656e0032a",
       "size": 0.141026,
       "name": "restored_backup",
@@ -84,3 +93,11 @@
 
 	SetupHandler(t, "/backups", "GET", "", responseJSON, 200)
 }
+
+func HandleGetSuccessfully(t *testing.T, backupID string) {
+	SetupHandler(t, "/backups/"+backupID, "GET", "", singleBackup, 200)
+}
+
+func HandleDeleteSuccessfully(t *testing.T, backupID string) {
+	SetupHandler(t, "/backups/"+backupID, "DELETE", "", "", 202)
+}
diff --git a/rackspace/db/v1/backups/requests_test.go b/rackspace/db/v1/backups/requests_test.go
index 3f7681c..14eacc1 100644
--- a/rackspace/db/v1/backups/requests_test.go
+++ b/rackspace/db/v1/backups/requests_test.go
@@ -8,7 +8,7 @@
 	fake "github.com/rackspace/gophercloud/testhelper/client"
 )
 
-//const instanceID = "{instanceID}"
+const backupID = "61f12fef-edb1-4561-8122-e7c00ef26a82"
 
 func TestCreate(t *testing.T) {
 	th.SetupHTTP()
@@ -36,6 +36,7 @@
 		Size:        100,
 		Status:      "NEW",
 		Updated:     "2014-02-13T21:47:16",
+		Datastore:   Datastore{Version: "5.1", Type: "MySQL", VersionID: "20000000-0000-0000-0000-000000000002"},
 	}
 
 	th.AssertDeepEquals(t, expected, instance)
@@ -66,6 +67,7 @@
 				Size:        0.141026,
 				Status:      "COMPLETED",
 				Updated:     "2014-06-18T21:24:39",
+				Datastore:   Datastore{Version: "5.1", Type: "MySQL", VersionID: "20000000-0000-0000-0000-000000000002"},
 			},
 		}
 
@@ -78,3 +80,39 @@
 		t.Errorf("Expected 1 page, got %d", count)
 	}
 }
+
+func TestGet(t *testing.T) {
+	th.SetupHTTP()
+	defer th.TeardownHTTP()
+
+	HandleGetSuccessfully(t, backupID)
+
+	instance, err := Get(fake.ServiceClient(), backupID).Extract()
+	th.AssertNoErr(t, err)
+
+	expected := &Backup{
+		Created:     "2014-02-13T21:47:16",
+		Description: "My Backup",
+		ID:          "61f12fef-edb1-4561-8122-e7c00ef26a82",
+		InstanceID:  "d4603f69-ec7e-4e9b-803f-600b9205576f",
+		LocationRef: "",
+		Name:        "snapshot",
+		ParentID:    "",
+		Size:        100,
+		Status:      "NEW",
+		Updated:     "2014-02-13T21:47:16",
+		Datastore:   Datastore{Version: "5.1", Type: "MySQL", VersionID: "20000000-0000-0000-0000-000000000002"},
+	}
+
+	th.AssertDeepEquals(t, expected, instance)
+}
+
+func TestDelete(t *testing.T) {
+	th.SetupHTTP()
+	defer th.TeardownHTTP()
+
+	HandleDeleteSuccessfully(t, backupID)
+
+	err := Delete(fake.ServiceClient(), backupID).ExtractErr()
+	th.AssertNoErr(t, err)
+}
diff --git a/rackspace/db/v1/backups/results.go b/rackspace/db/v1/backups/results.go
index 16a3e66..89f1fc6 100644
--- a/rackspace/db/v1/backups/results.go
+++ b/rackspace/db/v1/backups/results.go
@@ -6,6 +6,12 @@
 	"github.com/rackspace/gophercloud/pagination"
 )
 
+type Datastore struct {
+	Version   string
+	Type      string
+	VersionID string `json:"version_id" mapstructure:"version_id"`
+}
+
 type Backup struct {
 	Description string
 	ID          string
@@ -17,6 +23,7 @@
 	Status      string
 	Created     string
 	Updated     string
+	Datastore   Datastore
 }
 
 type CreateResult struct {
