> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Custom activity

> The Custom activity lets you use third-party tools not available in Vantage and perform additional actions on documents received during skill processing.

A **Custom** activity collects information about documents in a transaction and sends it to an external system via an HTTP request. The response is processed and saved back to the transaction data. You can pass one or all of the transaction's documents in a single request.

<Warning>
  The Custom activity requires a [security level 2](https://www.openssl.org/docs/man1.1.1/man3/SSL_CTX_set_security_level.html#DEFAULT-CALLBACK-BEHAVIOUR) SSL certificate to verify a secure connection. If your server offers a lower security level, the Custom activity can't send requests to it.
</Warning>

<Note>
  Place a Custom activity inside a [For Each Document](/vantage/documentation/skill-designer/process/for-each) activity to process each document separately — the Custom activity then sees only one document at a time.
</Note>

## Set up a Custom activity

<Steps>
  <Step title="Add the activity">
    In the Process skill designer, add a **Custom** activity block to the document processing workflow.
  </Step>

  <Step title="Open activity settings">
    In the **Actions** pane, click **Edit Activity**.
  </Step>

  <Step title="Choose available files">
    On the **Available Files** tab, select the formats for text, document fields, and images to send to the external system. You must select at least one format for each type.
  </Step>

  <Step title="Write the script">
    On the **Activity Script** tab, configure your script and click **Save**.
  </Step>
</Steps>

For a detailed description of objects you can use in scripts, see [Object model](/vantage/documentation/skill-designer/process/custom-activity/object-model). For examples, see [Sample scripts](/vantage/documentation/skill-designer/process/custom-activity/sample-scripts).

## Verify the Custom activity

<Steps>
  <Step title="Publish the skill">
    Click the **Publish** tab, enter a name, description, and description of changes, and then click **Publish Skill**.
  </Step>

  <Step title="Run the workflow">
    Process documents through the workflow that uses the Custom activity.
  </Step>

  <Step title="Check results in Skill Monitor">
    Review the skill's results in Skill Monitor. If the script errored, the transaction is interrupted and the error appears in the **Transaction Event Log**. If you used [`LogMessage`](/vantage/documentation/skill-designer/process/custom-activity/context) to add custom log entries, they also appear in the Transaction Event Log.
  </Step>
</Steps>

## Deprecated interfaces

<Warning>
  The Custom activity has been updated. Obsolete scripts continue to work and have access to all documents in a transaction, but the deprecated interfaces below only have access to the first document in a transaction.
</Warning>

| Deprecated object                                                                               | Replacement                                                                                        |
| :---------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------- |
| [InputData](/vantage/documentation/skill-designer/process/custom-activity/input-data)           | [Transaction.Documents](/vantage/documentation/skill-designer/process/custom-activity/transaction) |
| [OutputData](/vantage/documentation/skill-designer/process/custom-activity/output-data)         | [Transaction.Documents](/vantage/documentation/skill-designer/process/custom-activity/transaction) |
| [ExtractedData](/vantage/documentation/skill-designer/process/custom-activity/extracted-data)   | [Document](/vantage/documentation/skill-designer/process/custom-activity/document)                 |
| [ExtractedField](/vantage/documentation/skill-designer/process/custom-activity/extracted-field) | [Field](/vantage/documentation/skill-designer/process/custom-activity/field)                       |
| [FieldType](/vantage/documentation/skill-designer/process/custom-activity/field-type)           | [FieldOcrType](/vantage/documentation/skill-designer/process/custom-activity/field-ocr-type)       |

## Related topics

* [Object model](/vantage/documentation/skill-designer/process/custom-activity/object-model)
* [Sample scripts](/vantage/documentation/skill-designer/process/custom-activity/sample-scripts)
* [For Each Document activity](/vantage/documentation/skill-designer/process/for-each)
* [Set up a Process skill](/vantage/documentation/skill-designer/process/set-up)
* [Skill Monitor transactions](/vantage/documentation/runtime/skill-monitor/transactions)
