GET
Logout (35=5)
Either side may initiate a clean disconnect by sending Logout (35=5).
The server also sends Logout for session-level problems:
| Text (58) | Cause |
|---|---|
session expired |
Access token expired mid-session |
access token revoked |
Token revoked (e.g. via BitGo UI) |
server draining, please reconnect |
Maintenance / pod drain (Mon–Fri 00:00–00:20 ET) |
Logon failures also arrive as Logout (35=5) with Text (58) before the session is
established (see Logon page) — including server shutting down, please reconnect when
the acceptor is draining and rejects a new Logon.
Examples (pipe-delimited FIX):
Client-initiated Logout (client → server). Text (58) is optional:
8=FIX.4.4|9=81|35=5|34=10|49=0123456789abcdef0123456789abcdef|56=BITGO|52=20260415-14:32:10.000|10=XXX
Server confirms Logout (server → client):
8=FIX.4.4|9=81|35=5|34=11|49=BITGO|56=0123456789abcdef0123456789abcdef|52=20260415-14:32:10.050|10=XXX
Server-initiated Logout — session expired (server → client):
8=FIX.4.4|9=100|35=5|34=42|49=BITGO|56=0123456789abcdef0123456789abcdef|52=20260415-15:00:00.000|58=session expired|10=XXX
Body Params
object
Logout (
35=5) body fields.-
textstringOptional on client-initiated Logout. On server-initiated Logout, carries the reason (e.g.session expired,access token revoked,server draining, please reconnect, or Logon reject text).
Responses
200
Logout / session terminated.
Response Body
object
Logout (
35=5) body fields.-
textstringOptional on client-initiated Logout. On server-initiated Logout, carries the reason (e.g.session expired,access token revoked,server draining, please reconnect, or Logon reject text).