> ## Documentation Index
> Fetch the complete documentation index at: https://heygen-1fa696a7.mintlify.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Current User

> Retrieve the authenticated user's profile, credit balance, and plan tier from the HeyGen API. Useful for in-app credit displays and account-management UIs.

* Endpoint: `GET https://api.heygen.com/v3/users/me`
* Purpose: Returns the authenticated user's profile, remaining credits or balance, and billing details. Use this to check your account status or remaining quota before making API calls.

### Authentication

| Header          | Value                              |
| --------------- | ---------------------------------- |
| `X-Api-Key`     | Your HeyGen API key                |
| `Authorization` | `Bearer YOUR_ACCESS_TOKEN` (OAuth) |

### Quick Example

```bash theme={null}
curl -X GET "https://api.heygen.com/v3/users/me" \
  -H "X-Api-Key: $HEYGEN_API_KEY"
```

### Response

```json theme={null}
{
  "data": {
    "username": "jane_doe",
    "email": "jane@example.com",
    "first_name": "Jane",
    "last_name": "Doe",
    "billing_type": "wallet",
    "wallet": {
      "currency": "usd",
      "remaining_balance": 42.50,
      "auto_reload": {
        "enabled": false
      }
    },
    "subscription": null,
    "usage_based": null
  }
}
```

### Response Fields

| Field          | Type           | Description                                                                          |
| -------------- | -------------- | ------------------------------------------------------------------------------------ |
| `username`     | string         | Account username.                                                                    |
| `email`        | string or null | Account email.                                                                       |
| `first_name`   | string or null | First name.                                                                          |
| `last_name`    | string or null | Last name.                                                                           |
| `billing_type` | string or null | Which billing object is populated: `"wallet"`, `"subscription"`, or `"usage_based"`. |

### Billing Types

The `billing_type` field tells you which of the three billing objects to read. Only one is populated at a time.

**Wallet** (`billing_type: "wallet"`) — Prepaid balance, typically for API key auth.

| Field                              | Type           | Description                             |
| ---------------------------------- | -------------- | --------------------------------------- |
| `wallet.currency`                  | string         | `"usd"` or `"credits"`                  |
| `wallet.remaining_balance`         | number or null | Current balance.                        |
| `wallet.auto_reload.enabled`       | boolean        | Whether auto-reload is on.              |
| `wallet.auto_reload.threshold_usd` | number or null | Balance threshold that triggers reload. |
| `wallet.auto_reload.amount_usd`    | number or null | Amount added on reload.                 |

**Subscription** (`billing_type: "subscription"`) — Per-pool credit balances, typically for OAuth apps.

| Field                                            | Type            | Description                                                                                             |
| ------------------------------------------------ | --------------- | ------------------------------------------------------------------------------------------------------- |
| `subscription.plan`                              | string          | Plan tier: `"free"`, `"starter"`, `"creator"`, `"pro"`, `"team"`, `"enterprise"`, or `"business_plus"`. |
| `subscription.credits.premium_credits.remaining` | integer or null | Remaining premium credits.                                                                              |
| `subscription.credits.premium_credits.resets_at` | string or null  | When the credit pool resets.                                                                            |
| `subscription.credits.add_on_credits.remaining`  | integer or null | Remaining add-on credits.                                                                               |

**Usage-based** (`billing_type: "usage_based"`) — Metered billing with optional spending cap.

| Field                              | Type           | Description                |
| ---------------------------------- | -------------- | -------------------------- |
| `usage_based.spending_current_usd` | number or null | Current spend this period. |
| `usage_based.spending_cap_usd`     | number or null | Spending cap (if set).     |
