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.

Package Sidebar

Install

npm i ghteams

Weekly Downloads

1

Version

0.3.0

License

MIT

Last publish

Collaborators

  • ralphtheninja
  • rvagg