npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

buddyworksapi

v1.0.11

Published

Buddy Works APIs Client Library for Node.js

Downloads

30

Readme

Buddy Works APIs Node.js Client

Official Node.js client library for Buddy Continuous Integration tool.

buddy pipeline

Installation

This library is distributed on npm. In order to add it as a dependency, run the following command:

$ npm install buddyworksapi --save

Usage of OAauth

First, you need to add the application in your Buddy ID.

You will then obtain clientId & clientSecret to execute this code:

var buddyworksapi = require('buddyworksapi');
buddyworksapi.useOAuth(clientId, clientSecret);

Next you can get AuthorizeUrl:

buddyworksapi.oauth.getAuthorizeUrl(scopes, state, redirectUrl);

scopes are arrays of strings - help

state should be an unguessable random string. It is used to protect against cross-site request forgery attacks.

redirectUrl is optional more

You should redirect the user to the created URL. Upon authorization, the user should get back to your page (configured in application or passed to the method)

query params will get you the code & state. State should be the same as you passed before. Code is used in next step to exchange for access token:

buddyworksapi.oauth.getAccessToken(code, redirectUrl, function(err, json){
	if (err) console.error(err);
	else{
		console.log(json.access_token);//token used to authenticate requests in API.
		console.log(json.expires_in);//time in seconds how long the token will be valid.
	}
});

Usage of direct tokens

You can also use API Tokens.

That functionality is provided for testing purposes and will only work for individual tokens generated per user.

All requests will be called on behalf of the user who provided token.

Numerous API client instances

If you need more instances of the client API you can create them with the following code:

var buddyworksapi = require('buddyworksapi');
var buddyworksapi2 = buddyworksapi.create();

API's

For detailed info what send for which method, error codes, rates & limits - check Buddy documentation

Profile

Add email

buddyworksapi.profile.addEmail(accessToken, email, function(err, json){});

Get emails

buddyworksapi.profile.getEmails(accessToken, function(err, json){});

Delete email

buddyworksapi.profile.deleteEmail(accessToken, email, function(err, json){});

Get profile

buddyworksapi.profile.getProfile(accessToken, function(err, json){});

Add ssh key

buddyworksapi.profile.addSshKey(accessToken, data, function(err, json){});

Delete ssh key

buddyworksapi.profile.deleteSshKey(accessToken, keyId, function(err, json){});

Get ssh key

buddyworksapi.profile.getSshKey(accessToken, keyId, function(err, json){});

Get ssh keys

buddyworksapi.profile.getSshKeys(accessToken, function(err, json){});

Integrations

Get integrations list

buddyworksapi.integrations.getList(accessToken, domain, filters, function(err, json){});

Get integration

buddyworksapi.integrations.getIntegration(accessToken, domain, integrationHash, function(err, json){});

Add integration

buddyworksapi.integrations.addIntegration(accessToken, domain, data, function(err, json){});

Edit integration

buddyworksapi.integrations.editIntegration(accessToken, domain, integrationHash, data, function(err, json){});

Delete integration

buddyworksapi.integrations.deleteIntegration(accessToken, domain, integrationHash, function(err, json){});

Workspaces

Workspaces list

buddyworksapi.workspaces.getList(accessToken, function(err, json){});

Workspace details

buddyworksapi.workspaces.getWorkspace(accessToken, domain, function(err, json){});

Projects

Get projects list

buddyworksapi.projects.getList(accessToken, domain, filters, function(err, json){});

Add project

buddyworksapi.projects.addProject(accessToken, domain, data, function(err, json){});

Get project

buddyworksapi.projects.getProject(accessToken, domain, projectName, function(err, json){});

Edit project

buddyworksapi.projects.editProject(accessToken, domain, projectName, data, function(err, json){});

Delete project

buddyworksapi.projects.deleteProject(accessToken, domain, projectName, function(err, json){});

Get project members

buddyworksapi.projects.getProjectMembers(accessToken, domain, projectName, filters, function(err, json){});

Get project members

buddyworksapi.projects.addProjectMember(accessToken, domain, projectName, data, function(err, json){});

Get project member

buddyworksapi.projects.getProjectMember(accessToken, domain, projectName, memberId, function(err, json){});

Edit project member

buddyworksapi.projects.editProjectMember(accessToken, domain, projectName, memberId, permissionId, function(err, json){});

Delete project member

buddyworksapi.projects.deleteProjectMember(accessToken, domain, projectName, memberId, function(err, json){});

Workspace members

Get workspace members

buddyworksapi.members.getList(accessToken, domain, filters, function(err, json){});

Add workspace member

buddyworksapi.members.addMember(accessToken, domain, email, function(err, json){});

Get workspace member

buddyworksapi.members.getMember(accessToken, domain, memberId, function(err, json){});

Set member as administrator

buddyworksapi.members.updateAdministrator(accessToken, domain, memberId, isAdmin, function(err, json){});

Delete workspace member

buddyworksapi.members.deleteMember(accessToken, domain, memberId, function(err, json){});

Get member projects

buddyworksapi.members.getMemberProjects(accessToken, domain, memberId, filters, function(err, json){});

Groups

Get groups list

buddyworksapi.groups.getList(accessToken, domain, function(err, json){});

Add group

buddyworksapi.groups.addGroup(accessToken, domain, data, function(err, json){});

Get group

buddyworksapi.groups.getGroup(accessToken, domain, groupId, function(err, json){});

Edit group

buddyworksapi.groups.editGroup(accessToken, domain, groupId, data, function(err, json){});

Delete group

buddyworksapi.groups.deleteGroup(accessToken, domain, groupId, function(err, json){});

Get group members

buddyworksapi.groups.getGroupMembers(accessToken, domain, groupId, function(err, json){});

Add group member

buddyworksapi.groups.addGroupMember(accessToken, domain, groupId, memberId, function(err, json){});

Get group member

buddyworksapi.groups.getGroupMember(accessToken, domain, groupId, memberId, function(err, json){});

Delete group member

buddyworksapi.groups.deleteGroupMember(accessToken, domain, groupId, memberId, function(err, json){});

Permissions

Get permissions list

buddyworksapi.permissions.getList(accessToken, domain, function(err, json){});

Add permission

buddyworksapi.permissions.addPermission(accessToken, domain, data, function(err, json){});

Get permission

buddyworksapi.permissions.getPermission(accessToken, domain, permissionId, function(err, json){});

Edit permission

buddyworksapi.permissions.editPermission(accessToken, domain, permissionId, data, function(err, json){});

Delete permission

buddyworksapi.permissions.deletePermission(accessToken, domain, permissionId, function(err, json){});

Webhooks

Delete permission

buddyworksapi.webhooks.getList(accessToken, domain, function(err, json){});

Add webhook

buddyworksapi.webhooks.addWebhook(accessToken, domain, data, function(err, json){});

Get webhook

buddyworksapi.webhooks.getWebhook(accessToken, domain, webhookId, function(err, json){});

Edit webhook

buddyworksapi.webhooks.editWebhook(accessToken, domain, webhookId, data, function(err, json){});

Delete webhook

buddyworksapi.webhooks.deleteWebhook(accessToken, domain, webhookId, function(err, json){});

Source

Get contents

buddyworksapi.source.getContents(accessToken, domain, projectName, path, filters, function(err, json){});

Add file

buddyworksapi.source.addFile(accessToken, domain, projectName, data, function(err, json){});

Edit file

buddyworksapi.source.editFile(accessToken, domain, projectName, path, data, function(err, json){});

Delete file

buddyworksapi.source.deleteFile(accessToken, domain, projectName, path, data, function(err, json){});

Commits

Get commits

buddyworksapi.commits.getList(accessToken, domain, projectName, filters, function(err, json){});

Get commit

buddyworksapi.commits.getCommit(accessToken, domain, projectName, revision, function(err, json){});

Get compare

buddyworksapi.commits.getCompare(accessToken, domain, projectName, base, head, filters, function(err, json){});

Tags

Get tags

buddyworksapi.tags.getList(accessToken, domain, projectName, function(err, json){});

Get tag

buddyworksapi.tags.getTag(accessToken, domain, projectName, name, function(err, json){});

Branches

Get branches

buddyworksapi.branches.getList(accessToken, domain, projectName, function(err, json){});

Get branch revision

buddyworksapi.branches.getRevision(accessToken, domain, projectName, name, function(err, json){});

Add branch

buddyworksapi.branches.addBranch(accessToken, domain, projectName, data, function(err, json){});

Delete branch

buddyworksapi.branches.deleteBranch(accessToken, domain, projectName, name, force, function(err, json){});

Pipelines

Get pipelines

buddyworksapi.pipelines.getList(accessToken, domain, projectName, filters, function(err, json){});

Add pipeline

buddyworksapi.pipelines.addPipeline(accessToken, domain, projectName, data, function(err, json){});

Get pipeline

buddyworksapi.pipelines.getPipeline(accessToken, domain, projectName, pipelineId, function(err, json){});

Edit pipeline

buddyworksapi.pipelines.editPipeline(accessToken, domain, projectName, pipelineId, data, function(err, json){});

Delete pipeline

buddyworksapi.pipelines.deletePipeline(accessToken, domain, projectName, pipelineId, function(err, json){});

Get pipeline actions

buddyworksapi.pipelines.getPipelineActions(accessToken, domain, projectName, pipelineId, filters, function(err, json){});

Add pipeline action

buddyworksapi.pipelines.addPipelineAction(accessToken, domain, projectName, pipelineId, data, function(err, json){});

Get pipeline action

buddyworksapi.pipelines.getPipelineAction(accessToken, domain, projectName, pipelineId, actionId, function(err, json){});

Edit pipeline action

buddyworksapi.pipelines.editPipelineAction(accessToken, domain, projectName, pipelineId, actionId, data, function(err, json){});

Delete pipeline action

buddyworksapi.pipelines.deletePipelineAction(accessToken, domain, projectName, pipelineId, actionId, function(err, json){});

Executions

Get executions

buddyworksapi.executions.getList(accessToken, domain, projectName, pipelineId, filters, function(err, json){});

Run execution

buddyworksapi.executions.runExecution(accessToken, domain, projectName, pipelineId, data, function(err, json){});

Get execution

buddyworksapi.executions.getExecution(accessToken, domain, projectName, pipelineId, executionId, function(err, json){});

Cancel execution

buddyworksapi.executions.cancelExecution(accessToken, domain, projectName, pipelineId, executionId, function(err, json){});

Retry execution

buddyworksapi.executions.retryExecution(accessToken, domain, projectName, pipelineId, executionId, function(err, json){});