> ## Documentation Index
> Fetch the complete documentation index at: https://docs.oration.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Time Check

> Route calls based on business hours, custom schedules, or holidays

The **Time Check** node evaluates the current time against business hours, custom time ranges, or holiday calendars and routes the call accordingly.

## Behavior

* Checks the current time in the configured timezone
* Compares against business hours, custom ranges, or a holiday calendar
* Routes to `Open`, `Closed`, or `Holiday` based on the result

## Configuration

| Parameter            | Type      | Default                           | Options / Range                       | Description                                              |
| -------------------- | --------- | --------------------------------- | ------------------------------------- | -------------------------------------------------------- |
| `timezone`           | string    | `"UTC"`                           | —                                     | IANA timezone (e.g., `America/New_York`, `Asia/Kolkata`) |
| `checkType`          | enum      | `"business_hours"`                | `business_hours`, `custom`, `holiday` | Type of time check to perform                            |
| `businessHoursStart` | string    | `"09:00"`                         | HH:mm                                 | Business open time                                       |
| `businessHoursEnd`   | string    | `"17:00"`                         | HH:mm                                 | Business close time                                      |
| `businessDays`       | string\[] | `["mon","tue","wed","thu","fri"]` | `mon`–`sun`                           | Days the business is open                                |
| `customRanges`       | array     | `[]`                              | —                                     | Custom time ranges (see below)                           |
| `holidayCalendar`    | string    | `""`                              | —                                     | Holiday calendar identifier                              |
| `closedMessage`      | string    | `"We are currently closed..."`    | —                                     | Message to play when closed                              |

### Custom time range

Each entry in `customRanges`:

| Field       | Type      | Description                |
| ----------- | --------- | -------------------------- |
| `id`        | string    | Unique range identifier    |
| `label`     | string    | Display label              |
| `startTime` | string    | Start time (HH:mm)         |
| `endTime`   | string    | End time (HH:mm)           |
| `days`      | string\[] | Days of week (`mon`–`sun`) |

## Output handles

| Handle      | Description                                           |
| ----------- | ----------------------------------------------------- |
| **Open**    | Current time is within business hours / custom range  |
| **Closed**  | Current time is outside business hours / custom range |
| **Holiday** | Current date is a holiday                             |

## Use cases

<AccordionGroup>
  <Accordion title="Business hours routing">
    Start → Time Check → (Open) Transfer to queue, (Closed) TTS closed message → Voicemail → End Call.
  </Accordion>

  <Accordion title="Extended weekend hours">
    Use `custom` check type with ranges for weekday 9–17 and weekend 10–14 to handle different schedules.
  </Accordion>

  <Accordion title="Holiday handling">
    Configure a holiday calendar. On holidays, play a special message and offer voicemail instead of transferring.
  </Accordion>
</AccordionGroup>
