ghteams

0.3.0 • Public • Published

ghteams

Build Status

A node library to interact with the GitHub organisation teams API

NPM

Example usage

const ghteams     = require('ghteams')
    , authOptions = { user: 'rvagg', token: '24d5dee258c64aef38a66c0c5eca459c379901c2' }
    // note the auth token needs the 'user' scope to deal with org teams
 
 
// list all teams in an organisation
 
ghteams.list(authOptions, 'myorg', function (err, teamlist) {
  // Array of team data for 'myorg'
  console.log(teamlist)
})
 
 
// get team data by team name in an organisation
 
ghteams.get(authOptions, 'myorg', 'myteam', function (err, team) {
  // object containing full team data for myorg/myteam
  console.log(team)
})
 
 
// get team data by team id (quicker)
ghteams.get(authOptions, 123456, function (err, team) {
  // object containing full team data team #123456
  console.log(team)
})
 
 
// get team members by team name in an organisation
 
ghteams.members(authOptions, 'myorg', 'myteam', function (err, members) {
  // Array containing full list of team members for myorg/myteam
  console.log(members)
})
 
 
// get team members by team id (quicker)
ghteams.members(authOptions, 123456, function (err, members) {
  // Array containing full list of team members team #123456
  console.log(members)
})
 
 
// get teams to which the user represented by `authOptions` is a member of
ghteams.userTeams(authOptions, function (err, teams) {
  // Array cotnaining full list of teams to which the current
  // authenticated user belongs
  console.log(teams)
})

The auth data is compatible with ghauth so you can just connect them together to make a simple command-line application:

const ghauth      = require('ghauth')
    , ghteams     = require('ghteams')
    , authOptions = {
          configName : 'team-lister'
        , scopes     : [ 'user' ]
      }
 
ghauth(authOptions, function (err, authData) {
  ghteams.list(authData, 'myorg', function (err, list) {
    console.log('Teams in "myorg": ', list.map(function (t) {
      return t.name
    }).join(''))
  })
})

License

ghteams is Copyright (c) 2014 Rod Vagg @rvagg and licensed under the MIT licence. All rights not explicitly granted in the MIT license are reserved. See the included LICENSE file for more details.

Dependencies (2)

Dev Dependencies (3)

Package Sidebar

Install

npm i ghteams

Weekly Downloads

0

Version

0.3.0

License

MIT

Last publish

Collaborators

  • ralphtheninja
  • rvagg