Table of Contents

Interface IUserClient

Namespace
TorBoxSDK.Main.User
Assembly
TorBoxSDK.dll

Defines operations for user account management through the TorBox Main API.

public interface IUserClient

Methods

AddReferralAsync(AddReferralRequest, CancellationToken)

Adds a referral code to the user's account.

Task<TorBoxResponse> AddReferralAsync(AddReferralRequest request, CancellationToken cancellationToken = default)

Parameters

request AddReferralRequest

The referral request.

cancellationToken CancellationToken

Cancellation token.

Returns

Task<TorBoxResponse>

The API response.

Exceptions

ArgumentNullException

Thrown when request is null.

ArgumentException

Thrown when the referral code is empty.

TorBoxException

Thrown when the API returns an error.

AddSearchEnginesAsync(AddSearchEnginesRequest, CancellationToken)

Adds search engines to the user's settings.

Task<TorBoxResponse> AddSearchEnginesAsync(AddSearchEnginesRequest request, CancellationToken cancellationToken = default)

Parameters

request AddSearchEnginesRequest

The request containing search engines to add.

cancellationToken CancellationToken

Cancellation token.

Returns

Task<TorBoxResponse>

The API response.

Exceptions

ArgumentNullException

Thrown when request is null.

TorBoxException

Thrown when the API returns an error.

ControlSearchEnginesAsync(ControlSearchEnginesRequest, CancellationToken)

Performs a control operation on the user's search engine settings.

Task<TorBoxResponse> ControlSearchEnginesAsync(ControlSearchEnginesRequest request, CancellationToken cancellationToken = default)

Parameters

request ControlSearchEnginesRequest

The control operation request.

cancellationToken CancellationToken

Cancellation token.

Returns

Task<TorBoxResponse>

The API response.

Exceptions

ArgumentNullException

Thrown when request is null.

TorBoxException

Thrown when the API returns an error.

DeleteMeAsync(DeleteAccountRequest, CancellationToken)

Deletes the authenticated user's account.

Task<TorBoxResponse> DeleteMeAsync(DeleteAccountRequest request, CancellationToken cancellationToken = default)

Parameters

request DeleteAccountRequest

The delete account request.

cancellationToken CancellationToken

Cancellation token.

Returns

Task<TorBoxResponse>

The API response.

Exceptions

ArgumentNullException

Thrown when request is null.

TorBoxException

Thrown when the API returns an error.

EditSettingsAsync(EditSettingsRequest, CancellationToken)

Edits the user's account settings.

Task<TorBoxResponse> EditSettingsAsync(EditSettingsRequest request, CancellationToken cancellationToken = default)

Parameters

request EditSettingsRequest

The settings edit request.

cancellationToken CancellationToken

Cancellation token.

Returns

Task<TorBoxResponse>

The API response.

Exceptions

ArgumentNullException

Thrown when request is null.

TorBoxException

Thrown when the API returns an error.

GetConfirmationAsync(CancellationToken)

Gets the confirmation status for the authenticated user.

Task<TorBoxResponse<Confirmation>> GetConfirmationAsync(CancellationToken cancellationToken = default)

Parameters

cancellationToken CancellationToken

Cancellation token.

Returns

Task<TorBoxResponse<Confirmation>>

The confirmation data.

Exceptions

TorBoxException

Thrown when the API returns an error.

GetDeviceTokenAsync(DeviceTokenRequest, CancellationToken)

Exchanges a device code for an access token.

Task<TorBoxResponse<DeviceToken>> GetDeviceTokenAsync(DeviceTokenRequest request, CancellationToken cancellationToken = default)

Parameters

request DeviceTokenRequest

The device token request.

cancellationToken CancellationToken

Cancellation token.

Returns

Task<TorBoxResponse<DeviceToken>>

The token data.

Exceptions

ArgumentNullException

Thrown when request is null.

TorBoxException

Thrown when the API returns an error.

GetMeAsync(bool?, CancellationToken)

Retrieves the authenticated user's profile.

Task<TorBoxResponse<UserProfile>> GetMeAsync(bool? settings = null, CancellationToken cancellationToken = default)

Parameters

settings bool?

Whether to include account settings in the response.

cancellationToken CancellationToken

Cancellation token.

Returns

Task<TorBoxResponse<UserProfile>>

The user profile data.

Exceptions

TorBoxException

Thrown when the API returns an error.

GetReferralDataAsync(CancellationToken)

Retrieves the authenticated user's referral data.

Task<TorBoxResponse<ReferralData>> GetReferralDataAsync(CancellationToken cancellationToken = default)

Parameters

cancellationToken CancellationToken

Cancellation token.

Returns

Task<TorBoxResponse<ReferralData>>

The referral data.

Exceptions

TorBoxException

Thrown when the API returns an error.

GetSearchEnginesAsync(long?, CancellationToken)

Retrieves the user's configured search engines.

Task<TorBoxResponse<IReadOnlyList<SearchEngine>>> GetSearchEnginesAsync(long? id = null, CancellationToken cancellationToken = default)

Parameters

id long?

An optional search engine identifier to filter by.

cancellationToken CancellationToken

Cancellation token.

Returns

Task<TorBoxResponse<IReadOnlyList<SearchEngine>>>

A list of configured search engines.

Exceptions

TorBoxException

Thrown when the API returns an error.

GetSubscriptionsAsync(CancellationToken)

Retrieves the authenticated user's subscriptions.

Task<TorBoxResponse<IReadOnlyList<Subscription>>> GetSubscriptionsAsync(CancellationToken cancellationToken = default)

Parameters

cancellationToken CancellationToken

Cancellation token.

Returns

Task<TorBoxResponse<IReadOnlyList<Subscription>>>

A list of subscriptions.

Exceptions

TorBoxException

Thrown when the API returns an error.

GetTransactionPdfAsync(string, CancellationToken)

Retrieves a transaction PDF by its identifier.

Task<TorBoxResponse<string>> GetTransactionPdfAsync(string transactionId, CancellationToken cancellationToken = default)

Parameters

transactionId string

The unique identifier of the transaction.

cancellationToken CancellationToken

Cancellation token.

Returns

Task<TorBoxResponse<string>>

The PDF data as a string (typically a download URL).

Exceptions

TorBoxException

Thrown when the API returns an error.

GetTransactionsAsync(CancellationToken)

Retrieves the authenticated user's transactions.

Task<TorBoxResponse<IReadOnlyList<Transaction>>> GetTransactionsAsync(CancellationToken cancellationToken = default)

Parameters

cancellationToken CancellationToken

Cancellation token.

Returns

Task<TorBoxResponse<IReadOnlyList<Transaction>>>

A list of transactions.

Exceptions

TorBoxException

Thrown when the API returns an error.

ModifySearchEnginesAsync(ModifySearchEnginesRequest, CancellationToken)

Modifies the user's search engine configuration.

Task<TorBoxResponse> ModifySearchEnginesAsync(ModifySearchEnginesRequest request, CancellationToken cancellationToken = default)

Parameters

request ModifySearchEnginesRequest

The modification request.

cancellationToken CancellationToken

Cancellation token.

Returns

Task<TorBoxResponse>

The API response.

Exceptions

ArgumentNullException

Thrown when request is null.

TorBoxException

Thrown when the API returns an error.

RefreshTokenAsync(RefreshTokenRequest, CancellationToken)

Refreshes an authentication session token.

Task<TorBoxResponse<string>> RefreshTokenAsync(RefreshTokenRequest request, CancellationToken cancellationToken = default)

Parameters

request RefreshTokenRequest

The token refresh request.

cancellationToken CancellationToken

Cancellation token.

Returns

Task<TorBoxResponse<string>>

The refreshed token data.

Exceptions

ArgumentNullException

Thrown when request is null.

TorBoxException

Thrown when the API returns an error.

StartDeviceAuthAsync(string?, CancellationToken)

Starts the device authorization flow.

Task<TorBoxResponse<DeviceCode>> StartDeviceAuthAsync(string? app = null, CancellationToken cancellationToken = default)

Parameters

app string

The application identifier, or null to omit.

cancellationToken CancellationToken

Cancellation token.

Returns

Task<TorBoxResponse<DeviceCode>>

The device code response containing a user code and verification URL.

Exceptions

TorBoxException

Thrown when the API returns an error.