---
title: "Securitize vault batch"
method: POST
path: "/v3/securitize/vaults/batch"
tags: ["Securitize"]
---

# Securitize vault batch

`POST /v3/securitize/vaults/batch`

Returns Securitize vault rows for explicit addresses on one chain, in request
order after address deduplication; `meta.notFound` lists the rest. The
governing address is `governorAdmin`. Serves what the EVK routes never
list: Securitize vaults come from their own factory and their own indexed
table. A chain this deployment does not index answers 404
`CHAIN_NOT_SUPPORTED`; an indexed chain with no Securitize factory answers
every address as not found.
Request cap: 1000 vault addresses and 256 KiB of JSON body.

## Request body

- SecuritizeVaultBatchRequest
  - `chainId` integer, required
  - `addresses` string[], required

## Response `200`

Securitize vault batch

- SecuritizeVaultBatchResponse
  - `data` SecuritizeVaultSummary[]
    - `chainId` integer, required
    - `address` string, required
    - `vaultType` 'securitize', required — Every row of this surface is a Securitize vault; one read tells a consumer the family.
    - `isEscrow` boolean, required — Always false; the escrow perspective verifies EVK-factory vaults only.
    - `name` string, required
    - `symbol` string, required
    - `decimals` integer, required
    - `asset` AssetRef, required
      - `address` string
      - `symbol` string
      - `decimals` integer
      - `name` string, nullable
    - `shares` SecuritizeTokenRef, required
      - `address` string, required
      - `symbol` string, required
      - `decimals` integer, required
      - `name` string, required
    - `governorAdmin` string, required — The address that governs the vault -- the issuer. The field the curator claim preflight reads.
    - `supplyCap` string, required — Resolved supply cap as a bigint string in underlying asset base units, decoded from the EVK cap encoding exactly as the EVK detail decodes its caps; `0` when no cap is set. Do not decode it again.
    - `caps` VaultCaps, required
      - `supplyCap` string — Resolved supply cap as a bigint string in underlying asset base units.
      - `borrowCap` string — Resolved borrow cap as a bigint string in underlying asset base units.
    - `createdAt` string, date-time, required — Deployment time from the factory event.
    - `visibility` VaultVisibilitySummary, required — Platform visibility verdict for discovery surfaces. Warning stays discoverable with a badge; the per-surface booleans carve out lend/borrow discovery individually. A side is explorable when `status` is `visible` or `warning` and nothing hides that side: a platform override, the escrow rule, a curator listing flag on the vault or its product, or deprecation (which hides by default unless a curator re-lists with a `false` flag). An escrow vault (`isEscrow: true`) is never explorable for lending, because nothing can be borrowed from it and a deposit earns nothing; it stays explorable for borrowing, so a market that accepts it as collateral keeps it in its pairs. Its `status` is unaffected.
      - `status` 'visible' | 'warning' | 'hidden' | 'pending_review', required
      - `explorableLend` boolean, required
      - `explorableBorrow` boolean, required
      - `explorableLendDecidedBy` 'platform' | 'escrow' | 'curator' | 'curator-product' | 'deprecated' | 'none' — Who decided one discovery side's listing, nearest explicit decision first: `platform` (assessment override), `escrow` (lend side of an escrow vault, set by Euler automatically), `curator` (vault-level flag), `curator-product` (product-level flag), `deprecated` (resolved deprecation with no curator flag), or `none` (shown, nothing decided).
      - `explorableBorrowDecidedBy` 'platform' | 'escrow' | 'curator' | 'curator-product' | 'deprecated' | 'none' — Who decided one discovery side's listing, nearest explicit decision first: `platform` (assessment override), `escrow` (lend side of an escrow vault, set by Euler automatically), `curator` (vault-level flag), `curator-product` (product-level flag), `deprecated` (resolved deprecation with no curator flag), or `none` (shown, nothing decided).
      - `decidedBy` 'config-revoked' | 'consistency-revoked' | 'config-suspended' | 'consistency-suspended' | 'config-failed' | 'not-explorable' | 'unassessable' | 'deprecated' | 'advisories' | 'unclaimed' | 'unassigned' | 'verified' | 'awaiting-verification', required — Which resolution rule decided the status. `config-*` codes come from Layer 1 (configuration safety), `consistency-*` codes from Layer 2 (label consistency). `unclaimed` and `unassigned` are label gates. A verified or unassessable non-escrow vault stays in `pending_review` until an entity claims it, and EVK and Securitize vaults additionally require assignment to a product. Escrow vaults bypass both label gates. `advisories` badges a vault that passed both layers but has a failed advisory finding — it stays in discovery, with `checksStatus` on its assessment naming a Layer 1 concern and `consistencyContext` a Layer 2 one (an Earn vault's deprecated dependency); an advisory that could not be judged does not badge.
      - `reason` string, nullable, required — Display-appropriate explanation for the decision, when there is one: the curated deprecation reason, the failing check's sentence, or, for `advisories`, the sentence of the first failed advisory (Layer 1 before Layer 2, each by finding key) followed by a count of the rest, e.g. "… (2 more checks flagged)". Null for a deprecated vault whose curator gave no reason, and whenever nothing needs explaining.
  - `meta` SecuritizeVaultBatchMeta
    - `count` integer
    - `requested` integer
    - `notFound` string[]
    - `timestamp` string, date-time
    - `chainId` string

## Other responses

- `400` — Bad request
- `404` — Not found
- `413` — Request body too large
- `415` — Unsupported media type
- `429` — Rate limited
- `500` — Internal server error

## Changes

- **2026-09-30** `3557c6b70bf3` — 2 warning
  - added the new `escrow` enum value to the `data/items/visibility/explorableBorrowDecidedBy` response property for the response status `200`
  - added the new `escrow` enum value to the `data/items/visibility/explorableLendDecidedBy` response property for the response status `200`
- **2026-09-22** `eb30fc696a5d` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/euler/apis/euler-data-api-v3/changes/v3/securitize/vaults/batch/post.md)

---

[API](https://skmtc.dev/euler/apis/euler-data-api-v3.md) · [All operations](https://skmtc.dev/euler/apis/euler-data-api-v3/llms.txt) · [OpenAPI document](https://skmtc.dev/euler/apis/euler-data-api-v3/revisions/8246bd01965b?raw)
