Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
developers:admin:walktrhough [2025/04/24 20:36] – [Step 1: Create User Account] chad | developers:admin:walktrhough [2025/04/24 21:13] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 118: | Line 118: | ||
</ | </ | ||
- | **Important: | + | < |
+ | Make note of the '' | ||
+ | </ | ||
+ | |||
===== Step 2: Create Trading Account ===== | ===== Step 2: Create Trading Account ===== | ||
Line 124: | Line 128: | ||
This endpoint creates a trading account and links it to the user created in Step 1. | This endpoint creates a trading account and links it to the user created in Step 1. | ||
+ | '' | ||
==== Request ==== | ==== Request ==== | ||
Line 239: | Line 244: | ||
This step configures the market data feeds accessible to the user. | This step configures the market data feeds accessible to the user. | ||
+ | |||
+ | '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | |||
+ | We bill for market data based on the selection made in this step. Therefore these values are not copied from a default or template user. | ||
+ | |||
+ | How to proceed with this step depends on how you plan to assign market data to a user: | ||
+ | |||
+ | - All users get a specific exchange(s) by default. | ||
+ | - User is presented with an interface to choose. | ||
+ | |||
+ | |||
+ | ==== Step 3a: Fixed Market Data Selection ==== | ||
+ | |||
+ | In this case, simply PATCH the same Json for all users. | ||
+ | |||
==== Request ==== | ==== Request ==== | ||
Line 244: | Line 267: | ||
< | < | ||
{ | { | ||
- | | + | " |
- | // Documentation coming soon | + | |
+ | " | ||
+ | " | ||
+ | } | ||
+ | ] | ||
} | } | ||
</ | </ | ||
+ | |||
+ | ==== Response ==== | ||
+ | |||
+ | < | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | ], | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | ], | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | ], | ||
+ | " | ||
+ | }, | ||
+ | |||
+ | | ||
+ | |||
+ | ], | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ==== Step 3d: Dynamic Market Data Selection ==== | ||
+ | |||
+ | Call the GET endpoint to get the available options and associated fees in a document that you can build an interface with. | ||
+ | |||
+ | ==== Response ==== | ||
+ | |||
+ | < | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | ], | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | ], | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | ], | ||
+ | " | ||
+ | }, | ||
+ | |||
+ | | ||
+ | |||
+ | ], | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
===== Step 4: User Signs EULAs ===== | ===== Step 4: User Signs EULAs ===== | ||
Line 253: | Line 480: | ||
This step completes the user creation process by confirming acceptance of required End User License Agreements. | This step completes the user creation process by confirming acceptance of required End User License Agreements. | ||
- | ==== Request | + | '' |
+ | '' | ||
+ | |||
+ | Always GET the lastest EULA document before POST' | ||
+ | |||
+ | The GET response includes a " | ||
+ | |||
+ | < | ||
+ | The user will not be able to log into the T4 system without valid signed EULA document. | ||
+ | </ | ||
+ | |||
+ | |||
+ | ==== GET Response | ||
< | < | ||
{ | { | ||
- | | + | " |
- | // Documentation coming soon | + | " |
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | ], | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | ] | ||
+ | }, | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | } | ||
} | } | ||
</ | </ | ||
- | ===== User Creation Flowchart ===== | ||
- | {{: | + | ==== POST Request ==== |
- | ===== Common Parameters | + | < |
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | ] | ||
+ | }, | ||
+ | " | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | ==== Response | ||
+ | |||
+ | < | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | ] | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | } | ||
+ | </ | ||
+ | ==== Request ==== | ||
+ | |||
+ | < | ||
+ | { | ||
+ | // EULA acceptance configuration | ||
+ | // Documentation coming soon | ||
+ | } | ||
+ | </ | ||
- | ^ Parameter ^ Description ^ Type ^ Required ^ | ||
- | | username | Unique identifier for the user | String | Yes | | ||
- | | account | Trading account identifier | String | Yes | | ||
- | | templateUser | Optional user template override | String | No | | ||
- | | templateAccount | Optional account template override | String | No | | ||
- | | apptype | User market data permissions type | String | Yes | | ||
- | ===== Common Response Codes ===== | ||
- | ^ Code ^ Description ^ | ||
- | | 200 | Success | | ||
- | | 400 | Bad Request - Check request format | | ||
- | | 401 | Unauthorized - Authentication failed | | ||
- | | 404 | Not Found - Resource doesn' | ||
- | | 500 | Server Error - Contact support | | ||
===== Support ===== | ===== Support ===== |