> For the complete documentation index, see [llms.txt](https://docs.langstack.com/welcome/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.langstack.com/welcome/get-started/learn-langstack/basics-and-essentials/what-is-a-function.md).

# What is a Function?

* Functions are displayed in the multiway select with their names, followed by parentheses (), indicating that they are a function.&#x20;

* If a function has parameters, these will be displayed alongside the expected parameter type within the parentheses, such as (string).

* When a function is selected in the multiway select, it will appear in a light blue color tag to indicate that it is currently selected. Any associated parameters for the selected function will be displayed on the next line.

* There are two types of Functions in Langstack applications: Static functions and Variable functions.
  * *Static functions* do not require a value to use them.&#x20;
    * Static Function is accessible directly from the Type by simply referencing the Type itself. Therefore, users must navigate to the Type first to reach its available functions.&#x20;
    * The available Static functions in Langstack applications are for the following Types:&#x20;
      * DateTime
      * GUID
      * Numerical
      * String
      * Timestamp

* *Variable functions* can only be accessed if a value exists.&#x20;
  * The value is either displayed as the function's returned result or is stored in a variable.&#x20;
  * To access the functions available for the value, users need to navigate further down (drill into) the value.&#x20;
  * When selecting a function, it is possible to call the functions available from the returned value to refine the desired result further. \
    For example: Type>Static Function>Returned Variable Function>Returned value of the returned value.&#x20;
  * &#x20;The value returned from the function can be stored in a variable.&#x20;
  * The Update Variable Action is used to update the variable with a value.&#x20;
  * The Value must be provided by the user or returned from a function.
