Web Session (Firefox) | MuleSoft Documentation
# Web Session (Firefox)
Use a _Web Session_ to open and close the browser window in which all the _Web Automation_ elements contained therein interact.
The _web session ID_ enables you to reuse a session that has already started in a different web session.
## Properties
**Browser Settings**
  * **Browser mismatch**
Specifies if the execution aborts when there is a browser mismatch or if it shows a warning.
  * **Hide Command Prompt**
Hides the web driver’s command prompt (default). Can be displayed again for diagnostic purposes.
  * **Initial URL**
The URL that the web session launches when it starts. Default: `about: blank`.
  * **Keep out mouse**
When selected, at the start of the _Web session_ the mouse moves to the corner defined in the _Move mouse to_ property. This feature enables you to avoid triggering hover effects on a website accidentally.
  * **Move mouse to**
Defines where the mouse pointer moves to if _Keep out mouse_ is enabled.
  * **Repeat keep out mouse**
When selected, the mouse moves to the corner defined in the _Move mouse to_ property before each step within the _Web Session_. This feature enables you to avoid triggering hover effects on a website accidentally.
  * **Script Timeout [sec]**
Maximum waiting time in seconds before the internal scripting of the web driver aborts. Do not change this value unless MuleSoft Support advises you to do so.
  * **Start maximized**
Decide wether the browser window starts maximized.
  * **Webdriver Retries**
Number of retries to establish a successful web driver connection.
  * **Webdriver Timeout [sec]**
After the assigned time, the web session aborts a Webdriver command.


**Browser Specific Settings**
  * **Accept untrusted certificates**
When set, Firefox automatically accepts untrusted certificates.
  * **Additional profile extensions**
Use this setting to add additional Firefox configuration settings. One or more settings have to be in the form of: `<config_1>;<type>;<value-1>;<config_n>;<type>;<value_n>`
For example: `intl.accept_languages;string;no,en-us,en`
Valid types are `int`, `bool`, and `string`. Values containing `;` must be enclosed in double quotation marks `"`.
  * **Alternative user agent string**
Override the default User Agent string for Firefox.
  * **Enable native events**
Enable this option if you are having trouble with mouse hover during execution.
  * **Port**
Defines the TCP/IP listener port number used for Firefox for communication between Firefox and an RPA Bot. If set to `-1` an ephemeral port number is used (and may also be used for all concurrent secure sessions).
To ensure optimal operation when using secure sessions, set it to `0`. In this case, the port used is calculated by the following function: `port = TSID * 4 + 45000` (TSID is the current Terminal Session ID). To choose a base value other than `45000`, a value greater than `0` must be assigned.
  * **Prefer 64Bit Webdriver**
Select your preferred bitness here. The program tries the other one in case the preferred one is not available and generates a warning.
  * **Profile name**
Start Firefox with a specific profile. This profile must be created beforehand on the executing agent using the Firefox profile manager.


## Inbound Variables
  * **Profile name**
  * **Prefer 64Bit Webdriver**
  * **Alternative user agent string**
  * **Accept untrusted certificates**
  * **Enable native events**
  * **Web Session ID**
  * **Initial URL**


## Outbound Variables
This action step has no outbound variables.
## Wizard
The Web Session Wizard contains the **Start Recording** , **Reuse Web Session** , **General Settings** , and **Browser Specific Settings** sections.
### Start Recording
Enables you to record a single web session by using the full functionality of RPA Recorder within RPA Builder. The button is only active if the web session doesn’t contain any elements yet.
To record a web session:
  1. Click **Start Recording** to open RPA Recorder. If you have another RPA Recorder instance in progress, you must end the other instance if you want to proceed.
  2. Click **Start Recording** to capture all actions.
  3. Use the Recording Toolbar to pause or stop the recording, take a screenshot, or add Image—​based mouse clicks or comments. Additional web sessions cannot be added.
  4. After you stop the recording, the documentation shows in the **Review Recording** dialogue. Click **Finish** to keep the recording and return to RPA Builder. Click **Re-record** to replace the current recording with a new one. Click **Discard Recording** to cancel the recording and return to RPA Builder.
  5. Click **OK & generate** in RPA Builder to generate the appropriate action steps, which are added to the web session automatically.


### Reuse Web Session
The **Reuse Web Session** section defines which web session to reuse. To reuse a web session, use the **web session ID** that you previously saved in the workflow-based variables.
You can define a name and a description and then RPA Builder assigns a value automatically. Once you have created the web session ID, you can link it with the session using the drop-down in the Web Session Wizard.
In the script Run Results, you see whether a new web session was created or a web session ID was used, and in the latter case, which one.
If you use a web session ID that was created with the web session type Firefox, for example, but is to be continued with a different web session type, such as a Chrome session, RPA Builder shows a warning. You can change this response with the **Browser Mismatch** option. There are two options for this scenario:
  * **Warning** (default)
The Workflow Run is assigned a warning, but continues running. In this case, the original web session browser is used automatically.
  * **Error**
The Workflow Run ends in an error.


Define the standard response of the browser and the execution in the **General Settings** section.
### General Settings
  * **Initial URL**
Specifies the initial URL of the web page you want to call.
If another web session that was created with the same web session ID is opened, the initial URL from that session is ignored.
  * **Open Browser Wizard when done**
If this option is enabled, the Browser Wizard opens when the Web Session Wizard is closed.
  * **Keep out mouse, move it to**
Use this option to define where you want the mouse to move to. This prevents the mouse from covering certain buttons or texts.
You can also define whether or not you want to execute this action after every action step.


### Browser Specific Settings
See Browser Specific Settings for a definition of these fields.
## Activity Workflow Overlapping Web Session
You can use web sessions across workflows within a business process. For example, you can open a web session in an initial workflow, perform a web login there, and then process this workflow in a different, independent workflow.
The web session ID lets you use the session globally within the workflow. To pass the web session on to another workflow within a business process, the web session ID must be defined as an activity parameter (and not as a workflow-based variable).
To do this, proceed as follows:
  1. Create a web session ID in the activity parameter.
  2. Link the web session ID with the workflow.
You will find the web session ID in the _Activity Parameters_ action step, which you placed in the Workflow Initialization Block beforehand.
  3. Link the web session ID in the corresponding web session.
  4. Optionally, ff you want the web session to be closed at a later point in the workflow, use the _Close Web Session_ action step.


## Closing a Web Session
There are three different variants for closing a web session:
  * The closing of the browser is already contained in the web session
In this case, the session is closed automatically when session execution is complete. This only applies if the web session is **not** linked with a web session ID.
  * The browser is not closed until the end of the workflow
If the web session block is linked with a web session ID, the browser remains open. This only applies if the web session was linked using a workflow-based variable. If it is linked with an activity parameter, in contrast, the web session remains active – that is, the browser remains open – and can be used further
  * The browsers is closed by using the _Close Web Session_ action step
The action step _Close Web Session_ gives you the additional option of closing the session at a specific point in the Workflow.


## See Also
  * Using the Web Browser Wizard
  * Common Properties (Web Automation)
  *