Business days between two dates
Count the business days between two dates for a country or subdivision, and list the public holidays skipped.

Details
Covers: public holidays 2000–2035 for CH (all 26 cantons), DE (16 states), AT (9 states), FR, IT, LI, GB, ES, US (states) and 23 more European countries.
Does not cover: half days, bank-only or school holidays. Add company closing days with closed_dates.
Counting: the start date is excluded and the end date included, like counting "days after". If to is before from, the count is negative.
Price: CHF 0.002 per call (first 100 calls per day free).
Example: {"from":"2026-12-23","to":"2027-01-05","region":"CH-ZH"} → 7 business days, skipping Christmas Day, Saint Stephen's Day and New Year's Day.
Call it
RESTcurl -X POST https://api.tausendwerk.xyz/v1/business-days \
-H "Content-Type: application/json" \
-d '{"from":"2026-12-23","to":"2027-01-05","region":"CH-ZH"}'MCP tool namebusiness_daysAfter the free 100 calls per day, add a key: Authorization: Bearer tw_live_…. Pricing
Try it
Runs against the live API with the free allowance.
Input schema JSON Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"from",
"to",
"region"
],
"properties": {
"from": {
"type": "string",
"format": "date",
"description": "ISO date, YYYY-MM-DD"
},
"to": {
"type": "string",
"format": "date",
"description": "ISO date, YYYY-MM-DD"
},
"region": {
"type": "string",
"pattern": "^[A-Z]{2}(-[A-Z0-9]{1,3})?$",
"description": "Country code (CH, DE, AT, FR, IT, LI, GB, US, ES and 23 more EU/EEA codes) or subdivision: CH-ZH, DE-BY, AT-9, GB-SCT, US-CA, FR-57"
},
"weekend": {
"type": "array",
"items": {
"type": "integer",
"minimum": 1,
"maximum": 7
},
"uniqueItems": true,
"maxItems": 6,
"default": [
6,
7
],
"description": "ISO weekdays that are not working days. 1 = Monday, 7 = Sunday."
},
"closed_dates": {
"type": "array",
"items": {
"type": "string",
"format": "date",
"description": "ISO date, YYYY-MM-DD"
},
"maxItems": 366,
"description": "Extra closed days, such as company holidays."
}
},
"examples": [
{
"from": "2026-12-23",
"to": "2027-01-05",
"region": "CH-ZH"
}
]
}