Coinbase API Plugin

Introduction

This is the most complete coinbase plugin that allows you to trade on Coinbase.
Prerequisites
You must have a Coinbase developer account to use the plugin by logging in with Coinbase account: https://developers.coinbase.com/.

How to setup

  1. Login in to your Coinbase dashboard - https://commerce.coinbase.com/dashboard
  1. After you have logged into your account, in the upper right corner, click on your logo, and in the window that appears, select the "settings" tab.
Image without caption
3. On the settings page, go to the API tab.
Image without caption
4. You must create or use APP OAuth2
Image without caption
5. Click on the text "Change" on the right side of your application and enter the redirect url address to save the app.
Note: Get the generic redirect uri and use it within your Coinbase app.
Image without caption
Image without caption
6. Copy your App ID and App secret from your app.
Image without caption
7. Paste ID and Secret in the same fields in the plugin
Image without caption
8. Get the CB-Version and paste in plugin settings with Accepted Language.
Image without caption
Image without caption
9. Done, you're set and can create your workflow with the Coinbase plugin and use actions/data calls.

Plugin Data /Action Calls

Data Calls

Coinbase OAuth2 (testing) - Users - Show current user : Get current user’s public information. To get user’s email or private information, use permissions wallet:user:email and wallet:user:read. Coinbase OAuth2 (testing) - Users - Show a user : Get any user’s public information with their ID. Coinbase OAuth2 (testing) - Users - Show authorization information : Get current user’s public information. To get user’s email or private information, use permissions wallet:user:email and wallet:user:read. Coinbase OAuth2 (testing) - Accounts - List accounts : Lists current user’s accounts to which the authentication method has access to. Coinbase OAuth2 (testing) - Accounts - Show an account : Show current user’s account. To access the primary account for a given currency, a currency string (BTC or ETH) can be used instead of the account id in the URL. Coinbase OAuth2 (testing) - Addresses - List addresses: Lists addresses for an account. Important: Addresses should be considered one time use only. Coinbase OAuth2 (testing) - Addresses - Show address : Show an individual address for an account. A regular bitcoin, bitcoin cash, litecoin or ethereum address can be used in place of address_id but the address has to be associated to the correct account. Important: Addresses should be considered one time use only. Coinbase OAuth2 (testing) - Addresses - List address’s transactions : List transactions that have been sent to a specific address. A regular bitcoin, bitcoin cash, litecoin or ethereum address can be used in place of address_id but the address has to be associated to the correct account. Coinbase OAuth2 (testing) - Transactions - List transactions: Lists account’s transactions. See transaction resource for more information. Coinbase OAuth2 (testing) - Transactions - Show a transaction : Show an individual transaction for an account. See transaction resource for more information. Coinbase OAuth2 (testing) - Buys - List buys: Lists buys for an account. Coinbase OAuth2 (testing) - Buys - Show a buy : Show an individual buy. Coinbase OAuth2 (testing) - Sells - List sells: Lists sells for an account. Coinbase OAuth2 (testing) - Sell - Show a sell : Show an individual sell. Coinbase OAuth2 (testing) - Deposit - List of deposits : Lists deposits for an account. Coinbase OAuth2 (testing) - Deposit - Show a deposit : Show an individual deposit. Coinbase OAuth2 (testing) - Payment Methods - List payment methods : Lists current user’s payment methods. Coinbase OAuth2 (testing) - Payment Methods - Show a payment method : Show current user’s payment method. Coinbase OAuth2 (testing) - Currencies: List known currencies. Currency codes will conform to the ISO 4217 standard where possible. Currencies which have or had no representation in ISO 4217 may use a custom code (e.g. BTC). Coinbase OAuth2 (testing) - Get exchange rates : Get current exchange rates. Default base currency is USD but it can be defined as any supported currency. Returned rates will define the exchange rate for one unit of the base currency. Coinbase OAuth2 (testing) - Get buy price : Get the total price to buy one bitcoin or ether. Note that exchange rates fluctuates so the price is only correct for seconds at the time. This buy price includes standard Coinbase fee (1%) but excludes any other fees including bank fees. Coinbase OAuth2 (testing) - Get sell price: Get the total price to sell one bitcoin or ether. Note that exchange rates fluctuates so the price is only correct for seconds at the time. This sell price includes standard Coinbase fee (1%) but excludes any other fees including bank fees. Coinbase OAuth2 (testing) - Get spot price : Get the current market price for bitcoin. This is usually somewhere in between the buy and sell price. Note that exchange rates fluctuate so the price is only correct for seconds at a time. Coinbase OAuth2 (testing) - Get current time : Get the API server time.

Action Calls

Coinbase OAuth2 (testing) - Users - Update current user: Modify current user and their preferences. Coinbase OAuth2 (testing) - Accounts - Set account as primary: Sets user account as primary Coinbase OAuth2 (testing) - Accounts - Update account : Modifies user’s account. Coinbase OAuth2 (testing) - Transactions - Transfer money between accounts: Transfer bitcoin, bitcoin cash, litecoin or ethereum between two of a user’s accounts. Following transfers are allowed: wallet to wallet wallet to vault Coinbase OAuth2 (testing) - Transactions - Request money : Requests money from an email address. Coinbase OAuth2 (testing) - Transactions - Complete request money (no response) : Lets the recipient of a money request complete the request by sending money to the user who requested the money. This can only be completed by the user to whom the request was made, not the user who sent the request. Coinbase OAuth2 (testing) - Transactions - Re-send request money: Lets the user resend a money request. This will notify recipient with a new email. Coinbase OAuth2 (testing) - Transactions - Cancel request money: Lets a user cancel a money request. Money requests can be canceled by the sender or the recipient. Coinbase OAuth2 (testing) - Buys - Place buy order : Buys a user-defined amount of bitcoin, bitcoin cash, litecoin or ethereum. Coinbase OAuth2 (testing) - Buys - Commit a buy: Completes a buy that is created in commit: false state. Note if the exchange rate has changed since the buy was created, this call will fail with the error “The exchange rate updated while you were waiting. The new total is shown below”. The buy’s total will also be updated. You can repeat the /commit call to accept the new values and start the buy at the new rates. Coinbase OAuth2 (testing) - Sell - Place sell order: Sells a user-defined amount of bitcoin, bitcoin cash, litecoin or ethereum. Coinbase OAuth2 (testing) - Sell - Commit a sell: Completes a sell that is created in commit: false state. Note if the exchange rate has changed since the sell was created, this call will fail with the error “The exchange rate updated while you were waiting. The new total is shown below”. Coinbase OAuth2 (testing) - Deposit - Deposit funds : Deposits user-defined amount of funds to a fiat account. Coinbase OAuth2 (testing) - Deposit - Commit a deposit : Completes a deposit that is created in commit: false state.

Workflow example

Authorization Workflow

For this plugin example, we'll show the first step to authorize the user with Coinbase in order to start working.
  1. Create a workflow action step to login users using Oauth provider signup/login
Image without caption
2. We create a workflow to update the user account id using Coinbase OAuth2 (testing) - Accounts - Update account where we send parameter name and the api path id
Image without caption
3. Done. This way we authorized a user and updated data inside his account.

Changelogs

Update 28/10/20 -
  • Updated plugin authorization and API calls

Demo to preview settings: