{
  "nodes": [
    {
      "id": "c300a446-97ad-41f5-828c-1e36190c95a7",
      "name": "Sticky Note47",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -528,
        -384
      ],
      "parameters": {
        "color": 7,
        "width": 1248,
        "height": 928,
        "content": "# \ud83d\udccb Trello \u2192 Google Sheets Daily Task Status\n\nThis workflow **pulls all tasks from your Trello board** every day and logs them into a **Google Sheet**.  \nUse it to track project progress, due dates, and keep a daily snapshot of your board\u2019s status.\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "278bf0f3-664b-499d-99e7-d09a3c038001",
      "name": "Get Board2",
      "type": "n8n-nodes-base.trello",
      "position": [
        -464,
        32
      ],
      "parameters": {
        "id": {
          "__rl": true,
          "mode": "url",
          "value": "https://trello.com/b/DCpuJbnd/administrative-tasks"
        },
        "resource": "board",
        "operation": "get",
        "additionalFields": {}
      },
      "credentials": {
        "trelloApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "e5333e43-4869-4ead-920a-23793cc28841",
      "name": "Get Lists2",
      "type": "n8n-nodes-base.trello",
      "position": [
        -192,
        320
      ],
      "parameters": {
        "id": "={{ $json.id }}",
        "resource": "list",
        "operation": "getAll",
        "additionalFields": {}
      },
      "credentials": {
        "trelloApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "ddc9c771-822a-45e1-bddc-ce4a9b01c107",
      "name": "Get Cards2",
      "type": "n8n-nodes-base.trello",
      "position": [
        32,
        -112
      ],
      "parameters": {
        "id": "={{ $json.id }}",
        "resource": "list",
        "operation": "getCards",
        "additionalFields": {}
      },
      "credentials": {
        "trelloApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "6457eb1c-72a3-4785-a147-71c9e44a113b",
      "name": "Map Fields2",
      "type": "n8n-nodes-base.set",
      "position": [
        208,
        112
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "3c2613df-a000-4c8e-bd27-2aef696f5ced",
              "name": "Board Name",
              "type": "string",
              "value": "={{ $('Get Board2').item.json.name }}"
            },
            {
              "id": "e4048a3f-d352-4b1f-a76a-4fbf9b74b163",
              "name": "List Name",
              "type": "string",
              "value": "={{ $('Get Lists2').item.json.name }}"
            },
            {
              "id": "d0236a8a-8129-4370-b241-9e27adcb9952",
              "name": "Task Name",
              "type": "string",
              "value": "={{ $json.name }}"
            },
            {
              "id": "8b6b23c1-1661-4af7-b62d-4facaf0d2651",
              "name": "Task Description",
              "type": "string",
              "value": "={{ $json.desc }}"
            },
            {
              "id": "1bc7f7c2-9121-4059-81e3-7f6962e509cc",
              "name": "Due Date",
              "type": "string",
              "value": "={{ $json.badges.due.trim().substring(0, 10) }}"
            },
            {
              "id": "d6410de8-9d2f-4ef4-9e41-4f5eb6224534",
              "name": "url",
              "type": "string",
              "value": "={{ $json.url }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "49bc40cf-1fbc-40b5-bd15-3e17e2946335",
      "name": "Sticky Note49",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -256,
        96
      ],
      "parameters": {
        "color": 3,
        "width": 224,
        "height": 352,
        "content": "### 1\ufe0f\u20e3 Connect Trello (Developer API)\n1. Get your **API key**: https://trello.com/app-key  \n2. Generate a **token** (from the same page \u2192 **Token**)\n3. In n8n \u2192 **Credentials \u2192 New \u2192 Trello API**, paste **API Key** and **Token**, save.  "
      },
      "typeVersion": 1
    },
    {
      "id": "46f34cd4-b951-4fa7-a9b3-ac7c463d43a2",
      "name": "Merge1",
      "type": "n8n-nodes-base.merge",
      "position": [
        448,
        128
      ],
      "parameters": {
        "mode": "combine",
        "options": {},
        "combineBy": "combineAll"
      },
      "typeVersion": 3.2
    },
    {
      "id": "3bf7422f-6feb-493b-a854-285b9b808aaa",
      "name": "Today's Date1",
      "type": "n8n-nodes-base.code",
      "position": [
        464,
        -288
      ],
      "parameters": {
        "jsCode": "return [\n  {\n    json: {\n      badges: {\n        today: new Date().toISOString().split('T')[0]  \n      }\n    }\n  }\n];\n"
      },
      "typeVersion": 2
    },
    {
      "id": "52720a1e-00b0-48bf-bdf5-49fd05bbe529",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -976,
        -384
      ],
      "parameters": {
        "width": 400,
        "height": 928,
        "content": "\n## \u2699\ufe0f Setup Instructions\n\n### 1\ufe0f\u20e3 Connect Trello (Developer API)\n1. Get your **API key**: [Trello App Key](https://trello.com/app-key)  \n2. On the same page, generate a **Token** (click **Token**)  \n3. In **n8n** \u2192 **Credentials \u2192 New \u2192 Trello API**, paste your **API Key** + **Token**, then save.  \n4. Open each Trello node (**Get Board**, **Get Lists**, **Get Cards**) and select your Trello credential.  \n\n---\n\n## \ud83e\udde0 How It Works\n- **Schedule Trigger**: Runs daily (can be customized).  \n- **Get Board \u2192 Get Lists \u2192 Get Cards**: Pulls every task, its list, due date, and description.  \n- **Map Fields**: Normalizes the data (board name, list name, task name, description, due date, URL).  \n- **Today's Date Node**: Adds a timestamp column so each run is logged.  \n- **Google Sheets (Append)**: Appends all task rows into a sheet \u2192 creating a **daily history log**.\n\n---\n\n## \ud83d\udcec Contact\nNeed help customizing this (e.g., filtering by list, or sending reports by email/Slack)?  \n\n\ud83d\udce7 **rbreen@ynteractive.com**  \n\ud83d\udd17 **[Robert Breen](https://www.linkedin.com/in/robert-breen-29429625/)**  \n\ud83c\udf10 **[ynteractive.com](https://ynteractive.com)**\n"
      },
      "typeVersion": 1
    },
    {
      "id": "c3c92749-1cee-49b7-beed-85e9a6ca2f43",
      "name": "Schedule Trigger",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -416,
        -240
      ],
      "parameters": {
        "rule": {
          "interval": [
            {}
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "3801cad5-5dc9-4bda-8c50-c2021b5d75ef",
      "name": "Daily Progress to Sheet",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        464,
        368
      ],
      "parameters": {
        "columns": {
          "value": {
            "url": "={{ $json.url }}",
            "Date": "={{ $('Today\\'s Date1').item.json.badges.today }}",
            "Due Date": "={{ $json['Due Date'] }}",
            "List Name": "={{ $json['List Name'] }}",
            "Task Name": "={{ $json['Task Name'] }}",
            "Task Description": "={{ $json['Task Description'] }}"
          },
          "schema": [
            {
              "id": "Date",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Date",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "List Name",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "List Name",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Task Name",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Task Name",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Task Description",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Task Description",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Due Date",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Due Date",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "url",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "url",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "append",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1yAdFAsq38OTtZ52jJV2m9LpzGQH-PQmCW-ZPPBF3AAg/edit#gid=0",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1yAdFAsq38OTtZ52jJV2m9LpzGQH-PQmCW-ZPPBF3AAg",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1yAdFAsq38OTtZ52jJV2m9LpzGQH-PQmCW-ZPPBF3AAg/edit?usp=drivesdk",
          "cachedResultName": "Trello Progress"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.7
    }
  ],
  "connections": {
    "Merge1": {
      "main": [
        [
          {
            "node": "Daily Progress to Sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Board2": {
      "main": [
        [
          {
            "node": "Get Lists2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Cards2": {
      "main": [
        [
          {
            "node": "Map Fields2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Lists2": {
      "main": [
        [
          {
            "node": "Get Cards2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Map Fields2": {
      "main": [
        [
          {
            "node": "Merge1",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Today's Date1": {
      "main": [
        [
          {
            "node": "Merge1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Schedule Trigger": {
      "main": [
        [
          {
            "node": "Get Board2",
            "type": "main",
            "index": 0
          },
          {
            "node": "Today's Date1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}