# How to use Alumio syntax? \[ &{@}, ${variable}, $2 \]

**URL:** <https://forum.alumio.com/t/how-to-use-alumio-syntax-variable-2/242>\
**Category:** General\
**Tags:** faq\
**Created:** [October 18, 2022, 7:12am UTC](https://forum.alumio.com/t/how-to-use-alumio-syntax-variable-2/242 "2022-10-18T07:12:24Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Alumio\_Bot](https://forum.alumio.com/user_avatar/forum.alumio.com/alumio_bot/32/1824_2.png) [@Alumio\_Bot](https://forum.alumio.com/u/Alumio_Bot)\
**Post date:** [October 18, 2022, 7:12am UTC](https://forum.alumio.com/t/how-to-use-alumio-syntax-variable-2/242/1 "2022-10-18T07:12:24Z")

</div>

### What syntax does Alumio have to offer?

- When using Alumio you want to grab different types of data.
- Depending on what that data is, different syntax is required.

Here’s a short list of available syntax within the Alumio iPaaS:

- **${variable}**

- **&{object.some\_key}**

- **&{@}**

- **&{@.object.some\_key}**

- **$0 or $1 etc**

- **`?{}`**

Most of these can also be found in the ‘pre configuration’ that’s shipped with your new Alumio environment.

### Differentiation in colour syntax for ${ }, &{ } and ?{ }

In Alumio, three different colours highlight placeholders and inform users whether the input is correct or requires attention. Colours also depend on the syntax type and whether they are used in the specific part of the Alumio functionality, for example, Inspection Tool.

Here is a short guide on how to differentiate syntax colours:

- **Green** - when a variable exists;
- **Red** - when a variable doesn’t exist except:
  - When an optional placeholder is typed ?{ }, the behaviour is the same as for the normal placeholder, except it won’t be red if the value doesn’t exist;

- **Blue** - when a placeholder is typed &{ } in a field that supports placeholders and:
  - The user is not inside the [Inspection Tool](https://forum.alumio.com/t/the-alumio-inspection-tool/1386);
  - No input is set when the user is inside the Inspection Tool.

The same logic applies to placeholders typed in more complex JMESPath queries.

 ![Alumio - Forum - How to use Alumio Syntax_Syntax 1](https://alumio-forum.s3.dualstack.eu-central-1.amazonaws.com/uploads/original/2X/d/da9b5446d05eb81b6035970d2ed95f05b21c91e7.png)

## Logic

You can also use logic while filling or setting fields.  
For example by using `||` you can check if a variable exists.  
By writing **&{foo || ‘’}** you check if ‘foo’ exists, if yes it uses the value of ‘foo’.  
If not it sets an empty string.

 ![Alumio - Forum - How to use Alumio Syntax_Syntax 2](https://alumio-forum.s3.dualstack.eu-central-1.amazonaws.com/uploads/original/2X/7/727d9e027f72d70f6c39cf540a755aa9bb1bc07e.png)

**JMESPath** gives you many options to include logic in your getters and setters. Do [check it out](https://forum.alumio.com/t/use-jmespath-to-simplify-your-transformations/189)!

## Pictures
Because everyone likes pictures, here are some examples.
- **${variable}**

 ![Alumio - Forum - How to use Alumio Syntax_Syntax 3](https://alumio-forum.s3.dualstack.eu-central-1.amazonaws.com/uploads/original/2X/3/3a3e85dcf2ed97859a0e5265a28f5338bb38adf0.png)

- **&{object.some\_key}**

 ![Alumio - Forum - How to use Alumio Syntax_Syntax 4 1](https://alumio-forum.s3.dualstack.eu-central-1.amazonaws.com/uploads/original/2X/e/ee4ef36cca200a53fde97792802be223e3ecab1c.png)

- **&{object.“some key”}**

 ![Alumio - Forum - How to use Alumio Syntax_Syntax 4 2](https://alumio-forum.s3.dualstack.eu-central-1.amazonaws.com/uploads/original/2X/5/525d4b71d10d5cb54f948b35cecf9873b70a2c5f.png)

- **&{@}**

 ![Alumio - Forum - How to use Alumio Syntax_Syntax 5](https://alumio-forum.s3.dualstack.eu-central-1.amazonaws.com/uploads/original/2X/a/a928c9bf7df02db3f2d3304e86b4ccf5b5f4eed7.png)

- **&{@.object.some\_key}**

 ![Alumio - Forum - How to use Alumio Syntax_Syntax 6](https://alumio-forum.s3.dualstack.eu-central-1.amazonaws.com/uploads/original/2X/7/7a6388dfae35522fe5ad3f4f9775dc89e535ffcf.png)

- **$0 or $1 etc**  

- **?{}**

 ![Alumio - Forum - How to use Alumio Syntax_Syntax 8](https://alumio-forum.s3.dualstack.eu-central-1.amazonaws.com/uploads/original/2X/9/9ea2fc55427a13b98ab45432aa19c500c90bb2af.png)

However, not every syntax is supported by **placeholder.**

The **placeholders** represent the values that the reader will need to alter when they employ the sample data. The placeholders in the example output can also show other values that change. A placeholder usually has a name that is descriptive and a default value.

**Please pay attention,** that placeholders support “&{}” and depending on the version “?{}” syntax.

More information, including a video can be found in [this topic](https://forum.alumio.com/t/syntax-of-the-writing-the-placeholder-notation-and-arrays/207).
