TL;DR: Do not build new webhook ingestion on materialize_source_webhook, it is legacy; use materialize_table with webhook support. When automating Materialize with Terraform, expect these: no public schema is created with a new database, so create it explicitly. Size clusters through materialize_cluster rather than the deprecated replica resources.

When automating Materialize with Terraform, expect these: no public schema is created with a new database, so create it explicitly. Do not build new webhook ingestion on materialize_source_webhook, it is legacy; use materialize_table with webhook support. Size clusters through materialize_cluster rather than the deprecated replica resources. And identity resources tied to Frontegg (users, SSO, SCIM, app passwords) only work on Materialize Cloud, not self-managed.

Context: Materialize terraform provider skill (materializeinc/agent-skills skills/materialize-terraform-provider/SKILL.md), Common Gotchas: materialize_database does not auto-create a public schema, create one explicitly. materialize_source_webhook is legacy; new webhooks go through materialize_table. Cluster replicas are deprecated in favor of materialize_cluster with a size. Frontegg-dependent resources (users, SSO, SCIM, app passwords) fail against self-managed instances.

## When to use
You hit exactly this: Terraform for Materialize, no public schema and legacy webhook resources in Terraform.

## When not to use
A different error, or the same symptom in a different tool. This page only covers the failure above.

## Compatibility
Terraform.