NDAX Users API
The Users API from NDAX — 24 operation(s) for users.
The Users API from NDAX — 24 operation(s) for users.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/ndax:ndax-users-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Ndax Pro Users API
version: '2026-10-13'
description: 'Generated by API Evangelist from the Ndax Pro API reference at https://apidoc.ndax.io (Slate). Ndax is built on AlphaPoint: every function is documented as a JSON payload sent inside a message frame {m,i,n,o} over wss://api.ndax.io/WSGateway/. Public functions also answer over HTTP at https://api.ndax.io:8443/AP/{FunctionName} (Ping, GetInstruments and GetProducts verified live 2026-10-13). Each path here is a documented function name; this is NOT a provider-published contract.'
contact:
url: https://ndax.io/support
termsOfService: https://ndax.io/en/legal/account-agreements
x-generated-from: documentation
x-provenance: generated
x-authored-by: API Evangelist
x-generated: '2026-10-13'
x-generator: deterministic parse of https://apidoc.ndax.io section headings, Category/Permissions/CallType lines and request/response examples (no model)
servers:
- url: https://api.ndax.io:8443/AP
description: Ndax AlphaPoint HTTP gateway
security:
- apiKeySignature: []
tags:
- name: Users
paths:
/Activate2FA:
post:
operationId: activate2FA
summary: Activate2FA
tags:
- Users
x-category: Activation
x-permissions: Public
x-call-type: Synchronous
x-docs-url: https://apidoc.ndax.io/#activate2fa
x-websocket-function: Activate2FA
requestBody:
required: false
content:
application/json:
schema:
type: object
example:
Code: YourCode
responses:
'200':
description: Function reply payload.
content:
application/json:
schema: {}
example:
Activated: true
Error: ErrorMessage
/AddUserAffiliateTag:
post:
operationId: addUserAffiliateTag
summary: Add User Affiliate Tag
description: Associates a user affiliate tag to a user. An affiliate tag allows a user to encourage others to join the exchange and provides a way to track those new members back to the initiating user. Requires an authenticated session; the documentation states authentication happens over the WebSocket gateway (wss://api.ndax.io/WSGateway/).
tags:
- Users
x-category: User
x-permissions: Operator, Trading
x-call-type: Synchronous
x-docs-url: https://apidoc.ndax.io/#adduseraffiliatetag
x-websocket-function: AddUserAffiliateTag
requestBody:
required: false
content:
application/json:
schema:
type: object
example:
omsId: 0
userId: 0
affiliateId: 0
affiliateTag: ''
responses:
'200':
description: Function reply payload.
content:
application/json:
schema: {}
example:
result: true
errormsg: ''
errorcode: 0
detail: ''
x-requires-session: true
/Authenticate2FA:
post:
operationId: authenticate2FA
summary: Authenticate2FA
tags:
- Users
x-category: Authentication
x-permissions: Public
x-call-type: Synchronous
x-docs-url: https://apidoc.ndax.io/#authenticate2fa
x-websocket-function: Authenticate2FA
requestBody:
required: false
content:
application/json:
schema:
type: object
responses:
'200':
description: Function reply payload.
content:
application/json:
schema: {}
/AuthenticateUser:
post:
operationId: authenticateUser
summary: Authenticate User
description: AuthenticateUser
tags:
- Users
x-category: Authentication
x-permissions: Public
x-call-type: Synchronous
x-docs-url: https://apidoc.ndax.io/#authenticateuser
x-websocket-function: AuthenticateUser
requestBody:
required: false
content:
application/json:
schema:
type: object
example:
UserName: ''
Password: ''
responses:
'200':
description: Function reply payload.
content:
application/json:
schema: {}
example:
APIKey: 28c68ac3fcfafc3d4e8d653fe57e5baf
Signature: 29c15c42e4fabcc9e229421e148e647903927c503ab4578ada55bb13a63a9636
UserId: '96'
Nonce: '2247733562'
/CancelUserReport:
post:
operationId: cancelUserReport
summary: Cancel User Report
description: You can generate or schedule a variety of reports through this API on demand. This call cancels a scheduled report by its report ID. GetUserReportTickets can provide a list of GUIDs for scheduled reports. Requires an authenticated session; the documentation states authentication happens over the WebSocket gateway (wss://api.ndax.io/WSGateway/).
tags:
- Users
x-category: Users
x-permissions: Operator, Trading
x-call-type: Synchronous
x-docs-url: https://apidoc.ndax.io/#canceluserreport
x-websocket-function: CancelUserReport
requestBody:
required: false
content:
application/json:
schema:
type: object
responses:
'200':
description: Function reply payload.
content:
application/json:
schema: {}
example:
result: true
errormsg: ''
errorcode: 0
detail: ''
x-requires-session: true
/EnableXP2FA:
post:
operationId: enableXP2FA
summary: EnableXP2FA
description: EnableXP2FA is a custom two-factor-authentication scheme (like Google 2FA). It generates 2FA code and has the ability to verify these codes. Requires an authenticated session; the documentation states authentication happens over the WebSocket gateway (wss://api.ndax.io/WSGateway/).
tags:
- Users
x-category: User
x-permissions: Operator, Trading
x-call-type: Synchronous
x-docs-url: https://apidoc.ndax.io/#enablexp2fa
x-websocket-function: EnableXP2FA
requestBody:
required: false
content:
application/json:
schema:
type: object
example:
Phone: ''
Capability: ''
responses:
'200':
description: Function reply payload.
content:
application/json:
schema: {}
example:
Enabled2FA: true
Activate2FA: true
x-requires-session: true
/GetL2Snapshot:
post:
operationId: getL2Snapshot
summary: GetL2 Snapshot
description: Provides a current Level 2 snapshot of a specific instrument trading on an Order Management System to a user-determined market depth. The Level 2 snapshot allows the user to specify the level of market depth information on either side of the bid and ask. Depth in this call is "depth of market," the number of buyers and sellers at greater or lesser prices in the order book for the instrument.
tags:
- Users
x-category: User
x-permissions: Public
x-call-type: Synchronous
x-docs-url: https://apidoc.ndax.io/#getl2snapshot
x-websocket-function: GetL2Snapshot
requestBody:
required: false
content:
application/json:
schema:
type: object
example:
OMSId: 1
InstrumentId: 1
Depth: 100
responses:
'200':
description: Function reply payload.
content:
application/json:
schema: {}
/GetUserAccountInfos:
post:
operationId: getUserAccountInfos
summary: Get User Account Infos
description: Returns a list of account information for all accounts belonging to the specified user. Requires an authenticated session; the documentation states authentication happens over the WebSocket gateway (wss://api.ndax.io/WSGateway/).
tags:
- Users
x-category: User
x-permissions: Operator, Trading, AccountReadOnly
x-call-type: Synchronous
x-docs-url: https://apidoc.ndax.io/#getuseraccountinfos
x-websocket-function: GetUserAccountInfos
requestBody:
required: false
content:
application/json:
schema:
type: object
responses:
'200':
description: Function reply payload.
content:
application/json:
schema: {}
x-requires-session: true
/GetUserAccounts:
post:
operationId: getUserAccounts
summary: Get User Accounts
description: Returns a list of account IDs for a given user. More than one user may be associated with a given account. Requires an authenticated session; the documentation states authentication happens over the WebSocket gateway (wss://api.ndax.io/WSGateway/).
tags:
- Users
x-category: User
x-permissions: Operator, Trading, AccountReadOnly
x-call-type: Synchronous
x-docs-url: https://apidoc.ndax.io/#getuseraccounts
x-websocket-function: GetUserAccounts
requestBody:
required: false
content:
application/json:
schema:
type: object
responses:
'200':
description: Function reply payload.
content:
application/json:
schema: {}
x-requires-session: true
/GetUserAffiliateCount:
post:
operationId: getUserAffiliateCount
summary: Get User Affiliate Count
description: Gets a count of users who have been referred to the exchange by the identified user. Requires an authenticated session; the documentation states authentication happens over the WebSocket gateway (wss://api.ndax.io/WSGateway/).
tags:
- Users
x-category: User
x-permissions: Operator, Trading
x-call-type: Synchronous
x-docs-url: https://apidoc.ndax.io/#getuseraffiliatecount
x-websocket-function: GetUserAffiliateCount
requestBody:
required: false
content:
application/json:
schema:
type: object
example:
OMSId: 1
UserId: 1
responses:
'200':
description: Function reply payload.
content:
application/json:
schema: {}
example:
Count: 0
x-requires-session: true
/GetUserAffiliateTag:
post:
operationId: getUserAffiliateTag
summary: Get User Affiliate Tag
description: Returns an array of affiliate tags associated with the identified user. The exchange can use an affiliate tag to identify new users who join the exchange as a result of a recommendation from the identified user. A user may have multiple affiliate tags. Requires an authenticated session; the documentation states authentication happens over the WebSocket gateway (wss://api.ndax.io/WSGateway/).
tags:
- Users
x-category: User
x-permissions: Operator, Trading
x-call-type: Synchronous
x-docs-url: https://apidoc.ndax.io/#getuseraffiliatetag
x-websocket-function: GetUserAffiliateTag
requestBody:
required: false
content:
application/json:
schema:
type: object
example:
userId: 0
omsId: 0
responses:
'200':
description: Function reply payload.
content:
application/json:
schema: {}
example:
- omsId: 0
userId: 0
affiliateId: 0
affiliateTag: ''
x-requires-session: true
/GetUserReportTickets:
post:
operationId: getUserReportTickets
summary: Get User Report Tickets
description: Returns an array of user report tickets for a specific user ID. A user report ticket identifies a report requested or subscribed to by a user. Reports can run once or periodically. Requires an authenticated session; the documentation states authentication happens over the WebSocket gateway (wss://api.ndax.io/WSGateway/).
tags:
- Users
x-category: User
x-permissions: Operator, Trading
x-call-type: Synchronous
x-docs-url: https://apidoc.ndax.io/#getuserreporttickets
x-websocket-function: GetUserReportTickets
requestBody:
required: false
content:
application/json:
schema:
type: object
example:
UserId: 1
responses:
'200':
description: Function reply payload.
content:
application/json:
schema: {}
x-requires-session: true
/GetUserReportWriterResultRecords:
post:
operationId: getUserReportWriterResultRecords
summary: Get User Report Writer Result Records
description: 'The call returns an array of user report writer results. The results are the details of when reports have been run and the status of each report run. Users with Trading permission can request user report writer result records only for their own user IDs; users with Operator permission can request any user''s report writer result records. Note: "Depth" in this call is the count of records to be returned, not market depth. Requires an authenticated session; the documentation states authentication happens over the WebSocket gateway (wss://api.ndax.io/WSGateway/).'
tags:
- Users
x-category: User
x-permissions: Operator, Trading
x-call-type: Synchronous
x-docs-url: https://apidoc.ndax.io/#getuserreportwriterresultrecords
x-websocket-function: GetUserReportWriterResultRecords
requestBody:
required: false
content:
application/json:
schema:
type: object
example:
userId: 0
depth: 50
startIndex: 0
responses:
'200':
description: Function reply payload.
content:
application/json:
schema: {}
example:
- RequestingUser: 1
urtTicketId: mGzjUfylGEmqgJIxu651aQ==
descriptorId: 47TlpPQyTkKR4LKl9Hy1yA==
resultStatus: SuccessComplete
reportExecutionStartTime: '2018-08-17T17:57:56Z'
reportExecutionCompleteTime: '2018-08-17T17:57:57Z'
reportOutputFilePathname: ''
reportDescriptiveHeader: TradeActivity|onDemand|2018-08-10T04:00:00.000Z|2018-08-10T05:00:00.000Z|2018-08-17T17:57:51.852Z|2018-08-17T17:57:56.840Z|0.19634 seconds
x-requires-session: true
/LogOut:
post:
operationId: logOut
summary: Log Out
description: LogOut ends the current websocket session.
tags:
- Users
x-category: Authentication
x-permissions: Public
x-call-type: Synchronous
x-docs-url: https://apidoc.ndax.io/#logout
x-websocket-function: LogOut
requestBody:
required: false
content:
application/json:
schema:
type: object
example: {}
responses:
'200':
description: Function reply payload.
content:
application/json:
schema: {}
/SubscribeAccountEvents:
post:
operationId: subscribeAccountEvents
summary: Subscribe Account Events
description: 'Subscribes the user to notifications about the status of account-level events: orders, trades, position updates, deposits, and withdrawals for a specific account on the Order Management System (OMS). The subscription reports all events associated with a given account; there is no filter at the call level to subscribe to some events and not others. Account event information is supplied in comma-separated-value (CSV) format. For specific CSV formatting information, see the APEX Extract CSV Data Dictionary, available from AlphaPoint. Requires an authenticated session; the documentation states authentication happens over the WebSocket gateway (wss://api.ndax.io/WSGateway/).'
tags:
- Users
x-category: User
x-permissions: Operator, Trading, AccountReadOnly
x-call-type: Synchronous
x-docs-url: https://apidoc.ndax.io/#subscribeaccountevents
x-websocket-function: SubscribeAccountEvents
requestBody:
required: false
content:
application/json:
schema:
type: object
example:
AccountId: 1
OMSId: 1
responses:
'200':
description: Function reply payload.
content:
application/json:
schema: {}
example:
Subscribe: true
x-requires-session: true
/SubscribeLevel1:
post:
operationId: subscribeLevel1
summary: Subscribe Level1
description: Retrieves the latest Level 1 Ticker information and then subscribes the user to ongoing Level 1 market data event updates for one specific instrument. The SubscribeLevel1 call responds with the Level 1 response shown below. The OMS then periodically sends in the same format as this response Leve1UpdateEvent information when best-bid/best-offer issue, until you send the UnsubscribeLevel1 call.
tags:
- Users
x-category: User
x-permissions: Public
x-call-type: Synchronous
x-docs-url: https://apidoc.ndax.io/#subscribelevel1
x-websocket-function: SubscribeLevel1
requestBody:
required: false
content:
application/json:
schema:
type: object
example:
OMSId: 1
InstrumentId: 0
responses:
'200':
description: Function reply payload.
content:
application/json:
schema: {}
example:
OMSId: 1
Symbol: BTCUSD
/SubscribeLevel2:
post:
operationId: subscribeLevel2
summary: Subscribe Level2
description: 'Retrieves the latest Level 2 Ticker information and then subscribes the user to Level 2 market data event updates for one specific instrument. Level 2 allows the user to specify the level of market depth information on either side of the bid and ask. The SubscribeLevel2 call responds with the Level 2 response shown below. The OMS then periodically sends Level2UpdateEvent information in the same format as this response until you send the UnsubscribeLevel2 call. Note: Depth in this call is "depth of market," the number of buyers and sellers at greater or lesser prices in the order book for the i'
tags:
- Users
x-category: User
x-permissions: Public
x-call-type: Synchronous
x-docs-url: https://apidoc.ndax.io/#subscribelevel2
x-websocket-function: SubscribeLevel2
requestBody:
required: false
content:
application/json:
schema:
type: object
responses:
'200':
description: Function reply payload.
content:
application/json:
schema: {}
/SubscribeTicker:
post:
operationId: subscribeTicker
summary: Subscribe Ticker
description: Subscribes a user to a Ticker Market Data Feed for a specific instrument and interval. SubscribeTicker sends a response object as described below, and then periodically returns a TickerDataUpdateEvent that matches the content of the response object.
tags:
- Users
x-category: User
x-permissions: Public
x-call-type: Synchronous
x-docs-url: https://apidoc.ndax.io/#subscribeticker
x-websocket-function: SubscribeTicker
requestBody:
required: false
content:
application/json:
schema:
type: object
example:
OMSId: 1
InstrumentId: 1
Interval: 60
IncludeLastCount: 100
responses:
'200':
description: Function reply payload.
content:
application/json:
schema: {}
/SubscribeTrades:
post:
operationId: subscribeTrades
summary: Subscribe Trades
description: 'Subscribes to the Trades Market Data Feed for a specific instrument. No authentication is required. Each trade has two sides: Buy and Sell . SubscribeTrades returns the response documented here for your immediate information, then periodically sends the OrderTradeEvent documented in SubscribeAccountEvents.'
tags:
- Users
x-category: User
x-permissions: Public
x-call-type: Synchronous
x-docs-url: https://apidoc.ndax.io/#subscribetrades
x-websocket-function: SubscribeTrades
requestBody:
required: false
content:
application/json:
schema:
type: object
example:
OMSId: 1
InstrumentId: 1
IncludeLastCount: 100
responses:
'200':
description: Function reply payload.
content:
application/json:
schema: {}
/UnsubscribeLevel1:
post:
operationId: unsubscribeLevel1
summary: Unsubscribe Level1
description: Unsubscribes the user from a Level 1 Market Data Feed subscription.
tags:
- Users
x-category: User
x-permissions: Public
x-call-type: Synchronous
x-docs-url: https://apidoc.ndax.io/#unsubscribelevel1
x-websocket-function: UnsubscribeLevel1
requestBody:
required: false
content:
application/json:
schema:
type: object
example:
OMSId: 1
InstrumentId: 1
responses:
'200':
description: Function reply payload.
content:
application/json:
schema: {}
example:
result: true
errormsg: null
errorcode: 0
detail: null
/UnsubscribeLevel2:
post:
operationId: unsubscribeLevel2
summary: Unsubscribe Level2
description: Unsubscribes the user from a Level 2 Market Data Feed subscription.
tags:
- Users
x-category: User
x-permissions: Public
x-call-type: Synchronous
x-docs-url: https://apidoc.ndax.io/#unsubscribelevel2
x-websocket-function: UnsubscribeLevel2
requestBody:
required: false
content:
application/json:
schema:
type: object
example:
OMSId: 1
InstrumentId: 1
responses:
'200':
description: Function reply payload.
content:
application/json:
schema: {}
example:
result: true
errormsg: null
errorcode: 0
detail: null
/UnsubscribeTicker:
post:
operationId: unsubscribeTicker
summary: Unsubscribe Ticker
description: Unsubscribes the user from a Ticker Market Data Fee.
tags:
- Users
x-category: User
x-permissions: Public
x-call-type: Synchronous
x-docs-url: https://apidoc.ndax.io/#unsubscribeticker
x-websocket-function: UnsubscribeTicker
requestBody:
required: false
content:
application/json:
schema:
type: object
example:
OMSId: 1
InstrumentId: 1
responses:
'200':
description: Function reply payload.
content:
application/json:
schema: {}
example:
result: true
errormsg: null
errorcode: 0
detail: null
/UnsubscribeTrades:
post:
operationId: unsubscribeTrades
summary: Unsubscribe Trades
description: Unsubscribes the user from a Trades Market Data Feed
tags:
- Users
x-category: User
x-permissions: Public
x-call-type: Synchronous
x-docs-url: https://apidoc.ndax.io/#unsubscribetrades
x-websocket-function: UnsubscribeTrades
requestBody:
required: false
content:
application/json:
schema:
type: object
example:
OMSId: 1
InstrumentId: 1
responses:
'200':
description: Function reply payload.
content:
application/json:
schema: {}
example:
result: true
errormsg: null
errorcode: 0
detail: null
/UpdateUserAffiliateTag:
post:
operationId: updateUserAffiliateTag
summary: Update User Affiliate Tag
description: Updates the user affiliate tag with new or revised information. An affiliate tag allows a user to encourage others to join the exchange and provides a way to track those new members back to the initiating user. Requires an authenticated session; the documentation states authentication happens over the WebSocket gateway (wss://api.ndax.io/WSGateway/).
tags:
- Users
x-category: User
x-permissions: Operator, Trading
x-call-type: Synchronous
x-docs-url: https://apidoc.ndax.io/#updateuseraffiliatetag
x-websocket-function: UpdateUserAffiliateTag
requestBody:
required: false
content:
application/json:
schema:
type: object
example:
omsId: 0
userId: 0
affiliateId: 0
affiliateTag: ''
responses:
'200':
description: Function reply payload.
content:
application/json:
schema: {}
example:
result: true
errormsg: ''
errorcode: 0
detail: ''
x-requires-session: true
components:
securitySchemes:
apiKeySignature:
type: apiKey
in: header
name: Authorization
x-source: https://apidoc.ndax.io/#authenticateuser