Giter Site home page Giter Site logo

bitgojs-1's Introduction

BitGoJS

BitGo JavaScript SDK

The BitGo Platform and SDK makes it easy to build multi-signature Bitcoin applications today. The SDK is fully integrated with the BitGo co-signing service for managing all of your BitGo wallets.

Included in the SDK are examples for how to use the API to manage your multi-signature wallets.

Please join us on our Slack channel if you have questions or comments about this API.

Known Vulnerabilities Build Status

Installation

Please make sure you are running at least Node version 6 (6.9.5 recommended) and NPM version 3 (3.10.10 recommended). We recommend using nvm, the Node Version Manager, for setting your Node version.

git clone https://github.com/BitGo/BitGoJS

cd BitGoJS

npm install

Full Documentation

View our Javascript SDK Documentation.

Example Usage

Initialize SDK

Create an access token by logging into your bitgo account, going to the API access tab in the settings area and making a developer token.

var BitGo = require('bitgo');
var bitgo = new BitGo.BitGo({ accessToken: ACCESS_TOKEN }); // defaults to testnet. add env: 'prod' if you want to go against mainnet
bitgo.session({}, function(err,res) {
  console.dir(err);
  console.dir(res);
});

Create Wallet

var wallet;
var params = { 
  "passphrase": "replaceme", 
  "label": "firstwallet"
}
bitgo.wallets().createWalletWithKeychains(params, function(err, result) {
  wallet = result.wallet; 
  console.dir(wallet.wallet);
  console.log("Locally created keychain: " + result.userKeychain.encryptedXprv);
});

Create new address

wallet.createAddress({ "chain": 0 }, function callback(err, address) {
    console.dir(address);
});

View transactions

wallet.transactions({}, function callback(err, transactions) {
    console.dir(transactions);
});

Send coins

wallet.sendCoins({ 
  address: "2NEe9QhKPB2gnQLB3hffMuDcoFKZFjHYJYx", 
  amount: 0.01 * 1e8, 
  walletPassphrase:  "replaceme" 
}, function(err, result) {
    console.dir(result);
});

More examples

Further demos and examples can be found in the example directory and documented here.

BitGo Express Local Signing Server (REST API)

Suitable for developers working in a language without an official BitGo SDK.

BitGo Express runs as a service in your own datacenter, and handles the client-side operations involving your own keys, such as partially signing transactions before submitting to BitGo. This ensures your keys never leave your network, and are not seen by BitGo. BitGo Express can also proxy the standard BitGo REST APIs, providing a unified interface to BitGo through a single REST API.

bin/bitgo-express [-h] [-v] [-p PORT] [-b BIND] [-e ENV] [-d] [-l LOGFILEPATH] [-k KEYPATH] [-c CRTPATH]

For a full tutorial of how to install, authenticate, and use Bitgo Express, see the Bitgo Express Quickstart

Compile

Creates a single file of javascript for inclusion in your applications.

npm run-script compile

npm run-script compile-dbg

bitgojs-1's People

Contributors

bencxr avatar mbelshe avatar bpdavenport avatar barathcj avatar masonicgit avatar kkennis avatar capnmigraine avatar robertbaron avatar jlopp avatar johnoliverdriscoll avatar masonborda avatar olalonde avatar ottoallmendinger avatar you-fail-me avatar kanzure avatar btcmattress avatar fanatid avatar trapp avatar junderw avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.