n8n-io/n8n · error · NodeOperationError
${error.message}
Error message
${error.message} What it means
Thrown by the AlibabaCloud router's item-processing loop when an inner execute function throws and 'Continue On Fail' is NOT enabled. The caught error (which may be any Error, string, or object) is re-wrapped as a NodeOperationError with the current itemIndex so the execution report can point to the specific input item that failed. The original error's message becomes the NodeOperationError message.
Source
Thrown at packages/@n8n/nodes-langchain/nodes/vendors/AlibabaCloud/actions/router.ts:77
default:
throw new NodeOperationError(this.getNode(), `The resource "${resource}" is not supported`);
}
for (let itemIndex = 0; itemIndex < items.length; itemIndex++) {
try {
const executionData = await execute.call(this, itemIndex);
returnData.push(executionData);
} catch (error) {
if (this.continueOnFail()) {
returnData.push({
json: {
error: error instanceof Error ? error.message : String(error),
},
pairedItem: { item: itemIndex },
});
continue;
}
throw new NodeOperationError(this.getNode(), error, {
itemIndex,
});
}
}
return [returnData];
}
View on GitHub (pinned to 5ac6606e81)
Solutions
- Read the wrapped error.message — it contains the original error's message text which identifies the root cause (e.g. 'InvalidApiKey', 'QuotaExceeded', content policy).
- Fix the root cause: update credentials, reduce batch size, fix input data for the failing item index.
- If you want the workflow to continue past failing items, enable 'Continue On Fail' in the node's Settings tab — errors will be captured in the output JSON instead of thrown.
- Check the execution data for the specific itemIndex to see which input triggered the failure.
Defensive patterns
Strategy: try-catch
Try / catch
// In a Code node or error-trigger workflow, catch the NodeOperationError:
try {
// ... AlibabaCloud node execution logic ...
} catch (error) {
if (error instanceof NodeOperationError && error.itemIndex !== undefined) {
console.error(`Item ${error.itemIndex} failed: ${error.message}`);
// route failing item to error branch, retry, or log
}
throw error; // re-throw if not handled
} Prevention
- Enable 'Continue On Fail' in the node's Settings tab to capture per-item errors in the output instead of halting the entire execution.
- Validate input data (API keys, required fields, binary data presence) in an upstream Code node before it reaches the AlibabaCloud node.
- Use n8n's Error Trigger node to handle execution failures gracefully in a separate error-handling workflow branch.
When it happens
Trigger: Any error thrown during the actual operation execution (API call failure, authentication error, parsing error, rate limit, etc.) for a specific input item when the node is not configured to continue on failure. The original error is caught at router.ts:67 and re-thrown at line 77.
Common situations: AlibabaCloud API returns a 4xx/5xx (invalid API key, quota exceeded, content policy violation); input data for one item is malformed; network timeout during the operation; binary data missing for image/video operations.
Related errors
- ${error.message}
- The resource "${resource}" is not supported
- ${toolName} was registered without a runSubAgent callback, a
- No cancellation handler is available for "${request.subAgent
- No monitors available
AI-assisted analysis of n8n-io/n8n@5ac6606e81 (2026-08-12).
Data as JSON: /api/errors/02a9640b6601e147.
Report an issue: GitHub.