--- page_title: provider::terraform::encode_expr - Functions - Configuration Language description: >- The encode_expr function produces a string representation of an arbitrary value using Terraform expression syntax. --- # `provider::terraform::encode_expr` Function -> **Note:** This function is supported only in Terraform v1.8 and later. `provider::terraform::encode_expr` is a rarely-needed function which takes any value and produces a string containing Terraform language expression syntax approximating that value. To use this function, your module must declare a dependency on the built-in `terraform` provider, which contains this function: ```hcl terraform { required_providers { terraform = { source = "terraform.io/builtin/terraform" } } } ``` The primary use for this function is in conjunction with the `hashicorp/tfe` provider's resource type [`tfe_variable`](https://registry.terraform.io/providers/hashicorp/tfe/latest/docs/resources/variable), which expects variable values to be provided in Terraform expression syntax. For example, the following concisely declares multiple input variables for a particular HCP Terraform workspace: ```hcl locals { workspace_vars = { example1 = "Hello" example2 = ["A", "B"] } } resource "tfe_variable" "test" { for_each = local.workspace_vars category = "terraform" workspace_id = tfe_workspace.example.id key = each.key value = provider::terraform::encode_expr(each.value) hcl = true } ``` When using this pattern, always set `hcl = true` in the resource declaration to ensure that HCP Terraform will expect `value` to be given as Terraform expression syntax. We do not recommend using this function in any other situation. ~> **Warning:** The exact syntax used to encode certain values may change in future versions of Terraform to follow idiomatic style. Avoid using the results of this function in any context where such changes might be disruptive when upgrading Terraform in future. ## Related Functions * [`encode_tfvars`](/terraform/language/functions/terraform-encode_tfvars) produces expression strings for many different values at once, in `.tfvars` syntax.