Documentation Index
Fetch the complete documentation index at: https://docs.superform.xyz/llms.txt
Use this file to discover all available pages before exploring further.
Erebor is the SuperVaults management API. It powers vault reads, settings preparation, registries, merkle workflows, upkeep, users, pause controls, notification channels, and public vault data.
Base URL: https://erebor.superform.xyz
Auth: Authorization: Bearer <jwt> except public endpoints
For onchain changes, Erebor prepares calldata and the manager wallet signs the transaction. The REST request is not the state change; the signed transaction is.
Auth
| Endpoint | Method | Description |
|---|
/api/v1/auth/me | GET | Current user, wallet, and vault roles |
/api/v1/auth/verify | GET | Lightweight JWT verification |
Vaults and Public Discovery
| Endpoint | Method | Description |
|---|
/api/v1/public/vaults | GET | Public vault list |
/api/v1/vaults | GET | Authenticated vault list |
/api/v1/vaults/{chain_id}/{vault_address} | GET | Full vault detail |
Vault detail includes onchain identity, managers, fees, PPS, balances, TVL, upkeep information, activation state, and allocation data when available. Authenticated list responses may include activation; public vault responses include upkeep_info and activation when Erebor can compute them.
Public discovery depends on more than deployment. Erebor only surfaces vaults with known activation when activation.is_discoverable is true. If activation is unknown because a subgraph dependency is unavailable, the vault can still be returned with activation unset rather than treated as deleted.
Vault Creation
| Endpoint | Method | Description |
|---|
/api/v1/vaults/create/prepare | POST | Prepare vault creation transaction |
/api/v1/vaults/create/confirm | POST | Confirm creation transaction hash and start indexing |
/api/v1/vaults/create/jobs/{id} | GET | Poll creation job |
ConfirmCreateVaultRequest can include vault_config.redeem_timelock_seconds for post-indexing settings.
Listing metadata is handled by the dashboard/catalog layer after vault address resolution. Onchain creation and catalog availability are separate states.
Settings and Upkeep
| Endpoint | Method | Description |
|---|
/api/v1/settings/upkeep | POST | Prepare upkeep settings update |
/api/v1/settings/upkeep/deposit | POST | Prepare upkeep deposit |
/api/v1/settings/upkeep/withdraw/propose | POST | Prepare upkeep withdrawal proposal |
/api/v1/settings/upkeep/withdraw/execute | POST | Prepare upkeep withdrawal execution |
/api/v1/settings/redeem-timelock | POST | Prepare redeem timelock update |
/api/v1/redeem-timelocks | GET | List redeem timelocks |
/api/v1/redeem-timelocks/bulk | GET | Bulk redeem timelock lookup |
/api/v1/vaults/{chain_id}/{vault_address}/redeem-timelock | GET | Read one vault’s redeem timelock |
Upkeep data drives activation and discoverability in the dashboard. Operators should treat insufficient upkeep as a launch blocker.
Current upkeep responses use:
| Field | Description |
|---|
upkeep_info.balance | Current upkeep balance in raw token units. |
upkeep_info.token | Upkeep token address on settings responses. |
upkeep_info.threshold.required_balance | Required upkeep balance for activation. |
upkeep_info.threshold.shortfall | Remaining amount needed; 0 means the threshold is satisfied. |
activation.is_active | Whether the vault is eligible for keeper operations. |
activation.is_discoverable | Whether the vault is surfaced on public listing responses. |
activation.status | active or insufficient_upkeep. |
activation.reason | Optional explanation when inactive. |
withdrawal_status | Pending withdrawal lifecycle; separate from activation.status. |
Merkle Authorization
| Endpoint | Method | Description |
|---|
/api/v1/merkle/configs/versions | GET | Config version history |
/api/v1/merkle/configs/version | GET | Single config version |
/api/v1/merkle/configs/active | GET | Active config |
/api/v1/merkle/configs | POST | Create config |
/api/v1/merkle/configs/{id} | GET | Get config by ID |
/api/v1/merkle/configs/activate | PUT | Activate config |
/api/v1/merkle/trees | GET | List trees |
/api/v1/merkle/trees/{id} | GET | Get tree |
/api/v1/merkle/proofs | GET | List proofs |
/api/v1/merkle/proofs/lookup | GET | Lookup proof |
/api/v1/merkle/generate | POST | Generate tree |
/api/v1/merkle/jobs/{id} | GET | Poll generation job |
/api/v1/merkle/jobs | GET | List jobs |
/api/v1/merkle/sync | GET | Determine onchain sync action |
/api/v1/merkle/publish | POST | Publish active proof artifact |
/api/v1/merkle/publish/jobs/{id} | GET | Poll publish job |
/api/v1/merkle/published/{chain_id}/{vault} | GET | Public published tree metadata |
Registry
| Endpoint | Method | Description |
|---|
/api/v1/registry/yield-sources | GET/POST | Browse or create yield sources |
/api/v1/registry/yield-sources/{chain_id}/{address} | GET/PUT | Read or update source by chain/address |
/api/v1/registry/yield-sources/{id} | DELETE | Delete source |
/api/v1/registry/yield-sources/sync | POST | Import provider sources |
/api/v1/registry/oracles | GET/POST | Browse or create oracles |
/api/v1/registry/oracles/{chain_id}/{oracle_address} | GET/PUT | Read or update oracle |
/api/v1/registry/oracles/{id} | DELETE | Delete oracle |
/api/v1/registry/hooks | GET/POST | Browse or create hooks |
/api/v1/registry/hooks/{id} | PUT/DELETE | Update or delete hook |
/api/v1/registry/token-assets | GET/PUT | Browse or upsert token metadata |
/api/v1/registry/token-assets/{chain_id}/{address} | GET | Read token metadata |
Yield source registry entries include active/inactive state and can carry external provider metadata.
Yield Source Whitelist
| Endpoint | Method | Description |
|---|
/api/v1/yield-sources/prepare-add | POST | Prepare add transaction |
/api/v1/yield-sources/prepare-remove | POST | Prepare remove transaction |
/api/v1/yield-sources/prepare-update-oracle | POST | Prepare oracle update transaction |
/api/v1/yield-sources/prepare-bulk-add | POST | Prepare bulk add transaction |
/api/v1/yield-sources/prepare-bulk-remove | POST | Prepare bulk remove transaction |
/api/v1/yield-sources/prepare-bulk-update-oracle | POST | Prepare bulk oracle update transaction |
Users and Permissions
| Endpoint | Method | Description |
|---|
/api/v1/users | GET | List users for a vault |
/api/v1/users/secondary-manager/prepare | POST | Prepare add-secondary-manager transaction |
/api/v1/users/secondary-manager/remove/prepare | POST | Prepare remove-secondary-manager transaction |
/api/v1/users/view-only | POST | Add view-only user |
/api/v1/users/view-only/{wallet} | DELETE | Remove view-only user |
/api/v1/users/{wallet}/display-name | PATCH | Update display name |
Session Keys
| Endpoint | Method | Description |
|---|
/api/v1/session-keys | GET | List manager-visible session keys |
/api/v1/vaults/{chain_id}/{vault_address}/session-key | GET | Read vault session key |
/api/v1/vaults/session-key/prepare | POST | Prepare session-key grant |
/api/v1/vaults/session-key/revoke/prepare | POST | Prepare session-key revoke |
OMS owns additional readiness and rotation endpoints for strategy automation.
Notification Channels
| Endpoint | Method | Description |
|---|
/api/v1/notification-channels | GET/POST | List or create channels |
/api/v1/vaults/{chain_id}/{vault_address}/notification-channels | GET/POST | List or attach vault channels |
/api/v1/vaults/{chain_id}/{vault_address}/notification-channels/{channel_id} | DELETE | Detach vault channel |
Providers include Slack, webhook, and websocket channels.
Pause and Services
| Endpoint | Method | Description |
|---|
/api/v1/vaults/pause-status | GET | Batch pause status |
/api/v1/vaults/emergency-pause/prepare | POST | Prepare onchain pause |
/api/v1/vaults/emergency-unpause/prepare | POST | Prepare onchain unpause |
/api/v1/vaults/{chain_id}/{vault}/services | GET | List keeper services |
/api/v1/vaults/{chain_id}/{vault}/services/{name}/pause | PUT | Pause service |
/api/v1/vaults/{chain_id}/{vault}/services/{name}/resume | PUT | Resume service |
/api/v1/vaults/{chain_id}/{vault}/services/enabled | PUT | Bulk enable/disable services |
/api/v1/vaults/{chain_id}/{vault}/services/{name} | PUT | Update service config |
/api/v1/services/bulk | PUT | Bulk service update |
Analytics, Audit, and Admin
Analytics endpoints live under:
/api/v1/vaults/{chain_id}/{address}/analytics/*
Audit endpoints:
| Endpoint | Method | Description |
|---|
/api/v1/audit/logs | GET | Query audit trail |
/api/v1/audit/logs/{id} | GET | Single audit row |
/api/v1/audit/export | GET | Export audit rows |
Admin endpoints include APY, TVL, and event backfills for registry maintainers.