Superform Vault API
The Vault API from Superform — 3 operation(s) for vault.
The Vault API from Superform — 3 operation(s) for vault.
openapi: 3.1.0
info:
title: Superform Auxiliary Vault API
version: 1.0.0
servers:
- url: https://api.superform.xyz
tags:
- name: Vault
paths:
/vault:
post:
description: Add a new vault to Superform.
operationId: add-vault
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/AddVaultInputBody'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/AddVaultOutputBody'
description: OK
default:
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ErrorModel'
description: Error
security:
- apiKey: []
summary: Add a new vault
tags:
- Vault
/vault/{vaultOrSuperformIDOrContractAddress}:
get:
description: Get vault data by vaultID, superformID, or contractAddress.
operationId: get-vault-data
parameters:
- example: '6277101738082190570017043140855561342102135322485627578637'
in: path
name: vaultOrSuperformIDOrContractAddress
required: true
schema:
examples:
- '6277101738082190570017043140855561342102135322485627578637'
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Vault'
description: OK
default:
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ErrorModel'
description: Error
security:
- apiKey: []
summary: Get vault data
tags:
- Vault
/vaults:
get:
description: Get all vaults listed on Superform.
operationId: get-all-vaults
responses:
'200':
content:
application/json:
schema:
items:
$ref: '#/components/schemas/Vault'
type: array
description: OK
default:
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ErrorModel'
description: Error
security:
- apiKey: []
summary: Get all vaults
tags:
- Vault
components:
schemas:
VaultAnalytic:
additionalProperties: false
properties:
chart_title:
type: string
chart_url:
type: string
id:
type: string
is_deleted:
type: boolean
vault_id:
type: string
type: object
VaultRiskDataProtocolsStruct:
additionalProperties: false
properties:
rating:
type: string
rating_color:
type: string
underlying:
items:
$ref: '#/components/schemas/VaultRiskDataUnderlying'
type: array
type: object
VaultRiskData:
additionalProperties: false
properties:
assets:
$ref: '#/components/schemas/VaultRiskDataAssetsStruct'
chain:
$ref: '#/components/schemas/VaultRiskDataChainStruct'
pool_design:
$ref: '#/components/schemas/VaultRiskDataPoolDesignStruct'
pool_rating:
type: string
pool_rating_color:
type: string
pool_rating_description:
type: string
pool_url:
type: string
protocols:
$ref: '#/components/schemas/VaultRiskDataProtocolsStruct'
type: object
VaultRewardRates:
additionalProperties: false
properties:
address:
type: string
chain_id:
format: int64
type: integer
is_configurable:
type: boolean
logo:
type: string
rate_type:
type: string
remarks:
type: string
remarks_url:
type: string
reward_multiplier:
format: double
type: number
reward_rate:
format: double
type: number
reward_source:
type: string
symbol:
type: string
total_supply:
format: int64
type:
- integer
- 'null'
type:
type: string
type: object
Protocol:
additionalProperties: false
properties:
$schema:
description: A URL to the JSON Schema for this object.
examples:
- https://api.superform.xyz/schemas/Protocol.json
format: uri
readOnly: true
type: string
analytics:
items:
$ref: '#/components/schemas/ProtocolAnalytic'
type: array
audits:
items:
$ref: '#/components/schemas/ProtocolAudit'
type: array
chain_ids:
items:
format: int64
minimum: 0
type: integer
type: array
created_at:
format: date-time
type: string
defillama_id:
type: string
deploy_date:
format: date-time
type: string
deployers:
items:
$ref: '#/components/schemas/Deployer'
type: array
description:
type: string
exploits:
items:
$ref: '#/components/schemas/ProtocolExploit'
type: array
faq:
items:
$ref: '#/components/schemas/ProtocolFAQ'
type: array
graphics:
$ref: '#/components/schemas/ProtocolGraphics'
id:
type: string
is_authenticated:
type: boolean
is_hidden:
type: boolean
links:
$ref: '#/components/schemas/ProtocolLinks'
name:
type: string
num_depositors:
format: int64
type: integer
primary_color:
type: string
status:
type:
- string
- 'null'
status_message:
type:
- string
- 'null'
tagline:
type: string
tvl:
format: double
type: number
tvl_day_change:
format: double
type: number
tvl_month_change:
format: double
type: number
tvl_week_change:
format: double
type: number
type:
type: string
updated_at:
format: date-time
type: string
users:
items:
$ref: '#/components/schemas/User'
type: array
vanity_url:
type: string
vaults_amount:
format: int64
type: integer
required:
- id
- name
- description
- type
- tagline
- is_hidden
- is_authenticated
- defillama_id
- vanity_url
- primary_color
- num_depositors
- status
- status_message
- deploy_date
- graphics
- links
- vaults_amount
- tvl
- tvl_day_change
- tvl_week_change
- tvl_month_change
- created_at
- updated_at
type: object
Chain:
additionalProperties: false
properties:
id:
format: int64
type: integer
logo_url:
type: string
name:
type: string
short_name:
type: string
wrapped_token_id:
type: string
type: object
ProtocolAnalytic:
additionalProperties: false
properties:
chart_title:
type: string
chart_url:
type: string
id:
type: string
is_deleted:
type: boolean
protocol_id:
type: string
required:
- id
- protocol_id
- chart_title
- chart_url
- is_deleted
type: object
Deployer:
additionalProperties: false
properties:
address:
type: string
created_at:
format: date-time
type: string
id:
type: string
name:
type: string
status:
type: string
type:
type: string
updated_at:
format: date-time
type: string
vault_count:
format: int64
type: integer
required:
- id
- vault_count
- address
- name
- status
- type
- created_at
- updated_at
type: object
AddVaultOutputBody:
additionalProperties: false
properties:
$schema:
description: A URL to the JSON Schema for this object.
examples:
- https://api.superform.xyz/schemas/AddVaultOutputBody.json
format: uri
readOnly: true
type: string
id:
description: The ID of the new vault
examples:
- 9z4Rx6tolq6WjbgyYyLub
type: string
result:
description: The status of the call
examples:
- success
type: string
required:
- result
- id
type: object
ErrorDetail:
additionalProperties: false
properties:
location:
description: Where the error occurred, e.g. 'body.items[3].tags' or 'path.thing-id'
type: string
message:
description: Error message text
type: string
value:
description: The value at the given location
type: object
VaultExploit:
additionalProperties: false
properties:
amount:
type: string
date:
format: date-time
type: string
id:
type: string
is_deleted:
type: boolean
title:
type: string
url:
type: string
vault_id:
type: string
type: object
VaultStatistic:
additionalProperties: false
properties:
apy_day:
description: APY calculated over a 24 hour time frame and scaled to a year.
format: double
type:
- number
- 'null'
apy_day_change:
description: APY change over the past day, in percent.
format: double
type:
- number
- 'null'
apy_month:
description: APY calculated over a 30 day time frame and scaled to a year.
format: double
type:
- number
- 'null'
apy_month_change:
description: APY change over the past month, in percent.
format: double
type:
- number
- 'null'
apy_now:
description: APY.
format: double
type:
- number
- 'null'
apy_week:
description: APY calculated over a 7 day time frame and scaled to a year.
format: double
type:
- number
- 'null'
apy_week_change:
description: APY change over the past week, in percent.
format: double
type:
- number
- 'null'
pps:
description: Price per share.
format: double
type:
- number
- 'null'
pps_usd:
description: Price per share in USD.
format: double
type:
- number
- 'null'
reward_rate:
description: Reward rate.
format: double
type:
- number
- 'null'
sharpe_day:
description: Sharpe ratio calculated over a 24 hour time frame.
format: double
type:
- number
- 'null'
sharpe_month:
description: Sharpe ratio calculated over a 30 day time frame.
format: double
type:
- number
- 'null'
superform_id:
type: string
tvl_day_change:
description: TVL change over the past day, in percent.
format: double
type:
- number
- 'null'
tvl_month_change:
description: TVL change over the past month, in percent.
format: double
type:
- number
- 'null'
tvl_now:
description: Total Value Locked.
format: double
type:
- number
- 'null'
tvl_week_change:
description: TVL change over the past week, in percent.
format: double
type:
- number
- 'null'
vault_id:
type: string
required:
- vault_id
- superform_id
- apy_now
- tvl_now
- sharpe_day
- sharpe_month
- apy_day
- apy_week
- apy_month
- apy_day_change
- apy_week_change
- apy_month_change
- tvl_day_change
- tvl_week_change
- tvl_month_change
- pps
- pps_usd
- reward_rate
type: object
VaultOther:
additionalProperties: false
properties:
additional_description:
type: string
additional_info:
type: string
id:
type: string
is_deleted:
type: boolean
vault_id:
type: string
type: object
VaultRiskDataAssetsStruct:
additionalProperties: false
properties:
rating:
type: string
rating_color:
type: string
underlying:
items:
$ref: '#/components/schemas/VaultRiskDataUnderlying'
type: array
type: object
VaultAudit:
additionalProperties: false
properties:
audit_date:
format: date-time
type: string
audit_link:
type: string
audit_name:
type: string
id:
type: string
is_deleted:
type: boolean
vault_id:
type: string
type: object
VaultRiskDataUnderlying:
additionalProperties: false
properties:
name:
type: string
rating:
type: string
rating_color:
type: string
url:
type:
- string
- 'null'
type: object
ProtocolAudit:
additionalProperties: false
properties:
audit_date:
format: date-time
type: string
audit_link:
type: string
audit_name:
type: string
created_at:
format: date-time
type: string
id:
type: string
is_deleted:
type: boolean
protocol_id:
type: string
updated_at:
format: date-time
type: string
required:
- id
- protocol_id
- audit_name
- audit_link
- audit_date
- is_deleted
- created_at
- updated_at
type: object
Vault:
additionalProperties: false
properties:
$schema:
description: A URL to the JSON Schema for this object.
examples:
- https://api.superform.xyz/schemas/Vault.json
format: uri
readOnly: true
type: string
analytics:
items:
$ref: '#/components/schemas/VaultAnalytic'
type: array
assets:
items:
$ref: '#/components/schemas/Asset'
type: array
audits:
items:
$ref: '#/components/schemas/VaultAudit'
type: array
availability:
description: Availability on the Superform platform
enum:
- available
- unavailable
- paused
- withdraw_only
- deposit_only
- ''
type: string
chain:
$ref: '#/components/schemas/Chain'
description: This is the chain that this vault belongs to.
contract_address:
description: This comes from on-chain data, it is the address of the vault contract.
readOnly: true
type: string
created_at:
format: date-time
readOnly: true
type: string
decimals:
description: This comes from on-chain data, decimals of the vault.
format: int32
readOnly: true
type: integer
deploy_date:
description: The date the vault was deployed on-chain.
format: date-time
type: string
description:
description: The description of the vault. Required when creating vault.
type: string
exploits:
items:
$ref: '#/components/schemas/VaultExploit'
type: array
external_url:
description: The external URL of the vault.
type: string
faq:
items:
$ref: '#/components/schemas/VaultFAQ'
type: array
fees:
items:
$ref: '#/components/schemas/VaultFee'
type: array
form_implementation_id:
description: This is the formImplementationID of the vault
readOnly: true
type: string
friendly_name:
description: The friendly name of the vault.
type: string
has_aerc_20_registered:
description: Whether the vault has an AERC20 registered.
readOnly: true
type: boolean
has_rewards:
type:
- boolean
- 'null'
has_timelock:
description: Whether the vault has a timelock.
type:
- boolean
- 'null'
id:
description: This is the unique identifier for this vault.
readOnly: true
type: string
is_authenticated:
readOnly: true
type: boolean
is_supervault:
type: boolean
kyc:
items:
$ref: '#/components/schemas/VaultKYC'
type: array
name:
description: This is the name of the vault.
type: string
num_depositors:
description: The number of Superform depositors in the vault.
format: int64
readOnly: true
type: integer
other:
items:
$ref: '#/components/schemas/VaultOther'
type: array
protocol:
$ref: '#/components/schemas/Protocol'
description: Optional. This is the protocol that this vault belongs to.
protocol_id:
description: Optional. This is the unique identifier for the protocol that this vault belongs to.
type:
- string
- 'null'
recommend_vault_share_withdrawal:
type:
- boolean
- 'null'
rewards:
description: Array of rewards that are live for this vault.
items:
$ref: '#/components/schemas/VaultRewardRates'
type: array
risk_data:
$ref: '#/components/schemas/VaultRiskData'
description: Risk data for the vault, using DefiLlama.
risk_data_last_updated:
description: The last time the risk data was updated.
format: date-time
readOnly: true
type: string
super_pools:
description: Array of chainIDs on which there is a liquidity pool for this vault
examples:
- - 1
- 137
items:
format: int64
minimum: 0
type: integer
type: array
superform_address:
description: This comes from on-chain data, it is the address of the superform contract.
readOnly: true
type:
- string
- 'null'
superform_id:
description: This comes from on-chain data, it is the unique identifier for this superform.
readOnly: true
type:
- string
- 'null'
symbol:
description: This comes from on-chain data, symbol of the vault.
readOnly: true
type: string
timelock_duration:
description: The duration of the timelock.
examples:
- 7
format: int64
type:
- integer
- 'null'
timelock_unit:
description: The unit of the timelock duration.
enum:
- hours
- days
- weeks
- months
- years
- ''
type:
- string
- 'null'
underlying_wrapper_vaults:
items:
$ref: '#/components/schemas/ERC5115To4626WrapperVault'
type: array
updated_at:
format: date-time
readOnly: true
type: string
vault_lister:
description: The address of the user who listed the vault.
type: string
vault_statistics:
$ref: '#/components/schemas/VaultStatistic'
readOnly: true
vault_status_message:
description: Optional. The status message of the vault.
type:
- string
- 'null'
visibility:
description: Visibility on the Superform platform
enum:
- listed
- unlisted
- hidden
- featured
- ''
type: string
withdraw_to_vault_asset_only:
description: If confidence score falls below a threshold, the vault will only allow withdrawals to the vault asset to minimize crosschain withdrawal failure rate.
readOnly: true
type:
- boolean
- 'null'
withdrawal_confidence_score:
description: This confidence score is based on revent withdrwawal failure rate
format: double
readOnly: true
type:
- number
- 'null'
withdrawal_link:
type: string
yield_source:
description: The yield source of the vault.
type: string
yield_type:
description: The yield type of the vault. Required when creating vault.
enum:
- Yield
- Liquid Staking
- Liquid Restaking
- Lending
- Basis Trading
- RWA
- Dexes
- Derivatives
- Yield Aggregator
- Leveraged Farming
- Insurance
- Intelligent
- Onchain Capital Allocator
type: string
required:
- form_implementation_id
- name
type: object
AddVaultInputBody:
additionalProperties: false
properties:
$schema:
description: A URL to the JSON Schema for this object.
examples:
- https://api.superform.xyz/schemas/AddVaultInputBody.json
format: uri
readOnly: true
type: string
analytics:
items:
$ref: '#/components/schemas/VaultAnalytic'
type: array
assets:
items:
$ref: '#/components/schemas/Asset'
type: array
audits:
items:
$ref: '#/components/schemas/VaultAudit'
type: array
availability:
description: Availability on the Superform platform
enum:
- available
- unavailable
- paused
- withdraw_only
- deposit_only
- ''
type: string
chain:
$ref: '#/components/schemas/Chain'
description: This is the chain that this vault belongs to.
contract_address:
description: This comes from on-chain data, it is the address of the vault contract.
readOnly: true
type: string
created_at:
format: date-time
readOnly: true
type: string
decimals:
description: This comes from on-chain data, decimals of the vault.
format: int32
readOnly: true
type: integer
deploy_date:
description: The date the vault was deployed on-chain.
format: date-time
type: string
description:
description: The description of the vault. Required when creating vault.
type: string
exploits:
items:
$ref: '#/components/schemas/VaultExploit'
type: array
external_url:
description: The external URL of the vault.
type: string
faq:
items:
$ref: '#/components/schemas/VaultFAQ'
type: array
fees:
items:
$ref: '#/components/schemas/VaultFee'
type: array
form_implementation_id:
description: This is the formImplementationID of the vault
readOnly: true
type: string
friendly_name:
description: The friendly name of the vault.
type: string
has_aerc_20_registered:
description: Whether the vault has an AERC20 registered.
readOnly: true
type: boolean
has_rewards:
type:
- boolean
- 'null'
has_timelock:
description: Whether the vault has a timelock.
type:
- boolean
- 'null'
id:
description: This is the unique identifier for this vault.
readOnly: true
type: string
is_authenticated:
readOnly: true
type: boolean
is_supervault:
type: boolean
kyc:
items:
$ref: '#/components/schemas/VaultKYC'
type: array
name:
description: This is the name of the vault.
type: string
num_depositors:
description: The number of Superform depositors in the vault.
format: int64
readOnly: true
type: integer
other:
items:
$ref: '#/components/schemas/VaultOther'
type: array
protocol:
$ref: '#/components/schemas/Protocol'
description: Optional. This is the protocol that this vault belongs to.
protocol_id:
description: Optional. This is the unique identifier for the protocol that this vault belongs to.
type:
- string
- 'null'
recommend_vault_share_withdrawal:
type:
- boolean
- 'null'
rewards:
description: Array of rewards that are live for this vault.
items:
$ref: '#/components/schemas/VaultRewardRates'
type: array
risk_data:
$ref: '#/components/schemas/VaultRiskData'
description: Risk data for the vault, using DefiLlama.
risk_data_last_updated:
description: The last time the risk data was updated.
format: date-time
readOnly: true
type: string
super_pools:
description: Array of chainIDs on which there is a liquidity pool for this vault
examples:
- - 1
- 137
items:
format: int64
minimum: 0
type: integer
type: array
superform_address:
description: This comes from on-chain data, it is the address of the superform contract.
readOnly: true
type:
- string
- 'null'
superform_id:
description: This comes from on-chain data, it is the unique identifier for this superform.
readOnly: true
type:
- string
- 'null'
symbol:
description: This comes from on-chain data, symbol of the vault.
readOnly: true
type: string
timelock_duration:
description: The duration of the timelock.
examples:
- 7
format: int64
type:
- integer
- 'null'
timelock_unit:
description: The unit of the timelock duration.
enum:
- hours
- days
- weeks
- months
- years
- ''
type:
- string
- 'null'
underlying_wrapper_vaults:
items:
$ref: '#/components/schemas/ERC5115To4626WrapperVault'
type: array
updated_at:
format: date-time
readOnly: true
type: string
vault_lister:
description: The address of the user who listed the vault.
type: string
vault_statistics:
$ref: '#/components/schemas/VaultStatistic'
readOnly: true
vault_status_message:
description: Optional. The status message of the vault.
type:
- string
- 'null'
visibility:
description: Visibility on the Superform platform
enum:
- listed
- unlisted
- hidden
- featured
- ''
type: string
withdraw_to_vault_asset_only:
description: If confidence score falls below a threshold, the vault will only allow withdrawals to the vault asset to minimize crosschain withdrawal failure rate.
readOnly: true
type:
- boolean
- 'null'
withdrawal_confidence_score:
description: This confidence score is based on revent withdrwawal failure rate
format: double
readOnly: true
type:
- number
- 'null'
withdrawal_link:
type: string
yield_source:
description: The yield source of the vault.
type: string
yield_type:
description: The yield type of the vault. Required when creating vault.
enum:
- Yield
- Liquid Staking
- Liquid Restaking
- Lending
- Basis Trading
- RWA
- Dexes
- Derivatives
- Yield Aggregator
- Leveraged Farming
- Insurance
- Intelligent
- Onchain Capital Allocator
type: string
required:
- form_implementation_id
- name
type: object
Asset:
additionalProperties: false
properties:
contract_address:
type: string
decimals:
format: int32
type: integer
id:
format: int64
type: integer
image:
type: string
name:
type: string
symbol:
type: string
type: object
VaultFAQ:
additionalProperties: false
properties:
answer:
type: string
id:
type: string
is_deleted:
type: boolean
question:
type: string
vault_id:
type: string
type: object
VaultFee:
additionalProperties: false
properties:
fee_amount:
format: double
type: number
fee_description:
type: string
fee_name:
type: string
id:
type: string
is_deleted:
type: boolean
vault_id:
type: string
type: object
VaultKYC:
additionalProperties: false
properties:
id:
type: string
is_deleted:
type: boolean
issuer:
type: string
issuer_link:
type: string
provider:
type: string
vault_id:
type: string
type: object
ProtocolExploit:
additionalProperties: false
properties:
amount:
type: string
created_at:
format: date-time
type: string
date:
format: date-time
type: string
id:
type: string
is_deleted:
type: boolean
protocol_id:
type: string
title:
type: string
updated_at:
format: date-time
type: string
url:
type: string
required:
- id
- protocol_id
- title
- amount
- url
- date
- is_deleted
- created_at
- updated_at
type: object
ERC5115To4626WrapperVault:
additionalProperties: false
properties:
chain_id:
format: int64
type: integer
contract_address:
type: strin
# --- truncated at 32 KB (36 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/superform/refs/heads/main/openapi/superform-vault-api-openapi.yml