GET /curated/datasets
List all curated (scraped) datasets with content hashes and staleness info.
stale
optional
Filter by stale=true for datasets needing refresh
| Name | Required | Default | Description |
|---|---|---|---|
stale |
No | - | Filter by stale=true for datasets needing refresh |
curl https://nordapi.ee/api/v1/curated/datasets
{
"count": 19,
"data": [
{
"ai_notes": "TLT (Tallinn) public-transport static GTFS feed (buses, trams, trolleybuses). routes.txt + stops.txt extracted from transport.tallinn.ee/data/gtfs.zip. Distinct from the live GPS feed. Updated daily; content hash detects feed changes.",
"category": "estonia",
"content_hash": "b46dd82f9c1ab61a99ba6e3af20e434828d433b5a8a033c2cf442a6f44afac3e",
"dataset_id": "estonian_tlt_gtfs",
"has_data": true,
"last_checked": "2026-08-12T05:20:01Z",
"last_updated": "2026-08-12T05:20:01Z",
"manual_update": true,
"source_url": "https://transport.tallinn.ee/data/gtfs.zip",
"stale": false
},
{
"ai_notes": "Vilnius public-transport GTFS feed (buses + trolleybuses). routes.txt + stops.txt extracted from stops.lt/vilnius/vilnius/gtfs.zip. Updated daily; content hash detects feed changes.",
"category": "lithuania",
"content_hash": "008342fd75691b2ccd368949cdf881f78102476ad4f23397ec96713fb4954546",
"dataset_id": "lithuania_vilnius_gtfs",
"has_data": true,
"last_checked": "2026-08-12T05:10:00Z",
"last_updated": "2026-08-12T05:10:00Z",
"manual_update": true,
"source_url": "https://www.stops.lt/vilnius/vilnius/gtfs.zip",
"stale": false
},
{
"ai_notes": "Rīgas satiksme GTFS feed (Riga buses, trams, trolleybuses). routes.txt + stops.txt extracted from saraksti.rigassatiksme.lv/riga/gtfs.zip. Updated daily; content hash detects feed changes.",
"category": "latvia",
"content_hash": "7978ccca76d215f0ca55c1992db437e51b7a25f4ade4ccbc6893f2f86c730218",
"dataset_id": "latvia_riga_transport",
"has_data": true,
"last_checked": "2026-08-12T05:00:00Z",
"last_updated": "2026-08-12T05:00:00Z",
"manual_update": true,
"source_url": "https://saraksti.rigassatiksme.lv/riga/gtfs.zip",
"stale": false
},
{
"ai_notes": "Tallinn traffic intersection cameras — camera list HTML-scraped from ristmikud.tallinn.ee. Live JPEG frames served via camera_image_url/1; this curated row snapshots the catalog and marks it as a scraped source.",
"category": "tallinn",
"content_hash": "d7d864cdd061aebf5cf33bbbe38285c1a61b80b3f80cf4df3e9fba6ea2ceeff5",
"dataset_id": "tallinn_cameras",
"has_data": true,
"last_checked": "2026-08-12T04:55:00Z",
"last_updated": "2026-08-12T04:55:00Z",
"manual_update": true,
"source_url": "https://ristmikud.tallinn.ee/index.php/cams",
"stale": false
},
{
"ai_notes": "Estonia-Russia border queue lengths, HTML-scraped from GoSwift (eestipiir.ee). Served live per-request by queue_status/0; this curated row is a periodic snapshot marking it as a scraped source.",
"category": "estonia",
"content_hash": "84604ee5f52f90f43788708fd367b1a86f09ba622757d455031959e3e2a4af9f",
"dataset_id": "estonian_border",
"has_data": true,
"last_checked": "2026-08-12T04:50:14Z",
"last_updated": "2026-08-12T04:50:14Z",
"manual_update": true,
"source_url": "https://www.eestipiir.ee/yphis/borderQueueInfo.action?request_locale=en",
"stale": false
},
{
"ai_notes": "Estonian professional qualifications from kutseregister.ee open-data XML. standards: professional standards (\"estqf_level\" = EstQF/EKR level 1-8, \"name\" = Estonian name). awarding_bodies: bodies that grant qualifications. fields: occupational field classifier.",
"category": "estonia",
"content_hash": "898da089d52ccd20f5f44d6b9b6ffe757722f8f3da96d603f2ca6bd6de6a905d",
"dataset_id": "estonian_qualifications",
"has_data": true,
"last_checked": "2026-08-12T04:40:04Z",
"last_updated": "2026-08-12T04:40:04Z",
"manual_update": true,
"source_url": "https://www.kutseregister.ee/ctrl/et/Avaandmed/kutsestandardid/xml/1",
"stale": false
},
{
"ai_notes": "4142 facilities + 3165 organizations from the Estonian Sports Register open data JSON (spordiregister.ee/opendata/files/). Replaced scraping with direct downloads. Facilities: name<-rajatisnimi, municipality<-kov, county<-maakond, type<-liik, owner<-omaniknimi. Organizations: name<-nimi, type<-esrliik. Nested paigad/sport detail dropped to keep the dataset lean. content_hash covers facilities+organizations bodies concatenated.",
"category": "estonia",
"content_hash": "d716da2a63fe560e9e58e3c4679caa86dc8aaa45c74e1ef19184d954d1309258",
"dataset_id": "estonian_sports",
"has_data": true,
"last_checked": "2026-08-12T04:20:07Z",
"last_updated": "2026-08-12T04:20:07Z",
"manual_update": true,
"source_url": "https://www.spordiregister.ee/opendata/files/spordiehitised.json",
"stale": false
},
{
"ai_notes": "22,000+ medical devices + incident reports from msa.sm.ee XML open data. Includes manufacturers, distributors, risk classes, UDI codes.",
"category": "estonia",
"content_hash": "5a206441a18bf9d7f2a93cbeefb513ba0dbcc13a1200ce91fe642ab0039ca579",
"dataset_id": "estonian_medical_devices",
"has_data": true,
"last_checked": "2026-08-12T04:05:00Z",
"last_updated": "2026-08-12T04:05:00Z",
"manual_update": true,
"source_url": "https://msa.sm.ee/avaandmed/ms_seadmed.php",
"stale": false
},
{
"ai_notes": "17,000+ spatial plans from planeeringud.ee (PLANK). Read-only since Dec 2025. Types: detailplaneering, üldplaneering, maakonnaplaneering. Fetched via POST /plank-web/api/planeering/otsing.",
"category": "estonia",
"content_hash": "53fcf96cb0f1e1e2afb7ce58ceea14be31bec00bf7c461b007520bf7d0a475ff",
"dataset_id": "estonian_plans",
"has_data": true,
"last_checked": "2026-08-12T03:37:47Z",
"last_updated": "2026-08-12T03:37:47Z",
"manual_update": true,
"source_url": "https://planeeringud.ee",
"stale": false
},
{
"ai_notes": "496 Estonian cemeteries across 15 counties, crawled from kalmistud.ee (plain HTML, no JS). Keyed by county name. Each item: name, url, id, parish, region. Crawl path: /counties → /county/{id} → /cemeteries/parish/{id} → /cemetery/{id}.",
"category": "estonia",
"content_hash": "d16c23f3ac2feda8cef8f837fe059ae605572d8e0190f6c42b75987db26d8ea6",
"dataset_id": "estonian_cemeteries",
"has_data": true,
"last_checked": "2026-08-12T03:16:47Z",
"last_updated": "2026-08-12T03:16:47Z",
"manual_update": true,
"source_url": "https://kalmistud.ee/counties",
"stale": false
},
{
"ai_notes": "Tallinn legal acts from teele.tallinn.ee documents API (~3000 most recent of ~132k). Split into council_acts/government_acts by unit type. anna_teada problem reports preserved from prior scrape (no live source).",
"category": "tallinn",
"content_hash": "78dce9afef6452b518cbf7e1402e6b7aec239b5461a42fc00708bf7ec96b6526",
"dataset_id": "tallinn_legal_and_reports",
"has_data": true,
"last_checked": "2026-08-12T03:00:27Z",
"last_updated": "2026-08-12T03:00:27Z",
"manual_update": true,
"source_url": "https://teele.tallinn.ee/api/documents?pageSize=100",
"stale": false
},
{
"ai_notes": "70 Estonian museums from the muis.ee OAI-PMH repository (verb=ListSets). Top-level sets only (setSpec without ':'). 'spec' is the OAI setSpec, 'url' is the public collection-browse page on muis.ee. Sub-collections (setSpec containing ':') are excluded.",
"category": "estonia",
"content_hash": "b83eae2afda60b7962987fb1f9183dc58ffc6fb90d194eeaeb805c1828097a1c",
"dataset_id": "estonian_museums_muis",
"has_data": true,
"last_checked": "2026-08-12T02:40:02Z",
"last_updated": "2026-08-12T02:40:02Z",
"manual_update": true,
"source_url": "https://www.muis.ee/OAIService/OAIService",
"stale": false
},
{
"ai_notes": "Estonian cultural monuments from register.muinas.ee REST API (limit=20000). Active (non-deleted) monuments only. \"type\" is the first entry of the source \"types\" array (e.g. Kinnismälestis); \"classifications\" holds the heritage classes (e.g. ajaloomälestis, arheoloogiamälestis).",
"category": "estonia",
"content_hash": "ff51142211d36adacaaf68baa95915e7d00a5f5478035b4b8da823cd08c28ca5",
"dataset_id": "estonian_monuments",
"has_data": true,
"last_checked": "2026-08-12T02:30:29Z",
"last_updated": "2026-08-12T02:30:29Z",
"manual_update": true,
"source_url": "https://register.muinas.ee/rest/v1/monuments?limit=20000",
"stale": false
},
{
"ai_notes": "246 active public ports from the Estonian Port Register API (sadamaregister.ee/api/ports/public-active). Replaced HTML scraping with direct JSON endpoint. type = stringified portFunction code, water_body = bodyOfWaterName. Per-port detail available at /api/ports/{id}/public-details.",
"category": "estonia",
"content_hash": "a6348ab6b3022db21ce1a4860fdaed81832a7d241ef27593ea3b639a6dc74e45",
"dataset_id": "estonian_ports",
"has_data": true,
"last_checked": "2026-08-12T02:20:01Z",
"last_updated": "2026-08-12T02:20:01Z",
"manual_update": true,
"source_url": "https://sadamaregister.ee/api/ports/public-active",
"stale": false
},
{
"ai_notes": "209 Tallinn parking zones with GPS polygon boundaries from parkimine.ee. Includes opening hours and street addresses.",
"category": "tallinn",
"content_hash": "d2e205e4c18b60a9466de9fdb1f73ce2ee07ec324986f57b11e6cf9743985547",
"dataset_id": "tallinn_parking_zones",
"has_data": true,
"last_checked": "2026-08-12T02:10:01Z",
"last_updated": "2026-08-12T02:10:01Z",
"manual_update": true,
"source_url": "https://www.parkimine.ee/_ajax/map/permit-types",
"stale": false
},
{
"ai_notes": "1,654 navigational marks from NMA SOAP XML. Coords divided by 60000000. Types: Tuletorn (lighthouse), Tulepaak (beacon), Poi (buoy), Tooder (spar buoy). Updated daily by Transpordiamet.",
"category": "estonia",
"content_hash": "5bb1f5c59ff642d94d6de4580c186dbb3f1b0f3d7f4a1c7940f27358a2cd4907",
"dataset_id": "estonian_nav_marks",
"has_data": true,
"last_checked": "2026-08-12T02:00:01Z",
"last_updated": "2026-08-12T02:00:01Z",
"manual_update": true,
"source_url": "https://nma.vta.ee/xml_file",
"stale": false
},
{
"ai_notes": "2026-08-10: health-checked all 21 hardcoded YouTube webcam URLs in estonian_webcams.ex; replaced dead Matsalu cam (AWp8hJQdQCk -> R2Jh3vskbAE). Channels: @Riigimets, @Kotkaklubi, @Teetormaja, @urmaslett. Seasonal: fish May-Jun, stork Apr-Aug.",
"category": "webcams",
"content_hash": "3f3bdf66c9268c22868823c5bce0213078048650331b2723758b0e92bc99a470",
"dataset_id": "estonian_webcams_youtube",
"has_data": true,
"last_checked": "2026-08-11T19:42:14Z",
"last_updated": "2026-08-11T19:42:14Z",
"manual_update": true,
"source_url": "https://www.youtube.com/@Riigimets/streams",
"stale": false
},
{
"ai_notes": "Misc Estonian registries scraped via PinchTab: llr.ee, netikaart.ee, emde.ee, teeregister.mnt.ee, volis.ee",
"category": "estonia",
"content_hash": "9de6a5887e491e50210c4d04b54f268e7dd1372fcdff7617ccab880dc39a2787",
"dataset_id": "estonian_misc_registries",
"has_data": true,
"last_checked": "2026-08-07T17:20:24Z",
"last_updated": "2026-04-01T04:53:29Z",
"manual_update": true,
"source_url": "multiple",
"stale": true
},
{
"ai_notes": "Scraped via PinchTab from mtr.ttja.ee. Economic activities register / business licenses. || 2026-08-11 SOURCE MIGRATING: mtr.ttja.ee is being superseded by tarvik.ttja.ee (since 2025-06-25; 25 activity areas moved so far). The /taotleja/andmeotsing path now requires login. Re-scrape should target Tarvik (tarvik.ttja.ee) public search, not legacy MTR. Data still from 2026-04-01.",
"category": "estonia",
"content_hash": "eae65826a34939aa80b23dd108dcdd845a2a396ca21c7a5b7396df3940ede3c6",
"dataset_id": "estonian_mtr",
"has_data": true,
"last_checked": "2026-08-07T17:20:24Z",
"last_updated": "2026-04-01T03:06:07Z",
"manual_update": true,
"source_url": "https://mtr.ttja.ee/taotleja/andmeotsing",
"stale": true
}
],
"success": true
}