{
  "name": "Remote job updates pipeline with RemoteOK, Airtable, and Telegram",
  "nodes": [
    {
      "id": "3de543cc-3d6d-466a-ab78-33a60759c076",
      "name": "Remote ok",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -80,
        0
      ]
    },
    {
      "id": "20582a41-62b0-41ef-aafc-b000cf1f791a",
      "name": "Clean text1",
      "type": "n8n-nodes-base.code",
      "position": [
        480,
        0
      ]
    },
    {
      "id": "a019ce59-7c8b-47d3-9215-2913e8bbbe94",
      "name": "Code5",
      "type": "n8n-nodes-base.code",
      "position": [
        1140,
        0
      ]
    },
    {
      "id": "d6412c57-ed82-47b7-a34e-cb78569def21",
      "name": "Telegram1",
      "type": "n8n-nodes-base.telegram",
      "position": [
        1820,
        0
      ]
    },
    {
      "id": "8d1d7d16-22cf-4084-87f2-b9a5b08f56ec",
      "name": "Schedule Trigger",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -440,
        0
      ]
    },
    {
      "id": "ffeb2eb3-4b98-49c4-8335-b45550ef8606",
      "name": "RemoteOK Jobs",
      "type": "n8n-nodes-base.airtable",
      "position": [
        1400,
        0
      ]
    },
    {
      "id": "86474976-e7d9-4e5e-a256-6a857356ce28",
      "name": "Text-clean",
      "type": "n8n-nodes-base.code",
      "position": [
        700,
        0
      ]
    },
    {
      "id": "2c015df3-8e5c-46ef-ad7d-71b73bffd759",
      "name": "Cleaning the received input",
      "type": "n8n-nodes-base.code",
      "position": [
        220,
        0
      ]
    },
    {
      "id": "ef901f2b-97d5-4871-9784-ce27b87477bb",
      "name": "Salary to string",
      "type": "n8n-nodes-base.code",
      "position": [
        860,
        0
      ]
    },
    {
      "id": "2e523a11-24e7-4118-83f4-a7d9409aa8a8",
      "name": "Table to a single message",
      "type": "n8n-nodes-base.code",
      "position": [
        1600,
        0
      ]
    },
    {
      "id": "284977c4-459e-46ea-a8b4-ef80549d8bbc",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1080,
        -140
      ],
      "parameters": {
        "width": 520,
        "height": 320,
        "content": "## Overview\nPurpose: This workflow fetches remote job listings from RemoteOK, cleans and formats the data, stores it in Airtable, and optionally sends a message via Telegram."
      }
    },
    {
      "id": "74e3ac25-3492-460e-bcb1-98981b0f46a1",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -520,
        -240
      ],
      "parameters": {
        "width": 300,
        "height": 440,
        "content": "## Schedule Trigger\n**Purpose**: Triggers the workflow at regular intervals to fetch the latest job listings."
      }
    },
    {
      "id": "3c54cd0a-8096-45db-85b3-7aa0880a2744",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -200,
        -240
      ],
      "parameters": {
        "width": 340,
        "height": 440,
        "content": "## Remote ok (HTTP Request)\n**Purpose**: Sends a GET request to https://remoteok.com/api to retrieve job listings.\n\n"
      }
    },
    {
      "id": "8026a2b1-eeee-460e-b5dc-f5c377d15316",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        160,
        -240
      ],
      "parameters": {
        "width": 1800,
        "height": 440,
        "content": "## Cleaning of texts\n**Purpose**: Cleans HTML tags and special characters from the job descriptions for better readability.\nAttempts to parse cleaned job description JSON safely, handling errors grace"
      }
    }
  ],
  "connections": {
    "Code5": {
      "main": [
        [
          {
            "node": "RemoteOK Jobs",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Remote ok": {
      "main": [
        [
          {
            "node": "Cleaning the received input",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Text-clean": {
      "main": [
        [
          {
            "node": "Salary to string",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Clean text1": {
      "main": [
        [
          {
            "node": "Text-clean",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "RemoteOK Jobs": {
      "main": [
        [
          {
            "node": "Table to a single message",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Salary to string": {
      "main": [
        [
          {
            "node": "Code5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Schedule Trigger": {
      "main": [
        [
          {
            "node": "Remote ok",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Table to a single message": {
      "main": [
        [
          {
            "node": "Telegram1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Cleaning the received input": {
      "main": [
        [
          {
            "node": "Clean text1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}