# What are Available Variables?

Variables can come from different sources in flows. It can be either from the triggers themselves (incoming SMS, Phone Call or Webhook) or from specific Steps; at any given point in your flow, you can use ‘Available Variables’ to configure these Steps.

Above every Step form, you will see an Available variables box, which shows you which of the variables can be used in the current Step. You can insert them in the form fields by simply typing ‘{{‘ and the name of the variable - a dropdown list will pop up, so you can just select from there.

&#x20;

**Let’s play with an SMS example.**

When setting up a flow triggered by SMS, three variables are automatically generated in the ‘Branch’ Step:

* Sender: the originator of incoming SMS message; the number of your end user who triggers the flow.
* Recipient:  the number you own that triggers this flow.
* Incoming message: content of the incoming SMS message, which triggered the flow.

<figure><img src="/files/bwb4Addt2QWqQVwIIGJw" alt=""><figcaption></figcaption></figure>

You can use ‘Available variables’ anywhere inside your flow. For example, the flow can perform different actions based on the content of the incoming message.

* If the incoming message equals ‘Confirm’ → ‘Reply using SMS’ saying: Thanks for subscribing! :)
* If the incoming message equals ‘Confirm’ → ‘Reply using SMS’ saying: We’re sorry to see you go :(

&#x20;

<figure><img src="/files/Skn2Nq2WmcZM0LM4y4dE" alt=""><figcaption></figcaption></figure>

&#x20;

**Let’s play with a Webhook trigger example.**

Flows with a Webhook as a trigger give you the opportunity to define your variable names, which you (or your end users) will have to send as query parameters together with the HTTP request triggering the given flow.

&#x20;

<figure><img src="/files/FPRS7GCc6FQjqWFkeqMe" alt=""><figcaption></figcaption></figure>

To set up the Available Variables for the Webhook flow click on the ‘Webhook’ Step and type the variable name in the blank space—if you wish to add more than one variable, just click the ‘Add a variable’ button. Click on save when ready.

For this specific example, the Available Variables ‘name’ and ‘phoneNumber’ were created.

<figure><img src="/files/wIxOnYQO3MZRsoYcIsKU" alt=""><figcaption></figcaption></figure>

&#x20;

Beneath Webhook we added the ‘Send SMS’ Step. Click on it.

* Originator: write down the specific phone number.
* Recipient: write down ‘{{‘ and select the ‘phoneNumber’ Available Variable.
* Message: you can personalize your message so the user is addressed by its first name. As with recipient, write down ‘{{‘ and select the ‘name’ Available Variable.

<figure><img src="/files/I5GET8X7vmEdTQt559Js" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/JreeqECfHU8wno28nOJU" alt=""><figcaption></figcaption></figure>

&#x20;

**Variables coming from Steps**

Building upon the previous example, imagine you wanted to wait for the end users’ response, and perform actions based on that.

* Add a ‘Wait for a  response’ Step, which will automatically generate the Available Variable ‘response’.<br>

<figure><img src="/files/79jp2XCv5Fai4kzK3UWT" alt=""><figcaption></figcaption></figure>

* Hovering over the variables in the Available Variables box also shows you where each variable comes from, in case you get confused.

<figure><img src="/files/XaS1Z57MGWFAbTBzyxuX" alt=""><figcaption></figcaption></figure>

* You can also set up specific actions based on the response as well.

<figure><img src="/files/CyUgT01p1rSjwLvrAYOc" alt=""><figcaption></figcaption></figure>

&#x20;

<figure><img src="/files/RqXuzlRf7CNAZd7VJPJe" alt=""><figcaption></figcaption></figure>

&#x20;       &#x20;

<figure><img src="/files/48KJ1fwsU32L3HuIY13r" alt=""><figcaption></figcaption></figure>

Customize your flow by adding different Available Variables; you can set up a flow as complex as you need it to be. Click on save when ready.

&#x20;

&#x20;

&#x20;


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.bird.com/connectivity-platform/faq/what-are-available-variables.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
