Development
Визуализатор Terraform Plan
Разбирает Terraform plan в JSON или текстовом виде, классифицирует изменения и показывает сводку по зависимостям
html· HTML-результатОткрыть инструмент
Быстрый старт
Вызовите этот инструмент из своего кода на трёх языках.
cURL
# 1) Request a presigned URL → returns { uploadUrl, storageKey }
curl -X POST 'https://api.elysiatools.com/api/upload/presign/terraform-plan-visualizer' \
-H 'Content-Type: application/json' \
-d '{"filename":"planFile.ext","contentType":"application/octet-stream","size":12345}'
# 2) PUT the file bytes directly to the presigned uploadUrl
curl -X PUT '<presigned uploadUrl>' \
--data-binary @/path/to/file.ext
# 3) Call the tool, passing the returned storageKey for each file field
curl -X POST 'https://api.elysiatools.com/ru/api/tools/terraform-plan-visualizer' \
-F 'planInput={
"format_version": "1.2",
"resource_changes": [
{
"address": "aws_vpc.main",
"mode": "managed",
"type": "aws_vpc",
"name": "main",
"provider_name": "provider[\"registry.terraform.io/hashicorp/aws\"]",
"change": {
"actions": [
"create"
]
}
},
{
"address": "aws_subnet.app",
"mode": "managed",
"type": "aws_subnet",
"name": "app",
"provider_name": "provider[\"registry.terraform.io/hashicorp/aws\"]",
"change": {
"actions": [
"create"
]
}
},
{
"address": "aws_iam_policy.read",
"mode": "managed",
"type": "aws_iam_policy",
"name": "read",
"provider_name": "provider[\"registry.terraform.io/hashicorp/aws\"]",
"change": {
"actions": [
"update"
]
}
},
{
"address": "aws_security_group.web",
"mode": "managed",
"type": "aws_security_group",
"name": "web",
"provider_name": "provider[\"registry.terraform.io/hashicorp/aws\"]",
"change": {
"actions": [
"delete",
"create"
]
}
}
],
"configuration": {
"root_module": {
"resources": [
{
"address": "aws_vpc.main",
"provider_name": "provider[\"registry.terraform.io/hashicorp/aws\"]",
"depends_on": []
},
{
"address": "aws_subnet.app",
"provider_name": "provider[\"registry.terraform.io/hashicorp/aws\"]",
"depends_on": [
"aws_vpc.main"
]
},
{
"address": "aws_iam_policy.read",
"provider_name": "provider[\"registry.terraform.io/hashicorp/aws\"]",
"depends_on": [
"aws_vpc.main"
]
},
{
"address": "aws_security_group.web",
"provider_name": "provider[\"registry.terraform.io/hashicorp/aws\"]",
"depends_on": [
"aws_vpc.main",
"aws_subnet.app"
]
}
]
}
}
}' \
-F 'planFile=uploads/2026/01/01/your-tool-1700000000000-abc123.ext' \
-F 'inputFormat=json' \
-F 'showDependencyGraph=true'