> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.immix.xyz/api-reference/trading/accounts/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.immix.xyz/_mcp/server. # Accounts **`Request — sent`** ```json title="Request — sent" { "op": "subscribe", "reqId": "", "params": { "topics": [ "account" ] } } ``` **`Response — received`** ```json title="Response — received" { "op": "subscribe", "reqId": "", "success": true } ``` **`account · snapshot part — received`** ```json title="account · snapshot part — received" { "event": "account", "msgType": "account", "topic": "account", "seq": "", "seqTs": "", "isSnapshot": true, "snapshotId": "", "part": 0, "last": true, "data": [ { "accountId": 0, "account": "", "version": "", "status": "UNKNOWN", "credentialId": 0, "tradingCredentialId": 0, "exchange": "", "externalRef": "", "location": "UNKNOWN", "ownership": "UNKNOWN", "purpose": "UNKNOWN", "temperature": "UNKNOWN", "portfolioId": 0 } ] } ``` **`account · delta — received`** ```json title="account · delta — received" { "event": "account", "msgType": "account", "topic": "account", "seq": "", "seqTs": "", "isSnapshot": false, "data": [ { "accountId": 0, "account": "", "version": "", "status": "UNKNOWN", "credentialId": 0, "tradingCredentialId": 0, "exchange": "", "externalRef": "", "location": "UNKNOWN", "ownership": "UNKNOWN", "purpose": "UNKNOWN", "temperature": "UNKNOWN", "portfolioId": 0 } ] } ``` Each frame is its shape, read off the contract: `` stands for a value, and a union shows its first form. **URL** — No public environment serves this socket yet. **Topic** `account` ## Request parameters | Parameter | Type | Required | Description | | ---------- | ---------------- | -------- | ----------------------------------------------------------------------------------------------- | | `op` | string | Yes | `subscribe` | | `reqId` | string | Yes | Echoed byte-exact on the answer. Printable ASCII, escape-free; anything else answers MALFORMED. | | `params` | object | Yes | | | > `topics` | array of strings | Yes | `account` | ## Response parameters | Parameter | Type | Required | Description | | --------- | ------- | -------- | ----------------------------------------------------------------------------------------------- | | `op` | string | Yes | One of `subscribe`, `unsubscribe`. | | `reqId` | string | Yes | Echoed byte-exact on the answer. Printable ASCII, escape-free; anything else answers MALFORMED. | | `success` | boolean | Yes | `true` | ## Push data parameters **What the image holds.** Every account of the organization this member holds, keyed by `accountId`, as its latest image — including accounts that are still being classified and accounts that have been retired. **How a row leaves.** It does not. **`status` is the signal, never absence**: a retired account is served with `status: RETIRED` and stays in your map, because a client that dropped it would lose the name an old order still refers to. Filter on `status` for what a picker should offer. | Parameter | Type | Required | Description | | ----------------------- | ----------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `event` | string | Yes | `account` | | `msgType` | string | Yes | `account` | | `topic` | string | Yes | `account` | | `seq` | string | Yes | The stream position, as a decimal string — an int64 a JSON number would truncate. | | `seqTs` | string | Yes | The stream timestamp, epoch-ns as a decimal string. | | `isSnapshot` | boolean | Yes | One of `true`, `false`. | | `snapshotId` | string | No | **Present on a snapshot part only**, and the same on every part of one image; the next image of any topic carries a different one. **Opaque — compare it for equality and nothing else.** It is not a sequence, a version or a timestamp, and its shape may change; a client that ordered by it would be relying on how a member happens to mint it. Use it to keep two images apart. A repeat `subscribe` re-pushes the image — that is the resync, and there is no separate op — so a client can start image N+1 while N is still arriving, and without a name on each part it cannot tell which `last: true` closes which, nor stop a straggling part of N landing in the map N+1 just cleared. **Discard any part whose `snapshotId` is not the one you are currently applying.** | | `part` | integer | No | Present on a snapshot part only; 1-based. | | `last` | boolean | No | Present on a snapshot part only. The image is complete when true — including for an empty channel, which is still one part. | | `data` | array of objects | Yes | One account row, keyed by `accountId`. | | > `accountId` | integer | Yes | | | > `account` | string | Yes | The display name. | | > `version` | string | Yes | | | > `status` | string | Yes | One of `UNKNOWN`, `DISCOVERED`, `PENDING_APPROVAL`, `ACTIVE`, `FROZEN`, `RETIRED`. | | > `credentialId` | integer | Yes | | | > `tradingCredentialId` | integer, nullable | Yes | The OTHER credential orders ride. Null when the account trades through its own pipe — said by absence rather than by repeating `credentialId`, which a client would otherwise have to compare to read. | | > `exchange` | string, nullable | Yes | Null until this member holds the credential's exchange row. | | > `externalRef` | string, nullable | Yes | | | > `location` | string | Yes | One of `UNKNOWN`, `EXCHANGE`, `CUSTODIAN`, `WALLET`, `SELF_HOSTED`, `BANK`. | | > `ownership` | string | Yes | One of `UNKNOWN`, `HOUSE`, `CLIENT_OMNIBUS`, `CLIENT_SEGREGATED`. | | > `purpose` | string | Yes | One of `UNKNOWN`, `TREASURY`, `CLIENT_DEPOSIT`, `SETTLEMENT_OPS`, `COLLATERAL`, `HEDGE`, `RAIL_VISIBLE`. | | > `temperature` | string | Yes | One of `UNKNOWN`, `COLD`, `WARM`, `HOT`. | | > `portfolioId` | integer, nullable | Yes | | > An account row