node-ciscospark

1.0.3 • Public • Published

Cisco Spark API for Node.js

This is a super-simple lightweight JavaScript wrapper for Cisco Spark API.

NPM

npm Build Status codecov Documentation dependencies Status Known Vulnerabilities Stories in Ready JavaScript Style Guide

Installation

$ npm install node-ciscospark

Quick Start

API

var CiscoSpark = require('node-ciscospark');
 
var spark = new CiscoSpark(accessToken);

accessToken can also be set in the CISCOSPARK_ACCESS_TOKEN environment variable.

Create a Message

// spark.messages.create(parameters, callback)
spark.messages.create({
  roomId: sparkChatRoomId,
  text: 'This is a test'
}, function (err, result) {
  if (err) console.error(err);
  console.log(result);
});

List Rooms

// spark.rooms.list(parameters, callback)
spark.rooms.list({
  teamId: sparkTeamId
}, function (err, result, response) {
  if (err) console.error(err);
  console.log(result);
  console.log('Response Codes:', response.statusCode);
});

Supported Spark API

Messages

API methods Usage
List Messages spark.messages.list(parameters, callback)
Create a Message spark.messages.create(parameters, callback)
Create a Message to a Room spark.messages.createToRoom(roomId, markdownMessage, callback)
Create a Message to a Person spark.messages.createToPersonId(personId, markdownMessage, callback)
Create a Message to a Person's email spark.messages.createToPersonEmail(email, markdownMessage, callback)
Get Message Details spark.messages.get(messageId, callback)
Delete a Message spark.messages.delete(messageId, callback)

People

API methods Usage
List People spark.people.list(parameters, callback)
Create a Person spark.people.create(parameters, callback)
Get Person Details spark.people.get(personId, callback)
Update a Person spark.people.update(personId, parameters, callback)
Delete a Person spark.people.delete(personId, callback)
Get my own details spark.people.me(callback)

Rooms

API methods Usage
List Rooms spark.rooms.list(parameters, callback)
Create a Room spark.rooms.create(parameters, callback)
Get Room Details spark.rooms.get(roomId, callback)
Update a Room spark.rooms.update(roomId, parameters, callback)
Delete a Room spark.rooms.delete(roomId, callback)

Memberships

API methods Usage
List Memberships spark.memberships.list(parameters, callback)
Create a Membership spark.memberships.create(parameters, callback)
Get Membership Details spark.memberships.get(membershipId, callback)
Update a Membership spark.memberships.update(membershipId, parameters, callback)
Delete a Membership spark.memberships.delete(membershipId, callback)

Teams

API methods Usage
List Teams spark.teams.list(parameters, callback)
Create a Team spark.teams.create(parameters, callback)
Get Team Details spark.teams.get(teamId, callback)
Update a Team spark.teams.update(teamId, parameters, callback)
Delete a Team spark.teams.delete(teamId, callback)

Team Memberships

API methods Usage
List Team Memberships spark.teamMemberships.list(parameters, callback)
Create a Team Membership spark.teamMemberships.create(parameters, callback)
Get Team Membership Details spark.teamMemberships.get(membershipId, callback)
Update a Team Membership spark.teamMemberships.update(membershipId, parameters, callback)
Delete a Team Membership spark.teamMemberships.delete(membershipId, callback)

Webhooks

API methods Usage
List Webhooks spark.webhooks.list(parameters, callback)
Create a Webhook spark.webhooks.create(parameters, callback)
Get Webhook Details spark.webhooks.get(webhookId, callback)
Update a Webhook spark.webhooks.update(webhookId, parameters, callback)
Delete a Webhook spark.webhooks.delete(webhookId, callback)

Callbacks

The callbacks above return error, resultBody and httpResponse:

  function (error, resultBody, httpResponse) { }

where:

  • error is an Error object, or null
  • resultBody is the JSON response
  • httpResponse is a http.ServerResponse object

Code Documentation

See: https://doc.esdoc.org/github.com/joelee/ciscospark/

Documentation

License

The MIT License (MIT)

Copyright (C) 2017 Joseph Lee

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.


Contributor(s)

Joseph Lee Twitter Follow

Readme

Keywords

Package Sidebar

Install

npm i node-ciscospark

Weekly Downloads

12

Version

1.0.3

License

MIT

Unpacked Size

80.2 kB

Total Files

21

Last publish

Collaborators

  • joeworks