KuCoin APIキーアップグレード操作ガイド

APIのセキュリティを強化するために、KuCoinはAPIキーをアップグレードしました。現在バージョンは2.0にアップグレードされています。2021年5月13日07:00:00(UTC)までにAPIをアップグレードし、キーアカウントマネージャーにアップグレードの進捗をフィードバックしてください 。アップグレード方法はバージョン1.0のAPIキーを削除>バージョン2.0の新しいAPIキーを作成API2.0を通して検証してください。   

 

前提: 

KuCoin ウェブサイト(PCのみ)、 に入り API作成ページで、ご自身の口座にV1 APIキーがあるかどうかを確認します。もしそれが存在せず、一度も削除されていなければ、これ以上のアップグレード操作をすることなく、直接そのページを終了することができます。 

 

そうでなければ、お客様の口座に2つの状況が存在する事になります。 

  1. V1のAPIキーは、V2のAPIキーと同様に存在します。事故防止のため、以下の手順でアップグレードを実施してください。
  2. V1のAPIキーしか存在しませんので、以下の手順でアップグレードを完了させてください。

 

ステップ 1 

 KuCoin のウェブページ(PCのみ)に入り、V1バージョンのAPIキーを削除し、V2バージョンのAPIキーを作成します。(現在デフォルトでV2キーしか作成できません)。 

API2.png

ステップ 2:

V2バージョンのAPIキーを作成すると、以下の3つの情報が表示されます。

  • キー
  • シークレット
  • パスフレーズ

キーとシークレットはKuCoinによって生成、提供され、パスフレーズは KuCoin APIを作成する際に使用したものを指します。これら3つの情報は、一度 紛失 すると復元できないので注意してください。これらの情報を紛失した場合は、新しいAPIキーを作成してください。 

 

APIキーのパーミッション  

 KuCoin公式サイトでAPIのパーミッションを管理する事ができます。パーミッションは以下の通りです。 

 

一般 - 一般 - キーとなる一般的なパーミッションが許可されます。これには、ほとんどの GET エンドポイントが含まれます。 

取引 - 注文を作成するためのキーを許可します。 

資金移動 - キーに資金移動(入出金を含む)を許可します。サブ口座にはこの権限がない事に注意してください。APIキーでの出金は、2段階認証をパスします。 

 

特定のルートに必要なAPIキーの権限については、以下のドキュメントを参照してください。 

 

ステップ3: 

 KuCoin 公式が管理しているSDKをご利用の場合は、SDKを最新版に更新し、手順2の3つの情報を入れ替えて、直接プログラムを再開してください。  

これでAPIキーのアップグレード作業は完了です。 

SDK: https://github.com/Kucoin 

 

ステップ4 

 KuCoin 公式が提供しているSDKを使用していない場合は、以下の手順でコードを調整してください。 

 

リクエストの作成  

全てのプライベートRESTリクエストは、以下のヘッダを含む必要があります。 

 

KC-API-KEY 文字列としてのAPIキー 

KC-API-SIGN base64でエンコードされた署名(メッセージの署名を参照) 

KC-API-TIMESTAMP リクエストのタイムスタンプ 

KC-API-PASSPHRASE APIキー作成時に指定したパスフレーズ 

KC-API-KEY-VERSION APIキーのバージョンは、API Managementのページで確認する事ができます。 

 

メッセージへの署名 

 

 KC-API-KEYのヘッダについて 

 

API-Secretを使用して、 プレハッシュ 文字列 {timestamp+method+endpoint+body} をsha256 HMACで暗号化します。リクエストボディはJSON文字列であり、APIから渡されるパラメータと同じである必要があります。 

その後、再度base64-encodeで手順1の結果を暗号化します。 

 

ヘッダーの KC-API-PASSPHRASE について 

 

APIキーV1.0の場合は、平文でリクエストを渡してください。 

APIキーV2.0の場合、KC-API-KEY-VERSIONを2に指定してください--> API-Secret経由でパスフレーズをHMAC-sha256で暗号化 --> 内容をbase64でエンコードしてからリクエストを渡してください。 

 

注意事項 

 

暗号化されたタイムスタンプは、リクエストヘッダのKC-API-TIMESTAMPフィー ルドと一致しなければなりません。 

暗号化されるボディは、リクエストボディの内容と一致しなければなりません。 

メソッドは大文字である必要があります。 

GET、DELETEリクエストの場合、エンドポイントにクエリ文字列を含める必要があります。 例 /api/v1/deposit-addresses?currency=XBT. リクエストボディがない場合(通常、GETリクエストの場合)、ボディは""になります。 

 

これでAPIキーのアップグレード作業は完了です。