Configure the settings for your account

You can programmatically configure the settings for your account, such as the callback URLs that the webhooks will use.

Example

This example shows how to set the URL that will be called when your Vonage number receives an SMS.

Key Description
SMS_CALLBACK_URL The publicly-accessible URL that Vonage should send information to when your Vonage number receives an SMS

Write the code

Add the following to configure-account.sh:

Copy to Clipboard
curl -X POST "https://rest.nexmo.com/account/settings?api_key=$VONAGE_API_KEY&api_secret=$VONAGE_API_SECRET" \
    -d moCallBackUrl=$SMS_CALLBACK_URL

View full source

Run your code

Save this file to your machine and run it:

bash configure-account.sh

Prerequisites

npm install @vonage/server-sdk

Create a file named configure-account.js and add the following code:

Copy to Clipboard
const vonage = new Vonage({
  apiKey: VONAGE_API_KEY,
  apiSecret: VONAGE_API_SECRET
})

View full source

Write the code

Add the following to configure-account.js:

Copy to Clipboard
vonage.account.updateSMSCallback(SMS_CALLBACK_URL, (err, result) => {
    console.log(result);
});

View full source

Run your code

Save this file to your machine and run it:

node configure-account.js

Prerequisites

Add the following to `build.gradle`:

compile 'com.vonage:client:5.5.0'

Create a class named ConfigureAccount and add the following code to the main method:

Copy to Clipboard
VonageClient client = VonageClient.builder()
        .apiKey(VONAGE_API_KEY)
        .apiSecret(VONAGE_API_SECRET)
        .build();

View full source

Write the code

Add the following to the main method of the ConfigureAccount class:

Copy to Clipboard
AccountClient accountClient = client.getAccountClient();

SettingsResponse response = accountClient.updateSmsIncomingUrl(SMS_CALLBACK_URL);
System.out.println("SMS Callback URL is now " + response.getIncomingSmsUrl());

View full source

Run your code

We can use the application plugin for Gradle to simplify the running of our application. Update your build.gradle with the following:

Copy to Clipboard
  apply plugin: 'application'
  mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''

Run the following gradle command to execute your application, replacing com.vonage.quickstart.account with the package containing ConfigureAccount:

gradle run -Pmain=com.vonage.quickstart.account.ConfigureAccount

Prerequisites

Install-Package Vonage

Create a file named ChangeAccountSettings.cs and add the following code:

Copy to Clipboard
using Vonage;
using Vonage.Request;
using Vonage.Accounts;

View full source

Add the following to ChangeAccountSettings.cs:

Copy to Clipboard
var credentials = Credentials.FromApiKeyAndSecret(VONAGE_API_KEY, VONAGE_API_SECRET);
var client = new VonageClient(credentials);

View full source

Write the code

Add the following to ChangeAccountSettings.cs:

Copy to Clipboard
var request = new AccountSettingsRequest() { MoCallBackUrl = SMS_CALLBACK_URL };
var response = client.AccountClient.ChangeAccountSettings(request);

View full source

Prerequisites

composer require vonage/client

Create a file named configure-account.php and add the following code:

Copy to Clipboard
$basic  = new \Vonage\Client\Credentials\Basic(VONAGE_API_KEY, VONAGE_API_SECRET);
$client = new \Vonage\Client($basic);

View full source

Write the code

Add the following to configure-account.php:

Copy to Clipboard
$response = $client->account()->updateConfig([
    "sms_callback_url" => SMS_CALLBACK_URL
]);
print_r($response->toArray());

View full source

Run your code

Save this file to your machine and run it:

php configure-account.php

Prerequisites

pip install vonage

Create a file named configure-account.py and add the following code:

Copy to Clipboard
client = vonage.Client(key=VONAGE_API_KEY, secret=VONAGE_API_SECRET)

View full source

Write the code

Add the following to configure-account.py:

Copy to Clipboard
result = client.update_settings({'moCallBackUrl':SMS_CALLBACK_URL})
pprint(result)

View full source

Run your code

Save this file to your machine and run it:

python configure-account.py

Prerequisites

gem install vonage

Create a file named configure-account.rb and add the following code:

Copy to Clipboard
client = Vonage::Client.new(
  api_key: VONAGE_API_KEY,
  api_secret: VONAGE_API_SECRET
)

View full source

Write the code

Add the following to configure-account.rb:

Copy to Clipboard
result = client.account.update(
  moHttpUrl: SMS_CALLBACK_URL
)

result.to_h.each do |key, value|
  puts "#{key}: #{value}"
end

View full source

Run your code

Save this file to your machine and run it:

ruby configure-account.rb

The example outputs the current settings of your account, after it was updated with the new URL.