> ## Documentation Index
> Fetch the complete documentation index at: https://finance.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Users

> Manage user accounts, profiles, and settings with the Go SDK

## Overview

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

## Package Reference

```go theme={null}
import (
    "fmt"
    "log"
    aries "github.com/aries-exchange/go-sdk"
)
```

## Methods

### CreateUser()

Create a new user account.

```go theme={null}
user, err := client.Users.CreateUser(&aries.UserCreateRequest{
    Email:     "user@example.com",
    Password:  "SecurePass123!",
    FirstName: "John",
    LastName:  "Doe",
})
```

**Returns:** `*User`, `error`

### UpdateCurrentUser()

Update user profile information.

```go theme={null}
updated, err := client.Users.UpdateCurrentUser(&aries.UserUpdate{
    FirstName: "Jane",
    Phone:     "+1234567890",
})
```

**Returns:** `*User`, `error`

### GetUserAccounts()

Get all trading accounts.

```go theme={null}
accounts, err := client.Users.GetUserAccounts()
if err != nil {
    log.Fatal(err)
}

for _, account := range accounts {
    fmt.Printf("Account: %s\n", account.ID)
}
```

**Returns:** `[]Account`, `error`

### GetUserProfile()

Get complete user profile.

```go theme={null}
profile, err := client.Users.GetUserProfile()
```

**Returns:** `*Profile`, `error`

### ChangeEmail()

Update account email.

```go theme={null}
err := client.Users.ChangeEmail("newemail@example.com")
```

**Returns:** `error`

### SetTradingPassword()

Configure trading password.

```go theme={null}
err := client.Users.SetTradingPassword("TradingPass456!")
```

**Returns:** `error`

## Examples

```go theme={null}
profile, err := client.Users.GetUserProfile()
if err != nil {
    log.Fatal(err)
}

accounts, err := client.Users.GetUserAccounts()
if err != nil {
    log.Fatal(err)
}

fmt.Printf("User: %s has %d accounts\n", profile.Email, len(accounts))
```

## Related APIs

* [Accounts](/sdks/go/accounts) - Manage trading accounts
* [Authentication](/sdks/go/authentication) - OAuth2 authentication
