Swiss BAG Infectious Diseases Scraper avatar

Swiss BAG Infectious Diseases Scraper

Pricing

from $4.52 / 1,000 results

Go to Apify Store
Swiss BAG Infectious Diseases Scraper

Swiss BAG Infectious Diseases Scraper

Follow weekly notifiable infectious disease statistics from the Swiss Federal Office of Public Health. Each record returns the disease, week, year, canton, case count, age group, sex, hospitalizations, and deaths. Built for epidemiology research and public health monitoring.

Pricing

from $4.52 / 1,000 results

Rating

0.0

(0)

Developer

ParseForge

ParseForge

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

ParseForge Banner

🦠 Swiss BAG Infectious Diseases Scraper

🚀 Pull weekly Swiss notifiable infectious disease counts in seconds. By canton, age group, sex, and disease, straight from the BAG idd.bag.admin.ch public API.

🕒 Last updated 2026-06-05 · 📊 10 fields per record · 26 cantons · Weekly resolution since 1988 · Source BAG

The Swiss BAG Infectious Diseases Scraper turns the Swiss Federal Office of Public Health (Bundesamt für Gesundheit, BAG) idd.bag.admin.ch/api/v1/communicablediseases endpoint into a clean structured dataset. Filter by disease, canton, and year range, and the actor returns one row per stratum.

🎯 Target Audience💡 Primary Use Cases
🧪 EpidemiologistsBuild longitudinal time series of notifiable diseases
🏥 Public health teamsMonitor outbreak signals across cantons
📰 Health journalistsVerify case counts for stories
🎓 Academic researchersBuild training and validation cohorts
👩‍💻 Civic tech buildersPower public dashboards

📋 What the Swiss BAG Infectious Diseases Scraper does

  • Calls the public BAG endpoint with your filters.
  • Normalises field names across the API's German, French, Italian, and English variants.
  • Returns one row per disease, week, year, canton, age group, sex stratum.

💡 Why it matters Notifiable disease data is fragmented across PDF reports and a JS dashboard. The API exists but is undocumented. This actor wraps it.

🎬 Full Demo

🚧 Coming soon.

⚙️ Input

FieldTypeRequiredDescription
diseasestringNoDisease name. Empty for all.
yearFromintegerNoEarliest year. Default 2024.
yearTointegerNoLatest year. Default current.
cantonenumNoCanton code (ZH, BE, GE, etc.). Empty for all.
maxItemsintegerNoFree 10, paid up to 1,000,000.

Example 1, measles in Zurich 2024:

{
"disease": "Masern",
"canton": "ZH",
"yearFrom": 2024,
"yearTo": 2024,
"maxItems": 100
}

Example 2, all reported diseases nationwide 2025:

{
"yearFrom": 2025,
"yearTo": 2025,
"maxItems": 500
}

⚠️ Good to Know The BAG API is public and free. No registration required.

📊 Output

FieldTypeDescription
🦠 diseasestringDisease name.
📅 weekintegerISO week number.
📅 yearintegerYear.
🏔️ cantonstringTwo-letter canton code.
🔢 casesintegerReported cases for this stratum.
👤 ageGroupstringAge group bucket.
sexstringSex stratum.
🏥 hospitalizationsintegerHospitalisations when reported.
⚰️ deathsintegerDeaths when reported.
🕒 scrapedAtstringWhen this row was fetched.
errorstringSet if the upstream response was an error.

✨ Why choose this Actor

| 🆓 | Public BAG endpoint, no key required. | | 🌍 | All 26 cantons covered. | | 📅 | Weekly resolution back to 1988. | | 🧹 | Field names normalised across language variants. | | 🛟 | Errors surface as a clean record, never a crash. |

📈 How it compares to alternatives

ApproachSetupMultilang fieldsStratum normalisation
Manual PDF downloadhours
Roll your own fetch30 min plus
This Actor5 sec

🚀 How to use

  1. Click Try for free.
  2. Pick a disease, canton, and year range.
  3. Click Start.
  4. Open the dataset.

💼 Business use cases

🏥 Public health Track outbreak signals across cantons.

🧪 Epidemiology Build longitudinal cohorts for time-series modelling.

📰 Newsrooms Verify case counts for stories.

🤖 ML training Feed structured surveillance data into forecasting models.

🔌 Automating Swiss BAG Infectious Diseases Scraper

  • Make and Zapier trigger weekly when BAG publishes new numbers.
  • Cron Apify scheduler runs every Friday.
  • Webhooks receive POST on completion.
  • Warehouses pipe to BigQuery or Snowflake.

🌟 Beyond business use cases

🎓 Education Real surveillance data for epidemiology courses.

🧪 Personal research Track outbreaks in your canton.

🤝 Non-profit Power health equity dashboards.

🧰 Tinkering Prototype a forecasting model.

🤖 Ask an AI assistant about this scraper

Paste this README into ChatGPT, Claude, or any assistant.

❓ Frequently Asked Questions

❓ Do I need an account No, the BAG endpoint is public.

❓ Which diseases are covered All notifiable diseases in the Swiss list (mandatory reporting).

❓ How fresh is the data BAG updates weekly.

❓ Is the language fixed No, the actor accepts German, French, Italian, and English disease names.

❓ Can I schedule runs Yes.

❓ Is this scraping No, it is the official public API.

🔌 Integrate with any app

Apify ships native integrations with Make, Zapier, Slack, Discord, Google Drive, Google Sheets, Gmail, Airbyte, Keboola, Telegram, GitHub, and any REST endpoint or webhook.

ActorWhat it does
ParseForge GovInfo ScraperUS federal publications.
ParseForge OurAirports ScraperGlobal airport database.
ParseForge Alpha Vantage ScraperPublic market data.

💡 Pro Tip browse the complete ParseForge collection.


Disclaimer This actor uses only publicly available data. ParseForge is not affiliated with, endorsed by, or sponsored by any of the third-party services referenced. Users are responsible for complying with the target site's terms of service and applicable law. Create a free account w/ $5 credit.