Overview
The Rootly Terraform provider lets you manage your entire Rootly configuration as code — severities, services, workflows, on-call schedules, escalation policies, form fields, alert routes, and more. With over 200 resources and 59 data sources, virtually every Rootly configuration object can be declared, versioned, and reviewed through your existing IaC pipeline.- Provider: rootlyhq/rootly on the Terraform Registry
- Current version: 5.10.0
- Minimum Terraform version: 1.0
- Downloads: 1.1M+
Authentication
The provider authenticates using a Rootly API token. Generate one from Account > API Tokens in your Rootly dashboard. You can supply credentials via the provider block or environment variables. The environment variable approach is recommended to avoid committing secrets. Environment variables (recommended):| Parameter | Env var | Required | Default |
|---|---|---|---|
api_token | ROOTLY_API_TOKEN | Yes (if env var not set) | — |
api_host | ROOTLY_API_URL | No | https://api.rootly.com |
Installation
Declare the provider in your Terraform configuration and runterraform init:
Supported Resources
The provider covers 200+ resources across all major Rootly configuration areas.Incidents & On-Call
Incidents & On-Call
Manage the building blocks of incident response and on-call operations.
| Resource | Description |
|---|---|
rootly_severity | Incident severity levels |
rootly_incident_type | Incident types |
rootly_incident_role | Incident roles and task assignments |
rootly_incident_sub_status | Custom sub-statuses |
rootly_incident_permission_set | Permission sets for incident fields |
rootly_cause | Incident causes |
rootly_environment | Environments |
rootly_on_call_role | On-call roles |
rootly_schedule | On-call schedules |
rootly_schedule_rotation | Schedule rotations |
rootly_schedule_rotation_active_day | Active days within rotations |
rootly_schedule_rotation_user | Users assigned to rotations |
rootly_on_call_shadow | Shadow assignments for learning |
rootly_override_shift | Schedule override shifts |
rootly_escalation_policy | Escalation policies |
rootly_escalation_level | Escalation levels within a policy |
rootly_escalation_path | Escalation paths |
rootly_team | Teams |
Alerts
Alerts
Configure alert routing, sources, urgencies, and grouping rules.
| Resource | Description |
|---|---|
rootly_alerts_source | Alert sources (inbound integrations) |
rootly_alert_route | Alert routing rules |
rootly_alert_routing_rule | Conditions within an alert route |
rootly_alert_group | Alert grouping configuration |
rootly_alert_urgency | Alert urgency levels |
rootly_alert_field | Custom alert fields |
rootly_heartbeat | Heartbeat monitors |
Workflows
Workflows
Automate incident response with workflows triggered by incidents, alerts, pulses, and more.
132 workflow task types are available as individual resources, covering integrations with Slack, Jira, PagerDuty, Datadog, GitHub, Notion, and many more. See the full resource list in the Terraform Registry.
| Resource | Description |
|---|---|
rootly_workflow_incident | Workflows triggered by incident events |
rootly_workflow_alert | Workflows triggered by alert events |
rootly_workflow_pulse | Workflows triggered by pulses |
rootly_workflow_post_mortem | Workflows triggered by post-mortem events |
rootly_workflow_simple | Simple scheduled or manual workflows |
rootly_workflow_group | Workflow groups for organization |
rootly_workflow_action_item | Action item automation within workflows |
rootly_workflow_custom_field_selection | Custom field conditions on workflows |
rootly_workflow_form_field_condition | Form field conditions on workflows |
Services & Catalog
Services & Catalog
Manage your service catalog, functionalities, and custom catalog entities.
| Resource | Description |
|---|---|
rootly_service | Services in your catalog |
rootly_functionality | Functionalities |
rootly_catalog | Custom catalogs |
rootly_catalog_entity | Entities within a catalog |
rootly_catalog_property | Properties on catalog entities |
rootly_catalog_checklist_template | Checklist templates for catalog entities |
Forms & Custom Fields
Forms & Custom Fields
Declare form fields, options, and placement rules for incident forms.
| Resource | Description |
|---|---|
rootly_form_field | Custom form fields |
rootly_form_field_option | Options for multi-select and dropdown fields |
rootly_form_field_placement | Field placement on incident forms |
rootly_form_field_placement_condition | Conditions controlling field visibility |
rootly_form_field_position | Field ordering within a form |
rootly_form_set | Sets of form fields |
rootly_form_set_condition | Conditions for form set activation |
rootly_custom_field | Additional custom fields |
rootly_custom_field_option | Options for custom fields |
rootly_custom_form | Custom form configurations |
Retrospectives & Post-Mortems
Retrospectives & Post-Mortems
Manage retrospective templates and processes.
| Resource | Description |
|---|---|
rootly_post_mortem_template | Post-mortem document templates |
rootly_retrospective_configuration | Retrospective configuration |
rootly_retrospective_process | Retrospective process definitions |
rootly_retrospective_process_group | Process groups |
rootly_retrospective_process_group_step | Steps within process groups |
rootly_retrospective_step | Individual retrospective steps |
Status Pages
Status Pages
Manage status pages and their templates.
| Resource | Description |
|---|---|
rootly_status_page | Status pages |
rootly_status_page_template | Status page update templates |
Communications & Roles
Communications & Roles
Manage communication templates, channels, and RBAC roles.
| Resource | Description |
|---|---|
rootly_role | RBAC roles |
rootly_authorization | Role-based authorizations |
rootly_communications_template | Communication message templates |
rootly_communications_type | Communication types |
rootly_communications_stage | Communication stages |
rootly_communications_group | Communication groups |
rootly_webhooks_endpoint | Outbound webhook endpoints |
rootly_secret | Secrets for use in workflows |
rootly_dashboard | Dashboards |
rootly_dashboard_panel | Dashboard panels |
rootly_playbook | Playbooks |
rootly_playbook_task | Tasks within a playbook |
rootly_live_call_router | Live call router configuration |
Data Sources
59 data sources let you reference existing Rootly resources in your configuration without managing them through Terraform.service, services, team, teams, severity, severities, environment, environments, functionality, functionalities, schedule, user, role, incident, workflow, alert_route, escalation_policy, on_call_role, and more.
Examples
Severities and services
On-call schedule with rotation
Workflow with Jira task
Custom form field
Importing Existing Resources
Resources already configured in Rootly can be imported into Terraform state without recreating them:Related Pages
Pulumi
Manage Rootly resources with Pulumi using JavaScript or TypeScript.
API Reference
Explore the full Rootly REST API that powers the Terraform provider.