Apier

Use case

Automate Norwegian compliance deadlines with n8n

Norwegian businesses face a deadline-heavy regulatory calendar — MVA-melding every two months, A-melding monthly, årsregnskap yearly, plus the Altinn 2 → Altinn 3 cutover on 2026-06-19 (Europe/Oslo). This guide ships an n8n workflow that polls Apier's zero-auth public sandbox once a day and drops a Slack alert into the channel of your choice whenever a deadline falls inside the configured window.

What this workflow does

An n8n cron triggers daily at 09:00 Europe/Oslo, calls the Apier sandbox to fetch the upcoming Norwegian compliance deadlines for the fixture organisation 999999999, filters the response to anything due in the next seven days, and posts a Slack message per matching deadline. Everything runs server- side inside n8n — no API key, no human in the loop, no polling logic to maintain.

The same shape works against your real organisation once you've issued an Apier API key (see the “Pointing it at your real organisation” section below). The sandbox variant exists so the first test costs you zero setup time — you can import, click Activate, and confirm the Slack channel receives the expected payload before introducing real credentials.

Workflow at a glance

Five nodes wired top-to-bottom in n8n's flow editor:

Cron trigger (09:00 Europe/Oslo)
      │
      ▼
HTTP request — GET sandbox deadlines
      │
      ▼
Split Out — data.deadlines[]
      │
      ▼
Filter — within 7 days
      │
      ▼
Slack — post alert

The downloadable workflow JSON wires these five nodes together with the Schedule Trigger, HTTP Request, Split Out, IF (Filter), and Slack node types n8n ships out of the box. No custom nodes, no community add-ons. The Split Out node fans the wrapped `data.deadlines[]` response array into individual n8n items, so the Filter + Slack nodes operate on one deadline at a time.

Step by step

  1. 1. Spin up an n8n instance. Either use the hosted n8n.cloud free tier or self-host the open-source build. The workflow below has zero dependencies on paid features.
  2. 2. Import the workflow JSON. Download /examples/n8n-workflow-deadlines-slack.json and import it from n8n's Workflows menu (Import from File). All five nodes appear pre-wired and pre-configured.
  3. 3. Confirm the HTTP target. The HTTP Request node already points at:https://apier.no/api/v1/sandbox/public/company/999999999/deadlinesThis is Apier's zero-auth public sandbox — no API key, no rate limit headache for a daily cron. The fixture organisation 999999999 is the only value the public sandbox accepts; deadlines surfaced are realistic Norwegian regulatory dates, not synthetic.
  4. 4. Add YOUR Slack webhook. Replace the placeholder Slack webhook with your real Incoming Webhook URL. The placeholder in the imported workflow is:https://hooks.slack.com/services/REPLACE-ME/REPLACE-ME/REPLACE-MECreate an Incoming Webhook for your channel of choice at api.slack.com/messaging/webhooks.
  5. 5. Activate the workflow. Flip the workflow toggle to Active. The cron triggers daily at 09:00 Europe/Oslo. You will get a Slack message for every deadline (MVA-melding, A-melding, årsregnskap, Aksjeloven thresholds, etc.) that falls inside the seven-day window the Filter node enforces. Widen or narrow the window by editing the IF-node condition.

Pointing it at your real organisation

When you're ready to monitor a real company, swap the sandbox URL for the authenticated endpoint:

https://apier.no/api/v1/company/{your-org}/deadlines

Add an Authorization: Bearer YOUR_API_KEY header to the HTTP Request node. The response shape is the same as the sandbox, so the Filter and Slack nodes need no changes. See the /pricing page for the API-key flow.

Make.com variation

The same flow maps one-to-one onto Make.com modules. There is no separate Make.com workflow file in this guide — the mapping below is enough to reconstruct the scenario in Make's visual editor in under five minutes.

Why this matters now

Altinn 2 shuts down on 2026-06-19 (Europe/Oslo). Every integration still calling the legacy surface — including quietly-working cron jobs nobody's checked in months — stops working that day. A read-only deadline poll like the one above is a useful canary: if it keeps surfacing the right Norwegian deadlines through the cutover, your downstream workflows are still reading from a working compliance source.

See the Altinn 3 migration use case for the broader migration picture (English) or /altinn3-overgang for the Norwegian bokmål version.

Related