diff --git a/packages/accounts/README.md b/packages/accounts/README.md index e30519c8..232d3f0f 100644 --- a/packages/accounts/README.md +++ b/packages/accounts/README.md @@ -1,46 +1,53 @@ # Vonage Accounts SDK for Node.js -![GitHub Workflow Status (branch)](https://img.shields.io/github/workflow/status/vonage/vonage-node-sdk/Vonage/3.x?logo=github&style=flat-square&label=Workflow%20Build) [![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/github/v/release/vonage/vonage-node-sdk?logo=npm&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/server-sdk?label=License&style=flat-square)][../../LICENSE.TXT] +![GitHub Workflow Status (branch)](https://img.shields.io/github/workflow/status/vonage/vonage-node-sdk/Vonage/3.x?logo=github&style=flat-square&label=Workflow%20Build) +[![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/accounts) +[![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 Vonage Account SDK for Node.js for use with [Vonage APIs](https://www.vonage.com/). To use it you will need a Vonage account. Sign up [for free at vonage.com][signup]. +This is the Vonage Account SDK for Node.js for use with +[Vonage APIs](https://www.vonage.com/). To use it you will need a Vonage +account. Sign up [for free at vonage.com][signup]. -We recommend using this package as part of the overall [`@vonage/server-sdk` package](https://github.com/vonage/vonage-node-sdk). +We recommend using this package as part of the overall +[`@vonage/server-sdk` package](https://github.com/vonage/vonage-node-sdk). -For full API documentation refer to [developer.nexmo.com](https://developer.nexmo.com/). +For full API documentation refer to [developer.vonage.com](https://developer.vonage.com/). * [Installation](#installation) -* [Constructor](#constructor) -* [Callbacks](#callbacks) +* [Usage](#using-the-vonage-accounts-sdk) +* [Promises](#promises) * [Testing](#testing) -* [Examples](#examples) -* [Supported APIs](#supported-apis) ## Installation -We recommend using this SDK as part of the overall [`@vonage/server-sdk` package](https://github.com/vonage/vonage-node-sdk). Please see the main package for installation. +We recommend using this SDK as part of the overall +[`@vonage/server-sdk` package](https://github.com/vonage/vonage-node-sdk). +Please see the main package for installation. You can also use this SDK standalone if you only need access to just the Accounts API. + ### With NPM ```bash -npm install @vonage/account +npm install @vonage/accounts ``` ### With Yarn ```bash -yarn add @vonage/account +yarn add @vonage/accounts ``` ## Using the Vonage Accounts SDK ### As part of the Vonage Server SDK -If you are using this SDK as part of the Vonage Server SDK, you can access it as the `accounts` property off of the client that you instantiate. +If you are using this SDK as part of the Vonage Server SDK, you can access it +as the `accounts` property off of the client that you instantiate. ```js const { Vonage } = require('@vonage/server-sdk'); @@ -59,48 +66,33 @@ const balance = await vonage.accounts.getBalance(); ### Standalone -The SDK can be used standalone from the main [Vonage Server SDK for Node.js](https://github.com/vonage/vonage-node-sdk) if you only need to use the Account APIs. All you need to do is `require('@vonage/account')`, and use the returned object to create your own client. +The SDK can be used standalone from the main +[Vonage Server SDK for Node.js](https://github.com/vonage/vonage-node-sdk) if +you only need to use the Account APIs. All you need to do is +`require('@vonage/account')`, and use the returned object to create your own +client. ```js const { Auth } = require('@vonage/auth'); const { Accounts } = require('@vonage/account'); -const accountClient = new Accounts(new Auth({ +const credentials = new Auth({ apiKey: API_KEY, apiSecret: API_SECRET, - }), 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. -* `options` is an object that can contain: +const options = {} -```js -{ - // 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 -} +const accountClient = new Accounts(credentials, options); ``` +`credentials` is any option from [`@vonage/auth`](https://github.com/Vonage/vonage-node-sdk/tree/3.x/readme/packages/auth#options), +and `options` is any option from [`@vonage/server-client`](https://github.com/Vonage/vonage-node-sdk/tree/3.x/readme/packages/server-client#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. +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 balance = await accountClient.getBalance();