Disconnect NT8 Connection
Ask NinjaTrader to disconnect a configured broker or data-provider connection. Use its name from List NT8 Connections.
Requires an Elite subscription and a connected CrossTrade add-on. See Authentication.
Endpoint
POST https://app.crosstrade.io/v1/api/manage/nt8/connections/disconnect
Headers
| Name | Required | Value |
|---|---|---|
| Authorization | Yes | Bearer <your API token> |
| Content-Type | Yes | application/json |
This live command does not support If-Match; sending it returns 400 unsupported_precondition.
Body parameters
| Name | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Configured NT8 connection name, matched without regard to case. 1 to 128 characters, without leading/trailing whitespace, control characters, ; or = |
Unknown fields and query parameters are rejected. The name must resolve to one connection in your add-on's inventory.
Code examples
- Python
- cURL
import requests
resp = requests.post(
"https://app.crosstrade.io/v1/api/manage/nt8/connections/disconnect",
headers={"Authorization": "Bearer YOUR_TOKEN"},
json={"name": "Rithmic"},
)
print(resp.status_code, resp.json())
curl -X POST https://app.crosstrade.io/v1/api/manage/nt8/connections/disconnect \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name": "Rithmic"}'
Response
{
"success": true,
"changed": true,
"data": { "name": "Rithmic", "action": "disconnect", "requestStatus": "acknowledged" },
"changedFields": [],
"delivery": { "status": "requested", "target": "nt8_addon" },
"warnings": [],
"meta": { "requestId": "req_9f2c1a0b7d3e4f51" }
}
200 confirms acknowledgement by the add-on, including when it reports the connection is already disconnected. Poll List NT8 Connections to confirm current broker and market-data status.
changed: true describes the acknowledged command, not a confirmed transition or settings save. changedFields is empty, and no ETag is returned. The command is not held for a later add-on connection.
This disconnects the named provider inside NT8. It does not close NinjaTrader, disconnect the CrossTrade add-on transport, flatten positions, or cancel orders. The add-on records intentional API disconnections in apiDisconnectIntent.
Errors
| Status | error | When |
|---|---|---|
| 400 | invalid_json, unknown_parameter, unsupported_precondition | Invalid JSON, query parameters, or an If-Match header |
| 401 | unauthorized | Missing or invalid API token |
| 403 | elite_required, not_available | See Authentication |
| 404 | connection_not_found | The name does not resolve to one configured connection |
| 409 | addon_disconnected, concurrent_modification | The add-on is offline, or another connection command is in progress |
| 415 | unsupported_content_type | The body is not UTF-8 JSON |
| 422 | validation_failed | Missing, invalid, or unknown body fields |
| 429 | rate_limited, too_many_concurrent_requests | See Rate limits |
| 503 | addon_unavailable | Inventory could not be read; no disconnect command was issued |
| 503 | outcome_unknown | The command was attempted without a successful acknowledgement. Read live status before retrying |
| 503 | management_unavailable, management_read_only, family_unavailable, management_busy | See Errors |
Each disconnect request costs 2 change-budget units. Acknowledged and uncertain attempts appear in GET Audit under family=nt8_connections. To reconnect, wait for disconnection, then call Connect.