diff --git a/packages/core/src/Interfaces.ts b/packages/core/src/Interfaces.ts index 94f940ed0a..7548b4c944 100644 --- a/packages/core/src/Interfaces.ts +++ b/packages/core/src/Interfaces.ts @@ -106,7 +106,11 @@ export interface IPollFunctions extends IPollFunctionsBase { } export interface IResponseError extends Error { - statusCode?: number; + status?: number; // this is how the request library returns + response?: { + // this is how Axios returns + status: number; + }; } export interface ITriggerFunctions extends ITriggerFunctionsBase { diff --git a/packages/core/src/NodeExecuteFunctions.ts b/packages/core/src/NodeExecuteFunctions.ts index af9dd3ed56..48c7cb1c76 100644 --- a/packages/core/src/NodeExecuteFunctions.ts +++ b/packages/core/src/NodeExecuteFunctions.ts @@ -673,7 +673,7 @@ export async function requestOAuth2( ? 401 : oAuth2Options?.tokenExpiredStatusCode; - if (error.statusCode === statusCodeReturned) { + if (error.response?.status === statusCodeReturned || error.status === statusCodeReturned) { // Token is probably not valid anymore. So try refresh it. const tokenRefreshOptions: IDataObject = {};