# Automation with Octav

This document explains how to prepare your vault and complete the required steps to enable automated NAV updates using Enzyme and Chainlink.

***

### 1. Before Setting up

Please review the following carefully before proceeding.

#### 1.1 Asset Requirements

* The **deposit, redeem, and fee assets** of your vault must have a **reliable and stable asset rate**.
* These assets should be pegged to a constant value (for example, USDC pegged to 1 USD).
* If any of these assets do not meet this requirement, the automation may produce incorrect results.

***

#### 1.2 Chainlink API Usage & Costs

* Please ensure your Octav API plan has sufficient credits.

***

#### 1.3 Vault Activity Restrictions During Execution

* When the automation runs, **no manual actions should be performed on the vault**.
* This includes:
  * Moving or transferring assets
  * Bridging assets
  * Executing deposits or redemptions
  * Claiming fees
* Performing any of these actions during execution may result in an **incorrect NAV calculation**.
* We strongly recommend scheduling **at least 30 minutes of inactivity** around the automation execution time.

***

#### 1.4 Octav Subscription Requirement

* All addresses tracked in your portfolio **must have an active Octav Lite subscription**.
* Without this, the automation may fail or return incomplete data.

***

### 2. Information You Must Provide to Enzyme

Before we begin setup, please send us the following details:

* Network (e.g., Ethereum, Polygon, etc.)
* Vault address (Shares contract)
* Public bundle portfolio URL (check on FAQ section how to do it)
* Desired automation schedule
  * Example: once per day at 01:00 UTC
* Your Octav API key (share with Enzyme in a secure way, either via password manager that you are using, or with the usage of <https://yopass.se/>)

***

### 3. Setup Process Overview

The setup consists of:

* Smart contracts deployed by the Enzyme team
* A small number of on-chain transactions that **you must execute**

We will guide you through each required action.

***

### 4. Actions Required From You

#### Step 1: Assign Vault Admin Rights

* We will provide you with a contract address of the `LimitedAccessLimitedCallForwarder`.
* Using the Enzyme Admin UI, set this address as your **Vault Admin**.
* This enables the automation to update the vault’s share value.

***

#### Step 2: Authorize the Automation Consumer

* We will provide you with contract address of the `CreWorkflowConsumer`.
* You must send an on-chain transaction to the `LimitedAccessLimitedCallForwarder` (address was provided in the **Step 1)** calling `addUser`.
* The input should be the address of `CreWorkflowConsumer` .
* This transaction must be sent via a blockchain explorer (e.g., Etherscan).

***

#### Step 3: Allow Share Value Updates

* You must send an on-chain transaction to the `LimitedAccessLimitedCallForwarder` (address was provided in the **Step 1)** calling `addCall`.
* This authorizes the automation to update the vault’s share value.
* We will provide:
  * The target contract is address of the `ValuationHandler` . You can find this address in the Admin UI under Advanced > Valuation

    ![Screenshot 2026-02-25 at 10.49.30.png](attachment:9150a21b-1c1f-4a7c-a65f-4105843f6eef:Screenshot_2026-02-25_at_10.49.30.png)
  * The function selector is `0x189ee485` (this is `updateShareValue` selector)
* This transaction must also be sent via a blockchain explorer (e.g., Etherscan).

***

#### Step 4: Approve the Automation Workflow

* After deploying the automation, we will share a **workflow ID** with you.
* You must send an on-chain transaction to approve this workflow ID.
* This step ensures that only the approved automation can execute actions on your vault.

***

### 5. After Setup

* Once all steps are completed, the automation will execute according to the agreed schedule.
* Please ensure:
  * No vault activity occurs during execution windows
  * Your Octav API key remains valid
  * Tracked addresses maintain active Octav subscriptions

If any vault parameters change (assets, tracked addresses, or schedule), please contact the Enzyme team before making updates.

***

### 6. Automation Script Updates & Client Approval

* Any update or change to the automation logic requires deploying a **new workflow**.
* For every update, the Enzyme team will provide you with a **new workflow ID**.
* **No updated or modified automation can run without your explicit approval.**
* To approve an update, you must send an on-chain transaction calling `setAllowedWorkflowId` with the new workflow ID given by Enzyme Team.
* Until this transaction is executed, the updated automation **cannot interact with your vault**.
* Previously approved workflows remain inactive.
* This design ensures that **no code changes are executed without your on-chain consent**.

### 7. Support

If you have questions or need help executing any transaction:

* Contact the Enzyme team before proceeding
* Do not attempt to bypass or modify the setup independently

We are happy to assist to ensure everything runs smoothly.

### FAQ

To learn how to create a public bundle --> [HERE](/onyx-user-documentation/administration-app/vault/markdown/portfolio-value-providers/octav.md)


---

# 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.enzyme.finance/onyx-user-documentation/enzyme-vault/accounting/nav-automation/automation-with-octav.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.
