{
  "name": "Google Play Store and SerpApi app rank & rating monitor",
  "nodes": [
    {
      "id": "663b52e3-3baa-40b9-b236-7a2b9bac0f1f",
      "name": "Update Rank & Rating Log",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        820,
        40
      ]
    },
    {
      "id": "c2840876-46bb-4355-9e89-b90743a5ed4c",
      "name": "Wait",
      "type": "n8n-nodes-base.wait",
      "position": [
        1260,
        115
      ]
    },
    {
      "id": "cd4f9a3b-2ef8-4d7d-b016-887a81eda107",
      "name": "Schedule Trigger",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -280,
        115
      ]
    },
    {
      "id": "d8f9a1e2-8686-4aef-9ab4-49e694ff494a",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -320,
        -180
      ],
      "parameters": {
        "width": 200,
        "height": 460,
        "content": "## Schedule\n\nConfigured to run at 10 AM UTC every day. Adjust as needed or trigger it manually."
      }
    },
    {
      "id": "f6ce04bc-263c-44c6-b650-1b6947c1a1e4",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -100,
        -180
      ],
      "parameters": {
        "width": 400,
        "height": 460,
        "content": "## Get Keywords and Titles to Match\n\nReads your Google Sheet to fetch your keywords and app titles to match.\n\nThen loops over each row."
      }
    },
    {
      "id": "2c3c0cbb-ff02-488d-b81b-cfac44bcea2a",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        540,
        -180
      ],
      "parameters": {
        "width": 220,
        "height": 460,
        "content": "## Parse Rank & Rating\n\nCode to find and parse target app's rank and rating. Assigns \"N/A\" if an app title is not found in the results."
      }
    },
    {
      "id": "52f66150-7693-4a10-9751-f753a97de6d1",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        320,
        -180
      ],
      "parameters": {
        "width": 200,
        "height": 460,
        "content": "## Search Google Play\n\nSearches keyword in SerpApi's Google Play Store API."
      }
    },
    {
      "id": "f4ea5441-9de0-42a2-9dea-aa545c23f18e",
      "name": "Get Keywords and Titles to Match",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        -60,
        115
      ]
    },
    {
      "id": "68f1519c-061d-4a95-8d45-f79ff7082ec6",
      "name": "Loop Over Keywords",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        160,
        120
      ]
    },
    {
      "id": "7c9a95f8-5e5e-44e3-a6ec-9eeb014ec3c7",
      "name": "Search Google Play",
      "type": "n8n-nodes-serpapi.serpApi",
      "position": [
        380,
        40
      ]
    },
    {
      "id": "ab545189-47c1-4074-ba76-020667b0101c",
      "name": "Parse Rank & Rating for Target App",
      "type": "n8n-nodes-base.code",
      "position": [
        600,
        40
      ]
    },
    {
      "id": "f92cd971-38f9-4878-896b-a0781fee0f60",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        780,
        -460
      ],
      "parameters": {
        "width": 440,
        "height": 740,
        "content": "## Update Google Sheet\n\nLogs results to results log and updates last run overview sheet.\n\nAdd your own Google Sheet here.\n\nIf the mappings get wiped when you add your Google Sheet, here they are:\n\nsea"
      }
    },
    {
      "id": "3ed6ab74-e07f-4b8c-a57b-6f918204bba9",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1240,
        -180
      ],
      "parameters": {
        "width": 200,
        "height": 460,
        "content": "## Delay\n\nWait 4 seconds before going to next row to not hit Google Sheets API's per minute quota limit. You can remove/adjust this if you have a a higher quota limit on the Google Sheets API. "
      }
    },
    {
      "id": "958079ab-11a4-464b-8a7d-fc832083bf5e",
      "name": "Sticky Note6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -860,
        -420
      ],
      "parameters": {
        "width": 520,
        "height": 1040,
        "content": "## Google Play Store App Rank and Rating Monitoring\n\n### What and who this is for\n\nThis workflow will be useful for anyone looking to do SEO tracking on the Google Play Store. It automates checking Go"
      }
    },
    {
      "id": "dd0c2409-a2d4-49d4-81eb-9124d7628957",
      "name": "Update Latest Run",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1040,
        40
      ]
    }
  ],
  "connections": {
    "Wait": {
      "main": [
        [
          {
            "node": "Loop Over Keywords",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Schedule Trigger": {
      "main": [
        [
          {
            "node": "Get Keywords and Titles to Match",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Update Latest Run": {
      "main": [
        [
          {
            "node": "Wait",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Loop Over Keywords": {
      "main": [
        [],
        [
          {
            "node": "Search Google Play",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Search Google Play": {
      "main": [
        [
          {
            "node": "Parse Rank & Rating for Target App",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Update Rank & Rating Log": {
      "main": [
        [
          {
            "node": "Update Latest Run",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Keywords and Titles to Match": {
      "main": [
        [
          {
            "node": "Loop Over Keywords",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Parse Rank & Rating for Target App": {
      "main": [
        [
          {
            "node": "Update Rank & Rating Log",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}