diff --git a/openstack/identity/v3/endpoints/requests.go b/openstack/identity/v3/endpoints/requests.go
index 7fc4544..bf60406 100644
--- a/openstack/identity/v3/endpoints/requests.go
+++ b/openstack/identity/v3/endpoints/requests.go
@@ -109,8 +109,16 @@
 		q["per_page"] = strconv.Itoa(opts.Page)
 	}
 
+	countPage := func(p gophercloud.Page) (int, error) {
+		es, err := ExtractEndpoints(p)
+		if err != nil {
+			return 0, err
+		}
+		return len(es), nil
+	}
+
 	u := getListURL(client) + utils.BuildQuery(q)
-	return gophercloud.NewLinkedPager(client, u)
+	return gophercloud.NewLinkedPager(client, u, countPage)
 }
 
 // Update changes an existing endpoint with new data.
diff --git a/openstack/identity/v3/endpoints/requests_test.go b/openstack/identity/v3/endpoints/requests_test.go
index f988770..84cb2da 100644
--- a/openstack/identity/v3/endpoints/requests_test.go
+++ b/openstack/identity/v3/endpoints/requests_test.go
@@ -91,6 +91,7 @@
 		testhelper.TestMethod(t, r, "GET")
 		testhelper.TestHeader(t, r, "X-Auth-Token", tokenID)
 
+		w.Header().Add("Content-Type", "application/json")
 		fmt.Fprintf(w, `
 			{
 				"endpoints": [
diff --git a/openstack/identity/v3/services/requests.go b/openstack/identity/v3/services/requests.go
index 34df63f..7bc4a82 100644
--- a/openstack/identity/v3/services/requests.go
+++ b/openstack/identity/v3/services/requests.go
@@ -55,7 +55,15 @@
 	}
 	u := getListURL(client) + utils.BuildQuery(q)
 
-	return gophercloud.NewLinkedPager(client, u)
+	countPage := func(p gophercloud.Page) (int, error) {
+		services, err := ExtractServices(p)
+		if err != nil {
+			return 0, err
+		}
+		return len(services), nil
+	}
+
+	return gophercloud.NewLinkedPager(client, u, countPage)
 }
 
 // Get returns additional information about a service, given its ID.
