{"id":18840365,"url":"https://github.com/bob6664569/blockfolio-api-client","last_synced_at":"2025-07-30T02:10:28.893Z","repository":{"id":32063865,"uuid":"131488936","full_name":"bob6664569/blockfolio-api-client","owner":"bob6664569","description":"Node.JS API Client for Blockfolio","archived":false,"fork":false,"pushed_at":"2022-12-07T18:00:43.000Z","size":295,"stargazers_count":11,"open_issues_count":9,"forks_count":4,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-21T07:43:10.930Z","etag":null,"topics":["api","api-client","blockchain","blockfolio","blockfolio-api","client","cryptocurrencies","exchange","npm"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bob6664569.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"custom":"bitcoin:3LvMupMrppABtYpAQKft9Zo1qzCxR26E8X"}},"created_at":"2018-04-29T11:29:29.000Z","updated_at":"2022-02-26T23:57:07.000Z","dependencies_parsed_at":"2023-01-14T20:25:53.362Z","dependency_job_id":null,"html_url":"https://github.com/bob6664569/blockfolio-api-client","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/bob6664569/blockfolio-api-client","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bob6664569%2Fblockfolio-api-client","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bob6664569%2Fblockfolio-api-client/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bob6664569%2Fblockfolio-api-client/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bob6664569%2Fblockfolio-api-client/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bob6664569","download_url":"https://codeload.github.com/bob6664569/blockfolio-api-client/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bob6664569%2Fblockfolio-api-client/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267797627,"owners_count":24145708,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-30T02:00:09.044Z","response_time":70,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","api-client","blockchain","blockfolio","blockfolio-api","client","cryptocurrencies","exchange","npm"],"created_at":"2024-11-08T02:47:23.196Z","updated_at":"2025-07-30T02:10:28.859Z","avatar_url":"https://github.com/bob6664569.png","language":"JavaScript","funding_links":["bitcoin:3LvMupMrppABtYpAQKft9Zo1qzCxR26E8X"],"categories":[],"sub_categories":[],"readme":"# blockfolio-api-client\n\n[![Package Quality](http://npm.packagequality.com/shield/blockfolio-api-client.svg)](http://packagequality.com/#?package=blockfolio-api-client)\n[![Build Status](https://scrutinizer-ci.com/g/bob6664569/blockfolio-api-client/badges/build.png?b=master)](https://scrutinizer-ci.com/g/bob6664569/blockfolio-api-client/build-status/master)\n[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/bob6664569/blockfolio-api-client/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/bob6664569/blockfolio-api-client/?branch=master)\n[![Code Coverage](https://scrutinizer-ci.com/g/bob6664569/blockfolio-api-client/badges/coverage.png?b=master)](https://scrutinizer-ci.com/g/bob6664569/blockfolio-api-client/?branch=master)\n[![Known Vulnerabilities](https://snyk.io/test/github/bob6664569/blockfolio-api-client/badge.svg?targetFile=package.json)](https://snyk.io/test/github/bob6664569/blockfolio-api-client?targetFile=package.json)\n[![npm](https://img.shields.io/npm/v/blockfolio-api-client.svg)](https://www.npmjs.com/package/blockfolio-api-client)\n[![npm](https://img.shields.io/npm/dt/blockfolio-api-client.svg)](https://www.npmjs.com/package/blockfolio-api-client)\n\n[![Donate with Bitcoin](https://en.cryptobadges.io/badge/micro/1LhMTZWBnRq6NTwWegYKdMUAiH9LrWEvyd)](https://en.cryptobadges.io/donate/1LhMTZWBnRq6NTwWegYKdMUAiH9LrWEvyd)\n[![Donate with Litecoin](https://en.cryptobadges.io/badge/micro/LfCBBwQid43sbJ6Ta5uvJsbF5NijXrUsvy)](https://en.cryptobadges.io/donate/LfCBBwQid43sbJ6Ta5uvJsbF5NijXrUsvy)\n[![Donate with Ethereum](https://en.cryptobadges.io/badge/micro/0x4c3e4ab76bef5bd75b9e02945bec46ba90332876)](https://en.cryptobadges.io/donate/0x4c3e4ab76bef5bd75b9e02945bec46ba90332876)\n\n#### Non-official Node.JS API Client for Blockfolio\n\nDisclaimer\n----------\n\n**Use with caution: Your `DEVICE_TOKEN` is used to access all your**\n**Blockfolio datas, keep it safe and DON'T make it public.**\n\n**This module is NOT provided by Blockfolio.**\n\nGet the official Blockfolio app at [blockfolio.com](https://www.blockfolio.com/)\n\nInstallation\n------------\n\n```sh\nnpm install blockfolio-api-client --save\n```\n\nUsage\n-----\n\n  1. Require the module\n  2. Call the `init` method with your `DEVICE_TOKEN`\n  3. Once initialized, you can use the following doc and access to all\n    your Blockfolio data !\n\n## Finding your `DEVICE_TOKEN`\n\nThe `DEVICE_TOKEN` used to be found under the `Settings` menu until\nversion `1.1.14` of Blockfolio, since `1.1.15`, only a *disposable* one\nis displayed on the app.\n\nIf you want to find out what is your real `DEVICE_TOKEN`, you have\nseveral ways to do it, but we will only document here the easiest one :\n\n### Downgrading Blockfolio\n\n**Once you get your `DEVICE_TOKEN` using this method, you may then go**\n**back to the latest version without any issue, enjoy!**\n\n#### For Android\n\nYou need to allow 3rd parties packages / Installation outside the Play\nStore, then install an old version directly from the APK.\n\nThen you can easily find sources for the old official APK on the Internet (ie.\n[APK4FUN](https://www.apk4fun.com/link/263867/a/),\n[APK.Plus](https://apk.plus/download/com.blockfolio.blockfolio/33d0332717386308ed86e4dbff7e7b41/),\nand many others...)\n\nJust remove your current version, download the `1.1.14` and install it\non your device. You should now see your real `DEVICE_TOKEN` and start to\nplay with the API!\n\n#### For iPhones\n\nIf you installed Blockfolio before the 1.1.5 update, you can find the\nprevious version using iTunes.\n\nGo to the `Music` \u003e `iTunes` \u003e `iTunes Media` \u003e `Mobile Applications`\nfolder on your drive, then you should find a folder called\n`Previous Mobile Applications`. Find the `1.1.14` version of\nBlockfolio, and drag and drop it onto iTunes. Delete the app from your\nphone, and resync with iTunes. You should be back to 1.1.14 version,\ncongratulations !\n\nExamples\n--------\n\n#### Add a position, fetch it then remove it (Promises-style)\n\n```javascript\nconst Blockfolio = require(\"blockfolio-api-client\");\n\nBlockfolio\n    // Initialize the client with your DEVICE_TOKEN\n    .init(\"BLOCKFOLIO_DEVICE_TOKEN\")\n\n    // Add a position of 42 XMR/BTC on the top exchange, at the current price\n    .then(() =\u003e {\n        return Blockfolio.addPosition(\"XMR/BTC\", {\n            amount: 42,\n            note: \"I love XMR!\"\n        });\n\n    // Get the positions you got for XMR\n    }).then(() =\u003e {\n        return Blockfolio.getPositions({ pair: \"XMR\" });\n\n    // Then remove the first one (last added)\n    }).then((positions) =\u003e {\n        console.log(\"I just added a position of XMR/BTC on the top exchange, there it is:\");\n        console.log(positions[0]);\n        // Now delete this position:\n        return Blockfolio.removePosition(positions[0].positionId);\n\n    // TADA!\n    }).then(() =\u003e {\n        console.log(\"Position successfully removed!\");\n    }).catch((err) =\u003e {\n        console.error(err);\n    });\n```\n\n#### Get the list of your global holdings (old callback-style)\n\nEvery client's methods could be called with an ending *error-first callback*. In that case, the first parameter of the callback must be `null` if everything was fine, and returns the result in second parameter. If the method doesn't succeed, then the first parameter will contain the returned error, and the second will be populated with the raw body of the API's reponse.\n\n```javascript\nconst Blockfolio = require(\"blockfolio-api-client\");\n\nBlockfolio\n\n    // Initialize the client with your DEVICE_TOKEN (disableCoinCheck to skip coins sync)\n    .init(\"BLOCKFOLIO_DEVICE_TOKEN\", { disableCoinCheck: true }, (err) =\u003e {\n        if (err) { return console.error(err); }\n\n        // Call getPositions with only a callback to fetch all global positions\n        Blockfolio.getPositions((err, positions) =\u003e {\n            if (err) { return console.error(err); }\n\n            // Display list of current positions\n            positions.forEach((position) =\u003e {\n                console.log(`Got ${position.quantity} ${position.coin} for a total BTC value of ${position.holdingValueBtc}.`);\n            });\n        });\n    });\n```\n\nDocumentation\n-------------\n\n- **Portfolio \u0026 Positions**\n  - [getPortfolioSummary](#getportfoliosummarycallback): Get a summary of your global portfolio\n  - [getPositions](#getpositionspair-callback): Get information about your positions\n  - [addPosition](#addpositionpair-options-callback): Add a position (many possibilities)\n  - [removePosition](#removepositionpositionid-callback): Remove a specific position\n  - [removeCoin](#removecoinpair-callback): Remove completely a pair from your list\n  - [getHoldings](#getholdingspair-callback): Get holdings info for a specific coin\n- **Exchanges \u0026 Markets**\n  - [getPrice](#getpricepair-options-callback): Get the price of a coin (you can specify an exchange)\n  - [getExchanges](#getexchangespair-callback): Get the list of exchanges for a specific coin\n  - [getMarketDetails](#getmarketdetailspair-options-callback): Get informations about the current market of a coin\n- **Alerts**\n  - [addAlert](#addalertpair-options-callback): Add an price alert for a coin\n  - [removeAlert](#removealertalertid-callback): Remove a specific alert\n  - [getAlerts](#getalertspair-callback): Get the list of set up alerts for a coin\n  - [pauseAlert](#pausealertalertid-callback): Pause a specific alert\n  - [startAlert](#startalertalertid-callback): Restart a specific alert\n  - [pauseAllAlerts](#pauseallalertscallback): Pause all alerts on a coin\n  - [startAllAlerts](#startallalertscallback): Restart all alerts on a coin\n- **Miscellaneous**\n  - [getCoinsList](#getcoinslistcallback): Get the list of all coins available on Blockfolio\n  - [getCurrencies](#getcurrenciescallback): Get the list of available currencies\n  - [getAnnouncements](#getannouncementscallback): Get announcements from the Signal API\n  - [getStatus](#getstatuscallback): Get the system status of the API\n  - [getVersion](#getversioncallback): Get the current version number of the API\n\n### Portfolio \u0026 Positions\n\n#### getPortfolioSummary(\\[callback\\])\n\n##### Synopsis\n\nGet the summary of your portfolio\n\n##### Returns\n\nA summary object\n\n##### Example\n\n```javascript\nBlockfolio.getPortfolioSummary().then((summary) =\u003e {\n    console.log(`I'm currently owning ${summary.btcValue}btc, for a usd value of ${summary.usdValue}!`);\n}).catch((err) =\u003e { console.error(err); });\n```\n\n\n#### getPositions(\\[pair, callback\\])\n\n##### Synopsis\n\nReturn a summary of all the positions in Blockfolio if no coin pair is provided.\n\nIf  a token pair is passed, then the detailed positions regarding this specific pair are returned.\n\n##### Arguments\n\n- **pair** (String) : Token pair of the positions (ie. `\"XMR/BTC\"`)\n\n##### Returns\n\nAn array of position objects.\n\n##### Example\n\n```javascript\nBlockfolio.getPositions().then((positions) =\u003e {\n    positions.forEach((pos) =\u003e {\n        console.log(`I HODL ${pos.quantity} ${pos.coin}/${pos.base} for a value of ${pos.holdingValueFiat} ${pos.fiatSymbol}`);\n    });\n}).catch((err) =\u003e { console.error(err); });\n```\n\nOR\n\n```javascript\nBlockfolio.getPositions(\"BTC/USD\").then((positions) =\u003e {\n    // positions contains all the orders saved on Blockfolio in \"BTC/USD\"\n    positions.forEach((pos) =\u003e {\n        // Do something with each position taken\n    });\n}).catch((err) =\u003e { console.error(err); });\n```\n\n#### addPosition(pair\\[, options, callback\\])\n\n##### Synopsis\n\nAdd a new position to your portfolio.\n\n##### Arguments\n\n- **pair** (String or Pair Object) : Token pair of the position (ie. `\"XMR/BTC\"`)\n- **options** : if no option is provided, then the coin is just added to the watchlist\n  - **mode** (String - default: \"sell\") : `buy` or `sell`\n  - **exchange** (String - default to the top exchange) : Name of the exchange where the order is executed (see [`getExchanges`](#getexchangespair-callback) to get the list of available exchanges for a specific token pair)\n  - **initPrice** (Number - default to last price) : Price of token pair when the order is executed (see `getPrice` to get the latest price for a specific token pair on a specific exchange)\n  - **amount** (Number - default 0) : Quantity of tokens in the position\n  - **note** (String - default empty) : Note to add to the position in Blockfolio\n- **callback(err, result)** (Callback) : Function called when the response is received, `err` should be null if everything was fine, and `result` should contain `success` (otherwise, it will be the response body) - you can also use directly the result as a Promise\n\n##### Example\n```javascript\nBlockfolio.addPosition(\"XMR/BTC\", {\n    mode: \"buy\",\n    exchange: \"bittrex\",\n    amount: 42,\n    note: \"I really like Monero !\"\n}).then(() =\u003e {\n    console.log(\"42 XMR successfully added to your Blockfolio at the current price from Bittrex!\"\n}).catch((err) =\u003e {\n    console.error(err);\n});\n```\n\n#### removePosition(positionId[, callback\\])\n\n##### Synopsis\n\nAdd a new position to your portfolio.\n\n##### Arguments\n\n- **positionId** (String or Number) : ID of the position to remove\n\n##### Example\n```javascript\nBlockfolio.removePosition(42).then((() =\u003e {\n    console.log(\"Your position #42 has been successfuly removed!\"\n}).catch((err) =\u003e { console.error(err); });\n```\n\n#### removeCoin(pair\\[, callback\\])\n\n##### Synopsis\n\nCompletely remove a coin from your portfolio\n\n##### Arguments\n\n- **pair** (String) : Token pair to remove from the portfolio (ie. `\"XMR/BTC\"`)\n\n##### Example\n```javascript\nBlockfolio.removeCoin(\"XMR/BTC\").then(() =\u003e {\n    // XMR/BTC is now removed from your portfolio !\n}).catch((err) =\u003e { \n    // XMR/BTC could not be removed from your portfolio\n});\n```\n\n#### getHoldings(pair\\[, callback\\])\n\n##### Synopsis\n\nGet the summary of all opened positions on specified token pair\n\n##### Arguments\n\n- **pair** (String) : Token pair (ie. `\"XMR/BTC\"`)\n\n##### Returns\n\nA summary of your holdings of this coin.\n\n##### Example\n\n```javascript\nBlockfolio.getHoldings(\"XMR/BTC\").then((holdings) =\u003e {\n    console.log(holdings);\n}).catch((err) =\u003e { console.error(err); });\n```\n\n### Markets \u0026 Exchanges\n\n#### getPrice(pair\\[, options, callback\\])\n\n##### Synopsis\n\nRetrieve the last ticker price for specific token pair on specific exchange\n\n##### Arguments\n\n- **pair** (String) : Token pair (ie. `\"XMR/BTC\"`)\n- **options** : if no option is provided, then the price is returned from the top exchange\n  - **exchange** (String - default to the top exchange) : Name of the exchange where the price should be retrieved (see [`getExchanges`](#getexchangespair-callback) to get the list of available exchanges for a specific token pair)\n\n##### Returns\n\nThe price of the token in selected base (or in BTC if no base is provided).\n\n##### Example\n\n```javascript\nBlockfolio.getPrice(\"XMR/BTC\", { exchange: \"bittrex\" }).then((price) =\u003e {\n    console.log(\"Current price for XMR on Bittrex : \" + price + \"btc\");\n}).catch((err) =\u003e { console.error(err); });\n```\n\n#### getExchanges(pair\\[, callback\\])\n\n##### Synopsis\n\nReturns a list of exchanges where the specified token pair is available\n\n##### Arguments\n\n- **pair** (String) : Token pair (ie. `\"XMR/BTC\"`)\n\n##### Returns\n\nArray of available exchanges for this coin.\n\n##### Example\n\n```javascript\nBlockfolio.getExchanges(\"XMR/BTC\").then((exchanges) =\u003e {\n    console.log(\"Top exchange for XMR/BTC is : \" + exchanges[0]);\n}).catch((err) =\u003e { console.error(err); });\n```\n\n#### getMarketDetails(pair[, options, callback])\n\n##### Synopsis\n\nGet informations on the current market for specified token pair on specified exchange\n\n##### Arguments\n\n- **pair** (String) : Token pair to get market details from (ie. `\"XMR/BTC\"`)\n- **options** : if no option is provided, then the market on the top exchange is returned\n  - **exchange** (String - default to the top exchange) : Name of the exchange where from which you want to get market details (see [`getExchanges`](#getexchangespair-callback) to get the list of available exchanges for a specific token pair)\n\n##### Returns\n\nDetails of the selected market.\n\n##### Example\n```javascript\nBlockfolio.getMarketDetails(\"XMR/BTC\", { exchange: \"bittrex\"}).then((details) =\u003e {\n    console.log(details);\n}).catch((err) =\u003e { console.error(err); });\n```\n\n### Alerts\n\n#### addAlert(pair, options[, callback])\n\n##### Synopsis\n\nAdd an price alert for a coin.\n\n##### Arguments\n\n- **pair** (String) : Token pair to get set the alert (ie. `\"XMR/BTC\"`)\n- **options** : You need to provide at least **under** or **above** option to set an alert\n  - **exchange** (String - default to the top exchange) : Name of the exchange used to trigger the alert (see [`getExchanges`](#getexchangespair-callback) to get the list of available exchanges for a specific token pair)\n  - **above** (Number) : Top boundary to trigger the alert\n  - **below** (Number) : Bottom boundary to trigger the alert\n  - **persistent** (Boolean) : Set to `true`, the alert will be triggered each time the price crosses a boundary\n\n##### Example\n\n```javascript\nBlockfolio.addAlert(\"XMR/BTC\", { \n    exchange: \"bittrex\",\n    above: 0.03\n}).then(() =\u003e {\n    // Alert successfuly set !\n}).catch((err) =\u003e { console.error(err); });\n```\n\n#### removeAlert(alertID[, callback])\n\n##### Synopsis\n\nRemoves an existing alert from your portfolio.\n\n##### Arguments\n\n- **alertId** (Number) : ID of the alert to be removed\n\n##### Examples\n\n```javascript\nBlockfolio.removeAlert(42).then(() =\u003e {\n    // Alert successfuly removed !\n}).catch((err) =\u003e { console.error(err); });\n```\n\n#### getAlerts(pair[, callback])\n\n##### Synopsis\n\nRetrieve the list of current alerts set for a coin\n\n##### Arguments\n\n- **pair** (String) : Token pair to get set the alert (ie. `\"XMR/BTC\"`)\n\n##### Returns\n\nAn array of alert objects.\n\n##### Example\n\n```javascript\nBlockfolio.getAlerts(\"XMR/BTC\").then((alerts) =\u003e {\n    alerts.forEach((alert) =\u003e {\n        console.log(`Alert set for ${alert.coin}/${alert.base} is ${alert.alertStatus}!`);\n    });\n}).catch((err) =\u003e { console.error(err); });\n```\n\n#### pauseAlert(alertId[, callback])\n\n##### Synopsis\n\nPause the specified alert to block it from sending notifications temporarily.\n\n##### Arguments\n\n- **alertID** (Number) : ID of the existing alert to pause\n\nExample\n\n```javascript\nBlockfolio.pauseAlert(42).then(() =\u003e {\n\t// Alert 42 is now muted\n}).catch((err) =\u003e { console.error(err); });\n```\n\n#### startAlert(alertId[, callback])\n\n##### Synopsis\n\nRestart the specified alert to allow it to send notifications again.\n\n##### Arguments\n\n- **alertID** (Number) : ID of the existing alert to restart\n\nExample\n\n```javascript\nBlockfolio.startAlert(42).then(() =\u003e {\n\t// Alert 42 is now retarted and will notify you again if triggered!\n}).catch((err) =\u003e { console.error(err); });\n```\n\n#### pauseAllAlerts([callback])\n\n##### Synopsis\n\nPause all alerts and block then from sending notifications temporarily.\n\n##### Example\n\n```javascript\nBlockfolio.pauseAllAlerts().then(() =\u003e {\n\t// ALL Alerts are muted\n}).catch((err) =\u003e { console.error(err); });\n```\n\n#### startAllAlerts([callback])\n\n##### Synopsis\n\nRestart all alerts to allow them to send notifications again.\n\n##### Example\n\n```javascript\nBlockfolio.pauseAllAlerts().then(() =\u003e {\n\t// ALL Alerts are retarted and will send you some notification if triggered!\n}).catch((err) =\u003e { console.error(err); });\n```\n\n### Miscellaneous\n\n#### getCoinsList(\\[callback\\])\n\n##### Synopsis\n\nGet the whole list of coins supported by Blockfolio\n\n##### Returns\n\nAn array of coin objects.\n\n##### Example\n\n```javascript\nBlockfolio.getCoinsList().then((coins) =\u003e {\n    console.log(coins);\n}).catch((err) =\u003e { console.error(err); });\n```\n\n#### getCurrencies(\\[callback\\])\n\n##### Synopsis\n\nGet the whole list of supported currencies.\n\n##### Returns\n\nArray of currency objects.\n\n##### Example\n\n```javascript\nBlockfolio.getCurrencies().then((currencies) =\u003e {\n    currencies.forEach(currency =\u003e {\n        console.log(`${currency.fullName} (${currency.symbol}) is abbreviated ${currency.currency}.`);\n    });\n}).catch((err) =\u003e { console.error(err); });\n```\n\n#### getAnnouncements(\\[callback\\])\n\n##### Synopsis\n\nGet the last announcements from the new Signal API.\n\n##### Returns\n\nArray of announcements.\n\n##### Example\n\n```javascript\nBlockfolio.getAnnouncements().then((announcements) =\u003e {\n    console.log(announcements);\n}).catch((err) =\u003e { console.error(err); });\n```\n\n#### getStatus(\\[callback\\])\n\n##### Synopsis\n\nGet an status message from Blockfolio. Without any issues, this message is empty.\n\n##### Returns\n\nEmpty string or status message.\n\n##### Example\n\n```javascript\nBlockfolio.getStatus().then((status) =\u003e {\n    console.log(status);\n}).catch((err) =\u003e { console.error(err); });\n```\n\n#### getVersion(\\[callback\\])\n\n##### Synopsis\n\nGet the version number of the Blockfolio API.\n\n##### Returns\n\nString containing the version number of the API.\n\n##### Example\n\n```javascript\nBlockfolio.getVersion().then((version) =\u003e {\n    console.log(`Blockfolio API ${version}.`);\n}).catch((err) =\u003e { console.error(err); });\n```\n\nAuthor\n------\n\n**Johan Massin**  - [bob6664569](https://github.com/bob6664569)\n\nSee also the list of [contributors](https://github.com/bob6664569/blockfolio-api-client/graphs/contributors) who participated in this project.\n\nLicense\n-------\n\nDistributed under the MIT License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbob6664569%2Fblockfolio-api-client","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbob6664569%2Fblockfolio-api-client","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbob6664569%2Fblockfolio-api-client/lists"}