1. Get a read_write API key
The provider talks to the REST API, which is available on Growth and Scale. Generate a key with read_write permission from your account's API & MCP access section and export it as REALUPTIME_API_KEY. A read-only key can plan but every apply is refused with RU-1004.
2. Build the provider and point Terraform at it
The source is public at github.com/RealUptimeHQ/terraform-provider-realuptime and builds with go build. It is not on the Terraform Registry yet, so add a dev_overrides entry for RealUptimeHQ/realuptime in ~/.terraformrc and skip terraform init. The docs page shows the exact block.
3. Declare resources with the API's own field names
realuptime_check creates an http monitor (regions and response assertions update in place; name, url and interval_seconds replace the check). realuptime_status_page, realuptime_status_page_component and realuptime_notification_channel cover the rest, and data.realuptime_status_page finds the page created at signup by slug.
4. Import what already exists instead of recreating it
terraform import works by id for checks, pages and channels, and by <status page id>/<component id> for components. A channel's credential is write-only, so the first plan after import sets config from your configuration once.
Go deeper
The full reference lives in the docs: Terraform provider documentation. Error codes named above are each explained in the error-code reference.