認証

認証について

PrivateAPIを利用する場合は、リクエスト毎に一意のJSON Webトークン、 そしてAPIトークンとAPIシークレットの2つが必要です。
また ペイロード には次のパラメータが含まれている必要があります。
Parameter
Description
Example
path
APIリクエストの完全パスとクエリ
/orders?product_id=1
nonce
リクエスト毎に生成される一意のランダム数値。 リクエスト時はms単位のタイムスタンプが推奨されます。
1459142524488
token_id
APIトークンのID
12345
ペイロードは HMAC-SHA256(HS256)を使用したAPIシークレットで署名され、X-Quoine-Auth リクエストヘッダーを通してLiquid APIに渡す必要があります。

認証の例

Ruby
require 'uri'
require 'net/http'
require 'time'
require 'jwt'
uri = URI.parse("https://api.liquid.com")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
token_id = 'YOUR_API_TOKEN_ID'
user_secret = 'YOUR_API_SECRET'
path = '/orders?product_id=1'
auth_payload = {
path: path,
nonce: DateTime.now.strftime('%Q'),
token_id: token_id
}
signature = JWT.encode(auth_payload, user_secret, 'HS256')
request = Net::HTTP::Get.new(path)
request.add_field('X-Quoine-API-Version', '2')
request.add_field('X-Quoine-Auth', signature)
request.add_field('Content-Type', 'application/json')
response = http.request(request)

API バージョンヘッダー

現在のLiquid APIはバージョン2です。リクエストにはそれぞれX-Quoine-API-Version をヘッダーを含めてください。
X-Quoine-API-Version: 2