Manage Bitcoin with the Coinbase API

By  on  

One of my biggest recent regrets was not pouring money into bitcoin when Kim Dotcom said we should; this was approximately 18 months ago when the bitcoin value was $170.  Today bitcoin value has topped $1000 which is why I'm kicking myself so hard.  I buy my bitcoin through Coinbase, a very user friendly, reliably vendor that makes bitcoin seem less scary to anyone that doesn't know the blockchain up and down.

In the past I've detailed a few ways to get the bitcoin value at any given time.  I wanted to write a short post bringing to light that Coinbase also has an awesome API for buying, selling, sending, and managing bitcoin via Node.js:

var Client = require('coinbase').Client;

// API capabilities for your account must be enabled
// within the Coinbase account settings
var client = new Client({
    'apiKey': '#####',
    'apiSecret': '#####'
});

// Get accounts and their bitcoin balance
client.getAccounts({}, (err, accounts) => {
  accounts.forEach(account => {
      console.log(`${account.name}: ${account.balance.amount} ${account.balance.currency}`);
      // My Wallet: 12.03 BTC
  });
});

// Get the current bitcoin buy price:
client.getBuyPrice({'currencyPair': 'BTC-USD'}, (err, info) => {
  console.log(`Buy Price: ${info.data.amount}`);
});

// Selling bitcoin
account.sell({ amount: "1", currency: "BTC" }, (err, transaction) => {
  console.log(`Transaction ID is: ${transaction.id}`);
});

// Sending bitcoin
account.requestMoney({
  "to": "someuser@outthere.com",
  "amount": "1.001",
  "currency": "BTC",
  "description": "This is payment for ...."
}, (err, transaction) => {
  console.log(`Transaction ID is: ${transaction.id}`);
});

There are a lot of cryptic sites out there for bitcoin and alt-coin trading; most of them are probably legit but I guess I enjoy the piece of mind provided by a professional site with lots of awesome tools and loads of security features.  The fact that Coinbase also provides an excellent API is another reason I'm sticking with them.

Kim Dotcom recently said he sees bitcoin at the $2000 level by the end of 2017 and $10000 by the end of 2020.  That would be ... mental.  Anyways, I get asked who I use quite a bit and, as you can see, I really love Coinbase.  Happy mining!

Recent Features

  • By
    Responsive and Infinitely Scalable JS Animations

    Back in late 2012 it was not easy to find open source projects using requestAnimationFrame() - this is the hook that allows Javascript code to synchronize with a web browser's native paint loop. Animations using this method can run at 60 fps and deliver fantastic...

  • By
    LightFace:  Facebook Lightbox for MooTools

    One of the web components I've always loved has been Facebook's modal dialog.  This "lightbox" isn't like others:  no dark overlay, no obnoxious animating to size, and it doesn't try to do "too much."  With Facebook's dialog in mind, I've created LightFace:  a Facebook lightbox...

Incredible Demos

  • By
    HTML5 Context Menus

    One of the hidden gems within the HTML5 spec is context menus. The HTML5 context menu spec allows developers to create custom context menus for given blocks within simple menu and menuitem elements. The menu information lives right within the page so...

  • By
    JavaScript Copy to Clipboard

    "Copy to clipboard" functionality is something we all use dozens of times daily but the client side API around it has always been lacking; some older APIs and browser implementations required a scary "are you sure?"-style dialog before the content would be copied to clipboard -- not great for...

Discussion

  1. Anonymous

    well those predictions were exceeded quite a bit this week! hope you still have those 12btc and i wish i jumped on the band wagon prior to this week.

    thanks for code samples !

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!