# Introduction

The Enzyme SDK is a collection of TypeScript classes that represent the contracts composing the Enzyme Protocol. By correctly importing and instantiating these classes, a developer can call all of the on-chain methods necessary to to interact with Enzyme, whether from the perspective of a Vault Manager or an Investor.

As a developer, it is important to understand the protocol's contract architecture before attempting to build an app using the SDK. Detailed documentation can be found [here](https://docs.enzyme.finance/enzyme-blue-protocol), but at a high level, each Vault is two smart contracts deployed to Ethereum. Those contracts interact with Enzyme Finance infrastructure contracts (e.g. the `FundDeployer`) and extensions (e.g. the `PolicyManager`) which exist independent of but can be referenced by any vault or end user.

Additionally, during development it's helpful to refer to the [protocol codebase](https://github.com/enzymefinance/protocol/tree/current/contracts) to confirm function parameters and return values.

This site does not currently provide extensive documentation of the SDK, but it does give an overview of the basic patterns required to interact with the contract methods in the examples below.&#x20;

### Investor Examples

{% content-ref url="/pages/-MTv-fYMHLepfSdFsIij" %}
[Buying Shares in an Enzyme Vault](/enzyme-blue-sdk/examples/buy-shares.md)
{% endcontent-ref %}

{% content-ref url="/pages/-McPaQGBVTIhj4SqvPfA" %}
[Redeeming Shares in an Enzyme Vault](/enzyme-blue-sdk/examples/selling-shares-in-an-enzyme-vault.md)
{% endcontent-ref %}

### Vault Manager Examples

{% content-ref url="/pages/-MTv5W8rTOMTr2bMkaEU" %}
[Swap Tokens on Uniswap](/enzyme-blue-sdk/examples/uniswap-trade.md)
{% endcontent-ref %}

{% content-ref url="/pages/-McPdSSfSYzVpSt2HV1X" %}
[Editing a Vault's Permissioned Investors](/enzyme-blue-sdk/examples/editing-a-vaults-permissioned-investors.md)
{% endcontent-ref %}

{% content-ref url="/pages/-McQTpSVz75mDPG89R\_t" %}
[Adding Authorized Traders](/enzyme-blue-sdk/examples/adding-authorized-traders.md)
{% endcontent-ref %}


---

# 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/enzyme-blue-sdk/master.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.
