Introduction

The BLOCKSDK API is a suite of high-performance RESTful JSON endpoints specifically designed to meet the mission-critical needs of application developers, data scientists, and enterprise business pl

Quick Start Guide

For developers looking to get started with the BLOCKSDK API, here are a few simple steps to make the first call to the API.

  1. Register for a free developer portal account. You can register at blocksdk.com.

  2. Copy the API token. After signing up, you will be directed to the user main page after logging in. Copy the API token.

  3. Use the key to make a test call. You can use the code examples provided below to make test calls in the programming language of your choice. This example imports bitcoin blockchain data.

    Replace the API token in the sample code with your own

  4. Implement your application. Now that you have verified that your API keys are working, read the rest of this API reference to familiarize yourself with the API and start building your application!

CURL
PHP
Node JS
Python
CURL
curl -H "X-API-KEY: YOU_API_KEY" -H "Accept: application/json" -G https://api.blocksdk.com/v1/btc/block
PHP
<?php
use BlockSDK;
$blockSDK = new BlockSDK("YOU_TOKEN");
$btcClient = $blockSDK->createBitcoin();
//or
$btcClient = BlockSDK::createBitcoin("YOU_TOKEN");
$blockchain = $btcClient->getBlockChain();
print_r($blockchain);
Node JS
const BlockSDK = require('blocksdk');
var blockSDK = new BlockSDK("YOU TOKEN");
var btcClient = blockSDK.createBitcoin();
var blockchain = btcClient.getBlockChain();
console.log(blockchain);
Python
import BlockSDK
blockSDK = BlockSDK("YOU TOKEN")
btcClient = blockSDK.createBitcoin()
blockchain = btcClient.getBlockChain()
print(blockchain)

PHP SDK

Java SDK

Go SDK

Ruby SDK

Authentication

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Acquiring an API Key

All HTTP requests to BLOCKSDK must be verified with an API key. If you don't have an API key yet, visit the BLOCKSDK portal to register.

Using Your API Key

Any server-side programming language capable of making HTTP requests against the BLOCKSDK API can be used. All requests must be directed to the domain https://api.blocksdk.com You can provide an API key to a REST API call in one of two ways

Preferred method: X-API-KEY via custom header

CURL
CURL
curl -H "X-API-KEY: YOU_API_KEY" -H "Accept: application/json" -G https://api.blocksdk.com/v1/btc/block

Convenient way: api_token via query string parameter

CURL
CURL
curl -H "Accept: application/json" -G https://api.blocksdk.com/v1/btc/block?api_token=YOU_TOKEN

API Key Usage Credits

Most API plans include a daily limit on the number of data calls that can be made. This usage increases to 1:1 for successful (HTTP status 200, 201) data calls made with keys with the exception of the following API: Usage statistics endpoints and error responses are not included in this limit.

Endpoint Overview

The BLOCKSDK API is divided into 7 top-level categories.

Endpoint Category

Description

/btc/*

The endpoint of returning and generating bitcoin-related data such as bitcoin's blockchain information, address information, transaction information, wallet creation, and address generation.

/bch/*

Bitcoin Cash Blockchain information, address information, transaction information, wallet creation, address generation, etc. The endpoint that returns and generates Bitcoin Cash related data.

/ltc/*

Litecoin Blockchain information, address information, transaction information, wallet creation, address generation, etc. The end point for returning and generating Litecoin related data.

/dash/*

Dash Blockchain information, address information, transaction information, wallet creation, address generation, etc. Dash-related data returned and generated endpoint

/eth/*

Ethereum block chain information, address information, transaction information, wallet creation, address generation, Ethereum-related data such as Ethereum ERC20 are returned and generated.

/xmr/*

Monero Blockchain information, address information, transaction information, wallet creation, address generation, etc. End point for returning and generating Monero related data.

/hook/*

Endpoint returning webhook data

Errors and Rate Limits

API Request Throttling

Use of the BLOCKSDK API is subject to API call rate limiting or "request throttling". This is the number of HTTP calls that can be made simultaneously or within the same minute with your API Key before receiving an HTTP 429 "Too Many Requests" throttling error. This limit scales with the usage tier and resets every 60 seconds.

response headers

Retry-After : It tells you how long (in seconds) you have to wait before trying again

X-RateLimit-Limit: Maximum number of requests allowed in 60 seconds

X-RateLimit-Remaining:Number of requests remaining in the current time

HTTP/1.1 200 OK
... other headers here ...
X-RateLimit-Limit: 180
X-RateLimit-Remaining: 179
HTTP/1.1 429 OK
... other headers here ...
Retry-After: 60
X-RateLimit-Limit: 180
X-RateLimit-Remaining: 0

HTTP Status Codes

The API uses standard HTTP status codes to indicate the success or failure of an API call.

400 (Bad Request) The server could not process the request, likely due to an invalid argument.

401 (Unauthorized) Your request lacks valid authentication credentials, likely an issue with your API Key.

404 (Not Found) There is no data

429 (Too Many Requests) The API Key's rate limit was exceeded; consider slowing down your API Request frequency if this is an HTTP request throttling error. Consider upgrading your service plan if you have reached your monthly API call credit limit for the day/month.

500 (Internal Server Error) An unexpected server issue was encountered.

Error Response Codes

HTTP Status

Error Code

Error Message

401

1001 [API_KEY_INVALID]

This API Key is invalid.

401

1002 [API_KEY_MISSING]

API key missing.

403

1004 [API_KEY_DISABLED]

This API Key has been disabled. Please contact support.

429

1005 [API_KEY_PLAN_MINUTE_RATE_LIMIT_REACHED]

You've exceeded your API Key's HTTP request rate limit. Rate limits reset every minute.

429

1006 [API_KEY_PLAN_DAILY_RATE_LIMIT_REACHED]

You've exceeded your API Key's daily rate limit.