1. Packages
  2. Packages
  3. Rootly
  4. API Docs
  5. ScheduleRotation
Viewing docs for Rootly v3.3.0
published on Thursday, May 7, 2026 by rootlyhq
rootly logo
Viewing docs for Rootly v3.3.0
published on Thursday, May 7, 2026 by rootlyhq

    Example Usage

    data "rootly_user" "john" {
      email = "demo@rootly.com"
    }
    
    data "rootly_user" "jane" {
      email = "demo1@rootly.com"
    }
    
    data "rootly_alert_urgency" "low" {
      name = "Low"
    }
    
    resource "rootly_team" "sre" {
      name     = "SREs On-Call"
      user_ids = [data.rootly_user.john.id, data.rootly_user.jane.id]
    }
    
    resource "rootly_schedule" "primary" {
      name              = "Primary On-Call Schedule"
      owner_user_id     = data.rootly_user.john.id
      all_time_coverage = false
    }
    
    resource "rootly_schedule_rotation" "weekdays" {
      schedule_id     = rootly_schedule.primary.id
      name            = "weekdays"
      active_all_week = false
      active_days = [
        "M",
        "T",
        "W",
        "R",
        "F",
      ]
      active_time_type = "custom"
      position         = 1
      schedule_rotationable_attributes = {
        handoff_time = "10:00"
      }
      schedule_rotationable_type = "ScheduleDailyRotation"
      time_zone                  = "America/Toronto"
    }
    
    # Define active days for the weekday rotation
    # Monday
    resource "rootly_schedule_rotation_active_day" "m1-weekday" {
      schedule_rotation_id = rootly_schedule_rotation.weekdays.id
      day_name             = "M"
      active_time_attributes {
        start_time = "10:00"
        end_time   = "18:00"
      }
    }
    # Tuesday
    resource "rootly_schedule_rotation_active_day" "t1-weekday" {
      schedule_rotation_id = rootly_schedule_rotation.weekdays.id
      day_name             = "T"
      active_time_attributes {
        start_time = "10:00"
        end_time   = "18:00"
      }
    }
    # Wednesday
    resource "rootly_schedule_rotation_active_day" "w1-weekday" {
      schedule_rotation_id = rootly_schedule_rotation.weekdays.id
      day_name             = "W"
      active_time_attributes {
        start_time = "10:00"
        end_time   = "18:00"
      }
    }
    # Thursday
    resource "rootly_schedule_rotation_active_day" "th1-weekday" {
      schedule_rotation_id = rootly_schedule_rotation.weekdays.id
      day_name             = "R"
      active_time_attributes {
        start_time = "10:00"
        end_time   = "18:00"
      }
    }
    # Friday
    resource "rootly_schedule_rotation_active_day" "f1-weekday" {
      schedule_rotation_id = rootly_schedule_rotation.weekdays.id
      day_name             = "F"
      active_time_attributes {
        start_time = "10:00"
        end_time   = "18:00"
      }
    }
    
    resource "rootly_schedule_rotation_user" "john" {
      schedule_rotation_id = rootly_schedule_rotation.weekdays.id
      position             = 1
      user_id              = data.rootly_user.john.id
    }
    
    resource "rootly_schedule_rotation_user" "jane" {
      schedule_rotation_id = rootly_schedule_rotation.weekdays.id
      position             = 2
      user_id              = data.rootly_user.jane.id
    }
    
    resource "rootly_escalation_policy" "primary" {
      name      = "Primary"
      group_ids = [rootly_team.sre.id]
    }
    
    resource "rootly_escalation_path" "default" {
      name                 = "Default"
      default              = true
      escalation_policy_id = rootly_escalation_policy.primary.id
    }
    
    resource "rootly_escalation_path" "ignore" {
      name                 = "Ignore"
      default              = false
      escalation_policy_id = rootly_escalation_policy.primary.id
      rules {
        rule_type   = "alert_urgency"
        urgency_ids = [data.rootly_alert_urgency.low.id]
      }
    }
    
    resource "rootly_escalation_level" "first" {
      escalation_policy_path_id = rootly_escalation_path.default.id
      escalation_policy_id      = rootly_escalation_policy.primary.id
      position                  = 1
      notification_target_params {
        team_members = "all"
        type         = "slack_channel"
        id           = "C06D4QHLAUE"
      }
      notification_target_params {
        type         = "schedule"
        id           = rootly_schedule.primary.id
        team_members = "all"
      }
    }
    
    # cycle-based round-robin everyone on the schedule
    resource "rootly_escalation_level" "second" {
      escalation_policy_path_id                       = rootly_escalation_path.default.id
      escalation_policy_id                            = rootly_escalation_policy.primary.id
      position                                        = 2
      delay                                           = 5
      paging_strategy_configuration_strategy          = "cycle"
      paging_strategy_configuration_schedule_strategy = "everyone"
      notification_target_params {
        type         = "schedule"
        id           = rootly_schedule.primary.id
        team_members = "all"
      }
    }
    

    Create ScheduleRotation Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new ScheduleRotation(name: string, args: ScheduleRotationArgs, opts?: CustomResourceOptions);
    @overload
    def ScheduleRotation(resource_name: str,
                         args: ScheduleRotationArgs,
                         opts: Optional[ResourceOptions] = None)
    
    @overload
    def ScheduleRotation(resource_name: str,
                         opts: Optional[ResourceOptions] = None,
                         schedule_id: Optional[str] = None,
                         schedule_rotationable_attributes: Optional[Mapping[str, str]] = None,
                         active_time_type: Optional[str] = None,
                         active_all_week: Optional[bool] = None,
                         end_time: Optional[str] = None,
                         name: Optional[str] = None,
                         position: Optional[int] = None,
                         active_time_attributes: Optional[Sequence[ScheduleRotationActiveTimeAttributeArgs]] = None,
                         schedule_rotation_members: Optional[Sequence[ScheduleRotationScheduleRotationMemberArgs]] = None,
                         active_days: Optional[Sequence[str]] = None,
                         schedule_rotationable_type: Optional[str] = None,
                         start_time: Optional[str] = None,
                         time_zone: Optional[str] = None)
    func NewScheduleRotation(ctx *Context, name string, args ScheduleRotationArgs, opts ...ResourceOption) (*ScheduleRotation, error)
    public ScheduleRotation(string name, ScheduleRotationArgs args, CustomResourceOptions? opts = null)
    public ScheduleRotation(String name, ScheduleRotationArgs args)
    public ScheduleRotation(String name, ScheduleRotationArgs args, CustomResourceOptions options)
    
    type: rootly:ScheduleRotation
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args ScheduleRotationArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args ScheduleRotationArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args ScheduleRotationArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ScheduleRotationArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ScheduleRotationArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var scheduleRotationResource = new Rootly.ScheduleRotation("scheduleRotationResource", new()
    {
        ScheduleId = "string",
        ScheduleRotationableAttributes = 
        {
            { "string", "string" },
        },
        ActiveTimeType = "string",
        ActiveAllWeek = false,
        EndTime = "string",
        Name = "string",
        Position = 0,
        ActiveTimeAttributes = new[]
        {
            new Rootly.Inputs.ScheduleRotationActiveTimeAttributeArgs
            {
                EndTime = "string",
                StartTime = "string",
            },
        },
        ScheduleRotationMembers = new[]
        {
            new Rootly.Inputs.ScheduleRotationScheduleRotationMemberArgs
            {
                MemberId = "string",
                MemberType = "string",
                Position = 0,
            },
        },
        ActiveDays = new[]
        {
            "string",
        },
        ScheduleRotationableType = "string",
        StartTime = "string",
        TimeZone = "string",
    });
    
    example, err := rootly.NewScheduleRotation(ctx, "scheduleRotationResource", &rootly.ScheduleRotationArgs{
    	ScheduleId: pulumi.String("string"),
    	ScheduleRotationableAttributes: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	ActiveTimeType: pulumi.String("string"),
    	ActiveAllWeek:  pulumi.Bool(false),
    	EndTime:        pulumi.String("string"),
    	Name:           pulumi.String("string"),
    	Position:       pulumi.Int(0),
    	ActiveTimeAttributes: rootly.ScheduleRotationActiveTimeAttributeArray{
    		&rootly.ScheduleRotationActiveTimeAttributeArgs{
    			EndTime:   pulumi.String("string"),
    			StartTime: pulumi.String("string"),
    		},
    	},
    	ScheduleRotationMembers: rootly.ScheduleRotationScheduleRotationMemberArray{
    		&rootly.ScheduleRotationScheduleRotationMemberArgs{
    			MemberId:   pulumi.String("string"),
    			MemberType: pulumi.String("string"),
    			Position:   pulumi.Int(0),
    		},
    	},
    	ActiveDays: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	ScheduleRotationableType: pulumi.String("string"),
    	StartTime:                pulumi.String("string"),
    	TimeZone:                 pulumi.String("string"),
    })
    
    var scheduleRotationResource = new ScheduleRotation("scheduleRotationResource", ScheduleRotationArgs.builder()
        .scheduleId("string")
        .scheduleRotationableAttributes(Map.of("string", "string"))
        .activeTimeType("string")
        .activeAllWeek(false)
        .endTime("string")
        .name("string")
        .position(0)
        .activeTimeAttributes(ScheduleRotationActiveTimeAttributeArgs.builder()
            .endTime("string")
            .startTime("string")
            .build())
        .scheduleRotationMembers(ScheduleRotationScheduleRotationMemberArgs.builder()
            .memberId("string")
            .memberType("string")
            .position(0)
            .build())
        .activeDays("string")
        .scheduleRotationableType("string")
        .startTime("string")
        .timeZone("string")
        .build());
    
    schedule_rotation_resource = rootly.ScheduleRotation("scheduleRotationResource",
        schedule_id="string",
        schedule_rotationable_attributes={
            "string": "string",
        },
        active_time_type="string",
        active_all_week=False,
        end_time="string",
        name="string",
        position=0,
        active_time_attributes=[{
            "end_time": "string",
            "start_time": "string",
        }],
        schedule_rotation_members=[{
            "member_id": "string",
            "member_type": "string",
            "position": 0,
        }],
        active_days=["string"],
        schedule_rotationable_type="string",
        start_time="string",
        time_zone="string")
    
    const scheduleRotationResource = new rootly.ScheduleRotation("scheduleRotationResource", {
        scheduleId: "string",
        scheduleRotationableAttributes: {
            string: "string",
        },
        activeTimeType: "string",
        activeAllWeek: false,
        endTime: "string",
        name: "string",
        position: 0,
        activeTimeAttributes: [{
            endTime: "string",
            startTime: "string",
        }],
        scheduleRotationMembers: [{
            memberId: "string",
            memberType: "string",
            position: 0,
        }],
        activeDays: ["string"],
        scheduleRotationableType: "string",
        startTime: "string",
        timeZone: "string",
    });
    
    type: rootly:ScheduleRotation
    properties:
        activeAllWeek: false
        activeDays:
            - string
        activeTimeAttributes:
            - endTime: string
              startTime: string
        activeTimeType: string
        endTime: string
        name: string
        position: 0
        scheduleId: string
        scheduleRotationMembers:
            - memberId: string
              memberType: string
              position: 0
        scheduleRotationableAttributes:
            string: string
        scheduleRotationableType: string
        startTime: string
        timeZone: string
    

    ScheduleRotation Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The ScheduleRotation resource accepts the following input properties:

    ScheduleId string
    The ID of parent schedule
    ScheduleRotationableAttributes Dictionary<string, string>
    handofftime and/or handoffday may be required, depending on schedulerotationabletype. Please see API docs for options based on schedulerotationabletype: https://docs.rootly.com/api-reference/schedulerotations/creates-a-schedule-rotation#response-data-attributes-schedule-rotationable-attributes
    ActiveAllWeek bool
    Schedule rotation active all week?. Value must be one of true or false
    ActiveDays List<string>
    Value must be one of S, M, T, W, R, F, U.
    ActiveTimeAttributes List<ScheduleRotationActiveTimeAttribute>
    Schedule rotation's active times
    ActiveTimeType string
    Value must be one of allDay, sameTime, or custom. The value chosen will override activeTimeAttributes in any rootly.ScheduleRotationActiveDay resources linked to this rootly.ScheduleRotation.
    EndTime string
    ISO8601 date and time when rotation ends. Shifts will only be created before this time.
    Name string
    The name of the schedule rotation
    Position int
    Position of the schedule rotation
    ScheduleRotationMembers List<ScheduleRotationScheduleRotationMember>
    Schedule rotation members. You can only add schedule rotation members if your account has schedule nesting feature enabled.
    ScheduleRotationableType string
    Schedule rotation type. Value must be one of ScheduleDailyRotation, ScheduleWeeklyRotation, ScheduleBiweeklyRotation, ScheduleMonthlyRotation, ScheduleCustomRotation.
    StartTime string
    ISO8601 date and time when rotation starts. Shifts will only be created after this time.
    TimeZone string
    A valid IANA time zone name.
    ScheduleId string
    The ID of parent schedule
    ScheduleRotationableAttributes map[string]string
    handofftime and/or handoffday may be required, depending on schedulerotationabletype. Please see API docs for options based on schedulerotationabletype: https://docs.rootly.com/api-reference/schedulerotations/creates-a-schedule-rotation#response-data-attributes-schedule-rotationable-attributes
    ActiveAllWeek bool
    Schedule rotation active all week?. Value must be one of true or false
    ActiveDays []string
    Value must be one of S, M, T, W, R, F, U.
    ActiveTimeAttributes []ScheduleRotationActiveTimeAttributeArgs
    Schedule rotation's active times
    ActiveTimeType string
    Value must be one of allDay, sameTime, or custom. The value chosen will override activeTimeAttributes in any rootly.ScheduleRotationActiveDay resources linked to this rootly.ScheduleRotation.
    EndTime string
    ISO8601 date and time when rotation ends. Shifts will only be created before this time.
    Name string
    The name of the schedule rotation
    Position int
    Position of the schedule rotation
    ScheduleRotationMembers []ScheduleRotationScheduleRotationMemberArgs
    Schedule rotation members. You can only add schedule rotation members if your account has schedule nesting feature enabled.
    ScheduleRotationableType string
    Schedule rotation type. Value must be one of ScheduleDailyRotation, ScheduleWeeklyRotation, ScheduleBiweeklyRotation, ScheduleMonthlyRotation, ScheduleCustomRotation.
    StartTime string
    ISO8601 date and time when rotation starts. Shifts will only be created after this time.
    TimeZone string
    A valid IANA time zone name.
    scheduleId String
    The ID of parent schedule
    scheduleRotationableAttributes Map<String,String>
    handofftime and/or handoffday may be required, depending on schedulerotationabletype. Please see API docs for options based on schedulerotationabletype: https://docs.rootly.com/api-reference/schedulerotations/creates-a-schedule-rotation#response-data-attributes-schedule-rotationable-attributes
    activeAllWeek Boolean
    Schedule rotation active all week?. Value must be one of true or false
    activeDays List<String>
    Value must be one of S, M, T, W, R, F, U.
    activeTimeAttributes List<ScheduleRotationActiveTimeAttribute>
    Schedule rotation's active times
    activeTimeType String
    Value must be one of allDay, sameTime, or custom. The value chosen will override activeTimeAttributes in any rootly.ScheduleRotationActiveDay resources linked to this rootly.ScheduleRotation.
    endTime String
    ISO8601 date and time when rotation ends. Shifts will only be created before this time.
    name String
    The name of the schedule rotation
    position Integer
    Position of the schedule rotation
    scheduleRotationMembers List<ScheduleRotationScheduleRotationMember>
    Schedule rotation members. You can only add schedule rotation members if your account has schedule nesting feature enabled.
    scheduleRotationableType String
    Schedule rotation type. Value must be one of ScheduleDailyRotation, ScheduleWeeklyRotation, ScheduleBiweeklyRotation, ScheduleMonthlyRotation, ScheduleCustomRotation.
    startTime String
    ISO8601 date and time when rotation starts. Shifts will only be created after this time.
    timeZone String
    A valid IANA time zone name.
    scheduleId string
    The ID of parent schedule
    scheduleRotationableAttributes {[key: string]: string}
    handofftime and/or handoffday may be required, depending on schedulerotationabletype. Please see API docs for options based on schedulerotationabletype: https://docs.rootly.com/api-reference/schedulerotations/creates-a-schedule-rotation#response-data-attributes-schedule-rotationable-attributes
    activeAllWeek boolean
    Schedule rotation active all week?. Value must be one of true or false
    activeDays string[]
    Value must be one of S, M, T, W, R, F, U.
    activeTimeAttributes ScheduleRotationActiveTimeAttribute[]
    Schedule rotation's active times
    activeTimeType string
    Value must be one of allDay, sameTime, or custom. The value chosen will override activeTimeAttributes in any rootly.ScheduleRotationActiveDay resources linked to this rootly.ScheduleRotation.
    endTime string
    ISO8601 date and time when rotation ends. Shifts will only be created before this time.
    name string
    The name of the schedule rotation
    position number
    Position of the schedule rotation
    scheduleRotationMembers ScheduleRotationScheduleRotationMember[]
    Schedule rotation members. You can only add schedule rotation members if your account has schedule nesting feature enabled.
    scheduleRotationableType string
    Schedule rotation type. Value must be one of ScheduleDailyRotation, ScheduleWeeklyRotation, ScheduleBiweeklyRotation, ScheduleMonthlyRotation, ScheduleCustomRotation.
    startTime string
    ISO8601 date and time when rotation starts. Shifts will only be created after this time.
    timeZone string
    A valid IANA time zone name.
    schedule_id str
    The ID of parent schedule
    schedule_rotationable_attributes Mapping[str, str]
    handofftime and/or handoffday may be required, depending on schedulerotationabletype. Please see API docs for options based on schedulerotationabletype: https://docs.rootly.com/api-reference/schedulerotations/creates-a-schedule-rotation#response-data-attributes-schedule-rotationable-attributes
    active_all_week bool
    Schedule rotation active all week?. Value must be one of true or false
    active_days Sequence[str]
    Value must be one of S, M, T, W, R, F, U.
    active_time_attributes Sequence[ScheduleRotationActiveTimeAttributeArgs]
    Schedule rotation's active times
    active_time_type str
    Value must be one of allDay, sameTime, or custom. The value chosen will override activeTimeAttributes in any rootly.ScheduleRotationActiveDay resources linked to this rootly.ScheduleRotation.
    end_time str
    ISO8601 date and time when rotation ends. Shifts will only be created before this time.
    name str
    The name of the schedule rotation
    position int
    Position of the schedule rotation
    schedule_rotation_members Sequence[ScheduleRotationScheduleRotationMemberArgs]
    Schedule rotation members. You can only add schedule rotation members if your account has schedule nesting feature enabled.
    schedule_rotationable_type str
    Schedule rotation type. Value must be one of ScheduleDailyRotation, ScheduleWeeklyRotation, ScheduleBiweeklyRotation, ScheduleMonthlyRotation, ScheduleCustomRotation.
    start_time str
    ISO8601 date and time when rotation starts. Shifts will only be created after this time.
    time_zone str
    A valid IANA time zone name.
    scheduleId String
    The ID of parent schedule
    scheduleRotationableAttributes Map<String>
    handofftime and/or handoffday may be required, depending on schedulerotationabletype. Please see API docs for options based on schedulerotationabletype: https://docs.rootly.com/api-reference/schedulerotations/creates-a-schedule-rotation#response-data-attributes-schedule-rotationable-attributes
    activeAllWeek Boolean
    Schedule rotation active all week?. Value must be one of true or false
    activeDays List<String>
    Value must be one of S, M, T, W, R, F, U.
    activeTimeAttributes List<Property Map>
    Schedule rotation's active times
    activeTimeType String
    Value must be one of allDay, sameTime, or custom. The value chosen will override activeTimeAttributes in any rootly.ScheduleRotationActiveDay resources linked to this rootly.ScheduleRotation.
    endTime String
    ISO8601 date and time when rotation ends. Shifts will only be created before this time.
    name String
    The name of the schedule rotation
    position Number
    Position of the schedule rotation
    scheduleRotationMembers List<Property Map>
    Schedule rotation members. You can only add schedule rotation members if your account has schedule nesting feature enabled.
    scheduleRotationableType String
    Schedule rotation type. Value must be one of ScheduleDailyRotation, ScheduleWeeklyRotation, ScheduleBiweeklyRotation, ScheduleMonthlyRotation, ScheduleCustomRotation.
    startTime String
    ISO8601 date and time when rotation starts. Shifts will only be created after this time.
    timeZone String
    A valid IANA time zone name.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the ScheduleRotation resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing ScheduleRotation Resource

    Get an existing ScheduleRotation resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: ScheduleRotationState, opts?: CustomResourceOptions): ScheduleRotation
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            active_all_week: Optional[bool] = None,
            active_days: Optional[Sequence[str]] = None,
            active_time_attributes: Optional[Sequence[ScheduleRotationActiveTimeAttributeArgs]] = None,
            active_time_type: Optional[str] = None,
            end_time: Optional[str] = None,
            name: Optional[str] = None,
            position: Optional[int] = None,
            schedule_id: Optional[str] = None,
            schedule_rotation_members: Optional[Sequence[ScheduleRotationScheduleRotationMemberArgs]] = None,
            schedule_rotationable_attributes: Optional[Mapping[str, str]] = None,
            schedule_rotationable_type: Optional[str] = None,
            start_time: Optional[str] = None,
            time_zone: Optional[str] = None) -> ScheduleRotation
    func GetScheduleRotation(ctx *Context, name string, id IDInput, state *ScheduleRotationState, opts ...ResourceOption) (*ScheduleRotation, error)
    public static ScheduleRotation Get(string name, Input<string> id, ScheduleRotationState? state, CustomResourceOptions? opts = null)
    public static ScheduleRotation get(String name, Output<String> id, ScheduleRotationState state, CustomResourceOptions options)
    resources:  _:    type: rootly:ScheduleRotation    get:      id: ${id}
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    ActiveAllWeek bool
    Schedule rotation active all week?. Value must be one of true or false
    ActiveDays List<string>
    Value must be one of S, M, T, W, R, F, U.
    ActiveTimeAttributes List<ScheduleRotationActiveTimeAttribute>
    Schedule rotation's active times
    ActiveTimeType string
    Value must be one of allDay, sameTime, or custom. The value chosen will override activeTimeAttributes in any rootly.ScheduleRotationActiveDay resources linked to this rootly.ScheduleRotation.
    EndTime string
    ISO8601 date and time when rotation ends. Shifts will only be created before this time.
    Name string
    The name of the schedule rotation
    Position int
    Position of the schedule rotation
    ScheduleId string
    The ID of parent schedule
    ScheduleRotationMembers List<ScheduleRotationScheduleRotationMember>
    Schedule rotation members. You can only add schedule rotation members if your account has schedule nesting feature enabled.
    ScheduleRotationableAttributes Dictionary<string, string>
    handofftime and/or handoffday may be required, depending on schedulerotationabletype. Please see API docs for options based on schedulerotationabletype: https://docs.rootly.com/api-reference/schedulerotations/creates-a-schedule-rotation#response-data-attributes-schedule-rotationable-attributes
    ScheduleRotationableType string
    Schedule rotation type. Value must be one of ScheduleDailyRotation, ScheduleWeeklyRotation, ScheduleBiweeklyRotation, ScheduleMonthlyRotation, ScheduleCustomRotation.
    StartTime string
    ISO8601 date and time when rotation starts. Shifts will only be created after this time.
    TimeZone string
    A valid IANA time zone name.
    ActiveAllWeek bool
    Schedule rotation active all week?. Value must be one of true or false
    ActiveDays []string
    Value must be one of S, M, T, W, R, F, U.
    ActiveTimeAttributes []ScheduleRotationActiveTimeAttributeArgs
    Schedule rotation's active times
    ActiveTimeType string
    Value must be one of allDay, sameTime, or custom. The value chosen will override activeTimeAttributes in any rootly.ScheduleRotationActiveDay resources linked to this rootly.ScheduleRotation.
    EndTime string
    ISO8601 date and time when rotation ends. Shifts will only be created before this time.
    Name string
    The name of the schedule rotation
    Position int
    Position of the schedule rotation
    ScheduleId string
    The ID of parent schedule
    ScheduleRotationMembers []ScheduleRotationScheduleRotationMemberArgs
    Schedule rotation members. You can only add schedule rotation members if your account has schedule nesting feature enabled.
    ScheduleRotationableAttributes map[string]string
    handofftime and/or handoffday may be required, depending on schedulerotationabletype. Please see API docs for options based on schedulerotationabletype: https://docs.rootly.com/api-reference/schedulerotations/creates-a-schedule-rotation#response-data-attributes-schedule-rotationable-attributes
    ScheduleRotationableType string
    Schedule rotation type. Value must be one of ScheduleDailyRotation, ScheduleWeeklyRotation, ScheduleBiweeklyRotation, ScheduleMonthlyRotation, ScheduleCustomRotation.
    StartTime string
    ISO8601 date and time when rotation starts. Shifts will only be created after this time.
    TimeZone string
    A valid IANA time zone name.
    activeAllWeek Boolean
    Schedule rotation active all week?. Value must be one of true or false
    activeDays List<String>
    Value must be one of S, M, T, W, R, F, U.
    activeTimeAttributes List<ScheduleRotationActiveTimeAttribute>
    Schedule rotation's active times
    activeTimeType String
    Value must be one of allDay, sameTime, or custom. The value chosen will override activeTimeAttributes in any rootly.ScheduleRotationActiveDay resources linked to this rootly.ScheduleRotation.
    endTime String
    ISO8601 date and time when rotation ends. Shifts will only be created before this time.
    name String
    The name of the schedule rotation
    position Integer
    Position of the schedule rotation
    scheduleId String
    The ID of parent schedule
    scheduleRotationMembers List<ScheduleRotationScheduleRotationMember>
    Schedule rotation members. You can only add schedule rotation members if your account has schedule nesting feature enabled.
    scheduleRotationableAttributes Map<String,String>
    handofftime and/or handoffday may be required, depending on schedulerotationabletype. Please see API docs for options based on schedulerotationabletype: https://docs.rootly.com/api-reference/schedulerotations/creates-a-schedule-rotation#response-data-attributes-schedule-rotationable-attributes
    scheduleRotationableType String
    Schedule rotation type. Value must be one of ScheduleDailyRotation, ScheduleWeeklyRotation, ScheduleBiweeklyRotation, ScheduleMonthlyRotation, ScheduleCustomRotation.
    startTime String
    ISO8601 date and time when rotation starts. Shifts will only be created after this time.
    timeZone String
    A valid IANA time zone name.
    activeAllWeek boolean
    Schedule rotation active all week?. Value must be one of true or false
    activeDays string[]
    Value must be one of S, M, T, W, R, F, U.
    activeTimeAttributes ScheduleRotationActiveTimeAttribute[]
    Schedule rotation's active times
    activeTimeType string
    Value must be one of allDay, sameTime, or custom. The value chosen will override activeTimeAttributes in any rootly.ScheduleRotationActiveDay resources linked to this rootly.ScheduleRotation.
    endTime string
    ISO8601 date and time when rotation ends. Shifts will only be created before this time.
    name string
    The name of the schedule rotation
    position number
    Position of the schedule rotation
    scheduleId string
    The ID of parent schedule
    scheduleRotationMembers ScheduleRotationScheduleRotationMember[]
    Schedule rotation members. You can only add schedule rotation members if your account has schedule nesting feature enabled.
    scheduleRotationableAttributes {[key: string]: string}
    handofftime and/or handoffday may be required, depending on schedulerotationabletype. Please see API docs for options based on schedulerotationabletype: https://docs.rootly.com/api-reference/schedulerotations/creates-a-schedule-rotation#response-data-attributes-schedule-rotationable-attributes
    scheduleRotationableType string
    Schedule rotation type. Value must be one of ScheduleDailyRotation, ScheduleWeeklyRotation, ScheduleBiweeklyRotation, ScheduleMonthlyRotation, ScheduleCustomRotation.
    startTime string
    ISO8601 date and time when rotation starts. Shifts will only be created after this time.
    timeZone string
    A valid IANA time zone name.
    active_all_week bool
    Schedule rotation active all week?. Value must be one of true or false
    active_days Sequence[str]
    Value must be one of S, M, T, W, R, F, U.
    active_time_attributes Sequence[ScheduleRotationActiveTimeAttributeArgs]
    Schedule rotation's active times
    active_time_type str
    Value must be one of allDay, sameTime, or custom. The value chosen will override activeTimeAttributes in any rootly.ScheduleRotationActiveDay resources linked to this rootly.ScheduleRotation.
    end_time str
    ISO8601 date and time when rotation ends. Shifts will only be created before this time.
    name str
    The name of the schedule rotation
    position int
    Position of the schedule rotation
    schedule_id str
    The ID of parent schedule
    schedule_rotation_members Sequence[ScheduleRotationScheduleRotationMemberArgs]
    Schedule rotation members. You can only add schedule rotation members if your account has schedule nesting feature enabled.
    schedule_rotationable_attributes Mapping[str, str]
    handofftime and/or handoffday may be required, depending on schedulerotationabletype. Please see API docs for options based on schedulerotationabletype: https://docs.rootly.com/api-reference/schedulerotations/creates-a-schedule-rotation#response-data-attributes-schedule-rotationable-attributes
    schedule_rotationable_type str
    Schedule rotation type. Value must be one of ScheduleDailyRotation, ScheduleWeeklyRotation, ScheduleBiweeklyRotation, ScheduleMonthlyRotation, ScheduleCustomRotation.
    start_time str
    ISO8601 date and time when rotation starts. Shifts will only be created after this time.
    time_zone str
    A valid IANA time zone name.
    activeAllWeek Boolean
    Schedule rotation active all week?. Value must be one of true or false
    activeDays List<String>
    Value must be one of S, M, T, W, R, F, U.
    activeTimeAttributes List<Property Map>
    Schedule rotation's active times
    activeTimeType String
    Value must be one of allDay, sameTime, or custom. The value chosen will override activeTimeAttributes in any rootly.ScheduleRotationActiveDay resources linked to this rootly.ScheduleRotation.
    endTime String
    ISO8601 date and time when rotation ends. Shifts will only be created before this time.
    name String
    The name of the schedule rotation
    position Number
    Position of the schedule rotation
    scheduleId String
    The ID of parent schedule
    scheduleRotationMembers List<Property Map>
    Schedule rotation members. You can only add schedule rotation members if your account has schedule nesting feature enabled.
    scheduleRotationableAttributes Map<String>
    handofftime and/or handoffday may be required, depending on schedulerotationabletype. Please see API docs for options based on schedulerotationabletype: https://docs.rootly.com/api-reference/schedulerotations/creates-a-schedule-rotation#response-data-attributes-schedule-rotationable-attributes
    scheduleRotationableType String
    Schedule rotation type. Value must be one of ScheduleDailyRotation, ScheduleWeeklyRotation, ScheduleBiweeklyRotation, ScheduleMonthlyRotation, ScheduleCustomRotation.
    startTime String
    ISO8601 date and time when rotation starts. Shifts will only be created after this time.
    timeZone String
    A valid IANA time zone name.

    Supporting Types

    ScheduleRotationActiveTimeAttribute, ScheduleRotationActiveTimeAttributeArgs

    EndTime string
    End time for schedule rotation active time
    StartTime string
    Start time for schedule rotation active time
    EndTime string
    End time for schedule rotation active time
    StartTime string
    Start time for schedule rotation active time
    endTime String
    End time for schedule rotation active time
    startTime String
    Start time for schedule rotation active time
    endTime string
    End time for schedule rotation active time
    startTime string
    Start time for schedule rotation active time
    end_time str
    End time for schedule rotation active time
    start_time str
    Start time for schedule rotation active time
    endTime String
    End time for schedule rotation active time
    startTime String
    Start time for schedule rotation active time

    ScheduleRotationScheduleRotationMember, ScheduleRotationScheduleRotationMemberArgs

    MemberId string
    ID of the member
    MemberType string
    Type of member. Value must be one of Schedule or User.
    Position int
    Position of the member in rotation
    MemberId string
    ID of the member
    MemberType string
    Type of member. Value must be one of Schedule or User.
    Position int
    Position of the member in rotation
    memberId String
    ID of the member
    memberType String
    Type of member. Value must be one of Schedule or User.
    position Integer
    Position of the member in rotation
    memberId string
    ID of the member
    memberType string
    Type of member. Value must be one of Schedule or User.
    position number
    Position of the member in rotation
    member_id str
    ID of the member
    member_type str
    Type of member. Value must be one of Schedule or User.
    position int
    Position of the member in rotation
    memberId String
    ID of the member
    memberType String
    Type of member. Value must be one of Schedule or User.
    position Number
    Position of the member in rotation

    Import

    rootly.ScheduleRotation can be imported using the import command.

    $ pulumi import rootly:index/scheduleRotation:ScheduleRotation primary a816421c-6ceb-481a-87c4-585e47451f24
    

    Or using an import block.

    Locate the resource id in the web app, or retrieve it by listing resources through the API if it’s not visible in the web app.

    HCL can be generated from the import block using the -generate-config-out flag.

    pulumi preview -generate-config-out=generated.tf
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    rootly rootlyhq/pulumi-rootly
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the rootly Terraform Provider.
    rootly logo
    Viewing docs for Rootly v3.3.0
    published on Thursday, May 7, 2026 by rootlyhq
      Try Pulumi Cloud free. Your team will thank you.