{
  "name": "Extract business card data from Telegram to Google Sheets with OpenRouter AI Vision",
  "nodes": [
    {
      "id": "beaba1cd-076a-4223-b481-4d0dd7474590",
      "name": "Add to Google Sheet",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        448,
        -64
      ]
    },
    {
      "id": "e804b404-71ad-4a9b-a554-48e2515e7bc8",
      "name": "Check Input Type",
      "type": "n8n-nodes-base.if",
      "position": [
        -80,
        -48
      ]
    },
    {
      "id": "7758173c-f34e-45d9-9230-499aacefd109",
      "name": "AI Vision Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        128,
        -64
      ]
    },
    {
      "id": "d274cf40-53c1-4c2a-a3cd-b51737c79a11",
      "name": "OpenAI Vision Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
      "position": [
        112,
        112
      ]
    },
    {
      "id": "ea82ce74-d4fe-406a-a60f-c870818fcec4",
      "name": "Ingredient Parser",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        288,
        112
      ]
    },
    {
      "id": "84e37cd2-6ffa-4b35-a8d4-fae8cb1f4d65",
      "name": "Telegram Trigger",
      "type": "n8n-nodes-base.telegramTrigger",
      "position": [
        -336,
        -48
      ]
    },
    {
      "id": "b5c11a80-b969-4af8-9473-e2da7850bb84",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -400,
        -272
      ],
      "parameters": {
        "width": null,
        "height": 384,
        "content": "## ①Send business card image\nSend a business card image to your Telegram bot"
      }
    },
    {
      "id": "c48693cf-60b6-4617-8ea6-0a56fd2fe6b6",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -144,
        -272
      ],
      "parameters": {
        "width": null,
        "height": 384,
        "content": "## ②Business Card Image Input Filter\nChecks if the incoming Telegram message contains an image or text"
      }
    },
    {
      "id": "b96a98b1-2fb9-4290-8aa1-f526f9d9f809",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        112,
        -272
      ],
      "parameters": {
        "width": 256,
        "height": 384,
        "content": "## ③Analyze business card image\nThe structured output is cleaned and standardized by the parser"
      }
    },
    {
      "id": "a4aad8f8-fa84-4c5c-8e16-52d3cfc2d010",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        384,
        -272
      ],
      "parameters": {
        "width": null,
        "height": 384,
        "content": "## ④Log the parsed business card details into Google Sheets\nGoogle Sheets node appends or updates the contact data automatically"
      }
    },
    {
      "id": "b02297b2-0cd1-4eee-86e0-e1a0d4c3de52",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        656,
        -432
      ],
      "parameters": {
        "width": 480,
        "height": 544,
        "content": "## Business Card OCR Auto-Logging (Telegram → AI → Google Sheets) \n\n**Description:**\nThis workflow automatically extracts structured contact information from business card images sent via Telegram and"
      }
    },
    {
      "id": "29c0d3aa-06b4-429a-bd5a-8d1b96c04356",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        656,
        112
      ],
      "parameters": {
        "width": 480,
        "height": 272,
        "content": "**Use Cases:**\n\n**💼Sales & CRM**:Automatically build and update your client database from received business cards\n\n**🏢Back Office & Admin**: Digitize incoming cards for unified company records\n\n**📧Mar"
      }
    }
  ],
  "connections": {
    "AI Vision Agent": {
      "main": [
        [
          {
            "node": "Add to Google Sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Check Input Type": {
      "main": [
        [
          {
            "node": "AI Vision Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Telegram Trigger": {
      "main": [
        [
          {
            "node": "Check Input Type",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Ingredient Parser": {
      "ai_outputParser": [
        [
          {
            "node": "AI Vision Agent",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Vision Model": {
      "ai_languageModel": [
        [
          {
            "node": "AI Vision Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    }
  }
}