Skip to main content

Overview

The Users API allows you to create users, retrieve and update profiles, manage email addresses, and configure trading passwords.

Class Reference

from aries_exchange import AriesClient

client = AriesClient(
    client_id="your_client_id",
    client_secret="your_client_secret"
)

Methods

create_user()

Create a new user account.
user = client.users.create_user(
    email="[email protected]",
    password="SecurePass123!",
    first_name="John",
    last_name="Doe"
)
Returns: User object

get_current_user()

Get authenticated user details.
user = client.users.get_current_user()
print(f"Email: {user.email}")
print(f"Name: {user.first_name} {user.last_name}")
Returns: User object

update_current_user()

Update user profile information.
updated = client.users.update_current_user(
    first_name="Jane",
    phone="+1234567890"
)
Returns: Updated User object

get_user_accounts()

Get all trading accounts owned by user.
accounts = client.users.get_user_accounts()
for account in accounts:
    print(f"Account: {account.id} - {account.account_type}")
Returns: List of Account objects

get_user_profile()

Get complete user profile.
profile = client.users.get_user_profile()
Returns: Profile object with personal details

change_email()

Update account email address.
result = client.users.change_email(
    new_email="[email protected]"
)
Returns: Success confirmation

set_trading_password()

Configure password for sensitive operations.
client.users.set_trading_password(
    password="TradingPass456!"
)
Returns: Success confirmation

Examples

User Registration Flow

# Create new user
user = client.users.create_user(
    email="[email protected]",
    password="SecurePass123!",
    first_name="Alex",
    last_name="Smith"
)

# Set trading password
client.users.set_trading_password(
    password="TradingPass456!"
)

# Get user accounts
accounts = client.users.get_user_accounts()
print(f"Accounts created: {len(accounts)}")

Update User Profile

user = client.users.get_current_user()
print(f"Current email: {user.email}")

# Update profile
updated = client.users.update_current_user(
    phone="+1234567890",
    address="123 Main St"
)
print("Profile updated")