n8n-io/n8n · error
"${attachment.fileName}" contains no extractable text.
Error message
"${attachment.fileName}" contains no extractable text. What it means
Error ""${attachment.fileName}" contains no extractable text." thrown in n8n-io/n8n.
Source
Thrown at packages/@n8n/instance-ai/src/tools/attachments/parse-file.tool.ts:146
function emptyTabularFields() {
return {
columns: [],
rows: [],
totalRows: 0,
returnedRows: 0,
};
}
function extractPlainTextContent(attachment: AttachmentInfo) {
const decoded = Buffer.from(attachment.data, 'base64');
if (decoded.length > MAX_DECODED_SIZE_BYTES) {
throw new Error(formatSizeLimitMessage(decoded.length));
}
const content = decoded.toString('utf-8').trim();
if (!content) {
throw new Error(`"${attachment.fileName}" contains no extractable text.`);
}
if (content.length > MAX_RESULT_CHARS) {
return { content: content.slice(0, MAX_RESULT_CHARS), truncated: true };
}
return { content, truncated: false };
}
export function createParseFileTool(context: InstanceAiContext) {
return new Tool('parse-file')
.description(
'Parse parseable user attachments from the current message. ' +
'For CSV, TSV, JSON, and XLSX, returns column metadata (with normalized names and inferred types) and paginated rows. ' +
'For text, Markdown, HTML, PDF, and DOCX, returns extracted content. ' +
'Use nextStartRow to page through large tabular files. ' +
'When parsing tabular attachments to create, seed, or inspect Data Tables, load ' +
'`data-table-manager` via `load_skill` before calling this tool. ' +View on GitHub (pinned to 5ac6606e81)
When it happens
Trigger: Thrown at packages/@n8n/instance-ai/src/tools/attachments/parse-file.tool.ts:146 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of n8n-io/n8n@5ac6606e81 (2026-08-12).
Data as JSON: /api/errors/8a9642efdd9a7380.
Report an issue: GitHub.