AutomationFlowsWeb Scraping › Fb Content Upload (latest)

Fb Content Upload (latest)

FB Content Upload (Latest). Uses httpRequest. Scheduled trigger; 5 nodes.

Cron / scheduled trigger★★★★☆ complexity5 nodesHTTP Request
Web Scraping Trigger: Cron / scheduled Nodes: 5 Complexity: ★★★★☆ Added:

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "name": "FB Content Upload (Latest)",
  "nodes": [
    {
      "parameters": {
        "rule": {
          "interval": [
            {
              "triggerAtHour": 8
            }
          ]
        }
      },
      "type": "n8n-nodes-base.scheduleTrigger",
      "typeVersion": 1.3,
      "position": [
        -700,
        0
      ],
      "id": "schedule-1",
      "name": "Schedule Trigger"
    },
    {
      "parameters": {
        "content": "Replace with your input source. Expected fields: caption, image_url, upload_date, upload_time, page_id, access_token.",
        "height": 170,
        "width": 520,
        "color": 5
      },
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        -440,
        -180
      ],
      "id": "note-1",
      "name": "Sticky Note - Input Rows"
    },
    {
      "parameters": {
        "jsCode": "const post = $json;\nconst uploadDate = post.upload_date || '2026-08-07';\nconst uploadTime = post.upload_time || '09:00:00';\nconst [h, m, s] = String(uploadTime).split(':').map(Number);\nconst normalized = [h, m, s].map(n => String(n || 0).padStart(2, '0')).join(':');\nconst scheduledDate = new Date(`${uploadDate}T${normalized}+07:00`);\nreturn [{ json: { ...post, scheduled_publish_time: Math.floor(scheduledDate.getTime() / 1000) } }];"
      },
      "type": "n8n-nodes-base.code",
      "typeVersion": 2,
      "position": [
        -120,
        0
      ],
      "id": "code-1",
      "name": "Prepare Schedule"
    },
    {
      "parameters": {
        "method": "POST",
        "url": "=https://graph.facebook.com/v23.0/{{ $json.page_id }}/photos",
        "sendBody": true,
        "contentType": "form-urlencoded",
        "bodyParameters": {
          "parameters": [
            {
              "name": "message",
              "value": "={{ $json.caption }}"
            },
            {
              "name": "access_token",
              "value": "={{ $json.access_token || 'YOUR_FACEBOOK_PAGE_ACCESS_TOKEN' }}"
            },
            {
              "name": "url",
              "value": "={{ $json.image_url }}"
            },
            {
              "name": "published",
              "value": "false"
            },
            {
              "name": "scheduled_publish_time",
              "value": "={{ $json.scheduled_publish_time }}"
            }
          ]
        },
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.4,
      "position": [
        160,
        0
      ],
      "id": "http-1",
      "name": "Schedule Facebook Photo Post"
    },
    {
      "parameters": {
        "content": "Replace with your save-history and status-update nodes.",
        "height": 150,
        "width": 420,
        "color": 7
      },
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        460,
        -160
      ],
      "id": "note-2",
      "name": "Sticky Note - Save Result"
    }
  ],
  "connections": {
    "Schedule Trigger": {
      "main": [
        [
          {
            "node": "Prepare Schedule",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Prepare Schedule": {
      "main": [
        [
          {
            "node": "Schedule Facebook Photo Post",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "settings": {
    "executionOrder": "v1"
  },
  "meta": {
    "templateCredsSetupCompleted": false
  }
}
Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

FB Content Upload (Latest). Uses httpRequest. Scheduled trigger; 5 nodes.

Source: https://github.com/mobizmad/n8n-workflow-templates/blob/main/marketing/fb-content-upload-latest/workflow.json — original creator credit. Request a take-down →

More Web Scraping workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

Web Scraping

Birthday Automation - Production (Fixed). Uses stopAndError, httpRequest, emailSend, bannerbear. Scheduled trigger; 86 nodes.

Stop And Error, HTTP Request, Email Send +1
Web Scraping

This template runs two scheduled workflows to govern Microsoft Entra ID (Azure AD) guest accounts by detecting stale users via Microsoft Graph, staging deletions in SharePoint with a 72-hour window, n

Microsoft SharePoint, Microsoft Teams, Microsoft Entra +1
Web Scraping

Jira-Allure-Auto-Qa. Uses httpRequest, jira. Scheduled trigger; 68 nodes.

HTTP Request, Jira
Web Scraping

Spotify-Sync-Surrealdb-V1. Uses httpRequest, n8n-nodes-surrealdb, spotify. Scheduled trigger; 62 nodes.

HTTP Request, N8N Nodes Surrealdb, Spotify
Web Scraping

As n8n instances scale, teams often lose track of sub-workflows—who uses them, where they are referenced, and whether they can be safely updated. This leads to inefficiencies like unnecessary copies o

HTTP Request, n8n, N8N Trigger +1