{
  "terraforms": [
    {
      "id": "terraform-1",
      "title": "Token Introspect configuration",
      "description": "Create a Token Introspect configuration for a Person node with email claim.",
      "category": "Token Introspect",
      "lastUpdated": "2026-03-20",
      "terraformProviderDocs": [
        "https://registry.terraform.io/providers/indykite/indykite/latest/docs/resources/token_introspect"
      ],
      "relatedGuides": [
        "/guides/guide-terraform",
        "/guides/guide-environment"
      ],
      "commonErrors": [
        {
          "code": "INVALID_ARGUMENT",
          "message": "Invalid token_matcher configuration",
          "solution": "Ensure the token_matcher references a valid node type and property path"
        },
        {
          "code": "NOT_FOUND",
          "message": "Application agent not found",
          "solution": "Verify the app_agent_id references an existing application agent"
        }
      ],
      "links": {
        "html": "/terraform/terraform-1",
        "markdown": "/terraform/terraform-1.md",
        "json": "/terraform/terraform-1.json"
      }
    },
    {
      "id": "terraform-2",
      "title": "Environment configuration",
      "description": "Create a project, an application, an application agent, an application agent credential to get an Application token.",
      "category": "Environment",
      "lastUpdated": "2026-03-20",
      "terraformProviderDocs": [
        "https://registry.terraform.io/providers/indykite/indykite/latest/docs/resources/application_space",
        "https://registry.terraform.io/providers/indykite/indykite/latest/docs/resources/application",
        "https://registry.terraform.io/providers/indykite/indykite/latest/docs/resources/application_agent",
        "https://registry.terraform.io/providers/indykite/indykite/latest/docs/resources/application_agent_credential"
      ],
      "relatedGuides": [
        "/guides/guide-terraform",
        "/guides/guide-environment",
        "/guides/guide-credentials"
      ],
      "commonErrors": [
        {
          "code": "ALREADY_EXISTS",
          "message": "Resource with this name already exists",
          "solution": "Use a unique name or import the existing resource into Terraform state"
        },
        {
          "code": "PERMISSION_DENIED",
          "message": "Insufficient permissions",
          "solution": "Ensure ServiceAccount credentials have organization-level permissions"
        }
      ],
      "links": {
        "html": "/terraform/terraform-2",
        "markdown": "/terraform/terraform-2.md",
        "json": "/terraform/terraform-2.json"
      }
    },
    {
      "id": "terraform-3",
      "title": "Kafka Outbound Events / Signal - Config",
      "description": "Create an Outbound Events configuration with a Kafka provider.",
      "category": "Outbound Events",
      "lastUpdated": "2026-03-20",
      "terraformProviderDocs": [
        "https://registry.terraform.io/providers/indykite/indykite/latest/docs/resources/event_sink"
      ],
      "relatedGuides": [
        "/guides/guide-terraform",
        "/guides/guide-outbound-events"
      ],
      "commonErrors": [
        {
          "code": "ALREADY_EXISTS",
          "message": "Only one event sink per project",
          "solution": "Delete the existing event sink before creating a new one, or import it into Terraform state"
        },
        {
          "code": "INVALID_ARGUMENT",
          "message": "Invalid Kafka configuration",
          "solution": "Verify Confluent API key, secret, and bootstrap server URL are correct"
        }
      ],
      "links": {
        "html": "/terraform/terraform-3",
        "markdown": "/terraform/terraform-3.md",
        "json": "/terraform/terraform-3.json"
      }
    },
    {
      "id": "terraform-4",
      "title": "Kafka Outbound Events / Signal - Capture",
      "description": "Create an Outbound Events configuration with a Kafka provider to stream data capture events.",
      "category": "Outbound Events",
      "lastUpdated": "2026-03-20",
      "terraformProviderDocs": [
        "https://registry.terraform.io/providers/indykite/indykite/latest/docs/resources/event_sink"
      ],
      "relatedGuides": [
        "/guides/guide-terraform",
        "/guides/guide-outbound-events"
      ],
      "commonErrors": [
        {
          "code": "ALREADY_EXISTS",
          "message": "Only one event sink per project",
          "solution": "Delete the existing event sink before creating a new one"
        },
        {
          "code": "INVALID_ARGUMENT",
          "message": "Invalid filter expression",
          "solution": "Check that the label and property filters match your IKG schema"
        }
      ],
      "links": {
        "html": "/terraform/terraform-4",
        "markdown": "/terraform/terraform-4.md",
        "json": "/terraform/terraform-4.json"
      }
    },
    {
      "id": "terraform-5",
      "title": "Azure Event Grid Outbound Events / Signal - Capture",
      "description": "Create an Outbound Events configuration with Azure Event Grid to stream batch upsert events.",
      "category": "Outbound Events",
      "lastUpdated": "2026-03-20",
      "terraformProviderDocs": [
        "https://registry.terraform.io/providers/indykite/indykite/latest/docs/resources/event_sink"
      ],
      "relatedGuides": [
        "/guides/guide-terraform",
        "/guides/guide-outbound-events"
      ],
      "commonErrors": [
        {
          "code": "ALREADY_EXISTS",
          "message": "Only one event sink per project",
          "solution": "Delete the existing event sink before creating a new one"
        },
        {
          "code": "INVALID_ARGUMENT",
          "message": "Invalid Azure Event Grid configuration",
          "solution": "Verify the Event Grid namespace URL and access key are correct"
        }
      ],
      "links": {
        "html": "/terraform/terraform-5",
        "markdown": "/terraform/terraform-5.md",
        "json": "/terraform/terraform-5.json"
      }
    },
    {
      "id": "terraform-6",
      "title": "Azure Service Bus Outbound Events / Signal - Capture",
      "description": "Create an Outbound Events configuration with Azure Service Bus to stream capture events.",
      "category": "Outbound Events",
      "lastUpdated": "2026-03-20",
      "terraformProviderDocs": [
        "https://registry.terraform.io/providers/indykite/indykite/latest/docs/resources/event_sink"
      ],
      "relatedGuides": [
        "/guides/guide-terraform",
        "/guides/guide-outbound-events"
      ],
      "commonErrors": [
        {
          "code": "ALREADY_EXISTS",
          "message": "Only one event sink per project",
          "solution": "Delete the existing event sink before creating a new one"
        },
        {
          "code": "INVALID_ARGUMENT",
          "message": "Invalid Azure Service Bus configuration",
          "solution": "Verify the Service Bus namespace URL and shared access key are correct"
        }
      ],
      "links": {
        "html": "/terraform/terraform-6",
        "markdown": "/terraform/terraform-6.md",
        "json": "/terraform/terraform-6.json"
      }
    }
  ]
}