PowerShellでCoinExchange.ioの通貨一覧情報を取得する・getcurrencies †CoinExchange.io のgetcurrencies APIをPowerShellで呼び出す方法の記事になります。 CoinExchange.io
へのリンク 追記 †
関連資料・記事 †
getcurrencies APIの仕様 †以下、CoinExchange.io API v1 Reference からの抜粋です。 Get Currencies This endpoint retrieves all enabled currencies / assets. HTTP Request GET https://www.coinexchange.io/api/v1/getcurrencies 'getcurrencies’ JSON return: { "success":"1", "request":"\/api\/v1\/getcurrencies", "message":"","result": [ {"CurrencyID":"1","Name":"Bitcoin","TickerCode":"BTC","WalletStatus":"online","Type":"currency"}, {"CurrencyID":"2","Name":"Darkcoin","TickerCode":"DRK","WalletStatus":"offline","Type":"currency"}, {"CurrencyID":"3","Name":"Ethereum","TickerCode":"ETH","WalletStatus":"online","Type":"currency"} ] } getcurrencies API をブラウザでアクセスしてみた †getcurrencies API をFirefoxでアクセスしてみました。 PowerShellのInvoke-RestMethodを使用してAPIを呼び出してみる †PowerShellのInvoke-RestMethodコマンドレットを使用して、getcurrencies APIを呼び出し操作してみます。 セキュリティプロトコルをTLS1.2に変更します。(2018/5/31時点、TLS1.2を指定しないと動作しなくなったので追記) PS C:\> [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 PS C:\> $currencies = Invoke-RestMethod -UseBasicParsing "https://www.coinexchange.io/api/v1/getcurrencies" PS C:\> $currencies success request message result ------- ------- ------- ------ 1 /api/v1/getcurrencies {@{CurrencyID=44; Name=Elite; TickerCode=1337; WalletStatus=online; Type=currency}, @{CurrencyID... Invoke-RestMethodコマンドレットでgetcurrencies APIを呼び出すことにより、値が取得できます。 PS C:\> $currencies.result | Format-Table CurrencyID Name TickerCode WalletStatus Type ---------- ---- ---------- ------------ ---- 44 Elite 1337 online currency 218 Ganjacoin 420G offline currency 296 SixEleven 611 online currency 404 Adcoin ACC online currency 527 Accelerator ACCL online ethereum_asset <省略> 以下、Bitcoinのcurrency情報を確認する手順です。 PS C:\> $currencies.result | Where-Object { $_.Name -eq "bitcoin" } CurrencyID : 1 Name : Bitcoin TickerCode : BTC WalletStatus : online Type : currency HTTPステータスなどを一緒に取得したい場合はInvoke-WebRequestが便利! †上記では、Invoke-RestMethodにてJSONをPowerShellで扱いやすい状態に変換してくれますが、
Webの応答を読み取っています。(Waiting for response)を非表示にする方法 †上記のコマンドレットを実行すると、APIサーバとのやり取りのプログレスメッセージが表示されます。 これを非表示にしたい場合は、以下のようにしてください。 非表示にするには、$ProgressPreferenceにSilentlyContinueを設定します。 PS C:\> $ProgressPreference Continue 非表示にするには、以下のように変更します。 PS C:\> $ProgressPreference = "SilentlyContinue" 以上、PowerShellを使って、CoinExchange.io
の getcurrenciesを使って CoinExchange.io
へのリンク |