diff --git a/packages/swr-openapi/src/query-base.ts b/packages/swr-openapi/src/query-base.ts
index 234101842..edd180812 100644
--- a/packages/swr-openapi/src/query-base.ts
+++ b/packages/swr-openapi/src/query-base.ts
@@ -4,6 +4,8 @@ import type { Fetcher, SWRHook } from "swr";
 import type { TypesForGetRequest } from "./types.js";
 import { useCallback, useDebugValue, useMemo } from "react";
 
+export const RESPONSE = Symbol.for("response");
+
 /**
  * @private
  */
@@ -35,8 +37,18 @@ export function configureBaseQueryHook(useHook: SWRHook) {
           // @ts-expect-error TODO: Improve internal init types
           const res = await client.GET(path, init);
           if (res.error) {
+            Object.defineProperty(res.error, RESPONSE, {
+              value: res.response,
+              enumerable: false,
+            });
             throw res.error;
           }
+          if (res.data && typeof res.data === "object") {
+            Object.defineProperty(res.data, RESPONSE, {
+              value: res.response,
+              enumerable: false,
+            });
+          }
           return res.data as Data;
         },
         [client],