FIX Protocol Tag 35: MsgType
Defines the message type, such as D for New Order Single or 8 for Execution Report. It is always the third field of a message.
- Tag number
- 35
- Data type
- STRING
- FIX versions
- FIX 4.0 to 5.0 SP2 and FIXT 1.1
- Location
- Standard header
Practical notes on MsgType
MsgType says what the message is. It is always the third field, after BeginString and BodyLength.
- Session messages: 0 Heartbeat, 1 TestRequest, 2 ResendRequest, 3 Reject, 4 SequenceReset, 5 Logout, A Logon.
- The order flow most sessions carry: D New Order Single, F Order Cancel Request, G Order Cancel/Replace Request, 8 Execution Report, 9 Order Cancel Reject, H Order Status Request, j Business Message Reject.
- Codes are case sensitive: D is New Order Single, d is Security Definition.
- Codes beginning with U are reserved for user-defined messages agreed between the two parties.
Common mistakes
- A type the receiver's dictionary does not define gets a Reject with SessionRejectReason 11 (Invalid MsgType).
- A valid type the application does not handle should get a Business Message Reject with 380=3, not a session Reject.
Changes between FIX versions
- Each FIX version adds message types. FIX 4.2 defines 46, FIX 4.4 defines 93 and FIX 5.0 SP2 defines 164 in the standard dictionaries.
Tag 35 in each FIX version
Values and message usage as defined in a specific version.
Data type
STRING: Text of printable characters. It cannot contain the SOH delimiter.
Valid values
164 enumerated values across all FIX versions.
| Value | Meaning | FIX versions |
|---|---|---|
| 0 | Heartbeat | All |
| 1 | Test Request | All |
| 2 | Resend Request | All |
| 3 | Reject | All |
| 4 | Sequence Reset | All |
| 5 | Logout | All |
| 6 | IOI | All |
| 7 | Advertisement | All |
| 8 | Execution Report | All |
| 9 | Order Cancel Reject | All |
| A | Logon | All |
| B | News | All |
| C | All | |
| D | New Order Single | All |
| E | New Order List | All |
| F | Order Cancel Request | All |
| G | Order Cancel/Replace Request | All |
| H | Order Status Request | All |
| J | Allocation Instruction | All |
| K | List Cancel Request | All |
| L | List Execute | All |
| M | List Status Request | All |
| N | List Status | All |
| P | Allocation Ack | All |
| Q | Dont Know Trade | All |
| R | Quote Request | All |
| S | Quote | All |
| T | Settlement Instructions | 4.1, 4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| V | Market Data Request | 4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| W | Market Data Snapshot Full Refresh | 4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| X | Market Data Incremental Refresh | 4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| Y | Market Data Request Reject | 4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| Z | Quote Cancel | 4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| a | Quote Status Request | 4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| b | Mass Quote Ack | 4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| c | Security Definition Request | 4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| d | Security Definition | 4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| e | Security Status Request | 4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| f | Security Status | 4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| g | Trading Session Status Request | 4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| h | Trading Session Status | 4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| i | Mass Quote | 4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| j | Business Message Reject | 4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| k | Bid Request | 4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| l | Bid Response | 4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| m | List Strike Price | 4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| AA | Derivative Security List | 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| AB | New Order Multileg | 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| AC | Multileg Order Cancel/Replace | 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| AD | Trade Capture Report Request | 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| AE | Trade Capture Report | 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| AF | Order Mass Status Request | 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| AG | Quote Request Reject | 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| AH | RFQ Request | 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| AI | Quote Status Report | 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| n | XML Message | 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| o | Registration Instructions | 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| p | Registration Instructions Response | 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| q | Order Mass Cancel Request | 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| r | Order Mass Cancel Report | 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| s | New Order Cross | 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| t | Cross Order Cancel Replace Request | 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| u | Cross Order Cancel Request | 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| v | Security Type Request | 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| w | Security Types | 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| x | Security List Request | 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| y | Security List | 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| z | Derivative Security List Request | 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| AJ | Quote Response | 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| AK | Confirmation | 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| AL | Position Maintenance Request | 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| AM | Position Maintenance Report | 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| AN | Request For Positions | 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| AO | Request For Positions Ack | 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| AP | Position Report | 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| AQ | Trade Capture Report Request Ack | 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| AR | Trade Capture Report Ack | 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| AS | Allocation Report | 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| AT | Allocation Report Ack | 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| AU | Confirmation Ack | 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| AV | Settlement Instruction Request | 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| AW | Assignment Report | 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| AX | Collateral Request | 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| AY | Collateral Assignment | 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| AZ | Collateral Response | 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| BA | Collateral Report | 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| BB | Collateral Inquiry | 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| BC | Network Counterparty System Status Request | 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| BD | Network Counterparty System Status Response | 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| BE | User Request | 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| BF | User Response | 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| BG | Collateral Inquiry Ack | 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| BH | Confirmation Request | 4.4, 5.0, 5.0 SP1, 5.0 SP2 |
| BI | Trading Session List Request | 5.0, 5.0 SP1, 5.0 SP2 |
| BJ | Trading Session List | 5.0, 5.0 SP1, 5.0 SP2 |
| BK | Security List Update Report | 5.0, 5.0 SP1, 5.0 SP2 |
| BL | Adjusted Position Report | 5.0, 5.0 SP1, 5.0 SP2 |
| BM | Allocation Instruction Alert | 5.0, 5.0 SP1, 5.0 SP2 |
| BN | Execution Ack | 5.0, 5.0 SP1, 5.0 SP2 |
| BO | Contrary Intention Report | 5.0, 5.0 SP1, 5.0 SP2 |
| BP | Security Definition Update Report | 5.0, 5.0 SP1, 5.0 SP2 |
| BQ | Settlement Obligation Report | 5.0 SP1, 5.0 SP2 |
| BR | Derivative Security List Update Report | 5.0 SP1, 5.0 SP2 |
| BS | Trading Session List Update Report | 5.0 SP1, 5.0 SP2 |
| BT | Market Definition Request | 5.0 SP1, 5.0 SP2 |
| BU | Market Definition | 5.0 SP1, 5.0 SP2 |
| BV | Market Definition Update Report | 5.0 SP1, 5.0 SP2 |
| BW | Application Message Request | 5.0 SP1, 5.0 SP2 |
| BX | Application Message Request Ack | 5.0 SP1, 5.0 SP2 |
| BY | Application Message Report | 5.0 SP1, 5.0 SP2 |
| BZ | Order Mass Action Report | 5.0 SP1, 5.0 SP2 |
| CA | Order Mass Action Request | 5.0 SP1, 5.0 SP2 |
| CB | User Notification | 5.0 SP1, 5.0 SP2 |
| CC | Stream Assignment Request | 5.0 SP2 |
| CD | Stream Assignment Report | 5.0 SP2 |
| CE | Stream Assignment Report ACK | 5.0 SP2 |
| CF | Party Details List Request | 5.0 SP2 |
| CG | Party Details List Report | 5.0 SP2 |
| CH | Margin Requirement Inquiry | 5.0 SP2 |
| CI | Margin Requirement Inquiry Ack | 5.0 SP2 |
| CJ | Margin Requirement Report | 5.0 SP2 |
| CK | Party Details List Update Report | 5.0 SP2 |
| CL | Party Risk Limits Request | 5.0 SP2 |
| CM | Party Risk Limits Report | 5.0 SP2 |
| CN | Security Mass Status Request | 5.0 SP2 |
| CO | Security Mass Status | 5.0 SP2 |
| CQ | Account Summary Report | 5.0 SP2 |
| CR | Party Risk Limits Update Report | 5.0 SP2 |
| CS | Party Risk Limits Definition Request | 5.0 SP2 |
| CT | Party Risk Limits Definition Request Ack | 5.0 SP2 |
| CU | Party Entitlements Request | 5.0 SP2 |
| CV | Party Entitlements Report | 5.0 SP2 |
| CW | Quote Ack | 5.0 SP2 |
| CX | Party Details Definition Request | 5.0 SP2 |
| CY | Party Details Definition Request Ack | 5.0 SP2 |
| CZ | Party Entitlements Update Report | 5.0 SP2 |
| DA | Party Entitlements Definition Request | 5.0 SP2 |
| DB | Party Entitlements Definition Request Ack | 5.0 SP2 |
| DC | Trade Match Report | 5.0 SP2 |
| DD | Trade Match Report Ack | 5.0 SP2 |
| DE | Party Risk Limits Report Ack | 5.0 SP2 |
| DF | Party Risk Limit Check Request | 5.0 SP2 |
| DG | Party Risk Limit Check Request Ack | 5.0 SP2 |
| DH | Party Action Request | 5.0 SP2 |
| DI | Party Action Report | 5.0 SP2 |
| DJ | Mass Order | 5.0 SP2 |
| DK | Mass Order Ack | 5.0 SP2 |
| DL | Position Transfer Instruction | 5.0 SP2 |
| DM | Position Transfer Instruction Ack | 5.0 SP2 |
| DN | Position Transfer Report | 5.0 SP2 |
| DO | Market Data Statistics Request | 5.0 SP2 |
| DP | Market Data Statistics Report | 5.0 SP2 |
| DQ | Collateral Report Ack | 5.0 SP2 |
| DR | Market Data Report | 5.0 SP2 |
| DS | Cross Request | 5.0 SP2 |
| DT | Cross Request Ack | 5.0 SP2 |
| DU | Allocation Instruction Alert Request | 5.0 SP2 |
| DV | Allocation Instruction Alert Request Ack | 5.0 SP2 |
| DW | Trade Aggregation Request | 5.0 SP2 |
| DX | Trade Aggregation Report | 5.0 SP2 |
| EA | Pay Management Report | 5.0 SP2 |
| EB | Pay Management Report Ack | 5.0 SP2 |
| DY | Pay Management Request | 5.0 SP2 |
| DZ | Pay Management Request Ack | 5.0 SP2 |
Example
35=D
Illustrative value. In a message, fields are separated by the SOH character (0x01), often shown as | or ^ in logs.
Decode a message with this tagMessage types that use tag 35
MsgType belongs to the standard message header, which every FIX message carries, so it is not listed against individual message types.
Field and message data comes from the QuickFIX data dictionaries for FIX 4.0 to 5.0 SP2 and FIXT 1.1, used under the QuickFIX Software License. This product includes software developed by quickfixengine.org (http://www.quickfixengine.org/). Enumerated value names are converted to plain text for reading.