Application Overview

A Nexmo application contains the security and configuration information you need to connect to Nexmo endpoints and easily use our products. You use one or more applications to supply a service based on a Nexmo Product. For example, you may create one Voice application to record calls to your support center, and another application for internal conferences.

Application API Workflow


Each application has the following

Name Description
msisdn A virtual phone number that you rent from Nexmo and is associated with this application.
type Describes the Nexmo API you access for your application currently only voice may be used for Voice API.
private_key You use the private key to generate the JWTs used to authenticate your calls to the Nexmo APIs.
public_key Used by Nexmo to authenticate the JWT in your requests to Nexmo API.
applicationID Used to identify each application & used in conjunction with private_key to generate JWTs.
webhooks Nexmo sends and retrieves information from your webhook endpoints including : answer_url - The webhook endpoint that provides the Nexmo Call Control Object governing a Call or Conference & event_url - Nexmo sends event information asynchronously to this URL when status changes.

Note: by default, all HTTP requests are POST.

You use Application API to create, list, modify and delete applications.

Getting started with applications

To create a Voice app and send a text-to-speech message:

  1. If you don't already have one, setup a Nexmo account.

  2. Use npm  to install and setup the Nexmo CLI.

    $ npm install nexmo-cli -g
    $ nexmo setup <api_key> <api_secret>
  3. If you do not have one, rent a virtual number using the Dashboard or the command line.

    $ nexmo number:buy 447700900000 --confirm
  4. Create an Application:

    $ nexmo app:create "VoiceApplication"  --keyfile private.key
  5. Associate the application_id with your virtual number.

    $ nexmo link:app 447700900000 aaaaaaaa-bbbb-cccc-dddd-0123456789ab