# Select File

Allows the user to select a file from the device file system or a location for the file to be saved.

Action available for the following operating systems:

![](/files/-MAlQBZuuTnc6hyzKSVQ)

### Parameters

* **Mode** - Defines the Mode to open the file picker. It can be one of:
  * 1 - **Open** - Opens the default operating system file picker to browse for a file.
  * 2 - **Save** - Opens the default operating system file picker to browse for a path to save a file.
  * 3 - **Open Image from Gallery** - Opens the default Gallery app to browse for an image to be opened.
  * 4 - **Open Video from Gallery** - Opens the default Gallery app to browse for a video to be opened.
* **Suggested File Name** \<string> - This parameter allows the user to define a default filename to be used.

{% hint style="warning" %}
Regarding to this parameter, "**Suggested File Name**", it's also important to refer:

* This parameter is only available in the **Save Mode**.

* On iOS, this name will be the suggested file name and the user cannot change it.

* On Win10, a file type is mandatory and will be extracted from suggested file name. If no name is specified, .txt will be used.
  {% endhint %}

* **Target Filename** - Control or variable where to store the full path of the selected file.

{% hint style="info" %}
On Win32 operating systems the modes **Open Image from Gallery** and **Open Video from Gallery** will open the same file picker as the **Open** mode
{% endhint %}

{% hint style="info" %}
On iOS, only the last file selected can be used. After you select another file with the file picker you will loose access to the previously selected file.
{% endhint %}

{% hint style="info" %}
On Android, the Save mode, will not allow to overwrite an existing file, instead it will create a new file with "...-1" or "... (1)" or similar.
{% endhint %}


---

# 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://doc.sysdevmobile.com/kalipso5/developing/form/actions/actions-description/group-files/select-file.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.
