# Common Exceptions

### 1. Could not get a file as a scanned document

This exception occurs when the system fails to access a file due to formatting, permissions, or network errors.

<details>

<summary>Resolution Methods</summary>

**1. Retry**

Retry the failed automation step. This may be helpful if the exception was potentially caused by a network error or a timeout.

**2. Upload files**

If the original file is corrupted or in an unsupported format, use this method to reupload it.

**3. Skip this step**

Bypass this step in the automation.

{% hint style="warning" %}
**Note:** Skipping a step can lead to another exception if the step resolves data that is referenced later in the automation.

Example: An exception occurs with the message "Could not get a file as a scanned document". The user chooses the <kbd>Skip this step</kbd> option. Later, the automation attempts to reference the document, resulting in a new exception: "Please provide scanned document.
{% endhint %}

</details>

### 2. Could not (something)

This exception occurs when the system is unable to complete a specific action. The exception message starts with **"Could not"** and describes the action that could not be completed. For example:

* `Could not ask koncierge`
* `Could not dump a file`
* `Could not extract a table`
* `Could not convert a datetime to a text`

<details>

<summary>Resolution Methods</summary>

**1. Retry**

Retry the failed automation step. This may be helpful if the exception was potentially caused by a network error or a timeout.

**2. Compute an answer**

This method allows you to modify the automation to avoid the exception. Use the **Mini-Playground** to test changes safely before applying them.

**3. Skip this step**

Bypass this step in the automation.

{% hint style="warning" %}
**Note:** Skipping a step can lead to another exception if the step resolves data that is referenced later in the automation.

Example: An exception occurs with the message "Could not get a file as a scanned document". The user chooses the <kbd>Skip this step</kbd> option. Later, the automation attempts to reference the document, resulting in a new exception: "Please provide scanned document.
{% endhint %}

</details>

### 3. Please provide (something)

This exception occurs when the system cannot find a match for a specified field. The exception message starts with **"Please provide"** and describes the required data.

{% hint style="info" %}
**Example: "Please provide scanned document's arrival time"**

If an automation includes the line `get the scanned document's arrival time`, the system will attempt to extract the value for *arrival time*. An exception will be raised if the document contains a different field instead, such as *estimated time of arrival*. In this case, the system needs guidance to use that field in place of *arrival time*.
{% endhint %}

<details>

<summary>Resolution Methods</summary>

{% hint style="success" %}
For this exception type, it may be helpful to review and apply the [**learning suggestions**](https://docs.kognitos.com/legacy/legacy-experience/learnings/learning-suggestions).
{% endhint %}

**1. Select from Document**

Manually choose the desired field from the document.

**2. Write in Answer**

Enter a value manually into the text box for the desired field.

**3. Retry**

Retry the failed automation step. This may be helpful if the exception was potentially caused by a network error or a timeout.

**4. Compute an answer**

This method allows you to modify the automation to avoid the exception. Use the **Mini-Playground** to test changes safely before applying them.

**5. No value**

Indicate that no value is needed at this time. This option is useful when a value is unavailable or not applicable. A dash ("-") will replace the value as a placeholder.

**6. Skip this step**

Bypass the field extraction step.

{% hint style="warning" %}
**Note:** Skipping a step can lead to another exception if the step resolves data that is referenced later in the automation.

Example: An exception occurs with the message "Please provide the scanned document's arrival time". The user chooses the <kbd>Skip this step</kbd> option. Later, the automation attempts to reference the "arrival time" again, resulting in a new exception: "Please provide arrival," as the value was not established.
{% endhint %}

</details>

### 4. The key does not exist. How would you like to proceed?

This exception occurs when attempting to access a key missing in the current context or data structure.

<details>

<summary>Resolution Methods</summary>

**1. Pick suggested value**

Choose either **Create new record with empty value** or **Skip** *(recommended).*

</details>

### 5. I don't know how to (do something)

This exception occurs when the system doesn’t know how to proceed. For example:

* `I don't know how to convert 'ADFB00' into a number`
* `I don't know how to process this billing code`
* `I don't know how to translate this to a string`
* `I don't know how to transform a contact`

It usually occurs due to one of the following issues:

1. The agent doesn’t have the skills needed to perform the task *(a missing Book).*
2. The automation syntax is incorrect.
3. The data is in the wrong format or type.

<details>

<summary>Resolution Methods</summary>

**1. Check Your Agent for Missing Books**

If the procedure belongs to a Book, make sure the Book is added to your agent with the correct credentials.

**2. Compute an answer**

This method allows you to modify the automation to resolve the exception. Use the **Mini-Playground** to test changes safely before applying them. This is useful when the automation syntax is incorrect or when data is passed incorrectly.

</details>

### 6. Which procedure should I use?

This exception occurs when there are multiple procedures with a similar syntax and the agent needs clarification on which one to use.

<details>

<summary>Resolution Methods</summary>

**1. Pick suggested value**

Choose the procedure that best matches your use case.\
\
If the procedure is part of a Book, the dropdown choices will be presented in this format:

```
<Book Name>: <Procedure Name>
```

For example:

```
sharepoint: to get a folder at a string
```

</details>

### 7. The automation crashed in a previous run. Click 'Yes' if it's safe to continue

This exception occurs when an automation previously crashed during execution, and the system needs confirmation that it’s safe to resume.

<details>

<summary>Resolution Methods</summary>

**1. Pick suggested value**

Select <kbd>**Yes**</kbd> to confirm it’s safe to rerun the automation.

</details>

### 8. Run had crashed. Do you want to restart?

This exception occurs when a previous run has crashed, and the system needs confirmation to restart the automation.

<details>

<summary>Resolution Methods</summary>

**1. Pick suggested value**

Select <kbd>**Yes**</kbd> to confirm it’s safe to rerun the automation.

</details>
