Image Node not Working

Describe the problem/error/question

My Edit Image Node is not working. It continuously gives me sometimes an Error message of “EOF” or sometimes for binary data not found. I tried every possible approach but it still isn’t responding

What is the error message (if any)?

Provided parameter is not a string or binary data object.

Specify the property name of the binary data in input item or use an expression to access the binary data in previous nodes, e.g. “{{ $(_target_node_).item.binary[_binary_property_name_] }}”

Please share your workflow

(Select the nodes on your canvas and use the keyboard shortcuts CMD+C/CTRL+C and CMD+V/CTRL+V to copy and paste the workflow.)

{
  "nodes": [
    {
      "parameters": {
        "formTitle": "Social Media Post Form",
        "formDescription": "Fill out this form to request approval for your social media content. We'll review it and reach out via email with any feedback or confirmation.",
        "formFields": {
          "values": [
            {
              "fieldLabel": "Post Title",
              "placeholder": "Enter Poster Name.....",
              "requiredField": true
            },
            {
              "fieldLabel": "Caption",
              "placeholder": "=Enter caption for the post.....",
              "requiredField": true
            },
            {
              "fieldLabel": "Media Link",
              "placeholder": "Enter link.....",
              "requiredField": true
            },
            {
              "fieldLabel": "Target Platform",
              "fieldType": "checkbox",
              "fieldOptions": {
                "values": [
                  {
                    "option": "Facebook"
                  },
                  {
                    "option": "Instagram"
                  },
                  {
                    "option": "Whatsapp"
                  },
                  {
                    "option": "LinkedIn"
                  }
                ]
              },
              "requiredField": true
            },
            {
              "fieldLabel": "Post Type",
              "fieldType": "radio",
              "fieldOptions": {
                "values": [
                  {
                    "option": "Official"
                  },
                  {
                    "option": "Non-Official"
                  }
                ]
              },
              "requiredField": true
            }
          ]
        },
        "options": {}
      },
      "type": "n8n-nodes-base.formTrigger",
      "typeVersion": 2.3,
      "position": [
        -48,
        -48
      ],
      "id": "9bb08c2e-fcaa-4848-9952-2f0889d451f2",
      "name": "On form submission",
      "webhookId": "4224ae51-2f4a-4294-828f-2903dce38c6f"
    },
    {
      "parameters": {
        "operation": "sendAndWait",
        "sendTo": "multynetledtv40@gmail.com",
        "subject": "Approval Needed: Your Scheduled Social Media Content",
        "message": "=Post Approval Needed For Following Post:\nPosted At: \nPost Title: {{ $json['Post Title'] }}\nPost Type: {{ $json['Post Type'] }}\nCaption: {{ $json.Caption }}\nMedia Link: {{ $json['Media Link'] }}\nTarget Platforms: {{ $json['Target Platforms'] }}\nMedia Status: {{ $json['Target Platforms'] }}\n",
        "approvalOptions": {
          "values": {
            "approvalType": "double",
            "approveLabel": "yes",
            "disapproveLabel": "No"
          }
        },
        "options": {}
      },
      "type": "n8n-nodes-base.gmail",
      "typeVersion": 2.1,
      "position": [
        400,
        -48
      ],
      "id": "640fa5a0-c90e-4df2-aefe-9c3713726d5a",
      "name": "Send message and wait for response",
      "webhookId": "9e4de8aa-94e3-4432-b75f-e01f791b0a54",
      "credentials": {
        "gmailOAuth2": {
          "id": "wM1MGidE3tPzpdnR",
          "name": "Gmail account"
        }
      }
    },
    {
      "parameters": {
        "operation": "append",
        "documentId": {
          "__rl": true,
          "value": "1MfmvbgVgz_qip8qA-I3F4itw1Kj17L933l_bNxSIOF0",
          "mode": "id"
        },
        "sheetName": {
          "__rl": true,
          "value": "https://docs.google.com/spreadsheets/d/1MfmvbgVgz_qip8qA-I3F4itw1Kj17L933l_bNxSIOF0/edit?gid=20883542#gid=20883542",
          "mode": "url"
        },
        "columns": {
          "mappingMode": "defineBelow",
          "value": {
            "Date": "={{ $now.format('dd-MM-yyyy') }}",
            "Post Title": "={{ $json['Post Title'] }}",
            "Post Type": "={{ $if($json['Target Platform'] === \"Whatsapp\" || $json['Target Platform'] === \"All Platforms\", \"Official\", \"Non-Official\" ) }}",
            "Caption": "={{ $json.Caption }}",
            "Media Link": "={{ $json['Media Link'] }}",
            "Media Status": "={{ $if($json['Media Link'], \"Done\", \"Pending\") }}\n",
            "Publisher Status": "Done",
            "Target Platforms": "={{\n  $if(\n    [\"Facebook\", \"Instagram\", \"Whatsapp\", \"LinkedIn\"].every(p => $json['Target Platform'].includes(p)),\n    \"All Platforms\",\n    $json['Target Platform'].join(\", \")\n  )\n}}"
          },
          "matchingColumns": [],
          "schema": [
            {
              "id": "Date",
              "displayName": "Date",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            },
            {
              "id": "Post Title",
              "displayName": "Post Title",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            },
            {
              "id": "Post Type",
              "displayName": "Post Type",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            },
            {
              "id": "Caption",
              "displayName": "Caption",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            },
            {
              "id": "Media Link",
              "displayName": "Media Link",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            },
            {
              "id": "Target Platforms",
              "displayName": "Target Platforms",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            },
            {
              "id": "Media Status",
              "displayName": "Media Status",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            },
            {
              "id": "Publisher Status",
              "displayName": "Publisher Status",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            },
            {
              "id": "Final Approval",
              "displayName": "Final Approval",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            },
            {
              "id": "Time",
              "displayName": "Time",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            },
            {
              "id": "Remarks",
              "displayName": "Remarks",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            }
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {}
      },
      "type": "n8n-nodes-base.googleSheets",
      "typeVersion": 4.7,
      "position": [
        176,
        -48
      ],
      "id": "63c9f796-c5a0-4f5c-8b6a-052c6ed2fd48",
      "name": "Media Team Data",
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "fCp6c9n2cOkiQlo8",
          "name": "Google Sheets account"
        }
      }
    },
    {
      "parameters": {
        "operation": "download",
        "fileId": {
          "__rl": true,
          "value": "={{ $json[\"Media Link\"].match(/\\/d\\/([^/]+)/)[1] }}",
          "mode": "id"
        },
        "options": {}
      },
      "type": "n8n-nodes-base.googleDrive",
      "typeVersion": 3,
      "position": [
        848,
        -48
      ],
      "id": "c4e00ba6-aa08-45ca-91a2-4a53415eb2b2",
      "name": "Read Image",
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "fQhwDdOhMr590Bmx",
          "name": "Google Drive account"
        }
      }
    },
    {
      "parameters": {
        "operation": "information",
        "dataPropertyName": "={{ $binary.data }}"
      },
      "type": "n8n-nodes-base.editImage",
      "typeVersion": 1,
      "position": [
        1168,
        -48
      ],
      "id": "59ac5498-f913-4f71-9032-dcbdd5b6659c",
      "name": "Edit Image"
    },
    {
      "parameters": {
        "operation": "appendOrUpdate",
        "documentId": {
          "__rl": true,
          "value": "1MfmvbgVgz_qip8qA-I3F4itw1Kj17L933l_bNxSIOF0",
          "mode": "id"
        },
        "sheetName": {
          "__rl": true,
          "value": "https://docs.google.com/spreadsheets/d/1MfmvbgVgz_qip8qA-I3F4itw1Kj17L933l_bNxSIOF0/edit?gid=20883542#gid=20883542",
          "mode": "url"
        },
        "columns": {
          "mappingMode": "defineBelow",
          "value": {
            "Date": "={{ $('Media Team Data').item.json.Date }}",
            "Post Title": "={{ $('Media Team Data').item.json['Post Title'] }}",
            "Post Type": "={{ $('Media Team Data').item.json['Post Type'] }}",
            "Caption": "={{ $('Media Team Data').item.json.Caption }}",
            "Media Link": "={{ $('Media Team Data').item.json['Media Link'] }}",
            "Target Platforms": "={{ $('Media Team Data').item.json['Target Platforms'] }}",
            "Media Status": "={{ $('Media Team Data').item.json['Media Status'] }}",
            "Publisher Status": "={{ $('Media Team Data').item.json['Publisher Status'] }}",
            "Final Approval": "={{ $if($json.data.approved, \"Yes\", \"No\") }}",
            "Time": "={{ $now.format('HH:mm') }}"
          },
          "matchingColumns": [
            "Post Title"
          ],
          "schema": [
            {
              "id": "Date",
              "displayName": "Date",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            },
            {
              "id": "Post Title",
              "displayName": "Post Title",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            },
            {
              "id": "Post Type",
              "displayName": "Post Type",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            },
            {
              "id": "Caption",
              "displayName": "Caption",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            },
            {
              "id": "Media Link",
              "displayName": "Media Link",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            },
            {
              "id": "Target Platforms",
              "displayName": "Target Platforms",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            },
            {
              "id": "Media Status",
              "displayName": "Media Status",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            },
            {
              "id": "Publisher Status",
              "displayName": "Publisher Status",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            },
            {
              "id": "Final Approval",
              "displayName": "Final Approval",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            },
            {
              "id": "Time",
              "displayName": "Time",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            },
            {
              "id": "Remarks",
              "displayName": "Remarks",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            }
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {}
      },
      "type": "n8n-nodes-base.googleSheets",
      "typeVersion": 4.7,
      "position": [
        640,
        -48
      ],
      "id": "d9836706-f424-42bd-b807-f571b4b45205",
      "name": "Data after Admin Validation",
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "fCp6c9n2cOkiQlo8",
          "name": "Google Sheets account"
        }
      }
    }
  ],
  "connections": {
    "On form submission": {
      "main": [
        [
          {
            "node": "Media Team Data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Send message and wait for response": {
      "main": [
        [
          {
            "node": "Data after Admin Validation",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Media Team Data": {
      "main": [
        [
          {
            "node": "Send message and wait for response",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Read Image": {
      "main": [
        [
          {
            "node": "Edit Image",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Data after Admin Validation": {
      "main": [
        [
          {
            "node": "Read Image",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "pinData": {},
  "meta": {
    "templateCredsSetupCompleted": true,
    "instanceId": "b818f51dbe553575229f9d3d4f4568b70c9a18799785b2f4a867d9ec27545852"
  }
}

Share the output returned by the last node

[
{
“Date”:
“02-11-2025”,
“Post Title”:
“my first post”,
“Post Type”:
“Non-Official”,
“Caption”:
“Here it is!!!”,
“Media Link”:
https://drive.google.com/file/d/182mdxZf_vZR55UZJPRC5QkspkRXLEf55/view?usp=sharing”,
“Target Platforms”:
“Facebook, Instagram”,
“Media Status”:
“Done\n”,
“Publisher Status”:
“Done”,
“Final Approval”:
“Yes”,
“Time”:
“15:49”
}
]

Provided parameter is not a string or binary data object.
Specify the property name of the binary data in input item or use an expression to access the binary data in previous nodes, e.g. “{{ $(target_node).item.binary[binary_property_name] }}”

Information on your n8n setup

  • n8n version: 1.114.0
  • Database (default: SQLite):
  • n8n EXECUTIONS_PROCESS setting (default: own, main):
  • Running n8n via (Docker, npm, n8n cloud, desktop app): npx (locally hosting)
  • Operating system: Windows 11

hey! so the issue here is that the Edit Image node isnt getting the binary data in the format it expects.

that error message is pretty clear - you’re either not passing binary data at all, or its not in the right structure. heres what usually causes this:

**most common fixes:**

1. **check what’s feeding into the Edit Image node** - what node comes before it? if its a File node, make sure youre pulling the binary data correctly. the expression should look like:

```

{{ $(_node_name_).item.binary.data }}

```

2. **if youre using an HTTP Request node** to grab the image, toggle the “Return Binary Data” option ON - thats the gotcha that gets people all the time

3. **if youre passing JSON or trying to reference binary data from somewhere**, the Edit Image node needs actual binary, not a string or base64. if you have base64, use a Set node with an expression like:

```

{{ Buffer.from($json.imageBase64, ‘base64’) }}

```

(if thats available in your n8n version)

4. **check the input field in Edit Image** - make sure youre pointing to the right property. it should either be:

  • leave it blank if the previous node only outputs one image

  • or specify the exact property name like `data` or `file`

can you share what node is directly before the Edit Image node? and what error are you getting exactly - the “EOF” one or the “binary data not found”? thats helpful to narrow it down.

also drop a screenshot of your Edit Image node settings if you can - specifically what youve got in the “Image” field

A google drive “downloading file” node is before this node. The drive node correctly gives me the binary data.

The real problem is that when I run this node on the official n8n page it runs correctly on the same workflow without making a single change but returns error on local host.

(I will share screen shot shortly in the comments)

It’s erroring on local host if your google cloud setup isnt configured correctly. How are you hosting it to the internet?

Using npx n8n. I am locally hosting

Hi again @Usman_Rasheed_Siddiq ! Sorry for the late reply!

Your Edit Image node has the wrong value in the “Data Property Name” field. It expects the name of the binary property as a plain string, not the binary data itself.

You have: ={{ $binary.data }} This passes the actual binary object, which is why you’re getting “not a string or binary data object.”

Change it to just: data

No expression, no curly braces. Just the word data. That’s the default property name the Google Drive download node outputs binary under.

I hope this helps! Let me know if it doesen’t!