UNPKG

streakapi

Version:
93 lines (72 loc) 3.12 kB
# NodeJS Wrapper for Streak API [![Circle CI](https://circleci.com/gh/StreakYC/node-api-wrapper.svg?style=shield)](https://circleci.com/gh/StreakYC/node-api-wrapper) [![npm version](https://badge.fury.io/js/streakapi.svg)](https://badge.fury.io/js/streakapi) NodeJS package that acts as a thin wrapper over the Streak API (https://www.streak.com/api). To use the API, just do the standard $ npm install --save streakapi and then var streakapi = require('streakapi'); var streak = new streakapi.Streak("api key here"); streak.Me.get().then(function(me) { console.log('email', me.email); }); ## API All methods return promises. streak.Me.get(); //pipeline functions streak.Pipelines.getAll(); streak.Pipelines.getOne(pipelineKey); streak.Pipelines.getBoxes(pipelineKey); streak.Pipelines.create(data); streak.Pipelines.delete(pipelineKey); streak.Pipelines.update(data); // data must have "key" property containing pipeline key streak.Pipelines.getFeed(pipelineKey, detailLevel); //pipeline stages streak.Pipelines.Stages.getAll(pipelineKey); streak.Pipelines.Stages.getOne(pipelineKey, key); streak.Pipelines.Stages.create(pipelineKey, data); streak.Pipelines.Stages.delete(pipelineKey, key); streak.Pipelines.Stages.update(pipelineKey, data); //pipeline fields streak.Pipelines.Fields.getAll(pipelineKey); streak.Pipelines.Fields.getOne(pipelineKey, key); streak.Pipelines.Fields.create(pipelineKey, data); streak.Pipelines.Fields.delete(pipelineKey, key); streak.Pipelines.Fields.update(pipelineKey, data); //boxes streak.Boxes.getAll(); streak.Boxes.getForPipeline(pipelineKey); streak.Boxes.getOne(boxKey); streak.Boxes.create(pipelineKey, data); streak.Boxes.delete(key); streak.Boxes.update(data); // data must have "key" property containing box key streak.Boxes.getFields(boxKey); streak.Boxes.getReminders(boxKey); streak.Boxes.getComments(boxKey); streak.Boxes.postComment(boxKey, message); streak.Boxes.getFiles(boxKey); streak.Boxes.getThreads(boxKey); streak.Boxes.getFeed(boxKey, detailLevel); //box fields streak.Boxes.Fields.getForBox(boxKey); streak.Boxes.Fields.getOne(boxKey, key); streak.Boxes.Fields.update(boxKey, data); // data must have "key" property containing the field key and "value" to update to, i.e.: {"key":"1002", "value":"This is my new value for this field!"} //files streak.Files.getForBox(boxKey); streak.Files.getOne(fileKey); streak.Files.getContents(fileKey); //threads streak.Threads.getForBox(boxKey); streak.Threads.getOne(threadKey); //tasks streak.Tasks.getForBox(boxKey); streak.Tasks.getOne(taskKey); streak.Tasks.create(boxKey, data); streak.Tasks.delete(taskKey); streak.Tasks.update(taskKey, data); //search streak.search(query); ## Types Basic [Flow Type](http://flowtype.org/) declarations for this module are included! If you're using Flow, then no extra setup is necessary to take advantage of them.