Login Response Message Fields

A Login Response message is sent in response to a Login Request message. On a successful login, the LoginResponseStatus will be set to A. On a failed login, LoginResponseStatus will be set to a value other than A, and LoginResponseText will be set to an appropriate failure description. The length of the LoginResponse will vary depending on acceptance or rejection of the LoginRequest and the parameter groups included on the LoginResponse. Customers should be prepared to handle variable length LoginResponse messages.

Cboe will verify Return Bitfields at login time. If the Return Bitfields in a Return Bitfields Parameter Group are invalid, LoginResponseStatus will be set to F, and LoginResponseText will include a description of which byte and bit are invalid. This is done to ensure that reserved fields are not used, and only options that apply to the local market are set. See Return Bitfields Per Message for additional information.

Note that two sets of sequence numbers are available on the Login Response message. The set of sequence numbers in the body are the actual Cboe to Member sequence numbers indicating the highest sequence numbers available per matching unit. If specified during login, the Unit Sequences Parameter Group will be returned as an echo of the sequence numbers the Member presented during login as the highest received. If the sequence numbers are different, the gap will be filled by Cboe during the replay. A subset of units can be provided in the Login Request; however, all units will be provided in the Login Response message.

Table 1. Login Response Message Fields
FieldOffsetLengthData TypeDescription
StartOfMessage02BinaryMust be 0xBA 0xBA
MessageLength22BinaryNumber of bytes for the message, including this field but not including the two bytes for the StartOfMessage field.
MessageType41Binary0x24
MatchingUnit51BinaryAlways 0 for session level messages.
SequenceNumber64BinaryAlways 0 for session level messages.
LoginResponseStatus101Alphanumeric
  • Accepted, or the reason for the rejection.
  • A=Login Accepted
  • N=Not authorized (invalid username/password)
  • D=Session is disabled
  • B=Session in use
  • S=Invalid session
  • Q=Sequence ahead in Login message
  • I=Invalid unit given in Login message
  • F=Invalid return bit field in Login message
  • M=Invalid Login Request message structure
LoginResponseText1160TextHuman-readable text with additional information about the reason for rejection. ASCII NUL (0x00) filled on the right, if necessary.
NoUnspecified UnitReplay711BinaryEchoed back from the original Login Request message.
LastReceived SequenceNumber724BinaryLast inbound (Member to Cboe) message sequence number processed by Cboe.
NumberOfUnits761BinaryA number, n, of unit/sequence pairs to follow, one per unit. A pair for every unit will be sent, even if no messages have been sent to this port today. For unsuccessful logins, this will be 0.
UnitNumber 11BinaryA unit number.
UnitSequence14BinaryHighest available Cboe to Member sequence number for the unit.
UnitNumber n1BinaryA unit number.
UnitSequencen4BinaryHighest available Cboe to Member sequence number for the unit.
NumberOfParam Groups1BinaryEchoed back from the original Login Request message.
ParamGroup1Echoed back from the original Login Request message.
ParamGroupnEchoed back from the original Login Request message.
Table 2. Login Response Message Example
Field NameHexadecimalNotes
StartOfMessageBA BAStart of message bytes.
MessageLength88 00136 bytes
MessageType24 Login Response
MatchingUnit00Always 0 for session messages.
SequenceNumber00 00 00 00Always 0 for session level messages.
LoginResponseStatus41 A = Login Accepted
LoginResponseText41 63 63 65 70 74 65 64 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Accepted
NoUnspecified01True (replay only specified units)
UnitReplay
Last Received54 4A 02 00Last sequence Cboe received of 150,100
Sequence Number
NumberOfUnits04Four unit/sequence pairs to follow;
UnitNumber 101Unit 1
UnitSequence14A BB 01 00Actual last sequence of 113,482
UnitNumber 202Unit 2
UnitSequence200 00 00 00Actual last sequence of 0
UnitNumber 302Unit 3
UnitSequence300 00 00 00Actual last sequence of 0
UnitNumber 402Unit 4
UnitSequence479 A1 00 00Actual last sequence of 41,337
  • NumberOfParam
  • Groups
033 parameter groups
ParamGroupLength14 0020 bytes for this parameter group
ParamGroupType80 0x80 = Unit Sequences
NoUnspecified01True (replay unspecified units)
UnitReplay
NumberOfUnits03Three unit/sequence pairs to follow;
UnitNumber101Unit 1
UnitSequence14A BB 01 00Last received sequence of 113,482
UnitNumber202Unit 2
UnitSequence200 00 00 00Last received sequence of 0
UnitNumber304Unit 4
UnitSequence379 A1 00 00Last received sequence of 41,337
ParamGroupLength08 008 bytes for this parameter group
ParamGroupType81 0x81 = Return Bitfields
MessageType25 0x25 = Order Acknowledgment
NumberOfReturnBitfields033 bitfields to follow
ReturnBitfield100No bitfields from byte 1
ReturnBitfield241Symbol, Capacity
ReturnBitfield305Account, ClearingAccount
ParamGroupLength0C 0012 bytes for this parameter group
ParamGroupType81 0x81 = Return Bitfields
MessageType2C 0x2C = Order Execution
NumberOfReturn Bitfields077 bitfields to follow
ReturnBitfield100No bitfields from byte 1
ReturnBitfield241Symbol, Capacity
ReturnBitfield307Account, ClearingFirm, ClearingAccount
ReturnBitfield400No bitfields from byte 4
ReturnBitfield540BaseLiquidityIndicator
ReturnBitfield600No bitfields from byte 6
ReturnBitfield701SubLiquidityIndicator
Cboe Titanium U.S. Equities BOE Specification - Login Response Message Fields | Cboe