# Terminals

* [Concept](#concept)&#x20;
* [Connected Accounts ](#connected-accounts)
* [Terminal Management ](#terminal-management)
  * [Terminal Information](#terminal-information)&#x20;
  * [Testing the Connection](#testing-the-connection)&#x20;
  * [Terminal Logs](#terminal-logs)&#x20;
  * [Deleting an Agent](#deleting-an-agent)

### Concept <a href="#concept" id="concept"></a>

A **terminal** is a logical entity that represents the connection between a single **Agent**—installed on a machine and linked to a user—and that user's **Workspace** in Skyone Studio.

A **Workspace** can contain multiple terminals. Additionally, any user within the workspace can run the Agent.

On a machine with an Agent installed, a terminal acts as a **bridge**, allowing an application to access a company's **Database** or an **ERP's REST interface**. This enables multiple types of integrations **without requiring a public API**. As a result, different flows within a workspace can share the same terminal, connected through one or more user accounts.

Once you install and configure an Agent in an on-premises environment, a terminal is automatically created in Skyone Studio. From there, you can select and use that terminal to configure **REST** or **Database** account types. When you select a terminal during account setup, the account credentials are sent to the Agent to be used locally.

You can associate **multiple accounts** with a single terminal. This means you can create several users in a database to be used across different integrations. Each user can be configured in a separate account, but all accounts will point to the same terminal.

{% hint style="warning" %}
An Agent’s **terminal** is continuously monitored, ensuring that Skyone Studio always knows when it is connected and operational. Conversely, if a terminal goes offline—detected through the disconnection of the associated **Agent**—all accounts linked to that terminal are considered offline as well.
{% endhint %}

{% hint style="info" %}
You can install as many **Agents** as you want for the same user or **Workspace**, as long as they are installed on different devices with distinct names and locations. Each Agent will appear as a separate terminal in Skyone Studio.
{% endhint %}

### Connected Accounts <a href="#connected-accounts" id="connected-accounts"></a>

By default, the "**Terminal**" field of a REST or Database account is left blank, which means that the "**Agent**" is not used during the connection. To use a previously installed "**Agent**", you must select one of the terminals (active or not) that are configured in the system:

<figure><img src="/files/v5b9WAePFVdQewIOCBcO" alt=""><figcaption><p>Example of connected account configuration</p></figcaption></figure>

{% hint style="info" %}
When you use a "**Terminal**" on an account, the execution of operations on a module (tests) or on a flow (tests or execution) will only occur if the "**Agent**" is running and the "**Terminal**" status is active (green).
{% endhint %}

### Terminal Management <a href="#terminal-management" id="terminal-management"></a>

In the "**Terminals"** tab you will see all the terminals connected to the selected "**Workspace**". If you have not yet installed and configured an agent, you can download the "**Agent**" by clicking "**Download Agent".**

Once one or more "**Agents"** have been configured, the list of available terminals and their respective details and status will be displayed on the screen:

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

Each line corresponds to an "**Agents"** entry with its basic information. The information on this screen is dynamic, **updating automatically in a few seconds**.

Fields:

* **ID**: unique "**Agent**" identifier
* **Agent Name**: name assigned in the "**Agent**" configuration
* **Username**: name of the user who configured the "**Agent**"&#x20;
* **Connected at**: last time the "**Agent**" connected
* **Agent IP**: IP address of the computer where the "**Agent**" was installed; displayed only when it is connected
* **Host** **ID**: host signature that uniquely identifies the machine where the "**Agent**" is installed
* **Status:** "**Agent**" connection status

#### **Terminal Information** <a href="#terminal-information" id="terminal-information"></a>

To view detailed information on a terminal:

1. At "**Terminals"**, choose the Agent that you want to view and click the "**More Options"** icon;
2. Select "**View"**;

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

3. The **Terminal Information** window will be displayed an you will view the following fields:

* **Host ID**: host signature, which uniquely identifies the machine where the "**Agent**" is installed
* **Agent Name**: name provided in the "**Agent**" configuration
* **Agent localization**: localization provided in the "**Agent**" configuration
* **Agent IP**: IP address of the machine where the "**Agent**" is installed
* **Connected at**: date of last connection, in the format DD/MM/YYYY HH:MM:SS
* **Last APC control**: the last time Integra.Sky sent an APC (Agent Procedure Call)
* **Last APC data**: last time Integra.Sky received messages
* **Controls delivered by the APC**: number of messages sent
* **Data received by the APC**: number of messages received
* **Connected accounts**: accounts that point to the  "**Terminal"**

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

#### Testing the Connection <a href="#testing-the-connection" id="testing-the-connection"></a>

The connection status ensures that there is an established connection, but does not guarantee full operation. The connection test performs a complete test involving the Agent.

To test the connection:

1. At "**Terminals"**, choose the "**Agent**" whose connection you want to test and click "**More Options"** (three-dot icon).
2. Select "**Test Connection"**

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

3. Wait for the connection to be tested and the result.

#### Terminal Logs <a href="#terminal-logs" id="terminal-logs"></a>

To view the logs of a terminal:

1. At "**Terminals"**, choose the "**Agent**" you want to view the logs for and click on the "**More Options"** icon;
2. Select "**Logs"**;

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

3. The Terminal logs will be displayed (if any).

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

#### Deleting an Agent <a href="#deleting-an-agent" id="deleting-an-agent"></a>

If you delete an "**Agent**" from the "**Terminals**" tab and then want to use the application again, you will need to uninstall and reinstall the application. This is also necessary if you want to change the initial installation settings (**Workspace, Skyone Studio account, Agent Name and Location**).

To delete an "Agent", follow these steps:

1. At "**Terminals**", choose the Agent you want to delete and click on the "**More Options"** icon;
2. Select "**Delete Agent"**;

<figure><img src="/files/71BtaM1EXwkabNQRZYHG" alt=""><figcaption></figcaption></figure>

3. Enter the name of the terminal you want to delete and then confirm the action by clicking "**Delete"**;

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

4. Back to the "**Agent**", the connection to the Server will be broken. To set up the "**Agent**" again, you’ll have to uninstall and reinstall it.


---

# 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.skyone.cloud/english/skyone-studio/terminals-and-agent/terminals.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.
