RSS read and HTTP request 403 forbidden error

Describe the problem/error/question

I’m new to n8n and not a coder, just trying to set things up with help from AI [ I follow AI to ad header]. However, I keep getting a 403 Forbidden error when I use the HTTP Request or RSS Read node to fetch data from websites.

I followed a tutorial on YouTube and copy-pasted the exact same feed links (e.g. https://www.blognone.com/feed/), but instead of getting results, I only get the 403 error.

What I’ve tried so far:

  • Adding a User-Agent header+value(Mozilla/5.0)

  • Enabling Ignore SSL

Unfortunately, none of these worked. I’m not sure if these websites are blocking n8n automation scrapping or if I’m missing something (since the tutorial didn’t run into this error]

What is the error message (if any)?

Forbidden - perhaps check your credentials?
403 Forbidden nginx/1.20.0
Status code 403

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": {
        "url": "https://droidsans.com/feed/",
        "options": {}
      },
      "type": "n8n-nodes-base.rssFeedRead",
      "typeVersion": 1.2,
      "position": [
        224,
        -80
      ],
      "id": "a53d5848-1363-450d-97f8-5ebaea76479e",
      "name": "droidsan"
    },
    {
      "parameters": {
        "maxItems": 2
      },
      "type": "n8n-nodes-base.limit",
      "typeVersion": 1,
      "position": [
        448,
        112
      ],
      "id": "80d3c686-dba4-4098-8bbb-fc92714e772d",
      "name": "Limit"
    },
    {
      "parameters": {
        "operation": "append",
        "documentId": {
          "__rl": true,
          "value": "1-X4QKpF-tb-PVdh-v6Wvk4wR5GpoY0hUhH9XlNcDaO8",
          "mode": "list",
          "cachedResultName": "RSS 3 web n8n",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1-X4QKpF-tb-PVdh-v6Wvk4wR5GpoY0hUhH9XlNcDaO8/edit?usp=drivesdk"
        },
        "sheetName": {
          "__rl": true,
          "value": "gid=0",
          "mode": "list",
          "cachedResultName": "Sheet1",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1-X4QKpF-tb-PVdh-v6Wvk4wR5GpoY0hUhH9XlNcDaO8/edit#gid=0"
        },
        "columns": {
          "mappingMode": "defineBelow",
          "value": {
            "title": "={{ $json.title }}",
            "Link": "={{ $json.link }}",
            "date": "={{ $json.pubDate }}"
          },
          "matchingColumns": [],
          "schema": [
            {
              "id": "date",
              "displayName": "date",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true
            },
            {
              "id": "title",
              "displayName": "title",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true
            },
            {
              "id": "Link",
              "displayName": "Link",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true
            }
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {}
      },
      "type": "n8n-nodes-base.googleSheets",
      "typeVersion": 4.7,
      "position": [
        672,
        112
      ],
      "id": "76418a9e-12e1-43ea-a69b-34980267f994",
      "name": "Append row in sheet",
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "jSAn5rSdjsMHuBzP",
          "name": "Google Sheets account"
        }
      }
    },
    {
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "cronExpression",
              "expression": "40 21 * * *"
            },
            {
              "field": "cronExpression",
              "expression": "42 21 * * *"
            }
          ]
        }
      },
      "type": "n8n-nodes-base.scheduleTrigger",
      "typeVersion": 1.2,
      "position": [
        -80,
        112
      ],
      "id": "97fa5e5b-3cbc-468c-8d78-ef6cd8f1944f",
      "name": "Schedule Trigger"
    },
    {
      "parameters": {
        "url": "https://xn--42cah7d0cxcvbbb9x.com/%E0%B8%A3%E0%B8%B2%E0%B8%84%E0%B8%B2%E0%B8%99%E0%B9%89%E0%B8%B3%E0%B8%A1%E0%B8%B1%E0%B8%99%E0%B8%A7%E0%B8%B1%E0%B8%99%E0%B8%99%E0%B8%B5%E0%B9%89/",
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "User-Agent",
              "value": " Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36"
            },
            {}
          ]
        },
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        224,
        304
      ],
      "id": "1fb93773-ab92-4a76-9fe0-1e9d93a24210",
      "name": "HTTP Request"
    },
    {
      "parameters": {
        "url": "https://www.blognone.com/feed/",
        "options": {
          "ignoreSSL": true
        }
      },
      "type": "n8n-nodes-base.rssFeedRead",
      "typeVersion": 1.2,
      "position": [
        224,
        112
      ],
      "id": "b0ab7636-6fc1-4085-9780-221142029ff4",
      "name": "blognone.com",
      "alwaysOutputData": false
    }
  ],
  "connections": {
    "droidsan": {
      "main": [
        [
          {
            "node": "Limit",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Limit": {
      "main": [
        [
          {
            "node": "Append row in sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Schedule Trigger": {
      "main": [
        [
          {
            "node": "droidsan",
            "type": "main",
            "index": 0
          },
          {
            "node": "blognone.com",
            "type": "main",
            "index": 0
          },
          {
            "node": "Limit",
            "type": "main",
            "index": 0
          },
          {
            "node": "HTTP Request",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "HTTP Request": {
      "main": [
        [
          {
            "node": "Limit",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "blognone.com": {
      "main": [
        [
          {
            "node": "Limit",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "pinData": {},
  "meta": {
    "templateCredsSetupCompleted": true,
    "instanceId": "0ff055bf69f9e831b82bc10646b53ca0b614976c9c1a12149d9852c6cc7af936"
  }
}

Share the output returned by the last node

  1. RSS Read node (blognone.com/feed/):
    Status code 403
  2. **HTTP Request node: (**ราคาน้ำมันวันนี้ ราคาน้ำมันพรุ่งนี้ อัปเดตราคาน้ำมันล่าสุด):
    Forbidden - perhaps check your credentials? 403 Forbidden nginx/1.20.0

Information on your n8n setup

  • n8n version: 1.106.3
  • Database (default: SQLite): I don’t know
  • n8n EXECUTIONS_PROCESS setting (default: own, main): Default
  • Running n8n via (Docker, npm, n8n cloud, desktop app): n8n cloud
  • Operating system: I don’t know

Try using one of these urls in RSS node:

https://www.blognone.com/node/feed?destination=/taxonomy/term/13310/feed&_exception_statuscode=404

https://www.blognone.com/node/feed?destination=/&_exception_statuscode=404

Thank you so much. Now it works for RSS Read, but I am still struggling for HTTP request. Is there any suggestion how I can try to overcome the 403 error. I’ve tried to change format (as you given ending with feed&_exception_statuscode=404) for my target website.
Link for the website to get HTTP request (ราคาน้ำมันวันนี้ ราคาน้ำมันพรุ่งนี้ อัปเดตราคาน้ำมันล่าสุด)

When I try to request the url you provided

in http request node, it doesn’t fail for me.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.