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:27] – chad | developers:admin:walktrhough [2025/04/24 21:05] (current) – chad | ||
|---|---|---|---|
| Line 13: | Line 13: | ||
| * Step 4: User signs EULAs | * Step 4: User signs EULAs | ||
| - | Each step must be completed in sequence to ensure proper user setup. | + | The order of these steps is important. |
| ===== Default User and Account ===== | ===== Default User and Account ===== | ||
| Line 27: | Line 27: | ||
| This endpoint creates a base user profile in the system. | This endpoint creates a base user profile in the system. | ||
| + | '' | ||
| ==== Request ==== | ==== Request ==== | ||
| Line 117: | Line 118: | ||
| </ | </ | ||
| - | **Important: | + | < |
| + | Make note of the '' | ||
| + | </ | ||
| + | |||
| ===== Step 2: Create Trading Account ===== | ===== Step 2: Create Trading Account ===== | ||
| Line 123: | 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 238: | 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 243: | 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 252: | 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 ===== | ||