JDay

GET /v1/is-business-day

Check if a date is a business day for a given country and optional region.

Parameters

NameTypeRequiredDescription
datestringYesDate to check in YYYY-MM-DD format. Must be within 2025-01-01 to 2027-12-31.
countrystringYesISO 3166-1 alpha-2 country code. Case-insensitive.
regionstringNoISO 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

FieldTypeDescription
datestringThe queried date.
countrystringNormalized country code (uppercase).
regionstring | nullRegion code if provided, otherwise null.
is_business_daybooleanWhether the date is a business day.
reasonstringOne of: business_day, weekend, public_holiday, regional_holiday.
holidaysarrayHoliday records for this date. Empty [] if none.
timezonestringPrimary timezone hint for the country. Metadata only.
next_business_daystring | nullNext business day in range, or null at boundary.
previous_business_daystring | nullPrevious business day in range, or null at boundary.

Reason Precedence

When multiple conditions apply, reason uses this precedence:

  1. weekend
  2. regional_holiday
  3. public_holiday
  4. business_day

The holidays array may still contain records even when reason is weekend.

Error Cases

ConditionError
Missing date or country400 missing_parameter
Malformed date400 invalid_date
Date outside 2025–2027400 date_out_of_range
Unknown country400 invalid_country
Invalid region400 invalid_region
Region on Free plan403 plan_upgrade_required

On this page