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)
  • CanRead permission

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

StatusDescription
STATUS_ACTIVENormal operation
STATUS_INACTIVEAccount deactivated
STATUS_PENDING_MFAMFA setup required
STATUS_PENDING_PASSWORD_RESETPassword reset required

User Types

TypeDescription
TYPE_FRONT_OFFICERegular trader/investor
TYPE_BACK_OFFICEPlatform administrator
TYPE_SYSTEMSystem 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

FieldTypeDescription
idUUIDPreferences record ID
userIdUUIDUser ID
languageenumLanguage preference (e.g., LANGUAGE_ENGLISH, LANGUAGE_GERMAN, LANGUAGE_FRENCH)
notificationsobjectNotification settings
notifications.orderPlacementbooleanNotify on order placement
notifications.orderConfirmationbooleanNotify on order confirmation
notifications.orderCancellationbooleanNotify on order cancellation
notifications.settlementLinebooleanNotify on settlement
createdAttimestampCreation time
updatedAttimestampLast 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

StatusDescription
STATUS_ACTIVENormal operation
STATUS_INACTIVEAccount deactivated
STATUS_SUSPENDEDAccount suspended (compliance)

Verification Status

StatusDescription
VERIFICATION_STATUS_UNVERIFIEDNo KYC submitted
VERIFICATION_STATUS_PENDING_APPROVALKYC under review
VERIFICATION_STATUS_APPROVEDKYC approved
VERIFICATION_STATUS_PENDING_VERIFYApproved, pending final verification
VERIFICATION_STATUS_VERIFIEDFully verified, trading enabled
VERIFICATION_STATUS_REJECTEDKYC rejected

Client Account Types

TypeDescription
TYPE_NOMINATIVEIndividual investor
TYPE_SOCIETYCorporate entity
TYPE_BANKBanking 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

TypeDescription
TYPE_MAINPrimary trading account
TYPE_SUBAdditional portfolio
TYPE_CUSTODYCustody-only account

Sub-Account Venues

VenueDescription
VENUE_MARKETPLACETrading on the Marketplace
VENUE_OTCOver-the-counter trading with external dealers

Pair Restrictions

  • Empty pairs array: Access to all trading pairs
  • Non-empty pairs array: 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

LevelEndpointContains
UserGET /users/meLogin identity, permissions, preferences
Client AccountGET /client-accounts/mineLegal entity, KYC status, verification
Sub-AccountGET /sub-accounts/minePortfolios, venues, pair restrictions

Error Scenarios

StatusCodeDescription
401UNAUTHENTICATEDInvalid or expired token
403PERMISSION_DENIEDCannot access requested resource
404NOT_FOUNDAccount or user not found

Related




  © 2025 Taurus SA. All rights reserved.