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

# InstrumentDefinitionSnapshot

> Market data schema, template 1

<div className="api-banner">
  <span className="api-protocol ws">SBE</span>
  <span className="api-detail">schema 34 · market data</span>
  <span className="api-tag">template 1</span>
</div>

One instrument definition within a snapshot cycle, including the instrument's trading status.

**Direction:** Kraken → client

| ID | Field | Type | Encoding | Presence | Description |
| :- | :- | :- | :- | :- | :- |
| 1 | `instrumentId` | [`InstrumentId`](/exchange/api-reference/sbe/market-data-types#instrumentid) | field | required | |
| 2 | `lastInstrumentDefinitionSeqProcessed` | `uint64` | field | required | Last InstrumentDefinitionIncremental instrumentDefinitionSeq included, or zero if no update has been published |
| 3 | `lastInstrumentStatusSeqProcessed` | `uint64` | field | required | Last InstrumentStatusIncremental instrumentStatusSeq reflected in instrumentStatus for this instrument, or zero if no update has been published |
| 4 | `instrumentNumber` | `uint32` | field | required | One-based position of this instrument in the serialized snapshot response |
| 5 | `totalInstruments` | `uint32` | field | required | Total number of instruments in this snapshot cycle |
| 6 | `priceScale` | [`Scale`](/exchange/api-reference/sbe/market-data-types#scale) | field | required | |
| 7 | `qtyScale` | [`Scale`](/exchange/api-reference/sbe/market-data-types#scale) | field | required | |
| 8 | `tickSize` | [`Price`](/exchange/api-reference/sbe/market-data-types#price) | field | required | Minimum valid price increment |
| 9 | `qtyIncrement` | [`Quantity`](/exchange/api-reference/sbe/market-data-types#quantity) | field | required | Smallest valid quantity step |
| 10 | `maxTradeVol` | [`Quantity`](/exchange/api-reference/sbe/market-data-types#quantity) | field | required | Largest quantity accepted for one order, or zero when no public limit is configured |
| 11 | `contractMultiplier` | [`Decimal`](/exchange/api-reference/sbe/market-data-types#decimal) | field | required | Amount of underlying represented by one contract, or one for non-contract instruments |
| 12 | `productType` | [`ProductType`](/exchange/api-reference/sbe/market-data-types#producttype) | field | required | |
| 13 | `marketSector` | [`MarketSector`](/exchange/api-reference/sbe/market-data-types#marketsector) | field | required | Sector of the instrument's underlying exposure |
| 14 | `maturityType` | [`MaturityType`](/exchange/api-reference/sbe/market-data-types#maturitytype) | field | optional | Maturity schedule for futures and options; null for products without a maturity |
| 15 | `instrumentStatus` | [`InstrumentTradingStatus`](/exchange/api-reference/sbe/market-data-types#instrumenttradingstatus) | field | required | Trading status at lastInstrumentStatusSeqProcessed |
| 16 | `symbol` | [`SymbolEncoding`](/exchange/api-reference/sbe/market-data-types#symbolencoding) | var data | required | |
| 17 | `currency` | [`CurrencyEncoding`](/exchange/api-reference/sbe/market-data-types#currencyencoding) | var data | required | Currency in which prices are expressed |
| 18 | `underlyingSymbol` | [`SymbolEncoding`](/exchange/api-reference/sbe/market-data-types#symbolencoding) | var data | required | Client-facing symbol of the underlying asset, empty when not applicable |
| 19 | `description` | [`DescriptionEncoding`](/exchange/api-reference/sbe/market-data-types#descriptionencoding) | var data | required | Human-readable instrument description |
| 20 | `instrumentStatusReason` | [`StatusReasonEncoding`](/exchange/api-reference/sbe/market-data-types#statusreasonencoding) | var data | required | Human-readable reason for instrumentStatus, empty when no reason was supplied |

Every message is preceded by the standard SBE `messageHeader` (`blockLength`, `templateId`, `schemaId`, `version`). See [encodings](/exchange/api-reference/sbe/market-data-types#messageheader).
