Stay organized with collections Save and categorize content based on your preferences.
RecurrenceRuleRepresents a recurrence rule for an event series.
Note that this class also behaves like the EventRecurrence
that it belongs to, allowing you to chain rule creation together like so:
const recurrence = CalendarApp.newRecurrence().addDailyRule().times(3).interval(2).addWeeklyExclusion().times(2);
Modifiers like
times(times)
and
interval(interval)
are applied to the most recently added rule.
Detailed documentationaddDailyExclusion()
Adds a rule that excludes occurrences on a daily basis.
// Creates a rule that recurs every week after the first 30 days. const recurrence = CalendarApp.newRecurrence().addWeeklyRule().addDailyExclusion().times(30);Return
RecurrenceRule
— the new RecurrenceRule
Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:
https://www.googleapis.com/auth/calendar
https://www.google.com/calendar/feeds
addDailyRule()
Adds a rule that causes the event to recur on a daily basis.
// Creates a rule that recurs every day for ten days. const recurrence = CalendarApp.newRecurrence().addDailyRule().times(10);Return
RecurrenceRule
— the new RecurrenceRule
Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:
https://www.googleapis.com/auth/calendar
https://www.google.com/calendar/feeds
addDate(date)
Adds a rule that causes the event to recur on a specific date.
Parameters Name Type Descriptiondate
Date
Return
EventRecurrence
— this EventRecurrence for chaining
Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:
https://www.googleapis.com/auth/calendar
https://www.google.com/calendar/feeds
addDateExclusion(date)
Adds a rule that excludes an occurrence for a specific date.
Parameters Name Type Descriptiondate
Date
Return
EventRecurrence
— this EventRecurrence for chaining
Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:
https://www.googleapis.com/auth/calendar
https://www.google.com/calendar/feeds
addMonthlyExclusion()
Adds a rule that excludes occurrences on a monthly basis.
By default the exclusion is applied on the same day of the month as the first event in the series, but this can be altered by calling onlyOnMonthDay(day)
or onlyOnMonthDays(days)
.
RecurrenceRule
— the new RecurrenceRule
Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:
https://www.googleapis.com/auth/calendar
https://www.google.com/calendar/feeds
addMonthlyRule()
Adds a rule that causes the event to recur on a monthly basis.
By default the event recurs on the same day of the month as the first event in the series, but this can be altered by calling onlyOnMonthDay(day)
or onlyOnMonthDays(days)
.
// Creates a rule that recurs every month for three months. const recurrence = CalendarApp.newRecurrence().addMonthlyRule().times(4);Return
RecurrenceRule
— the new RecurrenceRule
Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:
https://www.googleapis.com/auth/calendar
https://www.google.com/calendar/feeds
addWeeklyExclusion()
Adds a rule that excludes occurrences on a weekly basis.
By default the exclusion is applied on the same day of the week as the first event in the series, but this can be altered by calling onlyOnWeekday(day)
or onlyOnWeekdays(days)
.
// Creates a rule that recurs every day except the first four Wednesdays. const recurrence = CalendarApp.newRecurrence() .addDailyRule() .addWeeklyExclusion() .onlyOnWeekday(CalendarApp.Weekday.WEDNESDAY) .times(4);Return
RecurrenceRule
— the new RecurrenceRule
Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:
https://www.googleapis.com/auth/calendar
https://www.google.com/calendar/feeds
addWeeklyRule()
Adds a rule that causes the event to recur on a weekly basis.
By default the event recurs on the same day of the week as the first event in the series, but this can be altered by calling onlyOnWeekday(day)
or onlyOnWeekdays(days)
.
// Creates a rule that recurs every week for ten weeks. const recurrence = CalendarApp.newRecurrence().addWeeklyRule().times(10);Return
RecurrenceRule
— the new RecurrenceRule
Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:
https://www.googleapis.com/auth/calendar
https://www.google.com/calendar/feeds
addYearlyExclusion()
Adds a rule that excludes occurrences on a yearly basis.
By default the exclusion is applied on the same day of the year as the first event in the series, but this can be altered by calling onlyOnYearDay(day)
or onlyOnYearDays(days)
.
RecurrenceRule
— the new RecurrenceRule
Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:
https://www.googleapis.com/auth/calendar
https://www.google.com/calendar/feeds
addYearlyRule()
Adds a rule that causes the event to recur on a yearly basis.
By default the event recurs on the same day of the year as the first event in the series, but this can be altered by calling onlyOnYearDay(day)
or onlyOnYearDays(days)
.
RecurrenceRule
— the new RecurrenceRule
Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:
https://www.googleapis.com/auth/calendar
https://www.google.com/calendar/feeds
interval(interval)
Configures the rule to only apply at this interval of the rule's time unit.
// Creates a rule that recurs every fourth week. const recurrence = CalendarApp.newRecurrence().addWeeklyRule().interval(4);Parameters Name Type Description
interval
Integer
the interval in the rule's time unit Return
RecurrenceRule
— this RecurrenceRule for chaining
onlyInMonth(month)
Configures the rule to only apply to a specific month.
// Creates a rule that recurs every week in February. const recurrence = CalendarApp.newRecurrence().addWeeklyRule().onlyInMonth( CalendarApp.Month.FEBRUARY);Parameters Name Type Description
month
Month
the month Return
RecurrenceRule
— this RecurrenceRule for chaining
onlyInMonths(months)
Configures the rule to only apply to specific months.
// Creates a rule that recurs every week in February and March. const recurrence = CalendarApp.newRecurrence().addWeeklyRule().onlyInMonths( [CalendarApp.Month.FEBRUARY, CalendarApp.Month.MARCH]);Parameters Name Type Description
months
Month[]
the months Return
RecurrenceRule
— this RecurrenceRule for chaining
onlyOnMonthDay(day)
Configures the rule to only apply to a specific day of the month.
// Creates a rule that recurs every month on the fifth day of the month. const recurrence = CalendarApp.newRecurrence().addMonthlyRule().onlyOnMonthDay(5);Parameters Name Type Description
day
Integer
the day of the month Return
RecurrenceRule
— this RecurrenceRule for chaining
onlyOnMonthDays(days)
Configures the rule to only apply to specific days of the month.
// Creates a rule that recurs every month on the first and fifteenth day of the // month. const recurrence = CalendarApp.newRecurrence().addMonthlyRule().onlyOnMonthDays([1, 15]);Parameters Name Type Description
days
Integer[]
the days of the month Return
RecurrenceRule
— this RecurrenceRule for chaining
onlyOnWeek(week)
Configures the rule to only apply to a specific week of the year.
// Creates a rule that recurs on the fifth week of every year. const recurrence = CalendarApp.newRecurrence().addWeeklyRule().onlyOnWeek(5);Parameters Name Type Description
week
Integer
the week Return
RecurrenceRule
— this RecurrenceRule for chaining
onlyOnWeekday(day)
Configures the rule to only apply to a specific day of the week.
// Creates a rule that recurs every week on Wednesdays. const recurrence = CalendarApp.newRecurrence().addWeeklyRule().onlyOnWeekday( CalendarApp.Weekday.WEDNESDAY);Parameters Name Type Description
day
Weekday
the day of the week Return
RecurrenceRule
— this RecurrenceRule for chaining
onlyOnWeekdays(days)
Configures the rule to only apply to specific days of the week.
// Creates a rule that recurs every week on Tuesdays and Thursdays. const recurrence = CalendarApp.newRecurrence().addWeeklyRule().onlyOnWeekdays( [CalendarApp.Weekday.TUESDAY, CalendarApp.Weekday.THURSDAY]);Parameters Name Type Description
days
Weekday[]
the days of the week Return
RecurrenceRule
— this RecurrenceRule for chaining
onlyOnWeeks(weeks)
Configures the rule to only apply to specific weeks of the year.
// Creates a rule that recurs on the fifth and tenth weeks of every year. const recurrence = CalendarApp.newRecurrence().addWeeklyRule().onlyOnWeeks([5, 10]);Parameters Name Type Description
weeks
Integer[]
the weeks Return
RecurrenceRule
— this RecurrenceRule for chaining
onlyOnYearDay(day)
Configures the rule to only apply to a specific day of the year.
// Creates a rule that recurs every year on February 15 (the 46th day). const recurrence = CalendarApp.newRecurrence().addYearlyRule().onlyOnYearDay(46);Parameters Name Type Description
day
Integer
the day of the year Return
RecurrenceRule
— this RecurrenceRule for chaining
onlyOnYearDays(days)
Configures the rule to only apply to specific days of the year.
// Creates a rule that recurs every year on January 20 and February 15. const recurrence = CalendarApp.newRecurrence().addYearlyRule().onlyOnYearDay([20, 46]);Parameters Name Type Description
days
Integer[]
the days of the year Return
RecurrenceRule
— this RecurrenceRule for chaining
setTimeZone(timeZone)
Sets the time zone for this recurrence. This affects the date and time that events recur on, and whether the event shifts with daylight savings time. Defaults to the calendar's time zone.
Parameters Name Type DescriptiontimeZone
String
the time zone, specified in "long" format (e.g., 'America/New_York', as listed by Joda.org) Return
EventRecurrence
— this EventRecurrence for chaining
Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:
https://www.googleapis.com/auth/calendar
https://www.google.com/calendar/feeds
times(times)
Configures the rule to end after a given number of occurrences.
// Creates a rule that recurs every day for ten days. const recurrence = CalendarApp.newRecurrence().addDailyRule().times(10);Parameters Name Type Description
times
Integer
the number of times to recur Return
RecurrenceRule
— this RecurrenceRule for chaining
until(endDate)
Configures the rule to end on a given date (inclusive).
// Creates a rule that recurs every day through the end of 2013. const recurrence = CalendarApp.newRecurrence().addDailyRule().until( new Date('December 31, 2013'));Parameters Name Type Description
endDate
Date
Return
RecurrenceRule
— this RecurrenceRule for chaining
Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:
https://www.googleapis.com/auth/calendar
https://www.google.com/calendar/feeds
weekStartsOn(day)
Configures which day a week starts on, for the purposes of applying the rule.
// Creates a weekly rule where weeks start on Monday. const recurrence = CalendarApp.newRecurrence().addWeeklyRule().weekStartsOn( CalendarApp.Weekday.MONDAY);Parameters Name Type Description
day
Weekday
the day on which the week starts Return
RecurrenceRule
— this RecurrenceRule for chaining
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2024-12-03 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-12-03 UTC."],[[["The `RecurrenceRule` class in Google Apps Script defines how an event series repeats in Google Calendar, offering flexibility for complex patterns."],["It supports daily, weekly, monthly, and yearly recurrence rules, with options to exclude specific dates and set end conditions."],["Methods like `interval()`, `times()`, and `until()` allow control over frequency and duration of the recurrence."],["`only...()` methods refine the pattern by restricting recurrence to specific times, weekdays, or months."],["Chaining methods enables creation of intricate recurring event schedules within Google Calendar."]]],[]]
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4