{
  "name": "Track the Dutch vacancy rate per sector in Google Sheets every quarter",
  "nodes": [
    {
      "name": "About this template",
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "parameters": {
        "content": "## Dutch vacancy rate per sector in Google Sheets, every quarter\n\nStatistics Netherlands (CBS) publishes the number of open vacancies per 1,000 jobs for every sector each quarter. This workflow fetches the newest quarter through SourceGeek's CBS data and appends one row per sector to your Google Sheet, so you can chart where hiring is tightest.\n\nSet the Google Sheet in the last node: its first row needs the columns Quarter, Sector and Vacancies per 1,000 jobs. To track another CBS table, look it up with the **Search CBS tables** action and change the table id.\n\nCredits: none for CBS data.\n\n### Set up\n1. Install the community node **n8n-nodes-sourcegeek** (Settings → Community nodes).\n2. In SourceGeek, create an API key under Settings → Connected apps → API keys, and add it as a **SourceGeek API** credential. No account yet? [Start a free 14-day trial](https://chat.sourcegeek.com/sign-up?utm_source=n8n&utm_medium=template&utm_campaign=n8n_templates&utm_content=cbs-vacancy-rate-google-sheets).\n\nMore SourceGeek templates: https://www.sourcegeek.com/en/templates#cbs-vacancy-rate-google-sheets",
        "height": 520,
        "width": 440,
        "color": 5
      },
      "id": "af594a03-c3fe-4072-ad25-f44eaa9d0c2d",
      "position": [
        0,
        120
      ]
    },
    {
      "name": "Each quarter",
      "type": "n8n-nodes-base.scheduleTrigger",
      "typeVersion": 1.2,
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "cronExpression",
              "expression": "0 8 1 2,5,8,11 *"
            }
          ]
        }
      },
      "id": "98d87f0c-c014-4ea7-abe2-0e151d9d2fda",
      "position": [
        520,
        300
      ]
    },
    {
      "name": "Fetch the vacancy rate",
      "type": "n8n-nodes-sourcegeek.sourcegeek",
      "typeVersion": 2,
      "parameters": {
        "resource": "statistics",
        "operation": "cbs_query_data",
        "tableId": "80567ned",
        "additionalFields": {
          "latestPeriods": 1,
          "topics": "M002041"
        }
      },
      "id": "1929a134-37e3-4dc9-a563-e7941828ac91",
      "position": [
        760,
        300
      ]
    },
    {
      "name": "One row per sector",
      "type": "n8n-nodes-base.splitOut",
      "typeVersion": 1,
      "parameters": {
        "fieldToSplitOut": "rows",
        "options": {}
      },
      "id": "b6398dc1-a35f-4892-ab2e-8dc753804ecd",
      "position": [
        1000,
        300
      ]
    },
    {
      "name": "Row",
      "type": "n8n-nodes-base.set",
      "typeVersion": 3.4,
      "parameters": {
        "assignments": {
          "assignments": [
            {
              "id": "3349bcf0-3391-49b6-a246-f0e52f88e573",
              "name": "Quarter",
              "value": "={{ $json.Perioden }}",
              "type": "string"
            },
            {
              "id": "6048eff8-d7bf-4484-ad44-885821e80fdf",
              "name": "Sector",
              "value": "={{ $json.SBI2008 }}",
              "type": "string"
            },
            {
              "id": "897f3a2d-ca0e-4fc6-af88-c3fa71114d5f",
              "name": "Vacancies per 1,000 jobs",
              "value": "={{ $json.M002041 }}",
              "type": "number"
            }
          ]
        },
        "options": {}
      },
      "id": "ddab590c-b462-4fb4-aecb-6d57fb649849",
      "position": [
        1240,
        300
      ]
    },
    {
      "name": "Add to Google Sheets",
      "type": "n8n-nodes-base.googleSheets",
      "typeVersion": 4.5,
      "parameters": {
        "operation": "append",
        "documentId": {
          "__rl": true,
          "value": "",
          "mode": "url"
        },
        "sheetName": {
          "__rl": true,
          "value": "Vacancy rate",
          "mode": "name"
        },
        "columns": {
          "mappingMode": "autoMapInputData",
          "value": {},
          "matchingColumns": [],
          "schema": []
        },
        "options": {}
      },
      "id": "9b61b755-7783-46f2-a19e-2efee0122d16",
      "position": [
        1480,
        300
      ]
    }
  ],
  "pinData": {},
  "connections": {
    "Each quarter": {
      "main": [
        [
          {
            "node": "Fetch the vacancy rate",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Fetch the vacancy rate": {
      "main": [
        [
          {
            "node": "One row per sector",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "One row per sector": {
      "main": [
        [
          {
            "node": "Row",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Row": {
      "main": [
        [
          {
            "node": "Add to Google Sheets",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "active": false,
  "settings": {
    "executionOrder": "v1"
  },
  "meta": {
    "templateCredsSetupCompleted": false
  },
  "tags": []
}
