Source Catalogue¶
Updated: 2026-07-28 · Verifier: Phase 0 discovery run (cloud sandbox)
Status legend¶
| Status | Meaning |
|---|---|
verified-live |
A representative request was executed on the stated date and succeeded. |
verified-exists |
The source and its published access path were confirmed to exist; a representative data request has not yet been executed. |
pending-local-check |
Source exists, but the verification environment was blocked (bot protection / proxy limits). Must be re-verified from a normal network before collector work. |
restricted-likely |
Public UI exists but no documented reuse/bulk path; treated as fixture-only unless terms clear it. |
flag-gated |
Technically usable but terms are unclear; only behind an off-by-default feature flag, never in the public demo. |
rejected |
Not used; reason documented. |
A source may only move to "integrated" when its collector + tests exist and a
representative request is recorded in fact_source_run. No source below is
integrated today.
Summary¶
| # | Source | Publisher | Category | Access | Status | Demo-enabled (planned) |
|---|---|---|---|---|---|---|
| S-01 | GENESIS-Online Bayern | Bayerisches Landesamt für Statistik | Official statistics | CSV/XLSX download; webservice API | verified-exists (downloads) / API pending-local-check |
yes |
| S-02 | BA regional statistics (AA Ingolstadt) | Bundesagentur für Arbeit | Labour market (aggregated) | XLSX/PDF downloads | verified-exists |
yes |
| S-03 | BA Jobsuche API (bund.dev wrapper) | Community (bundesAPI) over BA data | Job postings | REST, public key | flag-gated |
no |
| S-04 | Datenservice Öffentlicher Einkauf (oeffentlichevergabe.de) | Beschaffungsamt des BMI | Procurement notices | Open-data API, eForms-DE | pending-local-check |
yes (intended primary tenders) |
| S-05 | TED Search API | EU Publications Office | Procurement notices (EU threshold) | REST, anonymous | verified-live (docs + anonymous access confirmed) |
yes |
| S-06 | CORDIS bulk datasets | European Commission | Research projects | CSV/XLSX/ZIP bulk | verified-live (metadata incl. license) |
yes |
| S-07 | Stadt Ingolstadt statistics | Stadt Ingolstadt | Municipal statistics | PDF/HTML reports | verified-exists |
yes (secondary) |
| S-08 | Wikidata | Wikimedia | Company seed data | SPARQL/EntityData | pending-local-check (sandbox proxy block) |
yes |
| S-09 | OpenStreetMap (Overpass) | OSM contributors | Locations/POI | Overpass API | verified-exists (method known; ODbL caution) |
undecided (legal note) |
| S-10 | THI research project pages | Technische Hochschule Ingolstadt | Research | HTML | pending-local-check |
undecided |
| S-11 | Förderkatalog des Bundes | BMBF/Bund | Research funding | Web UI (JSP) | restricted-likely |
fixture-only |
| S-12 | GEPRIS | DFG | Research funding | Web UI | restricted-likely (not verified this run) |
fixture-only |
| S-13 | OffeneRegister.de dump | OKF Deutschland | Company registry (historical) | Bulk download | verified-exists |
fixture-only (dated 2019) |
| S-14 | Regionalstatistik.de (GENESIS) | Statistische Ämter des Bundes und der Länder | Official statistics | Download + GENESIS API | candidate (not verified this run) | probable |
| S-15 | IHK company directories | IHK München und Oberbayern | Companies | Web UI | rejected (database rights; no reuse permission assumed) |
no |
| S-16 | Synthetic job postings | IngoShift project (invented) | Job postings (demo) | committed fixture | internal — always data_class=synthetic |
yes (visibly labelled) |
| S-17 | Synthetic company snapshots | IngoShift project (invented) | Companies (demo, 2 snapshots) | committed fixtures | internal — always data_class=synthetic |
yes (visibly labelled) |
Details and evidence¶
S-01 GENESIS-Online Bayern¶
- URL: https://www.statistik.bayern.de/produkte/datenbanken_karten/genesis/index.html · Data: https://www.statistikdaten.bayern.de/genesis/online
- Evidence 2026-07-28: product page fetched successfully — ~115 statistics, ~120M data points, free download in XLSX/HTML/CSV confirmed on page. Webservice menu URL returned HTTP 403 to the sandbox fetcher → API capability and registration requirements =
pending-local-check. - Fields (expected): employment (SVB) by Kreis, population, businesses, education, construction — keyed by AGS.
- License: expected Datenlizenz Deutschland Namensnennung 2.0 — to confirm on first integration; attribution will be implemented regardless.
- Reliability: high (official). Update frequency: per statistic (monthly–annual).
- Limitations: aggregated only; publication lag; API terms unverified.
- Phase-2 state (2026-07-28): fixture adapter + parser contract tests built (GENESIS marker conventions handled). Still not integrated — a real export must replay through the same contract tests first (C-03/C-04).
S-02 Bundesagentur für Arbeit — regional statistics¶
- URL: https://statistik.arbeitsagentur.de/ → Gebietsstruktur → AA Ingolstadt (page confirmed:
.../827-AA-Ingolstadt.html) - Evidence 2026-07-28: AA-Ingolstadt landing page and Arbeitsmarktreport navigation confirmed via search index; direct data request not yet executed.
- Fields (expected): unemployment, employment, vacancies (gemeldete Arbeitsstellen), occupational groups (KldB), time series per Agentur/Kreis.
- License: BA statistics are publicly provided with attribution requirements — exact terms to record on first integration.
- Reliability: high (official). Update: monthly.
- Limitations: aggregated; vacancy statistics cover only BA-reported positions (coverage bias to be documented in-product).
S-03 BA Jobsuche API (bundesAPI / bund.dev)¶
- URL: https://github.com/bundesAPI/jobsuche-api
- Evidence 2026-07-28: README fetched. Reverse-engineered, not official ("bietet die Bundesagentur für Arbeit dafür bis heute keine offizielle API an"); static public key (
X-API-Key: jobboerse-jobsuche); endpoints for search and job details; no stated usage terms. - Decision (ADR-008): flag-gated only; never the default demo path; posting-level pipeline is demonstrated on labelled fixtures. Revisit if BA publishes official terms.
- Reliability: medium (unofficial, can break silently). This entry exists to document why it is not used, which is itself portfolio-relevant.
S-04 Datenservice Öffentlicher Einkauf¶
- URL: https://oeffentlichevergabe.de (Open-Data-Richtlinie page indexed) · Operator: Beschaffungsamt des BMI (service live since 2023 per public reporting, e.g. Vergabeblog 2023-10-31).
- Evidence 2026-07-28: domain unreachable from sandbox (connect timeout on robots.txt) →
pending-local-check. Public documentation describes notice publication in eForms-DE with open-data access. - Expected fields: notice type, buyer, CPV, NUTS, deadlines, values, full eForms payload.
- Reliability: high if confirmed (official). Intended primary source for German sub-threshold + national notices.
- Limitations: eForms-DE parsing complexity; historical depth limited to service start.
S-05 TED Search API¶
- URL: https://docs.ted.europa.eu/api/latest/index.html · Gateway:
api.ted.europa.eu - Evidence 2026-07-29: the production collector executed an anonymous
POST /v3/notices/search, archived the raw response, parsed the current API shape, applied the quality gate, and published 38 current Region-10 records in that verification run. The count is time-dependent and is not a product guarantee. - Query: configured Region-10 NUTS codes, active notices with a future
deadline-receipt-tender-date-lot, publication date descending, at most 100 records per run. - Fields: publication and notice identifiers, title, buyer, CPV, NUTS, dates, values, and official TED links.
- License: notices may be reused commercially or non-commercially under the European Commission reuse decision; attribution and change indication apply. TED metadata is CC0. See the official TED legal notice.
- Reliability: high (official EU). Update: daily.
- Limitations: above-threshold notices only → regional sub-threshold activity underrepresented; complements S-04 rather than replacing it.
- Integration state: implemented and verified live. Contract tests cover fixtures and the current multilingual API-v3 response shape. Live raw payloads are not committed to the public repository.
S-06 CORDIS bulk datasets¶
- URL: https://data.europa.eu/data/datasets/cordish2020projects (H2020; Horizon-Europe twin dataset exists)
- Evidence 2026-07-28: dataset metadata fetched via data.europa.eu API. License: EC reuse notice (attribution); distributions include CSV (~54 MB compressed), XLSX, ZIP; content: projects, participating organisations, topics, EuroSciVoc, deliverables, publications.
- Regional filter: organisation records carry city/postcode/country and NUTS → filter to Region 10 (THI, Audi, suppliers, etc.).
- Reliability: high. Update: periodic (typically monthly).
- Phase-5 state (2026-07-28): fixture adapter + parser contract tests built (header-sniffed projects/organisations CSVs, nullable amounts, regional entity-link step). Still not integrated — a real bulk export must replay through the same contract tests first (C-03).
- Limitations: EU-funded projects only — national (BMBF/DFG) funding requires S-11/S-12, which are restricted → coverage gap to be labelled in-product.
S-07 Stadt Ingolstadt statistics¶
- URLs confirmed 2026-07-28 via search index:
ingolstadt.de/Rathaus/Aktuelles/Zahlen-Daten/Aktuelle-Statistiken/,.../Statistiken-nach-Themen/, kleinräumige reports as PDF downloads. - Access: PDF/HTML publications; no open-data API observed in this pass.
- Use: context indicators (population, districts) and cross-checks; PDF parsing cost means low priority for automation — possibly curated-manual with source references.
- Reliability: high (official), machine-readability low.
S-08 Wikidata¶
- Method: SPARQL — e.g. entities with
wdt:P159(HQ) in Region-10 municipalities; plus P452 industry, P856 website, P571 inception. - Evidence 2026-07-28: query endpoint rejected by sandbox proxy (HTTP 403); EntityData endpoint cache-only in sandbox →
pending-local-check. Method and CC0 licensing are stable and well documented. - Use: company seed list + stable identifiers (QIDs) for entity resolution.
- Limitations: coverage skews to larger companies; community-maintained accuracy → every Wikidata-derived field labelled
curated-externalwith retrieval date.
S-09 OpenStreetMap / Overpass¶
- Method known (Overpass QL by admin boundary +
office/industrialtags). Not tested this run. - ODbL share-alike caution for derived databases (see data-governance). Decision deferred: only integrate if the legal handling is clean; otherwise Wikidata + curated seed suffice.
S-10 THI research pages¶
- Evidence 2026-07-28:
thi.deunreachable from sandbox (timeout) → robots/ToS review outstanding. If disallowed: adapter interface + fixture, and THI activity enters via CORDIS participation records instead.
S-11 Förderkatalog / S-12 GEPRIS¶
- Evidence 2026-07-28 (S-11): JSP search UI confirmed (
foerderportal.bund.de/foekat); no documented bulk export or API found in this pass →restricted-likely, fixture-only pending a terms review. S-12 not verified this run; treated identically until reviewed. - Impact: national research funding underrepresented in demo — labelled as a known gap.
S-13 OffeneRegister.de¶
- URL: https://offeneregister.de/daten/ — bulk dump confirmed to exist (OKF project).
- Use: historical fixture only (data vintage ~2019, clearly labelled) — ideal for entity-resolution testing at realistic messiness, never for current-state claims.
S-14 Regionalstatistik.de¶
- Candidate: same GENESIS platform family as S-01 with national Kreis-level tables and a documented API pattern. Not verified this run; scheduled with S-01's local check.
S-15 IHK directories — rejected¶
- Company directories carry database rights and typically prohibit systematic extraction. Not verified, not needed: rejected by policy unless written permission exists.
S-16 Synthetic job postings (internal, ADR-008)¶
- Not an external source: a constructed dataset that exists because no legally
usable posting-level source is cleared (see S-03). 33 invented postings with
(SYNTHETIC)employer markers; parser stampsdata_class=syntheticunconditionally; construction documented indata/fixtures/synthetic_jobs/README.md. - Purpose: prove extraction, normalization, dedup, trends, co-occurrence, and export honestly. Retired from the demo the day a real source clears the governance checklist — its records never mix with real ones undeclared (data_class travels into every mart and export).
S-17 Synthetic company snapshots (internal, ADR-009/ADR-010)¶
- Two invented snapshot files (2026-06-15, 2026-07-20) with
(SYNTHETIC)markers, constructed to prove entity resolution (legal-form variants, domain match, manual override, fuzzy review-queue case), content-hash snapshots, and change detection — seedata/fixtures/synthetic_companies/README.md. - Replaced by a curated seed of real Region-10 companies (ADR-009) once per-company evidence can be collected and verified from a normal network; until then module 2 is demonstrably synthetic and labelled as such everywhere.