BitcoinBot「招き猫」API

BitcoinBot「招き猫」目次に戻る

HTTP API と Realtime API

HTTP API(Hyper Text Transfar Protocol)

要求メッセージをHTTPリクエスト、応答メッセージをHTTPレスポンスという

リクエスト(要求)

別な言い方をすると注文。クライアントからサーバに送る。
よくあるのはデータが欲しいとか、データを保存してとかをリクエストする
以下リクエストの中身。

  • URL
  • メソッド
    • GET:サーバへデータの要求
    • POST:サーバへデータを送る
    • 他にもPUT、DELETEとかあるよ

レスポンス(反応)

別な言い方をすると結果。リクエスト受けたサーバがクライアントに返す。
リクエストされたデータの中身とか、登録した結果など。
以下レスポンスの中身。

  • ステータスコード(成否とかを数字で表現している)
    • 200:成功
    • 400:リクエストが不正
    • 500:サーバのエラー
  • コンテンツ(html)

 

REST API(REpresentational State Transfer)

  • RESTの4つの設計原則
    1. セッションなどの状態管理を行わない。(やり取りされる情報はそれ自体で完結して解釈することができる)
    2. 情報を操作する命令の体系が予め定義・共有されている。(HTTPのGETやPOSTメソッドなど)
    3. すべての情報は汎用的な構文で一意に識別される。(URLやURIなど)
    4. パラメータを指定して特定のURLにアクセスするとXML(またはJSON)で応答される
    5. 情報の内部に、別の情報や(その情報の別の)状態へのリンクを含めることができる。
  • リソースに対してURLが対応づけられる。=同じURLからは同じ結果が得られる(状態やセッションに依存しない

 

 

 

Realtime API websocket

wss://ws.lightstream.bitflyer.com/json-rpc

WS:は WebSocket 接続用の新しい URL スキーマです。セキュリティで保護された WebSocket 接続用の wss: もあります。これは、https: がセキュリティで保護された HTTP 接続に使用されるのと同じです。

WebSocket は双方向通信プロトコルであり、これが HTTPの大きな違いの 1 つです。 接続が確立されると、WebSocket サーバーとクライアントは、Socket のように相互にデータを送受信することができます。 WebSocket サーバーとクライアントは、WebSocket 接続を確立するためにハンドシェイクを完了する必要があります。

Realtime API は、一本の TCP 接続で複数のチャンネルを購読することができます。一度、接続を確立した後はデータ受信のたびに切断する必要はありません。切断されない限り、データは継続して配信されます。

 

Realtime API は、API キーによる認証が不要な Public Channels と、 認証が必要な Private Channels に分けられます。

Private Channel の購読には認証が必要です。

認証要求パラメーター

下記のプロパティは全て必須です。

Property Type Description
api_key String API Key
timestamp Number リクエスト時の Unix Timestamp (10 または 13 桁)
nonce String リクエストごとにランダムな文字列 (16 から 255 文字)
signature String 上記 timestamp + nonce を文字列連結したものを API Secret で HMAC SHA256 署名した Hex (16進数) 文字列

 

 

 

 

 

 

BitcoinBot「招き猫」目次に戻る