An open API service indexing awesome lists of open source software.

https://github.com/vonage/vonage-node-sdk

Vonage API client for Node.js. API support for SMS, Voice, Text-to-Speech, Numbers, Verify (2FA) and more.
https://github.com/vonage/vonage-node-sdk

dedicated-support developer-destination javascript messaging nexmo phone server-sdk sms text-message text-to-speech two-factor-authentication voice vonage

Last synced: about 1 month ago
JSON representation

Vonage API client for Node.js. API support for SMS, Voice, Text-to-Speech, Numbers, Verify (2FA) and more.

Awesome Lists containing this project

README

        

# Vonage Server SDK for Node.js

![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/vonage/vonage-node-sdk/ci.yml?branch=3.x) [![Codecov](https://img.shields.io/codecov/c/github/vonage/vonage-node-sdk?label=Codecov&logo=codecov&style=flat-square)](https://codecov.io/gh/Vonage/vonage-server-sdk) ![Latest Release](https://img.shields.io/npm/v/@vonage/server-sdk?label=%40vonage%2Fserver-sdk&style=flat-square) [![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-v2.0%20adopted-ff69b4.svg?style=flat-square)](../../CODE_OF_CONDUCT.md) [![License](https://img.shields.io/npm/l/@vonage/accounts?label=License&style=flat-square)][license]

Vonage

This is the Node.JS Server SDK for [Vonage APIs](https://www.vonage.com/). To use it you will need a Vonage account. Sign up [for free at vonage.com][signup].

For full API documentation refer to [developer.vonage.com](https://developer.vonage.com/).

* [Installation](#installation)
* [Constructor](#constructor)
* [Promises](#promises)
* [Testing](#testing)
* [Examples](#examples)
* [References](#references)

## Installation

### With NPM

```bash
npm install @vonage/server-sdk
```

### With Yarn

```bash
yarn add @vonage/server-sdk
```

## Constructor

```js
const { Vonage } = require('@vonage/server-sdk');

const vonage = new Vonage(credentials, options);
```

Where `credentials` is any option from [`@vonage/auth`](https://github.com/Vonage/vonage-node-sdk/blob/3.x/packages/auth/README.md#options), and `options` is any option from [`@vonage/server-client`](https://github.com/Vonage/vonage-node-sdk/blob/3.x/packages/server-client/README.md#options)

## Promises

Most methods that interact with the Vonage API uses Promises. You can either resolve these yourself, or use `await` to wait for a response.

```js
const resp = await vonage.sms.send({
to: '15552220000',
from: '15559992222',
text: 'This is a test',
});
```

## Testing

Run:

```bash
npm run test
```

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

```bash
npm run test-watch
```

## Examples

See the [Vonage Node Quickstarts repo](https://github.com/Vonage/vonage-node-code-snippets).

## References

You can find more information for each product below:

* [Accounts][accounts]
* [Applications][applications]
* [Audit](https://github.com/Vonage/vonage-node-sdk/blob/3.x/packages/audit/README.md)
* [Auth][auth]
* [JWT][jwt]
* [Messages](https://github.com/Vonage/vonage-node-sdk/blob/3.x/packages/messages/README.md)
* [Number Insight V2](https://github.com/Vonage/vonage-node-sdk/blob/3.x/packages/number-insight-v2/README.md)
* [Number Insights](https://github.com/Vonage/vonage-node-sdk/blob/3.x/packages/number-insights/README.md)
* [Numbers](https://github.com/Vonage/vonage-node-sdk/blob/3.x/packages/numbers/README.md)
* [Pricing](https://github.com/Vonage/vonage-node-sdk/blob/3.x/packages/pricing/README.md)
* [Server Client][server-client]
* [Server SDK](https://github.com/Vonage/vonage-node-sdk/blob/3.x/packages/server-sdk/README.md)
* [SMS][sms]
* [Sub Accounts](https://github.com/Vonage/vonage-node-sdk/blob/3.x/packages/subaccounts/README.md)
* [Verify](https://github.com/Vonage/vonage-node-sdk/blob/3.x/packages/verify/README.md)
* [Verify V2](https://github.com/Vonage/vonage-node-sdk/blob/3.x/packages/verify2/README.md)
* [Vetch](https://github.com/Vonage/vonage-node-sdk/blob/3.x/packages/vetch/README.md)
* [Video](https://github.com/Vonage/vonage-node-sdk/blob/3.x/packages/video/README.md)
* [Voice][voice]

## 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 | General Availability | ✅ |
| Dispatch API | Beta | ❌ |
| External Accounts API | Beta | ❌ |
| Media API | Beta | ✅ |
| Messages API | General Availability | ✅ |
| Meetings API | Deprecated | ✅ |
| Number Insight V2 API | Beta | ✅ |
| Number Insights API | General Availability | ✅ |
| Number Management API | General Availability | ✅ |
| Pricing API | General Availability | ✅ |
| Proactive Connect API | Deprecated | ✅ |
| Redact API | Developer Preview | ✅ |
| Reports API | Beta | ✅ |
| SMS API | General Availability | ✅ |
| Sub Accounts | Beta | ✅ |
| Users | General Availability | ✅ |
| Verify API | General Availability | ✅ |
| Verify v2 API | General Availability | ✅ |
| Video API | General Availability | ✅ |
| Voice API | General Availability | ✅ |

### Network APIS

The following Network APIs are supported however they are opt-in.

| API | Supported? |
|-----------------------|:----------:|
| Number Verification | ✅ |
| SIM Swap | ✅ |

#### Network API references

* [Number Verification](https://github.com/Vonage/vonage-node-sdk/blob/3.x/packages/network-number-verification/README.md)
* [SIM Swap](https://github.com/Vonage/vonage-node-sdk/blob/3.x/packages/network-sim-swap/README.md)

### V2 Migrations

While most of the V2 functions have been ported into their own package, some of the functions have not been ported or were removed. Below is a list of those changes:

| V2 Function | Status | Note |
|-----------------------------|:---------:|:------------------------------------------------------:|
| `vonage.conversion` | _REMOVED_ | |
| `vonage.conversation` | Moved | Moved To [Conversations][conversations] |
| `vonage.app` | Moved | Moved to [Applications][applications] |
| `vonage.files` | Moved | Move to [ServerClient][server-client] |
| `vonage.message` | Moved | Moved to [SMS][sms] |
| `vonage.generateJwt` | Moved | Was moved to [JWT][jwt] |
| `vonage.generateSignature` | Moved | Was moved to [SMS][sms] and [Voice][voice] |
| `vonage.calls` | Moved | Was moved to [Voice][voice] |
| `vonage.credentials` | Updated | Options can be found in [Server Client][server-client] |
| `vonage.options` | Updated | Options can be found in [Server Client][server-client] |
| `vonage.options.httpClient` | _Removed_ | |
| `vonage.options.userAgent` | Moved | Options can be found in [Server Client][server-client] |

For more information, check out each packages migration guide.

[accounts]: https://github.com/Vonage/vonage-node-sdk/blob/3.x/packages/accounts/README.md
[applications]: https://github.com/Vonage/vonage-node-sdk/blob/3.x/packages/applications/README.md
[auth]: https://github.com/Vonage/vonage-node-sdk/blob/3.x/packages/auth/README.md
[sms]: https://github.com/Vonage/vonage-node-sdk/blob/3.x/packages/sms/README.md
[server-client]: https://github.com/Vonage/vonage-node-sdk/blob/3.x/packages/server-client/README.md
[jwt]: https://github.com/Vonage/vonage-node-sdk/blob/3.x/packages/jwt/README.md
[conversations]: https://github.com/Vonage/vonage-node-sdk/blob/3.x/packages/conversations/README.md
[voice]: https://github.com/Vonage/vonage-node-sdk/blob/3.x/packages/voice/README.md
[signup]: https://dashboard.nexmo.com/sign-up?utm_source=DEV_REL&utm_medium=github&utm_campaign=node-server-sdk
[license]: LICENSE.txt