diff --git a/api/endpoints.go b/api/endpoints.go
index 1c34d30..8ae8860 100644
--- a/api/endpoints.go
+++ b/api/endpoints.go
@@ -436,6 +436,9 @@ func (e *Endpoint) ServeHTTP(w http.ResponseWriter, r *http.Request) {
 		return
 	}
 
+	// Add response headers to request struct so that the endpoint can work with them.
+	apiRequest.ResponseHeader = w.Header()
+
 	// Execute action function and get response data
 	var responseData []byte
 	var err error
diff --git a/api/request.go b/api/request.go
index 8a4d70b..9969ce3 100644
--- a/api/request.go
+++ b/api/request.go
@@ -26,6 +26,9 @@ type Request struct {
 	// AuthToken is the request-side authentication token assigned.
 	AuthToken *AuthToken
 
+	// ResponseHeader holds the response header.
+	ResponseHeader http.Header
+
 	// HandlerCache can be used by handlers to cache data between handlers within a request.
 	HandlerCache interface{}
 }