Table of Contents

Interface INumbersClient

Namespace
Vonage.Numbers
Assembly
Vonage.dll

Exposes Numbers API features for managing virtual phone numbers including searching, purchasing, configuring, and transferring numbers between accounts.

public interface INumbersClient

Methods

BuyANumberAsync(NumberTransactionRequest, Credentials)

Purchases a specific inbound number to add it to your account.

Task<NumberTransactionResponse> BuyANumberAsync(NumberTransactionRequest request, Credentials creds = null)

Parameters

request NumberTransactionRequest

The request containing the country and MSISDN to purchase. See NumberTransactionRequest.

creds Credentials

Optional credentials to override the default client credentials.

Returns

Task<NumberTransactionResponse>

A NumberTransactionResponse indicating success or failure with an error code.

Examples

var request = new NumberTransactionRequest { Country = "GB", Msisdn = "447700900000" };
var response = await client.NumbersClient.BuyANumberAsync(request);
See Also

CancelANumberAsync(NumberTransactionRequest, Credentials)

Cancels your subscription for a specific inbound number, releasing it from your account.

Task<NumberTransactionResponse> CancelANumberAsync(NumberTransactionRequest request, Credentials creds = null)

Parameters

request NumberTransactionRequest

The request containing the country and MSISDN to cancel. See NumberTransactionRequest.

creds Credentials

Optional credentials to override the default client credentials.

Returns

Task<NumberTransactionResponse>

A NumberTransactionResponse indicating success or failure with an error code.

Examples

var request = new NumberTransactionRequest { Country = "GB", Msisdn = "447700900000" };
var response = await client.NumbersClient.CancelANumberAsync(request);
See Also

GetAvailableNumbersAsync(NumberSearchRequest, Credentials)

Retrieves inbound numbers that are available for purchase in the specified country.

Task<NumbersSearchResponse> GetAvailableNumbersAsync(NumberSearchRequest request, Credentials creds = null)

Parameters

request NumberSearchRequest

The search request containing the country and optional filters. See NumberSearchRequest.

creds Credentials

Optional credentials to override the default client credentials.

Returns

Task<NumbersSearchResponse>

A NumbersSearchResponse containing the list of available numbers and total count.

Examples

var request = new NumberSearchRequest { Country = "GB", Type = "mobile-lvn" };
var response = await client.NumbersClient.GetAvailableNumbersAsync(request);
foreach (var number in response.Numbers)
{
    Console.WriteLine($"Available: {number.Msisdn}, Cost: {number.Cost}");
}
See Also

GetOwnedNumbersAsync(NumberSearchRequest, Credentials)

Retrieves all the inbound numbers associated with your Vonage account.

Task<NumbersSearchResponse> GetOwnedNumbersAsync(NumberSearchRequest request, Credentials creds = null)

Parameters

request NumberSearchRequest

The search request containing optional filters. See NumberSearchRequest.

creds Credentials

Optional credentials to override the default client credentials.

Returns

Task<NumbersSearchResponse>

A NumbersSearchResponse containing the list of owned numbers and total count.

Examples

var request = new NumberSearchRequest { Country = "US" };
var response = await client.NumbersClient.GetOwnedNumbersAsync(request);
foreach (var number in response.Numbers)
{
    Console.WriteLine($"Number: {number.Msisdn}");
}
See Also

TransferANumberAsync(NumberTransferRequest, string, Credentials)

Transfers a number you own to a subaccount.

Task<NumberTransferResponse> TransferANumberAsync(NumberTransferRequest request, string apiKey, Credentials creds = null)

Parameters

request NumberTransferRequest

The request containing the number and transfer details. See NumberTransferRequest.

apiKey string

The API key of the account performing the transfer.

creds Credentials

Optional credentials to override the default client credentials.

Returns

Task<NumberTransferResponse>

A NumberTransferResponse containing the transfer details.

Examples

var request = new NumberTransferRequest
{
    Country = "GB",
    Number = "447700900000",
    From = "master-api-key",
    To = "subaccount-api-key"
};
var response = await client.NumbersClient.TransferANumberAsync(request, "master-api-key");
See Also

UpdateANumberAsync(UpdateNumberRequest, Credentials)

Updates the configuration of a number you own, including webhook URLs and voice callback settings.

Task<NumberTransactionResponse> UpdateANumberAsync(UpdateNumberRequest request, Credentials creds = null)

Parameters

request UpdateNumberRequest

The request containing the number and new configuration. See UpdateNumberRequest.

creds Credentials

Optional credentials to override the default client credentials.

Returns

Task<NumberTransactionResponse>

A NumberTransactionResponse indicating success or failure with an error code.

Examples

var request = new UpdateNumberRequest
{
    Country = "GB",
    Msisdn = "447700900000",
    AppId = "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
};
var response = await client.NumbersClient.UpdateANumberAsync(request);
See Also