{"id":33,"date":"2026-04-27T09:03:19","date_gmt":"2026-04-27T12:03:19","guid":{"rendered":"https:\/\/www.bolsoni.tech\/blog\/?p=33"},"modified":"2026-04-27T09:03:19","modified_gmt":"2026-04-27T12:03:19","slug":"terraform-na-pratica-organizando-codigo-infraestrutura","status":"publish","type":"post","link":"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/","title":{"rendered":"Terraform na pr\u00e1tica &#8211; organizando c\u00f3digo de infraestrutura"},"content":{"rendered":"<h2>A bagun\u00e7a que todo mundo j\u00e1 viveu<\/h2>\n<p>Sabe aquele momento quando voc\u00ea abre um projeto Terraform depois de 6 meses e pensa &#8220;quem foi o animal que escreveu isso&#8221;? E a\u00ed percebe que foi voc\u00ea mesmo. J\u00e1 passei por isso mais vezes do que gostaria de admitir.<\/p>\n<p>Organizar c\u00f3digo Terraform n\u00e3o \u00e9 luxo, \u00e9 necessidade. Especialmente quando a gente trabalha com m\u00faltiplos ambientes, equipes grandes ou projetos que crescem al\u00e9m do que imagin\u00e1vamos inicialmente.<\/p>\n<h2>A estrutura b\u00e1sica que funciona<\/h2>\n<p>Depois de anos organizando infraestrutura na AWS, Azure e Google Cloud, descobri que existe uma estrutura que funciona na maioria dos casos:<\/p>\n<pre><code class=\"language-bash\">\nproject-name\/\n\u251c\u2500\u2500 environments\/\n\u2502   \u251c\u2500\u2500 dev\/\n\u2502   \u251c\u2500\u2500 staging\/\n\u2502   \u2514\u2500\u2500 prod\/\n\u251c\u2500\u2500 modules\/\n\u2502   \u251c\u2500\u2500 vpc\/\n\u2502   \u251c\u2500\u2500 eks\/\n\u2502   \u2514\u2500\u2500 rds\/\n\u251c\u2500\u2500 shared\/\n\u2514\u2500\u2500 scripts\/\n<\/code><\/pre>\n<p>Cada pasta tem seu prop\u00f3sito espec\u00edfico. Os <strong>environments<\/strong> guardam as configura\u00e7\u00f5es de cada ambiente. Os <strong>modules<\/strong> s\u00e3o peda\u00e7os reutiliz\u00e1veis de c\u00f3digo. O <strong>shared<\/strong> fica com recursos compartilhados entre ambientes.<\/p>\n<h2>M\u00f3dulos: seu melhor amigo<\/h2>\n<p>Se voc\u00ea ainda n\u00e3o usa m\u00f3dulos Terraform, est\u00e1 perdendo tempo e dinheiro. Eles s\u00e3o como fun\u00e7\u00f5es no c\u00f3digo: escreveu uma vez, usa em qualquer lugar.<\/p>\n<p>Exemplo pr\u00e1tico de um m\u00f3dulo VPC simples:<\/p>\n<pre><code class=\"language-hcl\">\n# modules\/vpc\/main.tf\nresource \"aws_vpc\" \"main\" {\n  cidr_block           = var.cidr_block\n  enable_dns_hostnames = true\n  enable_dns_support   = true\n\n  tags = {\n    Name = \"${var.project_name}-vpc\"\n    Environment = var.environment\n  }\n}\n\nresource \"aws_subnet\" \"public\" {\n  count = length(var.public_subnets)\n  \n  vpc_id            = aws_vpc.main.id\n  cidr_block        = var.public_subnets[count.index]\n  availability_zone = data.aws_availability_zones.available.names[count.index]\n  \n  map_public_ip_on_launch = true\n  \n  tags = {\n    Name = \"${var.project_name}-public-${count.index + 1}\"\n  }\n}\n<\/code><\/pre>\n<p>Agora voc\u00ea pode usar esse m\u00f3dulo em qualquer ambiente:<\/p>\n<pre><code class=\"language-hcl\">\n# environments\/prod\/vpc.tf\nmodule \"vpc\" {\n  source = \"..\/..\/modules\/vpc\"\n  \n  project_name    = \"meu-projeto\"\n  environment     = \"prod\"\n  cidr_block      = \"10.0.0.0\/16\"\n  public_subnets  = [\"10.0.1.0\/24\", \"10.0.2.0\/24\"]\n}\n<\/code><\/pre>\n<h2>Vari\u00e1veis e outputs organizados<\/h2>\n<p>Cada m\u00f3dulo precisa de tr\u00eas arquivos b\u00e1sicos: <code>main.tf<\/code>, <code>variables.tf<\/code> e <code>outputs.tf<\/code>. Parece burocracia, mas salva sua vida depois.<\/p>\n<pre><code class=\"language-hcl\">\n# modules\/vpc\/variables.tf\nvariable \"project_name\" {\n  description = \"Nome do projeto\"\n  type        = string\n}\n\nvariable \"environment\" {\n  description = \"Ambiente (dev, staging, prod)\"\n  type        = string\n}\n\nvariable \"cidr_block\" {\n  description = \"CIDR block da VPC\"\n  type        = string\n}\n\nvariable \"public_subnets\" {\n  description = \"Lista de CIDR blocks para subnets p\u00fablicas\"\n  type        = list(string)\n}\n<\/code><\/pre>\n<p>E os outputs para referenciar em outros m\u00f3dulos:<\/p>\n<pre><code class=\"language-hcl\">\n# modules\/vpc\/outputs.tf\noutput \"vpc_id\" {\n  description = \"ID da VPC criada\"\n  value       = aws_vpc.main.id\n}\n\noutput \"public_subnet_ids\" {\n  description = \"IDs das subnets p\u00fablicas\"\n  value       = aws_subnet.public[*].id\n}\n<\/code><\/pre>\n<h2>Separa\u00e7\u00e3o por ambientes<\/h2>\n<p>Cada ambiente deve ter sua pr\u00f3pria pasta com state separado. Isso evita que mudan\u00e7as em dev quebrem produ\u00e7\u00e3o (j\u00e1 vi isso acontecer, n\u00e3o \u00e9 bonito).<\/p>\n<pre><code class=\"language-hcl\">\n# environments\/prod\/main.tf\nterraform {\n  backend \"s3\" {\n    bucket = \"meu-projeto-terraform-state\"\n    key    = \"prod\/terraform.tfstate\"\n    region = \"us-east-1\"\n  }\n}\n\nmodule \"vpc\" {\n  source = \"..\/..\/modules\/vpc\"\n  # configura\u00e7\u00f5es espec\u00edficas de prod\n}\n\nmodule \"eks\" {\n  source = \"..\/..\/modules\/eks\"\n  \n  vpc_id     = module.vpc.vpc_id\n  subnet_ids = module.vpc.public_subnet_ids\n  # outras configura\u00e7\u00f5es\n}\n<\/code><\/pre>\n<h2>Caso real: refatora\u00e7\u00e3o que salvou o projeto<\/h2>\n<p>Semana passada ajudamos uma startup que tinha tudo em um arquivo <code>main.tf<\/code> de 800 linhas. Deploy demorava 40 minutos e qualquer mudan\u00e7a era um risco.<\/p>\n<p>Quebramos em 6 m\u00f3dulos: VPC, EKS, RDS, ElastiCache, ALB e monitoring. Resultado: deploys de 8 minutos e zero downtime nos \u00faltimos 30 dias.<\/p>\n<p>O segredo foi criar m\u00f3dulos pequenos e espec\u00edficos. Cada um com responsabilidade \u00fanica.<\/p>\n<h2>Ferramentas que facilitam a vida<\/h2>\n<p>Algumas ferramentas que uso todo dia:<\/p>\n<ul>\n<li><strong>terraform-docs<\/strong>: gera documenta\u00e7\u00e3o autom\u00e1tica dos m\u00f3dulos<\/li>\n<li><strong>tflint<\/strong>: pega erros antes do apply<\/li>\n<li><strong>terragrunt<\/strong>: DRY para configura\u00e7\u00f5es Terraform<\/li>\n<li><strong>pre-commit hooks<\/strong>: valida c\u00f3digo antes do commit<\/li>\n<\/ul>\n<p>Configura\u00e7\u00e3o b\u00e1sica do pre-commit:<\/p>\n<pre><code class=\"language-yaml\">\n# .pre-commit-config.yaml\nrepos:\n  - repo: https:\/\/github.com\/antonbabenko\/pre-commit-terraform\n    rev: v1.77.0\n    hooks:\n      - id: terraform_fmt\n      - id: terraform_validate\n      - id: terraform_docs\n      - id: terraform_tflint\n<\/code><\/pre>\n<h2>Versionamento de m\u00f3dulos<\/h2>\n<p>Quando os m\u00f3dulos come\u00e7am a ser usados por v\u00e1rias equipes, versionar vira obrigat\u00f3rio. Uso tags Git simples:<\/p>\n<pre><code class=\"language-hcl\">\nmodule \"vpc\" {\n  source = \"git::https:\/\/github.com\/empresa\/terraform-modules.git\/\/vpc?ref=v1.2.0\"\n  \n  # configura\u00e7\u00f5es\n}\n<\/code><\/pre>\n<p>Assim cada ambiente pode usar vers\u00f5es diferentes sem quebrar nada.<\/p>\n<h2>Naming conventions que salvam<\/h2>\n<p>Padronize nomes desde o in\u00edcio. Uso este padr\u00e3o:<\/p>\n<ul>\n<li>Resources: <code>${projeto}-${ambiente}-${tipo}<\/code><\/li>\n<li>Vari\u00e1veis: snake_case sempre<\/li>\n<li>Outputs: descritivos e consistentes<\/li>\n<li>Tags: Project, Environment, Owner obrigat\u00f3rias<\/li>\n<\/ul>\n<p>Organiza\u00e7\u00e3o n\u00e3o \u00e9 perfumaria. \u00c9 economia de tempo, dinheiro e stress. Comece simples, mas comece desde o primeiro dia. Seu eu do futuro vai agradecer.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Aprenda a estruturar projetos Terraform de forma escal\u00e1vel e profissional com exemplos pr\u00e1ticos de organiza\u00e7\u00e3o de c\u00f3digo.<\/p>\n","protected":false},"author":0,"featured_media":32,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_sitemap_exclude":false,"_sitemap_priority":"","_sitemap_frequency":"","footnotes":""},"categories":[15],"tags":[21,25,8,38,46],"class_list":["post-33","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-devops","tag-21","tag-25","tag-8","tag-38","tag-46"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Terraform na pr\u00e1tica - organizando c\u00f3digo de infraestrutura - Blog Bolsoni Tech<\/title>\n<meta name=\"description\" content=\"Guia pr\u00e1tico para organizar projetos Terraform: m\u00f3dulos, ambientes, versionamento e ferramentas que facilitam o gerenciamento de infraestrutura.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Terraform na pr\u00e1tica - organizando c\u00f3digo de infraestrutura - Blog Bolsoni Tech\" \/>\n<meta property=\"og:description\" content=\"Guia pr\u00e1tico para organizar projetos Terraform: m\u00f3dulos, ambientes, versionamento e ferramentas que facilitam o gerenciamento de infraestrutura.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog Bolsoni Tech\" \/>\n<meta property=\"article:published_time\" content=\"2026-04-27T12:03:19+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.bolsoni.tech\/blog\/wp-content\/uploads\/2026\/04\/blog-image-1777291267313-1024x585.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t<meta property=\"og:image:height\" content=\"585\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"4 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/\"},\"author\":{\"name\":\"\",\"@id\":\"\"},\"headline\":\"Terraform na pr\u00e1tica &#8211; organizando c\u00f3digo de infraestrutura\",\"datePublished\":\"2026-04-27T12:03:19+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/\"},\"wordCount\":473,\"image\":{\"@id\":\"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.bolsoni.tech\/blog\/wp-content\/uploads\/2026\/04\/blog-image-1777291267313.png\",\"keywords\":[\"16\",\"20\",\"3\",\"34\",\"45\"],\"articleSection\":[\"DevOps\"],\"inLanguage\":\"pt-BR\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/\",\"url\":\"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/\",\"name\":\"Terraform na pr\u00e1tica - organizando c\u00f3digo de infraestrutura - Blog Bolsoni Tech\",\"isPartOf\":{\"@id\":\"https:\/\/www.bolsoni.tech\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.bolsoni.tech\/blog\/wp-content\/uploads\/2026\/04\/blog-image-1777291267313.png\",\"datePublished\":\"2026-04-27T12:03:19+00:00\",\"author\":{\"@id\":\"\"},\"description\":\"Guia pr\u00e1tico para organizar projetos Terraform: m\u00f3dulos, ambientes, versionamento e ferramentas que facilitam o gerenciamento de infraestrutura.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/#primaryimage\",\"url\":\"https:\/\/www.bolsoni.tech\/blog\/wp-content\/uploads\/2026\/04\/blog-image-1777291267313.png\",\"contentUrl\":\"https:\/\/www.bolsoni.tech\/blog\/wp-content\/uploads\/2026\/04\/blog-image-1777291267313.png\",\"width\":1792,\"height\":1024},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.bolsoni.tech\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Terraform na pr\u00e1tica &#8211; organizando c\u00f3digo de infraestrutura\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.bolsoni.tech\/blog\/#website\",\"url\":\"https:\/\/www.bolsoni.tech\/blog\/\",\"name\":\"Blog Bolsoni Tech\",\"description\":\"Conte\u00fado sobre DevOps, FinOps, cloud, seguran\u00e7a e infraestrutura\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.bolsoni.tech\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-BR\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Terraform na pr\u00e1tica - organizando c\u00f3digo de infraestrutura - Blog Bolsoni Tech","description":"Guia pr\u00e1tico para organizar projetos Terraform: m\u00f3dulos, ambientes, versionamento e ferramentas que facilitam o gerenciamento de infraestrutura.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/","og_locale":"pt_BR","og_type":"article","og_title":"Terraform na pr\u00e1tica - organizando c\u00f3digo de infraestrutura - Blog Bolsoni Tech","og_description":"Guia pr\u00e1tico para organizar projetos Terraform: m\u00f3dulos, ambientes, versionamento e ferramentas que facilitam o gerenciamento de infraestrutura.","og_url":"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/","og_site_name":"Blog Bolsoni Tech","article_published_time":"2026-04-27T12:03:19+00:00","og_image":[{"width":1024,"height":585,"url":"https:\/\/www.bolsoni.tech\/blog\/wp-content\/uploads\/2026\/04\/blog-image-1777291267313-1024x585.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"4 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/#article","isPartOf":{"@id":"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/"},"author":{"name":"","@id":""},"headline":"Terraform na pr\u00e1tica &#8211; organizando c\u00f3digo de infraestrutura","datePublished":"2026-04-27T12:03:19+00:00","mainEntityOfPage":{"@id":"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/"},"wordCount":473,"image":{"@id":"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/#primaryimage"},"thumbnailUrl":"https:\/\/www.bolsoni.tech\/blog\/wp-content\/uploads\/2026\/04\/blog-image-1777291267313.png","keywords":["16","20","3","34","45"],"articleSection":["DevOps"],"inLanguage":"pt-BR"},{"@type":"WebPage","@id":"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/","url":"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/","name":"Terraform na pr\u00e1tica - organizando c\u00f3digo de infraestrutura - Blog Bolsoni Tech","isPartOf":{"@id":"https:\/\/www.bolsoni.tech\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/#primaryimage"},"image":{"@id":"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/#primaryimage"},"thumbnailUrl":"https:\/\/www.bolsoni.tech\/blog\/wp-content\/uploads\/2026\/04\/blog-image-1777291267313.png","datePublished":"2026-04-27T12:03:19+00:00","author":{"@id":""},"description":"Guia pr\u00e1tico para organizar projetos Terraform: m\u00f3dulos, ambientes, versionamento e ferramentas que facilitam o gerenciamento de infraestrutura.","breadcrumb":{"@id":"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/#primaryimage","url":"https:\/\/www.bolsoni.tech\/blog\/wp-content\/uploads\/2026\/04\/blog-image-1777291267313.png","contentUrl":"https:\/\/www.bolsoni.tech\/blog\/wp-content\/uploads\/2026\/04\/blog-image-1777291267313.png","width":1792,"height":1024},{"@type":"BreadcrumbList","@id":"https:\/\/www.bolsoni.tech\/blog\/terraform-na-pratica-organizando-codigo-infraestrutura\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.bolsoni.tech\/blog\/"},{"@type":"ListItem","position":2,"name":"Terraform na pr\u00e1tica &#8211; organizando c\u00f3digo de infraestrutura"}]},{"@type":"WebSite","@id":"https:\/\/www.bolsoni.tech\/blog\/#website","url":"https:\/\/www.bolsoni.tech\/blog\/","name":"Blog Bolsoni Tech","description":"Conte\u00fado sobre DevOps, FinOps, cloud, seguran\u00e7a e infraestrutura","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.bolsoni.tech\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-BR"}]}},"_links":{"self":[{"href":"https:\/\/www.bolsoni.tech\/blog\/wp-json\/wp\/v2\/posts\/33","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bolsoni.tech\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.bolsoni.tech\/blog\/wp-json\/wp\/v2\/types\/post"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bolsoni.tech\/blog\/wp-json\/wp\/v2\/comments?post=33"}],"version-history":[{"count":1,"href":"https:\/\/www.bolsoni.tech\/blog\/wp-json\/wp\/v2\/posts\/33\/revisions"}],"predecessor-version":[{"id":34,"href":"https:\/\/www.bolsoni.tech\/blog\/wp-json\/wp\/v2\/posts\/33\/revisions\/34"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.bolsoni.tech\/blog\/wp-json\/wp\/v2\/media\/32"}],"wp:attachment":[{"href":"https:\/\/www.bolsoni.tech\/blog\/wp-json\/wp\/v2\/media?parent=33"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bolsoni.tech\/blog\/wp-json\/wp\/v2\/categories?post=33"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bolsoni.tech\/blog\/wp-json\/wp\/v2\/tags?post=33"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}