{
  "name": "Create PDF from images for free via Google Slides and Google Drive",
  "nodes": [
    {
      "id": "65d94bcc-e528-46a5-be6e-393a06ec620c",
      "name": "When clicking ‘Test workflow’",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -360,
        200
      ]
    },
    {
      "id": "36d5034f-6d1a-4619-a009-f6e2e30ec7a5",
      "name": "Sort by Created Date",
      "type": "n8n-nodes-base.sort",
      "position": [
        1140,
        200
      ]
    },
    {
      "id": "bc3a71c4-e073-4ef0-b74e-62e6005ee3c7",
      "name": "Loop Over Items",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        1360,
        200
      ]
    },
    {
      "id": "5698ad5a-7635-423c-a63c-a1d5266551ea",
      "name": "Update Image Permissions",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        1800,
        200
      ]
    },
    {
      "id": "7862bbd3-2300-4dd5-9ad9-02c81d608f3d",
      "name": "Convert slides to PDF",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        2020,
        0
      ]
    },
    {
      "id": "07e69808-f221-4424-838c-e1d53ce7ca0c",
      "name": "Limit: 1Page",
      "type": "n8n-nodes-base.limit",
      "position": [
        1580,
        0
      ]
    },
    {
      "id": "0028a6c9-460b-4ee9-968c-f46b6102fd44",
      "name": "Filter: Only Images",
      "type": "n8n-nodes-base.filter",
      "position": [
        920,
        200
      ]
    },
    {
      "id": "9d0898a8-4f62-4c03-bf9f-5f62177854a7",
      "name": "Upload Final PDF File",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        2240,
        0
      ]
    },
    {
      "id": "0d51a9da-0a99-47ab-a356-fd084d3d3a58",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -820,
        -240
      ],
      "parameters": {
        "width": 400,
        "height": 1020,
        "content": "## 📚 Create a PDF from Google Drive Images\n\nThis workflow takes all images from a Google Drive folder you specify, sorts them by creation date, and compiles them into a single PDF using a Google Slide"
      }
    },
    {
      "id": "478b42b2-ad5a-4e2d-bbe0-88f412cb57b2",
      "name": "Set Pdf File Name",
      "type": "n8n-nodes-base.set",
      "position": [
        -140,
        200
      ]
    },
    {
      "id": "eb4ef58f-77cd-408a-825a-720ced2a07f1",
      "name": "Delete First Empty Slide",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1800,
        0
      ]
    },
    {
      "id": "fccfdcd0-9407-45bb-9065-ba0d0d63b1a6",
      "name": "CopyPdfTemplate",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        80,
        200
      ]
    },
    {
      "id": "e9fb8627-1385-474c-badc-7aa1645a99da",
      "name": "Get Created Presentation",
      "type": "n8n-nodes-base.googleSlides",
      "position": [
        300,
        200
      ]
    },
    {
      "id": "c6429ca5-db95-4e33-b470-43a5df1feed3",
      "name": "Get Folder Id w Presentation",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        500,
        200
      ]
    },
    {
      "id": "bd8c64b0-f8a4-4bf6-bb3a-cabba5597fed",
      "name": "Get All Files From the Folder",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        700,
        200
      ]
    },
    {
      "id": "f1680bfa-8ce1-4b0e-af59-83332e9511a0",
      "name": "Create An Empty Slide",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1580,
        200
      ]
    },
    {
      "id": "0c883f43-b498-4da5-a5ee-ee44d11bb7f6",
      "name": "Add Image To The Slide",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        2020,
        280
      ]
    },
    {
      "id": "4ba1bd72-7097-4774-9ce6-a770d4e8cacc",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        20,
        -180
      ],
      "parameters": {
        "width": 440,
        "height": 620,
        "content": "## Configure Template & Image Folder\n\n⚙️ In the **'CopyPdfTemplate'** node configure:\n\n1.  **File -> From list:** Select your Google Slides template file. This will be the base for your PDF. If you wa"
      }
    },
    {
      "id": "e1e1bb1f-d73e-4dd5-b665-e669b5c343b1",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        860,
        -180
      ],
      "parameters": {
        "width": 420,
        "height": 600,
        "content": "## Image Filter Information\n\n🖼️ **Image Format Note** \n\nThis workflow is preset to find and process `.png` images from your Google Drive folder (using MIME type `image/png`).\n\nIf you're using other im"
      }
    },
    {
      "id": "ba71a7ef-5309-4eb9-9aa8-a0bf275127a7",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1320,
        500
      ],
      "parameters": {
        "width": 840,
        "height": 340,
        "content": "## How the Image-to-Slide Process Works\n\n🔄 **How Images Are Added to Slides** \n1.  The workflow fetches all images (that pass the filter) from your specified Google Drive folder.\n2.  It sorts these im"
      }
    }
  ],
  "connections": {
    "Limit: 1Page": {
      "main": [
        [
          {
            "node": "Delete First Empty Slide",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "CopyPdfTemplate": {
      "main": [
        [
          {
            "node": "Get Created Presentation",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Loop Over Items": {
      "main": [
        [
          {
            "node": "Limit: 1Page",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Create An Empty Slide",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set Pdf File Name": {
      "main": [
        [
          {
            "node": "CopyPdfTemplate",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Filter: Only Images": {
      "main": [
        [
          {
            "node": "Sort by Created Date",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Sort by Created Date": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Convert slides to PDF": {
      "main": [
        [
          {
            "node": "Upload Final PDF File",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Create An Empty Slide": {
      "main": [
        [
          {
            "node": "Update Image Permissions",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Add Image To The Slide": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Delete First Empty Slide": {
      "main": [
        [
          {
            "node": "Convert slides to PDF",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Created Presentation": {
      "main": [
        [
          {
            "node": "Get Folder Id w Presentation",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Update Image Permissions": {
      "main": [
        [
          {
            "node": "Add Image To The Slide",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Folder Id w Presentation": {
      "main": [
        [
          {
            "node": "Get All Files From the Folder",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get All Files From the Folder": {
      "main": [
        [
          {
            "node": "Filter: Only Images",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "When clicking ‘Test workflow’": {
      "main": [
        [
          {
            "node": "Set Pdf File Name",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}