> ## Documentation Index
> Fetch the complete documentation index at: https://docs.notional.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# Perpetual Metadata

Returns perpetual markets, margin tables, and the protocol TWAP schedule policy. Includes native and registered HIP-3 markets. The `perpMeta` WebSocket channel uses the same payload.

## Endpoint

```text theme={null}
POST /info
```

## Request Body

```json theme={null}
{ "type": "perpMeta" }
```

## Response

```json theme={null}
{
  "perpMarkets": {
    "00020000": {
      "assetId": "00020000",
      "symbol": "BTC-USDC",
      "venueName": "BTC",
      "venueIndex": 0,
      "marginAsset": "00012710",
      "marketConfig": {
        "maxLeverage": 10,
        "szDecimals": 5,
        "maxOpenInterestUSD": 100000000
      },
      "openInterestCaps": {
        "cap": 100000000,
        "currentTotal": 20000000
      }
    },
    "00050000001e3660": {
      "assetId": "00050000001e3660",
      "symbol": "idx:IDX0-USDC",
      "venueName": "idx:IDX0",
      "venueIndex": 1980000,
      "marginAsset": "00012710",
      "marketConfig": {
        "maxLeverage": 5,
        "szDecimals": 2,
        "maxOpenInterestUSD": 25000000
      },
      "onlyIsolated": true,
      "isDelisted": false,
      "hip3": {
        "dex": "idx",
        "executionPolicy": "exclusive_subaccount_v1",
        "tradingState": "active"
      }
    }
  },
  "marginTables": [],
  "twap": {
    "minDurationMinutes": 5,
    "maxDurationMinutes": 1440,
    "minSliceIntervalMs": 10000,
    "maxSliceIntervalMs": 600000
  }
}
```

## Perpetual Market Fields

| Field | Type | Description |
| - | - | - |
| `assetId` | string | Canonical unprefixed AssetId: 8 characters for native perps, 16 for HIP-3 builder perps |
| `venueName` | string | Hyperliquid market name; HIP-3 names are qualified, for example `"idx:IDX0"` |
| `venueIndex` | number | Hyperliquid wire index; HIP-3 values are composite builder-dex indices |
| `onlyIsolated` | boolean | Whether the venue requires isolated margin |
| `isDelisted` | boolean | Whether the market currently refuses new orders |

## HIP-3 Market State

Builder markets include a `hip3` object. Native perpetuals omit it; `onlyIsolated` alone does not
identify a HIP-3 market.

| Field | Type | Description |
| - | - | - |
| `hip3.dex` | string | Builder dex prefix, for example `"idx"` |
| `hip3.executionPolicy` | string | `"exclusive_subaccount_v1"` for assigned execution or `"omnibus_v1"` for shared execution |
| `hip3.tradingState` | string | `"active"`, `"reduce_only"`, or `"halted"` |

Use the qualified `venueName`, such as `"idx:IDX0"`, for market subscriptions. Assigned execution
supports per-user isolated leverage and scope state. Read
[Market Trading State](/api-reference/info-endpoints/active-asset-data) for that user's current permissions,
leverage, and available capacity.

A visible market is not necessarily open for new risk. Check `isDelisted`, `hip3.tradingState`, and
the user's `isolated.permissions.canOpen`; order admission makes the final decision. Registered
builder markets remain in metadata when new trading is disabled so clients retain the identifiers
needed to close existing positions.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.