Skip to main content

Message Structure

All Messages are composed of the standard header followed by the body.

Native API has been modeled on the lines of FIX i.e. the convention followed is tag=value pair for any information. The messaging format is ASCII. All the fields are pipe (β€œ|”) separated.

🏷️ Message Header​

Standard message Header​

TagFieldNameReq’dData type (Max)Comment
NAMessageStartValueYByteThis field will be start of the message. This field doesn’t contain any tag no.
Default value = 5
Length = 1
This field is not compressed and has to be prefix at start of compressed FT message.
63VersionYStringIdentify the version number Currently, this is to be hardcoded as FIX3.0
64Message CodeYshortThis field contains message type specified in Summary of message code
For E.g. for Logon Request = 101
Logon Response = 102
65Message LengthYshortLength of the whole message excluding MessageStartValue character
66Message TimeOStringDate and Time of the message in following format, time is in 24 hour format
E.g. hhmmss (24 hour format)

Header and Body will consist of delimited String which looks like the following:

63=FIX3.0|64=102|65=73|66=2003-01-01155434|1=11|7=10004|230=1

Message Header: 63=FIX3.0|64=102|65=73|66=2003-01-01155434

Body: 1=11|7=10004|230=1

** πŸ’‘ Remarks:**

All messages will contain Message Header at the start.

Since data will be formed using Tag and Value Pair, Message Header Length is not fixed. Message Header will include the following (in sequence):

  • Version – 63=FIX3.0
  • Message Code – 64=255
  • Message Length – 65=99
  • Message Time – 66 in 24 Hour Format like: 233022

Maximum of 3 Delimiters are used:​

  • β€œ=” Assignment Delimiter for Tag=Value Pair
  • β€œ|” Field Delimiter
  • β€œ$” Join Delimiter, this is used when specifying array of values

πŸ“¦ Message Trailer​

There is no message trailer