# Criteria for change notifications

The `criteria` object specifies which calendar and calendar entries to monitor for changes and when.

The `criteria` object has two main properties: `Type` and `Filter`. These are described in the following table. Properties enclosed in brackets are optional.

Table: Criteria object properties
Property | Description | Type | Value
--- | --- | --- | ---
`criteria.Type` | Specifies the type of calendar information to monitor. This is always `"CalendarEntry"`. | string | Possible values: `"CalendarEntry"`
`[criteria.Filter]` | Specifies the calendar and calendar entries to monitor. If this property is not specified, `RequestNotification` returns notifications for all entries in the default calendar. | object | Object with the properties specified below
`[criteria.Filter.CalendarName]` | Specifies the calendar whose entries to monitor. If this property is not specified, the default calendar is used. | string | `<DriveLetter>:<FileName>` For example: `"C:Calendar"`
`[criteria.Filter.LocalIdList]` | Specifies the `LocalId`s of the entries to monitor. Use `GetList` to retrieve these. If this property is not specified, all entries in the calendar are monitored. The first `LocalId` is specified in `Filter.LocalIdList[0]`. | array of strings |
`[criteria.Filter.StartRange]` | If only `StartRange` is specified, notifications are returned from this date onwards. If both `StartRange` and `EndRange` are specified, only changes that occur within these dates are notified about. | date object |
`[criteria.Filter.EndRange]` | If only `EndRange` is specified, notifications are returned until this date. If both `StartRange` and `EndRange` are specified, only changes that occur within these dates are notified about. | date object |
`[criteria.Filter.IncludeUndatedTodos]` | Specifies whether notifications are returned for `ToDo` entries that have no date. | boolean |