Search for a virtual number using .NET SDK

Use this guide to create a .NET application for use with the Numbers API and search for an available Sinch virtual number.

Note:

Before you can get started, you need the following already set up:

Steps:
  1. Set up your .NET application.
  2. Search for an available virtual number for SMS, Voice or both.

Sinch .NET SDK for Numbers API

The Sinch Numbers .NET SDK allows you to quickly interact with the Numbers API from inside your .NET applications.

Set up your .NET application

  1. Create a new folder where you want your app project. Then, open a terminal or command prompt to that location.
  2. Create a new .NET console app with the following command:
    Copy
    Copied
    dotnet new console

    The easiest way to install the SDK is using the dotnet CLI:

    1. Open a command prompt or terminal to the local repository folder.
    2. Execute the following command:
      Copy
      Copied
      dotnet add package Sinch --prerelease
    Note:
    Because the Sinch .NET SDK is in prerelease, you must include the --prerelease option to install it.
  3. Open the Program.cs file in your project folder. Replace all of the code with the "Search for a virtual number" code.

Modify your application

The code provided includes placeholder parameters. You'll need to update the parameters detailed in the following subsections with your values.

Initialize the client

Before initializing a client using this SDK, you'll need three pieces of information:

  • Your Project ID
  • An access key ID
  • An access key Secret
These values can be found on the Access Keys page of the Customer Dashboard. You can also create new access key IDs and Secrets, if required.
Note:
If you have trouble accessing the above link, ensure that you have gained access to the Conversation API by accepting the corresponding terms and conditions.

To start using the SDK, you need to initialize the main client class with your credentials from your Sinch dashboard.

Note:

For testing purposes on your local environment it's fine to use hardcoded values, but before deploying to production we strongly recommend using environment variables to store the credentials.

Copy
Copied
using Sinch;

var sinch = new SinchClient("YOUR_project_id",
                            "YOUR_access_key", 
                            "YOUR_access_secret");
You can also implement the client using ASP.NET dependency injection. SinchClient is thread safe, so it's fine to add it as a singleton:
Copy
Copied
builder.Services.AddSingleton<ISinchClient>(x => new SinchClient(
    builder.Configuration["YOUR_project_id"],
    builder.Configuration["YOUR_access_key"],
    builder.Configuration["YOUR_access_secret"]));

When finished, save the file.

Build your project

Before executing your code, you must first compile your application. Execute the following command:

Copy
Copied
dotnet build

Search for an available number

Now you can execute the code. Run the following command:

Copy
Copied
dotnet run

Response

These steps should return a JSON list of numbers available to rent.

Copy
Copied
{
  "availableNumbers": [
    {
      "phoneNumber": "+12089087284",
      "regionCode": "US",
      "type": "LOCAL",
      "capability": ["SMS"],
      "setupPrice": {
        "currencyCode": "USD",
        "amount": "0.00"
      },
      "monthlyPrice": {
        "currencyCode": "USD",
        "amount": "2.00"
      },
      "paymentIntervalMonths": 1
    }
  ]
}

Next steps

Copy the phoneNumber you would like to use and rent your virtual number using the Numbers API.

Additional resources

We'd love to hear from you!
Rate this content:
Still have a question?
 
Ask the community.