Convert a manifest to Terraform
convert_to_terraformConvert a Control Plane resource manifest (YAML or JSON) into the equivalent Terraform (HCL). The manifest is first DRY-RUN VALIDATED against the API (no resource is created) — if it fails validation you get the error instead of HCL, so the returned Terraform always corresponds to a schema-valid resource. Pass gvc when the kind is GVC-scoped (workload, identity, volumeset). Set generateImports to also return ready-to-run terraform import commands. To convert an EXISTING resource instead of a manifest, use export_terraform.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| gvc | No | Required only when the manifest kind is GVC-scoped (workload, identity, volumeset). | |
| org | Yes | Organization slug (lowercase kebab-case). NEVER guess — if the user has not named one, ask. On org-not-found, stop and ask; do not retry variants. | |
| manifest | Yes | A single Control Plane resource manifest as YAML or JSON (must include `kind` and `name`). It is dry-run validated against the API before conversion, so an invalid manifest returns the validation error instead of HCL. | |
| generateImports | No | Also return the matching `terraform import` commands, one per resource with the import IDs prefilled. Run them after `terraform init` and before the first `terraform apply` so the existing resources are adopted into state instead of re-created. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ok | Yes | Whether the call succeeded. | |
| data | No | The full machine-readable result — list rows, the resource object, query results. Read THIS, not just the summary. | |
| summary | Yes | One-line summary of the result. | |
| nextSteps | No | Recommended follow-up actions for this task, in order. |