Update a Number

This page shows you how to programmatically update the configuration settings for one of your numbers.

You can also update these settings online, using the developer dashboard. Select the "Your Applications" option from either the "Voice" or "Messages and Dispatch" menu. Or, you can use the Vonage CLI.

Replace the following variables in the sample code with your own values:

KeyDescription
VONAGE_API_KEY

Your Vonage API key (see it on your dashboard).

VONAGE_API_SECRET

Your Vonage API secret (also available on your dashboard).

COUNTRY_CODE

The two digit country code for the number. For example: GB for the United Kingdom

VONAGE_NUMBER

Your Vonage Number. E.g. 447700900000

SMS_CALLBACK_URL

An URL-encoded URI to the webhook endpoint that handles inbound messages. Your webhook endpoint must be active before you make this request. Vonage makes a GET request to the endpoint and checks that it returns a 200 OK response. Set this parameter's value to an empty string to remove the webhook.

VONAGE_APPLICATION_ID

The ID of the application that handles inbound traffic to this number.

VOICE_CALLBACK_TYPE

The Voice API webhook type: sip, tel or app

VOICE_CALLBACK_VALUE

A SIP URI, telephone number or Application ID, depending on VOICE_CALLBACK_TYPE

VOICE_STATUS_URL

A webhook URL for Vonage to POST Voice API status updates to

Write the code

Add the following to update-number.sh:

curl -X POST \
  "https://rest.nexmo.com/number/update?api_key=$VONAGE_API_KEY&api_secret=$VONAGE_API_SECRET" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "country=$COUNTRY_CODE&msisdn=$VONAGE_NUMBER&moHttpUrl=$SMS_CALLBACK_URL" \
  -d "app_id=$VONAGE_APPLICATION_ID" \
  -d "&voiceCallbackType=$VOICE_CALLBACK_TYPE&voiceCallbackValue=$VOICE_CALLBACK_VALUE&voiceStatusCallback=$VOICE_STATUS_URL"

View full source

Run your code

Save this file to your machine and run it:

sh update-number.sh

See also