TODO for AI Logo
TODOforAI API

User

Endpoint:/api/v1

User management operations


User profile

GET
/api/v1
/users/profile

Returns the profile of the authenticated user

User profile Responses

Successful operation

  • userobject
  • settingsobject

Change password

POST
/api/v1
/users/change-password

Changes the password for the authenticated user

Change password Request Body

  • currentPasswordstring · password · required
    Example: oldPassword123
  • newPasswordstring · password · required
    Example: newPassword456

Change password Responses

Password changed successfully

  • successboolean
    Example: true
  • messagestring
    Example: Password changed successfully

Balance

GET
/api/v1
/users/balance

Returns the current balance for the authenticated user

Balance Responses

Successful operation

  • balancenumber · float
    Example: 100.5
  • currencystring
    Example: USD

List transactions

GET
/api/v1
/users/transactions

Returns the transaction history for the authenticated user

List transactionsquery Parameters

  • pageinteger

    Page number

    Default: 1
  • limitinteger

    Number of items per page

    Default: 10

List transactions Responses

Successful operation

  • transactionsobject[]
  • totalCountinteger
    Example: 50
  • pageinteger
    Example: 1
  • limitinteger
    Example: 10

List invoices

GET
/api/v1
/users/invoices

Returns the invoice history for the authenticated user

List invoices Responses

Successful operation

  • idstring
    Example: invoice-123
  • amountnumber · float
    Example: 59.99
  • statusstring
    Example: paid
  • createdAtinteger · int64
    Example: 1625097600000
  • paidAtinteger · int64
    Example: 1625184000000

Get user settings

GET
/api/v1
/settings/user

Returns the settings for the authenticated user

Get user settings Responses

Successful operation

  • idstring
    Example: settings-123
  • userIdstring
    Example: user-123
  • fullNamestring
    Example: John Doe
  • profilePicturestring
    Example: https://example.com/profile.jpg
  • themestring
    Example: dark
  • diffControlstring
    Example: unified
  • shellExecutionstring
    Example: auto
  • emailNotificationsboolean
    Example: true
  • pushNotificationsboolean
    Example: true
  • dataAnalyticsboolean
    Example: true
  • autoSaveboolean
    Example: true
  • confirmBeforeDeleteboolean
    Example: true
  • playSoundOnTaskCompleteboolean
    Example: true
  • keyboardBindingsobject
    Example: {"save":"ctrl+s"}
  • keyboardShortcutsEnabledboolean
    Example: true

Update user settings

PUT
/api/v1
/settings/user

Updates the settings for the authenticated user

Update user settings Request Body

  • idstring
    Example: settings-123
  • userIdstring
    Example: user-123
  • fullNamestring
    Example: John Doe
  • profilePicturestring
    Example: https://example.com/profile.jpg
  • themestring
    Example: dark
  • diffControlstring
    Example: unified
  • shellExecutionstring
    Example: auto
  • emailNotificationsboolean
    Example: true
  • pushNotificationsboolean
    Example: true
  • dataAnalyticsboolean
    Example: true
  • autoSaveboolean
    Example: true
  • confirmBeforeDeleteboolean
    Example: true
  • playSoundOnTaskCompleteboolean
    Example: true
  • keyboardBindingsobject
    Example: {"save":"ctrl+s"}
  • keyboardShortcutsEnabledboolean
    Example: true

Update user settings Responses

User settings updated successfully

  • idstring
    Example: settings-123
  • userIdstring
    Example: user-123
  • fullNamestring
    Example: John Doe
  • profilePicturestring
    Example: https://example.com/profile.jpg
  • themestring
    Example: dark
  • diffControlstring
    Example: unified
  • shellExecutionstring
    Example: auto
  • emailNotificationsboolean
    Example: true
  • pushNotificationsboolean
    Example: true
  • dataAnalyticsboolean
    Example: true
  • autoSaveboolean
    Example: true
  • confirmBeforeDeleteboolean
    Example: true
  • playSoundOnTaskCompleteboolean
    Example: true
  • keyboardBindingsobject
    Example: {"save":"ctrl+s"}
  • keyboardShortcutsEnabledboolean
    Example: true