For the complete documentation index, see llms.txt. This page is also available as Markdown.

Strategy Assignment

Strategy selection is off-chain metadata signed by the vault owner. There's no on-chain transaction and no gas cost — you sign an EIP‑712 typed-data message with the owner wallet and POST it to the Public API. Tesseract picks the vault up and starts managing it.

Strategy can be set and changed freely before the vault starts being actively managed. Once a vault is actively managed, changes may be restricted — if your change isn't accepted, contact Tesseract to arrange a managed transition.

Discover available strategies

The set of strategies and their IDs is in the Tesseract app and exposed via the Public API. Each strategy has a UUID and is tied to a specific underlying asset (a USDC strategy can only be assigned to a USDC vault).

Sign the message

The EIP‑712 schema is defined in the Reference → Public API page. Using viem:

import {createWalletClient, http} from 'viem'
import {mainnet} from 'viem/chains'

const walletClient = createWalletClient({
  chain: mainnet,
  account: /* your signer */,
  transport: http(),
})

const timestamp = Math.floor(Date.now() / 1000)

const signature = await walletClient.signTypedData({
  domain: {
    name: 'Tesseract Public API',
    version: '1',
    chainId: 1,
  },
  types: {
    SetStrategy: [
      {name: 'vaultAddress', type: 'address'},
      {name: 'strategyId',   type: 'string'},
      {name: 'timestamp',    type: 'uint256'},
    ],
  },
  primaryType: 'SetStrategy',
  message: {
    vaultAddress: vault,
    strategyId: selectedStrategyId,
    timestamp: BigInt(timestamp),
  },
})

Submit to the Public API

The API verifies:

  • The signature recovers to clientAddress.

  • clientAddress is the owner of the vault.

  • timestamp is recent (a few minutes — sign and submit in the same flow).

  • The vault is eligible for strategy change (see note above about actively-managed vaults).

After assignment

Once the signature is accepted, Tesseract's management process picks up the vault on its next cycle and begins allocating positions according to the selected strategy. You can see the assignment reflected in the vault's detail via GET /vaults/{vault} — see Reading Vault Data.

Changing strategy later

Re-sign and re-submit with a different strategyId — each submission replaces the previous assignment. Strategy changes may be restricted once the vault is actively managed; if your submission is rejected, contact Tesseract to arrange a managed transition.


Continue to Reading Vault Data.

Last updated

Was this helpful?