Entries exist but they do not contain any JSON data

I noticed that listening for webhooks I don’t always get data back.

In some cases, executing the node says waiting for webhook and sits there listening until I make a submission.
In other cases, executing the node “returns” after roughly 1 second, the results being reflected in the title here.

There doesn’t appear to be anything I can do to resolve this within a workflow. In some cases I have seen it working, now even when creating new workflows the webhooks don’t seem to actually listen.

Update: I am running this in docker and restarted the service. I also tried switching to test mode after the restart and still only listen for about 1 second before returning with no data.

Update2: The production webhook appears to work properly, with the return saying workflow started. Posting to the production URL results in:
{“code”:404,“message”:"The requested webhook is not registred…
From what I can tell, I can operate production webhooks, but can’t (yet) use test hooks to build out the rest of my nodes. So close!

Hm, honestly did never hear about such problems before. So I do not think it is a problem in n8n. So I can just imagine that is must have some kind of other reason. Like that maybe two webhook calls get made, one containing data the other one not. What are you using to test the webhooks? Something like curl?

If the above would be the case it would work in production as its webhook stays active all the time and would so return the same to both webhook calls.

About “GET” working but “POST” not. That is actually a feature, not a bug. You can configure on the Webhook Trigger-Node to what to listen to. By default is it set to “GET” but you can also set it to “POST”.

I hope that helps!

Yeah, I’m wondering if I’m having installation related issues. It’s odd that some things work, but are generally being unreliable when setting up.

When testing I was using CURL with POSTs, the webhook is set to use POST. It would appear that test mode webhooks are closing/returning prematurely even if I don’t call them.

I’m 99% sure there’s nothing on my system (local or server[VPS]) calling test webhooks. The behavior really appears as if some process was calling my test webhooks almost in response to them being turned on. I haven’t timed it but it feels like it’s very close to one second.

Can you think of anything server/installation-wise that could cause behavior like that?

Background:
Docker-compose installation based on the postgres example
Nginx reverse proxy with letsencrypt SSL
Nginx configuration per https://github.com/n8n-io/n8n/issues/36
Basic Auth on n8n (I was doing it with Nginx but realized it was protecting my webhooks, oops! - May rewrite the nginx config to exclude that path, however that’s irrelevant)

Generally the install went somewhat smooth, I did need to make some changes for mounting volumes, but I feel like it’s running as intended, other than these odd issues.

Suggestion: docker-compose should include volume examples by default, I realized I didn’t have a volume for postgres and it was a pain figuring out how to pull the info out.

I was now thinking about it for a while but can sadly still not come up with anything which would call your webhooks automatically or cause the behavior you are describing. If they would not be called at all I would say it has to do with the reverse proxy configuration but in that case, I am just totally blank.

Thanks, I’ll see about starting again with a fresh install and seeing if that fixes anything.

If you do please check this post out again:

I hope everything works then perfect for you!

I am having the same issue, the difference is that it relates to a readFile node, and the file contains just this:

{
"status": 510
}

Ah yes the reason there is that it is reading it in as a binary property and not a JSON one. You can copy the data over like described here:

A full working example:

{
  "nodes": [
    {
      "parameters": {
        "filePath": "test.json"
      },
      "name": "Read Binary File",
      "type": "n8n-nodes-base.readBinaryFile",
      "typeVersion": 1,
      "position": [
        500,
        300
      ]
    },
    {
      "parameters": {
        "functionCode": "items[0].json = JSON.parse(new Buffer(items[0].binary.data.data, 'base64').toString('ascii'));\n\nreturn items;"
      },
      "name": "Create JSON",
      "type": "n8n-nodes-base.function",
      "typeVersion": 1,
      "position": [
        650,
        300
      ]
    }
  ],
  "connections": {
    "Read Binary File": {
      "main": [
        [
          {
            "node": "Create JSON",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
1 Like