Calendar entry properties

The following table describes all the possible properties for calendar entry objects. Each type of entry supports a different subset of these properties. The exact set of properties used by a given entry depends on its type and the optional properties specified for it. For information about which properties are valid for a given type, see section Properties and calendar entry types.

Table: Properties for calendar entry objects

Property

Description

Type

Value

Type

Specifies the type of the entry.

string

Possible values:

  • "Anniversary"

  • "DayEvent"

  • "Meeting"

  • "Reminder"

  • "ToDo"

id

Specifies the globally unique identifier of the entry. This is unique across all calendars on any device. Child entries share the same id as their parent entry.

Note: id is generated automatically when the entry is created. It cannot be modified. If the entry is imported to another calendar, the id remains the same.

string

 

LocalId

Specifies the locally unique identifier of the entry. This is unique only within the calendar to which the entry belongs. LocalId is used to distinguish between parent and child entries that share the same id.

Note: LocalId is generated automatically when the entry is created. It cannot be modified. If the entry is imported to another calendar, a new LocalId is generated for it in that calendar.

string

 

CalendarName

Specifies the calendar file that contains the entry.

string

<DriveLetter>:<FileName>

For example: "C:Calendar"

Summary

Contains the summary description for the entry.

string

 

SeqNum

Specifies the sequence number for the entry. This is used in group scheduling.

The default value is 0.

number

 

StartTime

Specifies the start time for the entry.

date object

 

EndTime

Specifies the end time for the entry.

date object

 

InstanceStartTime

Specifies the start time for the entry instance.

Note: This property is only valid for recurring entries.

date object

 

InstanceEndTime

Specifies the end time for the entry instance.

Note: This property is only valid for recurring entries.

date object

 

Replication

Specifies the replication status of the entry.

The default value is "Open".

string

Possible values:

  • "Open" (no restriction on access)

  • "Private" (data is private, no access)

  • "Restricted" (data is confidential, restricted access)

Description

Contains the description for the entry.

string

 

Priority

Specifies the priority of the entry.

The default value is 0.

number

[0, 255]

AlarmTime

Specifies the alarm time for the entry. This must be before StartTime. However, for ToDo entries, this must be before EndTime.

date object

 

Location

Specifies the name of the location for the meeting.

string

 

Status

Specifies the status of the entry.

The default value is "NullStatus".

string

Possible values:

  • "Tentative" (meetings only)

  • "Confirmed" (meetings only)

  • "TodoNeedsAction" (to-dos only)

  • "TodoCompleted" (to-dos only)

  • "TodoInProcess" (to-dos only)

  • "Cancelled"

  • "NullStatus"

RepeatDates

Specifies a list of out-of-sequence dates on which the entry repeats.

array of date objects

 

ExDates

Specifies a list of exception dates, that is, occurrences in the original schedule that have been removed and may be replaced with different occurrences.

array of date objects

 

Method

Specifies the method for the entry.

The default value is "None".

Note: This property is only valid for iCalendar entries.

 

Possible values:

  • "None"

  • "Publish"

  • "Request"

  • "Reply"

  • "Add"

  • "Cancel"

  • "Refresh"

  • "Counter"

  • "DeclineCounter"

PhoneOwner

Specifies the phone owner.

The phone owner should match the Address property of one of the attendees (see Table: Attendees properties). That is, the phone owner should be an attendee.

string

 

Organizer

Specifies information about the meeting organizer.

object

See Table: Organizer properties.

Attendees

Specifies the meeting attendees.

array of objects

See Table: Attendees properties.

RepeatRule

Specifies the rules of recurrence for the entry.

This is only valid for parent entries. Child entries cannot have their own RepeatRule.

object

See Table: RepeatRule properties.

The following table describes the structure of Organizer. Properties enclosed in brackets are optional.

Table: Organizer properties

Property

Description

Type

[Organizer.CommonName]

Specifies the name of the organizer.

string

Organizer.Address

Specifies the address of the organizer.

string

The following table describes the structure of Attendees. Properties enclosed in brackets are optional.

Table: Attendees properties

Property

Description

Type

Value

[Attendees[].CommonName]

Specifies the common name for group scheduling.

string

 

[Attendees[].Role]

Specifies the role of the attendee.

The default value is "Required".

string

Possible values:

  • "Required"

  • "Optional"

  • "NonParticipant"

  • "Chair"

Attendees[].Address

Specifies the email address of the attendee.

string

 

[Attendees[].Status]

Specifies the status of the attendee.

The default value is "NeedsAction".

string

Possible values:

  • "NeedsAction"

  • "Accepted"

  • "Tentative"

  • "Confirmed"

  • "Declined"

  • "Completed"

  • "Delegated"

  • "InProcess"

[Attendees[].Rsvp]

Specifies whether or not a response is requested from the attendee.

The default value is false.

boolean

Possible values:

  • true

  • false

The following table describes the structure of RepeatRule. Properties enclosed in brackets are optional.

Table: RepeatRule properties

Property

Description

Type

Value

RepeatRule.Type

Specifies the type of recurrence, that is, its frequency.

For information about which RepeatRule properties to define for a given type, see Table: Valid RepeatRule properties per type of recurrence.

number

Possible values:

  • 1 (daily)

  • 2 (weekly)

  • 3 (monthly)

  • 4 (yearly)

[RepeatRule.StartDate]

Specifies the start time for the recurrence. If this is not specified, the StartTime of the entry is used.

date object

 

[RepeatRule.UntilDate]

Specifies the end date for the recurrence. The entry recurs until this date.

UntilDate is automatically modified to match the start time of the last possible instance of the recurrence. For example, if the entry is specified to recur monthly from June 1st (StartDate) to December 30th (UntilDate) on the first day of every month, the last possible instance of recurrence is December 1st. The system automatically changes UntilDate to this value.

If UntilDate is not specified, the entry recurs until the last possible date allowed by the calendar.

date object

 

[RepeatRule.Interval]

Specifies the time interval between instances of a recurring entry.

number

 

[RepeatRule.DaysInWeek]

Specifies the days of the week on which the entry recurs.

array of numbers

Possible values for an item:

  • 0 (Monday)

  • 1 (Tuesday)

  • 2 (Wednesday)

  • 3 (Thursday)

  • 4 (Friday)

  • 5 (Saturday)

  • 6 (Sunday)

[RepeatRule.MonthDays]

Specifies the days of the month on which the entry recurs.

array of numbers

Possible values for an item: [0, 30]

[RepeatRule.DaysOfMonth]

Specifies the day and week of the month on which the entry recurs.

array of objects

The properties of the object items are specified below.

[RepeatRule.DaysOfMonth[].Day]

Specifies the day of the week on which the entry recurs.

number

Possible values:

  • 0 (Monday)

  • 1 (Tuesday)

  • 2 (Wednesday)

  • 3 (Thursday)

  • 4 (Friday)

  • 5 (Saturday)

  • 6 (Sunday)

[RepeatRule.DaysOfMonth[].WeekNum]

Specifies the week of the month on which the entry recurs.

number

Possible values:

  • 1 (1st week)

  • 2 (2nd week)

  • 3 (3rd week)

  • 4 (4th week)

  • -1 (last week)

[RepeatRule.Month]

Specifies the month for a yearly recurrence.

number

Possible values:

  • 0 (January)

  • 1 (February)

  • 2 (March)

  • 3 (April)

  • 4 (May)

  • 5 (June)

  • 6 (July)

  • 7 (August)

  • 8 (September)

  • 9 (October)

  • 10 (November)

  • 11 (December)

Table: Valid RepeatRule properties per type of recurrence

Type of recurrence

Valid properties

Notes

Daily

  • Type

  • [Interval]

  • UntilDate

 

Weekly

  • Type

  • [Interval]

  • UntilDate

  • [DaysInWeek]

If DaysInWeek is not specified, it is calculated from the StartTime of the entry.

Monthly

  • Type

  • [Interval]

  • UntilDate

  • [MonthDays] or [DaysOfMonth]

If MonthDays/DaysOfMonth is not specified, it is calculated from the StartTime of the entry.

Yearly

  • Type

  • [Interval]

  • UntilDate

  • [DaysOfMonth]

  • [Month]

Only the first item of DaysOfMonth is used.

DaysOfMonth and Month should be specified together.

If DaysOfMonth/Month is not specified, it is calculated from the StartTime of the entry.