Turns out /endpoints *is* paginated with links.
diff --git a/openstack/identity/v3/endpoints/results.go b/openstack/identity/v3/endpoints/results.go
index a7bff83..3243cd8 100644
--- a/openstack/identity/v3/endpoints/results.go
+++ b/openstack/identity/v3/endpoints/results.go
@@ -14,6 +14,8 @@
 
 // EndpointList contains a page of Endpoint results.
 type EndpointList struct {
+	gophercloud.PaginationLinks `json:"links"`
+
 	service   *gophercloud.ServiceClient
-	Endpoints []Endpoint
+	Endpoints []Endpoint `json:"endpoints"`
 }