diff --git a/provider_client.go b/provider_client.go
index 3c65984..9dea5af 100644
--- a/provider_client.go
+++ b/provider_client.go
@@ -63,6 +63,15 @@
 
 	// UserAgent represents the User-Agent header in the HTTP request.
 	UserAgent UserAgent
+
+	// AuthOptions is the user-provided options for authentication. These will be
+	// passed to ReauthFunc for re-authenticating if the user requests it.
+	AuthOptions AuthOptions
+
+	// ReauthFunc is the function used to re-authenticate the user if the request
+	// fails with a 401 HTTP response code. This a needed because there may be multiple
+	// authentication functions for different Identity service versions.
+	ReauthFunc func(client *ProviderClient, options AuthOptions) error
 }
 
 // AuthenticatedHeaders returns a map of HTTP headers that are common for all
@@ -179,6 +188,19 @@
 		return nil, err
 	}
 
+	if resp.StatusCode == 401 {
+		if client.AuthOptions.AllowReauth {
+			err = client.ReauthFunc(client, client.AuthOptions)
+			if err != nil {
+				return nil, fmt.Errorf("Error trying to re-authenticate: %s", err)
+			}
+			resp, err = client.Request(method, url, options)
+			if err != nil {
+				return nil, fmt.Errorf("Successfully re-authenticated, but got error executing request: %s", err)
+			}
+		}
+	}
+
 	// Validate the response code, if requested to do so.
 	if options.OkCodes != nil {
 		var ok bool
