Implement and test the Service Info call.
diff --git a/openstack/identity/v3/services/requests.go b/openstack/identity/v3/services/requests.go
index 899b91c..7b1a250 100644
--- a/openstack/identity/v3/services/requests.go
+++ b/openstack/identity/v3/services/requests.go
@@ -67,3 +67,21 @@
 
 	return &resp, nil
 }
+
+// Info returns additional information about a service, given its ID.
+func Info(client *gophercloud.ServiceClient, serviceID string) (*ServiceResult, error) {
+	type response struct {
+		Service ServiceResult `json:"service"`
+	}
+
+	var resp response
+	_, err := perigee.Request("GET", getServiceURL(client, serviceID), perigee.Options{
+		MoreHeaders: client.Provider.AuthenticatedHeaders(),
+		Results:     &resp,
+		OkCodes:     []int{200},
+	})
+	if err != nil {
+		return nil, err
+	}
+	return &resp.Service, nil
+}