2018-05-07 03:32:16 +02:00
---
2020-08-15 03:51:06 +02:00
layout: "language"
2018-12-20 05:34:34 +01:00
page_title: "Functions - Configuration Language"
2018-05-07 03:32:16 +02:00
sidebar_current: "docs-config-functions"
description: |-
The Terraform language has a number of built-in functions that can be called
from within expressions to transform and combine values.
---
# Built-in Functions
2019-01-17 01:30:43 +01:00
-> **Note:** This page is about Terraform 0.12 and later. For Terraform 0.11 and
earlier, see
[0.11 Configuration Language: Interpolation Syntax ](../configuration-0-11/interpolation.html ).
2020-12-01 22:10:05 +01:00
> **Hands-on:** Try the [Perform Dynamic Operations with Functions](https://learn.hashicorp.com/tutorials/terraform/functions?in=terraform/configuration-language&utm_source=WEBSITE&utm_medium=WEB_IO&utm_offer=ARTICLE_PAGE&utm_content=DOCS) tutorial on HashiCorp Learn.
2018-05-07 03:32:16 +02:00
The Terraform language includes a number of built-in functions that you can
call from within expressions to transform and combine values. The general
syntax for function calls is a function name followed by comma-separated
arguments in parentheses:
```hcl
max(5, 12, 9)
```
For more details on syntax, see
2020-11-13 03:30:52 +01:00
[_Function Calls_ ](/docs/configuration/expressions/function-calls.html )
in the Expressions section.
2018-05-07 03:32:16 +02:00
The Terraform language does not support user-defined functions, and so only
the functions built in to the language are available for use. The navigation
2018-12-11 01:14:33 +01:00
for this section includes a list of all of the available built-in functions.
2018-05-07 03:32:16 +02:00
You can experiment with the behavior of Terraform's built-in functions from
the Terraform expression console, by running
[the `terraform console` command ](/docs/commands/console.html ):
```
> max(5, 12, 9)
12
```
The examples in the documentation for each function use console output to
illustrate the result of calling the function with different parameters.