The general format of a Q.931 message includes a single byte protocol discriminator (8 for Q.931 messages), a call reference value to distinguish between different calls being managed over the same D channel, a message type, and various information elements (IEs) as required by the message type in question:

The most important messages types are:
Direction: Called user -> network -> calling user
The called user is being alerted, i.e "the phone is ringing".
Direction: Called user -> network -> calling user
Call establishment is proceeding.
Direction: Called user -> network -> calling user
The call has gone through and been accepted.
Direction: Calling user -> network -> called user
Direction: Calling user -> network -> called user
Initial message sent to initiate a call
Direction: Called user -> network -> calling user
Direction: User -> network
ISDN calls can be suspended (put on hold) to allow another call to use the B channel. SUSPEND/RESUME messages manage suspended calls.
IEs: Display
Direction: Network -> user
IEs: Cause, Display
Direction: Network -> user
Direction: User -> network
Direction: Network -> user
Direction: Network -> user
A message sent from the user to request call breakdown, or from the network to indicate the call has been cleared.
A message sent to indicate the channel is being released.
Direction: User -> network
Requests a STATUS message from the network
Direction: Network -> user
Indicates current call state in terms of Q.931 state machine
A simple Q.931 message exchange might go as follows:

After the Q.931 header, identifying the call and the message type, comes the information elements. There are two types of IEs: single byte and multi-byte, distinguished by their high-order bit:

The most important IEs are all multi-byte:
| 1 | Unassigned number |
| 3 | No route to destination |
| 6 | Channel unacceptable |
| 16 | Normal call clearing |
| 17 | User busy |
| 18 | User not responding |
| 19 | User alerting; no answer |
| 22 | Number changed |
| 27 | Destination out of order |
| 28 | Invalid number format |
| 34 | No circuit/channel available |
| 42 | Switching equipment congestion |
| Meaning | North American Practice | |
|---|---|---|
| 0000 0000 | Dial tone | 350 Hz + 440 Hz; continuous |
| 0000 0001 | Ringing | 440 Hz + 480 Hz; 2 sec on/4 sec off |
| 0000 0010 | Intercept | Alternating 440 Hz and 620 Hz; 250 ms each |
| 0000 0011 | Network congestion (fast busy) | 480 Hz + 620 Hz; 250 ms on/250 ms off |
| 0000 0100 | Busy | 480 Hz + 620 Hz; 500 ms on/50 |