GET /v1/is-business-day
Check if a date is a business day for a given country and optional region.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
date | string | Yes | Date to check in YYYY-MM-DD format. Must be within 2025-01-01 to 2027-12-31. |
country | string | Yes | ISO 3166-1 alpha-2 country code. Case-insensitive. |
region | string | No | ISO 3166-2 subdivision suffix (e.g. NY). Requires paid plan. |
Request
curl -X GET "https://jday-api.jday.workers.dev/v1/is-business-day?date=2026-04-03&country=ZA" \
-H "Authorization: Bearer jday_live_xxx" \
-H "Accept: application/json"Response
{
"date": "2026-04-03",
"country": "ZA",
"region": null,
"is_business_day": false,
"reason": "public_holiday",
"holidays": [
{
"date": "2026-04-03",
"official_date": null,
"name": "Good Friday",
"local_name": null,
"type": "public",
"date_accuracy": "exact"
}
],
"timezone": "Africa/Johannesburg",
"next_business_day": "2026-04-07",
"previous_business_day": "2026-04-02"
}Response Fields
| Field | Type | Description |
|---|---|---|
date | string | The queried date. |
country | string | Normalized country code (uppercase). |
region | string | null | Region code if provided, otherwise null. |
is_business_day | boolean | Whether the date is a business day. |
reason | string | One of: business_day, weekend, public_holiday, regional_holiday. |
holidays | array | Holiday records for this date. Empty [] if none. |
timezone | string | Primary timezone hint for the country. Metadata only. |
next_business_day | string | null | Next business day in range, or null at boundary. |
previous_business_day | string | null | Previous business day in range, or null at boundary. |
Reason Precedence
When multiple conditions apply, reason uses this precedence:
weekendregional_holidaypublic_holidaybusiness_day
The holidays array may still contain records even when reason is weekend.
Error Cases
| Condition | Error |
|---|---|
Missing date or country | 400 missing_parameter |
| Malformed date | 400 invalid_date |
| Date outside 2025–2027 | 400 date_out_of_range |
| Unknown country | 400 invalid_country |
| Invalid region | 400 invalid_region |
| Region on Free plan | 403 plan_upgrade_required |