UNPKG

beeswax-client

Version:
77 lines (54 loc) 2.27 kB
beeswax-client ============== Node.js wrapper for the Beeswax API. Install ------- ```bash $> npm install beeswax-client ``` Usage ----- ### Instantiation Instantiate with an options object: ```javascript var BeeswaxClient = require('beeswax-client'); var beeswax = new BeeswaxClient({ apiRoot: 'https://<hostname>', // Default: 'https://stingersbx.api.beeswax.com' creds: { email : 'user@domain.com', // required password : '...' // required } }); ``` The `apiRoot` will be used to construct request urls, and the `creds` will be used when authenticating. The instantiated client will contain methods for performing CRUD operations on each supported entity: ```javascript beeswax.advertisers.find = function() {} beeswax.advertisers.query = function() {} beeswax.advertisers.create = function() {} beeswax.advertisers.edit = function() {} beeswax.advertisers.delete = function() {} beeswax.campaigns.find = function() {} // ... beeswax.creatives.find = function() {} // ... ``` Currently supported entities are: - advertisers - campaigns - creatives ### `beeswax.authenticate()` Sends a POST request to authenticate to Beeswax, using the provided `creds`. You shouldn't need to call this method explicitly - it will be called automatically upon receiving an Unauthorized response from any other request. ### `beeswax.<entity>.find(id)` Send a GET request to fetch the entity with the given id. ### `beeswax.<entity>.query(body)` Send a GET request to fetch entities. `body` should be an object containing any fields to query by. By default, Beeswax's API will fetch up to 50 records, starting with the oldest. ### `beeswax.<entity>.queryAll(body)` Like `query()`, but recursively sends GET requests until all entities matching the query have been fetched. ### `beeswax.<entity>.create(body)` Send a POST request to create a new entity. `body` should be an object representing the new entity. ### `beeswax.<entity>.edit(id, body, failOnNotFound)` Send a PUT request to update the entity specified by `id`. `body` should be an object containing any fields that should be updated. ### `beeswax.<entity>.delete(id, failOnNotFound)` Send a DELETE request to delete the entity specified by `id`