> For the complete documentation index, see [llms.txt](https://knowledge.maica.com.au/maica-knowledge-base/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://knowledge.maica.com.au/maica-knowledge-base/resources/resource-roster-mode.md).

# Resource Roster Mode

## What is Roster Mode?

`Roster Mode` defines how a `Resource` can be scheduled in **Maica**, specifically whether they are scheduled through `Shifts`, through standalone `Appointments`, or both. It determines the validation **Maica** applies when you try to assign a Resource to a Shift or book them into an Appointment.

Roster Mode is used by coordinators and schedulers who build the roster, and by administrators who set a Resource's default way of working. Choosing the right mode helps **Maica** keep the roster consistent, for example by stopping a shift-based worker from being booked outside their Shifts.

{% hint style="info" %}
Roster Mode is set on the [Resource](broken://pages/a3ad13711cf6d314cc4187c4d2a97d4ea1bfe9b2) record and can also be set on individual [Availability](broken://pages/a3ad13711cf6d314cc4187c4d2a97d4ea1bfe9b2) records. See [How Maica determines a Resource's Roster Mode](#how-maica-determines-a-resources-roster-mode) for how the two interact.
{% endhint %}

## Where do I set Roster Mode?

You can set Roster Mode in two places:

1. On the **Resource** record, using the **Roster Mode** field. This is the Resource's default mode.
2. On an **Availability** record, using the **Roster Mode** field. This lets you apply a different mode for the period that Availability covers.

## The three Roster Modes

**Maica** offers three Roster Modes. The table below summarises how each one behaves.

| Roster Mode   | Can take standalone Appointments | Can be assigned to Shifts | Typical use                                                                              |
| ------------- | -------------------------------- | ------------------------- | ---------------------------------------------------------------------------------------- |
| `Appointment` | Yes                              | No                        | Resources scheduled entirely through individual Appointments                             |
| `Shift`       | Only within one of their Shifts  | Yes                       | Resources who work rostered Shifts, such as in a group or residential setting            |
| `Dynamic`     | Yes                              | Yes                       | Resources who work a continuous Shift on some days and individual Appointments on others |

### Appointment

A `Resource` in `Appointment` mode is scheduled through standalone `Appointments`. They can be booked at any time, subject to their `Availability` if any Availability records exist. A Resource in `Appointment` mode cannot be assigned to a `Shift`. Attempting to add them to a Shift produces a Roster Mode Conflict.

### Shift

A `Resource` in `Shift` mode is scheduled through `Shifts`. They can be assigned to Shifts, and any `Appointment` booked for them must fall within one of their Shifts. If you try to book an Appointment for a Shift-mode Resource outside any of their Shifts, **Maica** reports a conflict.

### Dynamic

A `Resource` in `Dynamic` mode can be assigned to both `Shifts` and standalone `Appointments`. This removes the need to switch a Resource between `Appointment` and `Shift` mode when their pattern of work changes day to day. Standard overlap and availability rules still apply.

{% hint style="success" %}
Use `Dynamic` for Resources whose work mixes rostered Shifts and individual Appointments, so you do not have to change their Roster Mode each time the roster changes.
{% endhint %}

## How Maica determines a Resource's Roster Mode

A Resource can have a Roster Mode on their Resource record and a different Roster Mode on a specific Availability record. When validating a Shift or an Appointment, **Maica** resolves the Roster Mode to use in the following order:

1. The **Roster Mode** on the matched **Availability** record, if one applies and it is set
2. Otherwise, the **Roster Mode** on the Resource linked to that Availability record
3. Otherwise, the **Roster Mode** on the **Resource** record
4. Otherwise, **Maica** treats the Resource as `Appointment` mode

{% hint style="warning" %}
Where more than one `Availability` record applies at the same time, `Dynamic` rows take precedence when **Maica** resolves the applicable mode. This means a Resource with any overlapping `Dynamic` Availability is treated as `Dynamic` for that period.
{% endhint %}

## How each mode affects scheduling

The Roster Mode controls two kinds of validation when you build the roster.

### Roster Mode coverage

These rules always apply, regardless of your overlap settings:

* An `Appointment`-mode Resource cannot be assigned to a `Shift`.
* A `Shift`-mode Resource can only have `Appointments` that fall within one of their Shifts.
* A `Dynamic`-mode Resource can be assigned to Shifts and can also take Appointments that sit outside a Shift.

{% hint style="info" %}
Roster Mode coverage is independent of the overlap settings and of the per-Resource **Allow Overlap** option. It checks whether the Resource is allowed to work that way at all, not whether two bookings clash in time.
{% endhint %}

### Overlap and Roster Mode

Separately from coverage, **Maica** can prevent a Resource from being double-booked at the same date and time. Overlap of the same type, meaning Appointment against Appointment or Shift against Shift, is controlled by the **Allow Resource Overlap** settings and can be bypassed for an individual Resource using the **Allow Overlap** checkbox on the Resource record.

For `Dynamic` Resources, a rostering setting also controls whether **Maica** prevents an overlapping `Shift` and `Appointment` at the same time. When that setting is enabled, a `Dynamic` Resource cannot be booked into an Appointment that overlaps one of their Shifts, and vice versa.

{% hint style="info" %}
To learn more about the per-Resource overlap exception, see the **Allow Overlap** section of the [Resource Profile](broken://pages/a3ad13711cf6d314cc4187c4d2a97d4ea1bfe9b2) article.
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://knowledge.maica.com.au/maica-knowledge-base/resources/resource-roster-mode.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
