Account Information
User and account profile details
Account Personal Information
This guide covers retrieving and managing account and user profile information.
Overview
Account information is organized in the User → Client Account → Sub-Account hierarchy:
- User: Your login identity and preferences
- Client Account: Legal entity information (KYC data)
- Sub-Accounts: Trading portfolios
Prerequisites
- Authenticated session (JWT or API key)
CanReadpermission
Part 1: Current User Information
Get Current User Profile
Retrieve information about the authenticated user.
Endpoint: GET /api/rest/v1/users/me
Request
curl -X GET "https://api.t-dx.com/api/rest/v1/users/me" \
-H "Authorization: Bearer <access-token>"Response (200 OK)
{
"result": {
"id": "user-uuid",
"clientAccountId": "client-account-uuid",
"username": "[email protected]",
"firstname": "John",
"lastname": "Doe",
"email": "[email protected]",
"phoneNumber": "+41791234567",
"status": "STATUS_ACTIVE",
"type": "TYPE_FRONT_OFFICE",
"MFAEnabled": true,
"permissions": {
"canRead": true,
"canTrade": true,
"canWithdraw": true,
"canDeposit": true,
"canWrite": true,
"canManage": false
},
"subAccounts": [
{
"id": "sub-account-uuid-1",
"name": "Main Trading",
"permissions": {
"canRead": true,
"canTrade": true,
"canWithdraw": true,
"canDeposit": true
}
}
],
"createdAt": "2023-06-01T10:00:00Z",
"updatedAt": "2024-01-15T09:30:00Z"
}
}User Status Values
| Status | Description |
|---|---|
STATUS_ACTIVE | Normal operation |
STATUS_INACTIVE | Account deactivated |
STATUS_PENDING_MFA | MFA setup required |
STATUS_PENDING_PASSWORD_RESET | Password reset required |
User Types
| Type | Description |
|---|---|
TYPE_FRONT_OFFICE | Regular trader/investor |
TYPE_BACK_OFFICE | Platform administrator |
TYPE_SYSTEM | System account |
Part 2: User Preferences
Get User Preferences
Endpoint: GET /api/rest/v1/users/me/preferences
curl -X GET "https://api.t-dx.com/api/rest/v1/users/me/preferences" \
-H "Authorization: Bearer <access-token>"Response (200 OK)
{
"result": {
"id": "preferences-uuid",
"userId": "user-uuid",
"language": "LANGUAGE_ENGLISH",
"notifications": {
"orderPlacement": true,
"orderConfirmation": true,
"orderCancellation": true,
"settlementLine": true
},
"createdAt": "2024-01-15T10:00:00Z",
"updatedAt": "2024-01-15T10:00:00Z"
}
}Preference Fields
| Field | Type | Description |
|---|---|---|
id | UUID | Preferences record ID |
userId | UUID | User ID |
language | enum | Language preference (e.g., LANGUAGE_ENGLISH, LANGUAGE_GERMAN, LANGUAGE_FRENCH) |
notifications | object | Notification settings |
notifications.orderPlacement | boolean | Notify on order placement |
notifications.orderConfirmation | boolean | Notify on order confirmation |
notifications.orderCancellation | boolean | Notify on order cancellation |
notifications.settlementLine | boolean | Notify on settlement |
createdAt | timestamp | Creation time |
updatedAt | timestamp | Last update time |
Update User Preferences
Endpoint: PUT /api/rest/v1/users/me/preferences
curl -X PUT "https://api.t-dx.com/api/rest/v1/users/me/preferences" \
-H "Authorization: Bearer <access-token>" \
-H "Content-Type: application/json" \
-d '{
"language": "LANGUAGE_GERMAN",
"notifications": {
"orderPlacement": true,
"orderConfirmation": true,
"orderCancellation": false,
"settlementLine": true
}
}'Part 3: Client Account Information
Get My Client Account
Retrieve the legal entity information for your Client Account.
Endpoint: GET /api/rest/v1/client-accounts/mine
Request
curl -X GET "https://api.t-dx.com/api/rest/v1/client-accounts/mine" \
-H "Authorization: Bearer <access-token>"Response (200 OK)
{
"result": {
"id": "client-account-uuid",
"status": "STATUS_ACTIVE",
"verificationStatus": "VERIFICATION_STATUS_VERIFIED",
"type": "TYPE_NOMINATIVE",
"legalName": "John Doe",
"classification": "CLASSIFICATION_RETAIL",
"taxResidency": "CH",
"createdAt": "2023-06-01T10:00:00Z",
"updatedAt": "2024-01-15T10:00:00Z"
}
}Client Account Status
| Status | Description |
|---|---|
STATUS_ACTIVE | Normal operation |
STATUS_INACTIVE | Account deactivated |
STATUS_SUSPENDED | Account suspended (compliance) |
Verification Status
| Status | Description |
|---|---|
VERIFICATION_STATUS_UNVERIFIED | No KYC submitted |
VERIFICATION_STATUS_PENDING_APPROVAL | KYC under review |
VERIFICATION_STATUS_APPROVED | KYC approved |
VERIFICATION_STATUS_PENDING_VERIFY | Approved, pending final verification |
VERIFICATION_STATUS_VERIFIED | Fully verified, trading enabled |
VERIFICATION_STATUS_REJECTED | KYC rejected |
Client Account Types
| Type | Description |
|---|---|
TYPE_NOMINATIVE | Individual investor |
TYPE_SOCIETY | Corporate entity |
TYPE_BANK | Banking institution |
Part 4: Sub-Account Information
List My Sub-Accounts
Endpoint: GET /api/rest/v1/sub-accounts/mine
Request
curl -X GET "https://api.t-dx.com/api/rest/v1/sub-accounts/mine" \
-H "Authorization: Bearer <access-token>"Query Parameters
This endpoint supports standard pagination, sorting, and filtering.
Response (200 OK)
{
"result": [
{
"id": "7376524e-6b6b-4137-9719-7e07a7709804",
"clientAccountId": "8aee564e-2eb1-4a57-b686-05476c2cfd93",
"type": "TYPE_MAIN",
"venue": "VENUE_MARKETPLACE",
"name": "Main Trading Account",
"pairs": [],
"createdAt": "2023-06-01T10:00:00Z",
"updatedAt": "2023-06-01T10:00:00Z"
},
{
"id": "9e68ec8c-c978-4ea2-b511-98d4df38f353",
"clientAccountId": "8aee564e-2eb1-4a57-b686-05476c2cfd93",
"type": "TYPE_SUB",
"venue": "VENUE_OTC",
"name": "OTC Portfolio",
"pairs": ["btc-chf-pair-uuid", "eth-chf-pair-uuid"],
"createdAt": "2023-07-15T14:00:00Z",
"updatedAt": "2023-07-15T14:00:00Z"
}
],
"pagination": {
"cursors": {
"self": "eyJTb3J0cyI6W10sIkZpbHRlcnMiOltdLCJJc0ZpcnN0Ijp0cnVlfQ==",
"first": "eyJTb3J0cyI6W10sIkZpbHRlcnMiOltdLCJJc0ZpcnN0Ijp0cnVlfQ==",
"last": "",
"next": "",
"previous": ""
}
}
}Get Single Sub-Account
Endpoint: GET /api/rest/v1/sub-accounts/{id}
curl -X GET "https://api.t-dx.com/api/rest/v1/sub-accounts/7376524e-6b6b-4137-9719-7e07a7709804" \
-H "Authorization: Bearer <access-token>"Response (200 OK)
{
"result": {
"id": "7376524e-6b6b-4137-9719-7e07a7709804",
"clientAccountId": "8aee564e-2eb1-4a57-b686-05476c2cfd93",
"type": "TYPE_MAIN",
"venue": "VENUE_MARKETPLACE",
"name": "Main Trading Account",
"pairs": [],
"createdAt": "2023-06-01T10:00:00Z",
"updatedAt": "2023-06-01T10:00:00Z"
}
}Sub-Account Types
| Type | Description |
|---|---|
TYPE_MAIN | Primary trading account |
TYPE_SUB | Additional portfolio |
TYPE_CUSTODY | Custody-only account |
Sub-Account Venues
| Venue | Description |
|---|---|
VENUE_MARKETPLACE | Trading on the Marketplace |
VENUE_OTC | Over-the-counter trading with external dealers |
Pair Restrictions
- Empty
pairsarray: Access to all trading pairs - Non-empty
pairsarray: Access limited to listed pair IDs
Part 5: List Users (Account Manager)
If you have CanManage permission, list all users in your Client Account.
Endpoint: GET /api/rest/v1/users
Request
curl -X GET "https://api.t-dx.com/api/rest/v1/users" \
-H "Authorization: Bearer <access-token>"Query Parameters
This endpoint supports standard pagination, sorting, and filtering.
Response (200 OK)
{
"result": [
{
"id": "user-uuid-1",
"clientAccountId": "client-account-uuid",
"username": "[email protected]",
"firstname": "John",
"lastname": "Doe",
"email": "[email protected]",
"status": "STATUS_ACTIVE",
"type": "TYPE_FRONT_OFFICE",
"MFAEnabled": true,
"createdAt": "2023-06-01T10:00:00Z"
},
{
"id": "user-uuid-2",
"clientAccountId": "client-account-uuid",
"username": "[email protected]",
"firstname": "Jane",
"lastname": "Smith",
"email": "[email protected]",
"status": "STATUS_ACTIVE",
"type": "TYPE_FRONT_OFFICE",
"MFAEnabled": true,
"createdAt": "2023-07-15T14:00:00Z"
}
],
"pagination": {
"cursors": {
"self": "eyJTb3J0cyI6W10sIkZpbHRlcnMiOltdLCJJc0ZpcnN0Ijp0cnVlfQ==",
"first": "eyJTb3J0cyI6W10sIkZpbHRlcnMiOltdLCJJc0ZpcnN0Ijp0cnVlfQ==",
"last": "",
"next": "",
"previous": ""
}
}
}List Users in Sub-Account
Endpoint: GET /api/rest/v1/users/by-sub-account/{subAccountId}
curl -X GET "https://api.t-dx.com/api/rest/v1/users/by-sub-account/7376524e-6b6b-4137-9719-7e07a7709804" \
-H "Authorization: Bearer <access-token>"Part 6: User Attributes
User attributes store additional metadata about the user.
List My Attributes
Endpoint: GET /api/rest/v1/users/me/attributes
curl -X GET "https://api.t-dx.com/api/rest/v1/users/me/attributes" \
-H "Authorization: Bearer <access-token>"Get Specific Attribute
Endpoint: GET /api/rest/v1/users/me/attributes/{attributeId}
curl -X GET "https://api.t-dx.com/api/rest/v1/users/me/attributes/attribute-uuid" \
-H "Authorization: Bearer <access-token>"Update Attributes
Endpoint: POST /api/rest/v1/users/me/attributes
curl -X POST "https://api.t-dx.com/api/rest/v1/users/me/attributes" \
-H "Authorization: Bearer <access-token>" \
-H "Content-Type: application/json" \
-d '{
"attributes": [
{
"type": "preference",
"subType": "ui",
"key": "theme",
"value": "dark",
"contentType": "text/plain"
}
]
}'Delete Attribute
Endpoint: DELETE /api/rest/v1/users/me/attributes/{attributeId}
curl -X DELETE "https://api.t-dx.com/api/rest/v1/users/me/attributes/attribute-uuid" \
-H "Authorization: Bearer <access-token>"Part 7: Client Account Attributes
List My Client Account Attributes
Endpoint: GET /api/rest/v1/client-accounts/mine/attributes
curl -X GET "https://api.t-dx.com/api/rest/v1/client-accounts/mine/attributes" \
-H "Authorization: Bearer <access-token>"Get Specific Client Account Attribute
Endpoint: GET /api/rest/v1/client-accounts/mine/attributes/{attributeId}
curl -X GET "https://api.t-dx.com/api/rest/v1/client-accounts/mine/attributes/attribute-uuid" \
-H "Authorization: Bearer <access-token>"Summary: Information Hierarchy
| Level | Endpoint | Contains |
|---|---|---|
| User | GET /users/me | Login identity, permissions, preferences |
| Client Account | GET /client-accounts/mine | Legal entity, KYC status, verification |
| Sub-Account | GET /sub-accounts/mine | Portfolios, venues, pair restrictions |
Error Scenarios
| Status | Code | Description |
|---|---|---|
| 401 | UNAUTHENTICATED | Invalid or expired token |
| 403 | PERMISSION_DENIED | Cannot access requested resource |
| 404 | NOT_FOUND | Account or user not found |
Related
- Authentication - Authentication flow
- Wallet Information - Balance information
- Domains: Accounts - Full account API reference
- Domains: Core Concepts - Core concepts
Updated 5 days ago
