Skip to content

User Management

Manage your Pro user profile and accounts. All endpoints require Authorization: Bearer td_....

Get Profile

GET /api/user/me

Response (200):

json
{
  "id": "...",
  "email": "user@example.com",
  "plan": "pro",
  "role": "user",
  "status": "active",
  "max_domains": 3,
  "ops_used": 1234,
  "ops_limit": 100000,
  "domain_count": 1,
  "created_at": "2025-01-15T10:30:00Z",
  "downgraded": false
}

List All Accounts

GET /api/user/accounts

Lists all email accounts owned by the Pro user.

Response (200):

json
{
  "accounts": [
    {
      "id": "a1b2c3d4-...",
      "address": "hello@mydomain.com",
      "quota": 52428800,
      "used": 1234567,
      "created_at": "2025-01-15T10:30:00Z"
    }
  ]
}

Use the id from this list as {account_id} in the unified API endpoints:

bash
GET /api/accounts/{account_id}/messages

Reset Mailbox Password

PUT /api/user/accounts/{id}/reset-password

Resets the password of a mailbox owned by the Pro user. The Pro user must be logged in — this is not a "forgot password" flow.

Request:

bash
curl -X PUT https://api.mail.td/api/user/accounts/a1b2c3d4-.../reset-password \
  -H "Authorization: Bearer td_xxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{"password":"newpassword123"}'
FieldTypeRequiredDescription
passwordstringYesNew mailbox password

Response (200):

json
{
  "message": "password_reset"
}

Errors:

StatusError CodeDescription
400password_too_shortPassword too short
404not_foundMailbox not found or not owned by this user

Mail.td API Documentation