{
  "name": "Automate LinkedIn job postings from Recrutei ATS with GPT-4o content generation",
  "nodes": [
    {
      "id": "ff66c07a-7c70-4b1f-9b08-439051889d16",
      "name": "Recrutei Webhook Trigger",
      "type": "n8n-nodes-base.webhook",
      "position": [
        -64,
        0
      ]
    },
    {
      "id": "70282417-5778-4e57-871d-5efef5bc21e0",
      "name": "Clean and Standardize Job Data",
      "type": "n8n-nodes-base.code",
      "position": [
        144,
        0
      ]
    },
    {
      "id": "52cfd7ce-57f0-4e30-af4c-ab03c93ecc8f",
      "name": "Publish LinkedIn Post",
      "type": "n8n-nodes-base.linkedIn",
      "position": [
        1312,
        0
      ]
    },
    {
      "id": "db5dfcdf-471c-45e0-b13b-47046e5a57cf",
      "name": "Google Sheets Logging",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1520,
        0
      ]
    },
    {
      "id": "434cd22e-0acd-412e-bcd4-d99094f93022",
      "name": "Transform Data to AI Prompt",
      "type": "n8n-nodes-base.code",
      "position": [
        464,
        0
      ]
    },
    {
      "id": "9c8b68f8-1b0d-44ba-945a-35cc1e3c6798",
      "name": "Sticky Note - Trigger",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -128,
        -96
      ],
      "parameters": {
        "width": 448,
        "height": 320,
        "content": "This is the **entry point** of the workflow. It listens for a POST request from the Recrutei ATS whenever a new job is created/published. You must copy the Webhook URL and configure it in Recrutei."
      }
    },
    {
      "id": "574549fd-e687-4380-8be3-25d54999baf1",
      "name": "Sticky Note - Data Pre-processing",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        336,
        -96
      ],
      "parameters": {
        "width": 400,
        "height": 320,
        "content": "Uses two Code nodes to clean the raw data (Code 1: Boolean conversion) and structure it (Code 2: Markdown prompt generation) for optimal AI interpretation."
      }
    },
    {
      "id": "ee3012c2-007d-4a0f-a4de-7d2a34939838",
      "name": "Sticky Note - AI Generation",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        752,
        -96
      ],
      "parameters": {
        "width": 448,
        "height": 320,
        "content": "The **OpenAI model** acts as a professional copywriter. It takes the structured prompt and generates an engaging, marketing-focused text ready for LinkedIn."
      }
    },
    {
      "id": "2130e4ef-7f40-4906-b432-ef5867203a22",
      "name": "AI Content Generator",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        864,
        0
      ]
    },
    {
      "id": "bb6ce9b4-e5c1-4de1-8b66-c76347a26dbf",
      "name": "Sticky Note - Publish & Log",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1216,
        -96
      ],
      "parameters": {
        "width": 512,
        "height": 320,
        "content": "The final content is published on LinkedIn. Finally, the job title and publishing status are logged in the **Google Sheets Logging** node for internal audit."
      }
    }
  ],
  "connections": {
    "AI Content Generator": {
      "main": [
        [
          {
            "node": "Publish LinkedIn Post",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Publish LinkedIn Post": {
      "main": [
        [
          {
            "node": "Google Sheets Logging",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Recrutei Webhook Trigger": {
      "main": [
        [
          {
            "node": "Clean and Standardize Job Data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Transform Data to AI Prompt": {
      "main": [
        [
          {
            "node": "AI Content Generator",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Clean and Standardize Job Data": {
      "main": [
        [
          {
            "node": "Transform Data to AI Prompt",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}