Have ideas to improve npm?Join in the discussion! »

    @vonage/server-sdk
    TypeScript icon, indicating that this package has built-in type declarations

    2.10.7 • Public • Published

    Vonage Server SDK for Node.js

    GitHub Workflow Status (branch) Codecov Latest Release

    Contributor Covenant License

    Vonage

    This is the Node.JS Server SDK for Vonage APIs. To use it you will need a Vonage account. Sign up for free at vonage.com.

    For full API documentation refer to developer.nexmo.com.

    Installation

    With NPM

    npm install @vonage/server-sdk

    With Yarn

    yarn add @vonage/server-sdk

    Constructor

    const Vonage = require('@vonage/server-sdk');
    
    const vonage = new Vonage({
        apiKey: API_KEY,
        apiSecret: API_SECRET,
        applicationId: APP_ID,
        privateKey: PRIVATE_KEY_PATH,
        signatureSecret: SIGNATURE_SECRET,
        signatureMethod: SIGNATURE_METHOD
      }, options);
    • apiKey - API Key from Vonage API. If applicationId and privateKey are present, apiKey is optional.
    • apiSecret - API SECRET from Vonage API. If applicationId and privateKey are present, apiSecret is optional.
    • applicationId - (optional) The Vonage API Application ID to be used when creating JWTs.
    • privateKey - (optional) The Private Key to be used when creating JWTs. You can specify the key as any of the following:
      • A Buffer containing the file contents.
      • A String containing the path to the key file on disk.
      • A String containing the key itself.
    • signatureSecret - (optional) API signature secret from Vonage API, used for signing SMS message requests
    • signatureMethod - (optional) signature method matching the one you gave Vonage API, used for signing SMS message requests. Must be one of "md5hash", "md5", "sha1", "sha256", or "sha512"
    • options - (optional) Additional options for the constructor.

    Options are:

    {
      // If true, log information to the console
      debug: true|false,
      // append info the the User-Agent sent to Nexmo
      // e.g. pass 'my-app' for /nexmo-node/1.0.0/4.2.7/my-app
      appendToUserAgent: string,
      // Set a custom logger
      logger: {
        log: function() {level, args...}
        info: function() {args...},
        warn: function() {args...}
      },
      // Set a custom timeout for requests to Nexmo in milliseconds. Defaults to the standard for Node http requests, which is 120,000 ms.
      timeout: integer,
      // Set a custom host for requests instead of api.nexmo.com
      apiHost: string,
      // Set a custom host for requests instead of rest.nexmo.com
      restHost: string
    }

    Callbacks

    All methods expect a callback function to be passed in, with a method signature of (error, response) where:

    • error - is an Error object if the API call returns an error, or null if the API call was successful.
    • response - is an Object, with the API response if the API call was successful, or null if there was an error.

    Example:

    callback = (error, response) => {
      if (error) {
        console.error(error)
      }
    
      if (response) {
        console.log(response)
      }
    }

    Testing

    Run:

    npm test

    Or to continually watch and run tests as you change the code:

    npm run test-watch

    Examples

    See the Vonage Node Quickstarts repo.

    Supported APIs

    The following is a list of Vonage APIs and whether the Node Server SDK provides support for them:

    API API Release Status Supported?
    Account API General Availability
    Alerts API General Availability
    Application API General Availability
    Audit API Beta
    Conversation API Beta
    Dispatch API Beta
    External Accounts API Beta
    Media API Beta
    Messages API Beta
    Number Insight API General Availability
    Number Management API General Availability
    Pricing API General Availability
    Redact API Developer Preview
    Reports API Beta
    SMS API General Availability
    Verify API General Availability
    Voice API General Availability

    Install

    npm i @vonage/server-sdk

    DownloadsWeekly Downloads

    4,686

    Version

    2.10.7

    License

    Apache 2.0

    Unpacked Size

    505 kB

    Total Files

    50

    Last publish

    Collaborators

    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar