GIPOD History: Antwerp roadworks and date changes
Pricing
Pay per usage
GIPOD History: Antwerp roadworks and date changes
GIPOD roadworks and street occupations around an Antwerp address, with first and last seen dates and every change to start, end or status since a given day. One result per work. Suggested price: $0.005 per work returned.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
Senne Bels
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Features
Share
GIPOD is the Flemish register of roadworks and other uses of the public road (markets, events, building sites, parking bans). Its map service answers with what is registered now. This actor answers with what was registered around an address over time: every work and street occupation within up to 1000 m, when it was first and last seen, and every change to its published start date, end date or status since a day you pick.
The data comes from the Stadiq GIPOD archive, which has read GIPOD daily since 11 April 2026.
Input
| Field | Required | Description |
|---|---|---|
address | one of address or lat/lng | A street address in Belgium, e.g. Lange Lozanastraat 142, 2018 Antwerpen. |
lat, lng | one of address or lat/lng | WGS84 coordinates. Used instead of the address when both are given. |
radiusMeters | no | Radius around the point, 1 to 1000. Default 500. |
since | no | First day to include, YYYY-MM-DD. Default: the start of the archive. |
until | no | Last day to include, YYYY-MM-DD. Default: today. |
maxResults | no | Stop after this many works. Default 200. |
Output
One dataset item per work, nearest first:
{"gipod_id": "12350353","title": "Gemengde markt\nDesguinlei","kind": "occupation","status": { "published": "Lopende", "mapped": "unknown" },"first_seen": "2026-04-11","last_seen": "2026-10-24","days_seen": 194,"start": "2026-10-23T09:30:00Z","end": "2027-04-23T14:30:00Z","revisions": [{ "seen_at": "2026-09-04", "field": "end", "from": "2027-02-26T15:30:00Z", "to": "2027-03-05T15:30:00Z" },{ "seen_at": "2026-09-06", "field": "start", "from": "2026-09-04T09:30:00Z", "to": "2026-09-11T09:30:00Z" }],"revision_count": 15,"distance_m": 777,"lat": 51.197357115,"lng": 4.394453540000001,"query": { "lat": 51.1931, "lng": 4.4033, "address": null, "radius_m": 1000, "since": "2026-09-01", "until": "2026-11-08" },"coverage_state": "gaps","source": "GIPOD","licence": "Modellicentie Gratis Hergebruik Vlaanderen v1.0","attribution": "Bevat overheidsinformatie, verkregen onder de Modellicentie Gratis Hergebruik Vlaanderen v1.0 (bron: Digitaal Vlaanderen, GIPOD)."}
(Abridged: this market had 15 revisions in the window; two are shown.)
kindisworkfor groundworks andoccupationfor other uses of the street, such as a weekly market.status.publishedis GIPOD's own status in Dutch.status.mappedis that status and the dates mapped toactive,planned,endedorunknownfor today. An occupation inside its date window isunknown, neveractive.startandendare as published in the latest capture, in UTC.revisionslists every change to start, end or status seen inside your window, oldest first. Weekly markets roll their dates forward every week, and that shows up here.
The run also writes a COVERAGE record to the default key-value store. Read it before you read the dataset.
Coverage and its limits
- Area: Antwerp and 15 km around its centre (51.2194, 4.4025). A point whose radius reaches past that circle fails with
outside_archive_areainstead of returning an empty list. - Time: from 11 April 2026. Nothing before the first capture is known;
COVERAGE.coverage.window_starts_before_archivesays when your window starts earlier. - Missing days: the archive has gaps.
COVERAGE.coverage.missing_dayslists every day in your window that was not captured. A work can have changed on a missing day; the change then shows on the next captured day. - Truncated reads: GIPOD caps a single read, so on some days it returned only part of the register.
partial_capture_dayscounts them. A work can be absent on such a day without having ended. - Live check: each run also reads GIPOD live for the same point.
live_gipod.not_yet_archivedcounts works GIPOD lists now that the archive has not captured. - Unavailable is not empty: if no day of your window was captured, the run fails with a message and charges nothing for results. It never reports a quiet street it did not look at.
Licence and attribution
The data is public-sector information from GIPOD, published by Digitaal Vlaanderen under the Modellicentie Gratis Hergebruik Vlaanderen v1.0. Commercial reuse is allowed with attribution. Every item carries the attribution text; show it wherever you republish the data.
Pricing
Pay per event: one work-returned event per dataset item. Suggested price: $0.005 per work. For scale: on 8 November 2026 GIPOD listed 18 registrations within 500 m of the Desguinlei and 77 within 1000 m. The run stops when your spending limit is reached and pushes nothing it cannot charge for.
Publishing (for the actor owner)
- Create or sign in to an Apify account.
npx apify-cli loginand paste the API token from Apify Console, Settings, API & Integrations.- Store the Stadiq API key as a CLI secret (a key on the
apiplan, created at https://stadiq.app/developers):npx apify-cli secrets add stadiqApiKey sq_live_….actor/actor.jsonmaps it to theSTADIQ_API_KEYenvironment variable, andapify pushstores it on the actor as a secret value that users cannot read. - From this directory:
npx apify-cli push. - In Apify Console, open the actor, Publication: set the pricing model to pay per event, add the event
work-returned(title "Work returned", description "One GIPOD work in the dataset") at the price you choose, fill in the Store details, and publish. - Run it once with the prefilled input and check the dataset and the
COVERAGErecord.
To rotate the key: npx apify-cli secrets add stadiqApiKey <new key> (remove the old one first with secrets rm), then npx apify-cli push again, or edit the secret under Source, Environment variables in Console.
Local test
npm installnpm test
The test runs the actor's run() against a mocked Stadiq API with a fake Apify Actor, and checks paging, one charge per pushed item, the spending-limit stop and the unavailable case.