BSL For Market Makers
BSL is the canonical professional interface for market makers and liquidity
providers. The older MM and binary route names remain compatibility labels,
not separate products.
Start with the FIX/BSL Connectivity Bundle and then the Market Maker Beta Quickstart. The bundle gives the BSL Direct TCP host/port/SNI, FIX endpoint contract, FIX CompIDs, and BSL route names without requiring a manual operations ticket just to connect.
Recommended Posture
| Need | Recommended posture |
|---|---|
| High-rate quoting | Windowed nonces; pipeline unused nonces without waiting for every ack. |
| Native low-latency submit | BSL Direct TCP from the connectivity bundle; persistent TCP/TLS, not HTTPS. |
| Compact HTTP submit | Compatibility order-entry through /api/order-entry/binary or /api/v1/mm/orders/batch.bin, x-bsl-result-mode: ack, x-senticore-response-mode: detailed. |
| Canonical BSL naming | Use BSL names in new code and docs; /api/v1/bsl/orders/compact uses institutional_agent HMAC auth or a provisioned lane key. |
| FIX access | Use the raw TCP/TLS endpoint and CompIDs from /api/v1/bsl/connectivity with institutional_agent HMAC credentials. |
| Private reconciliation | Use stream/gap-fill/drop-copy only after account entitlement is confirmed. |
| Stale quote safety | Prefer fast rejects and cancel-on-disconnect over hidden queues. |
Compatibility Routes
| Compatibility endpoint | BSL equivalent |
|---|---|
POST /api/order-entry/binary | Canonical beta edge alias for compact order entry |
POST /api/v1/mm/orders/batch.bin | POST /api/v1/bsl/orders/compact |
POST /api/v1/mm/orders/batch | POST /api/v1/bsl/orders/batch |
POST /api/v1/mm/orders/replace | POST /api/v1/bsl/orders/replace |
GET /api/v1/mm/limits | GET /api/v1/bsl/limits |
Do not use /api/v1/institutional/* as the quoting API. Those routes are
separate account/reporting/provisioning surfaces and may be unavailable or
require different parameters.
Client Order IDs
clientOrderId is the strategy-level identity. Use it when the selected path
carries it into the signed action payload and engine/drop-copy result. FIX
maps ClOrdID(11) to this identity.
clientOrderId is not the HTTP retry key. Use Idempotency-Key for retry
deduplication and clientOrderId for strategy reconciliation.
Operational Rules
- Keep owner wallet keys outside trading systems.
- Use
institutional_agentHMAC credentials for FIX and BSL machine access. - Use the connectivity bundle for BSL Direct TCP host/port/SNI,
SenderCompID(49),TargetCompID(56), FIX host/port, and direct BSL HTTP base URL. - Do not send BSL Direct TCP frames to Cloudflare HTTPS.
- Treat HTTP 200 in
ack+detailedmode as accepted, not final terminal state. - Use private stream, FIX drop-copy, or account/order reads for final state.
- Treat
SHARD_BUSY,QUEUE_LIMIT,RISK_CREDIT_LIMIT,KILL_SWITCH, andMARKET_HALTEDas strategy events. - Run the repository audit script before changing a client's endpoint bundle.