{
  "name": "Create AI FAQ articles from Slack threads into Notion and Zendesk",
  "nodes": [
    {
      "id": "e1291817-3be3-4298-a76c-5c7d97dddcd7",
      "name": "Slack Trigger - :book: Reaction",
      "type": "n8n-nodes-base.slackTrigger",
      "position": [
        -1616,
        96
      ]
    },
    {
      "id": "f18e3bd3-b4fa-4e9d-9e20-bdc692b7be58",
      "name": "IF - :book: Reaction Check",
      "type": "n8n-nodes-base.if",
      "position": [
        -1168,
        96
      ]
    },
    {
      "id": "54cc93df-d45a-4847-bf2b-f920cfed9e3c",
      "name": "Slack - Get Parent Message",
      "type": "n8n-nodes-base.slack",
      "position": [
        -944,
        96
      ]
    },
    {
      "id": "2fe8d288-e1f7-48cf-acbf-455c3c16fccc",
      "name": "Slack - Get Thread",
      "type": "n8n-nodes-base.slack",
      "position": [
        -720,
        96
      ]
    },
    {
      "id": "f54db11a-baea-4ccd-aa9c-8d7729650e98",
      "name": "Code - Format Conversation",
      "type": "n8n-nodes-base.code",
      "position": [
        -496,
        96
      ]
    },
    {
      "id": "97100810-482d-43f6-afdd-97a7424f4faa",
      "name": "OpenAI - Generate FAQ",
      "type": "n8n-nodes-base.openAi",
      "position": [
        -272,
        96
      ]
    },
    {
      "id": "945df56b-50de-4287-bc32-a3dbcb0b9a45",
      "name": "Code - Prepare Notion Data",
      "type": "n8n-nodes-base.code",
      "position": [
        -48,
        96
      ]
    },
    {
      "id": "bdcfb4e4-ba08-4a3d-9c48-c24f266852c2",
      "name": "Notion - Create FAQ Page",
      "type": "n8n-nodes-base.notion",
      "position": [
        176,
        96
      ]
    },
    {
      "id": "39fd6ca0-6ead-4238-b21a-2d12731d3814",
      "name": "Zendesk - Create Article (Optional)",
      "type": "n8n-nodes-base.zendesk",
      "position": [
        400,
        96
      ]
    },
    {
      "id": "2d0baad4-acf8-4cb4-aefe-498dd0d3d2c4",
      "name": "Slack - Notify Completion",
      "type": "n8n-nodes-base.slack",
      "position": [
        624,
        96
      ]
    },
    {
      "id": "4c255841-5341-4b48-a29e-8d8c9dcd4db5",
      "name": "Workflow Configuration1",
      "type": "n8n-nodes-base.set",
      "position": [
        -1392,
        96
      ]
    },
    {
      "id": "62697e20-3024-42f9-828c-67d4e5eacb2b",
      "name": "Workflow Overview",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2304,
        -512
      ],
      "parameters": {
        "width": 460,
        "height": 552,
        "content": "## How it works\nWhen someone reacts to a Slack thread with 📚, this workflow captures the entire conversation, uses AI to transform it into a well-formatted FAQ article, then saves it to your Notion kn"
      }
    },
    {
      "id": "97600c4d-de5f-4cbd-a4ca-ccf945970e18",
      "name": "Group 1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1680,
        -32
      ],
      "parameters": {
        "width": 664,
        "height": 296,
        "content": "## Trigger & Validation\nDetects 📚 reaction on messages and validates it's a proper message (not a file or other item type)."
      }
    },
    {
      "id": "5beb1268-63de-4bc7-8ae2-8273f7ce4671",
      "name": "Group 2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1008,
        -32
      ],
      "parameters": {
        "width": 432,
        "height": 296,
        "content": "## Conversation Retrieval\nFetches the parent message and all thread replies to capture the full Q&A context."
      }
    },
    {
      "id": "8f80973d-8e2d-42ca-af80-8822021ae098",
      "name": "Group 3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -560,
        -32
      ],
      "parameters": {
        "width": 656,
        "height": 296,
        "content": "## AI Processing\nFormats the conversation into Q&A structure, sends to OpenAI for FAQ generation, then prepares structured data for storage."
      }
    },
    {
      "id": "c4bbedbb-b7d4-4200-9157-1f5366c3cdfb",
      "name": "Group 4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        112,
        -32
      ],
      "parameters": {
        "width": 648,
        "height": 296,
        "content": "## Storage & Notification\nSaves the FAQ to Notion (required) and Zendesk (optional), then notifies the Slack thread with links to the created articles."
      }
    }
  ],
  "connections": {
    "Slack - Get Thread": {
      "main": [
        [
          {
            "node": "Code - Format Conversation",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI - Generate FAQ": {
      "main": [
        [
          {
            "node": "Code - Prepare Notion Data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Workflow Configuration1": {
      "main": [
        [
          {
            "node": "IF - :book: Reaction Check",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Notion - Create FAQ Page": {
      "main": [
        [
          {
            "node": "Zendesk - Create Article (Optional)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Code - Format Conversation": {
      "main": [
        [
          {
            "node": "OpenAI - Generate FAQ",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Code - Prepare Notion Data": {
      "main": [
        [
          {
            "node": "Notion - Create FAQ Page",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "IF - :book: Reaction Check": {
      "main": [
        [
          {
            "node": "Slack - Get Parent Message",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Slack - Get Parent Message": {
      "main": [
        [
          {
            "node": "Slack - Get Thread",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Slack Trigger - :book: Reaction": {
      "main": [
        [
          {
            "node": "Workflow Configuration1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Zendesk - Create Article (Optional)": {
      "main": [
        [
          {
            "node": "Slack - Notify Completion",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}