Service API
これは、Kura の Service API 簡易リファレンスです。
詳細な OpenAPI schema、リクエスト / レスポンスの schema、SDK は、導入時に別途提供します。ご興味のある方は、お問い合わせください。
Service API は HTTP で提供され、以下の用途に分かれます。
- サービスの状態確認
- アカウントと受け取りアドレスの管理
- 残高と取引可能状況の確認
- 入金処理
- 送金・出金の準備と実行
- スマートコントラクトウォレット連携
- 履歴照会
Health / Deployment
| Method | Path | 用途 |
|---|---|---|
GET | /health | サービスの稼働状況を確認する。 |
GET | /api/deployment | 接続先のチェーンや Kura contract の情報を取得する。 |
アカウントと受け取りアドレスの管理
| Method | Path | 用途 |
|---|---|---|
POST | /api/wallets | P-256、WebAuthn、Ethereum EOA のウォレットアカウントと初期の受け取りプロファイルを登録する。 |
GET | /api/wallets | 登録済みの受け取りプロファイルを一覧する。 |
GET | /api/wallets/{wallet_handle} | ウォレットアカウントの概要を取得する。 |
GET | /api/wallets/{wallet_handle}/profiles | ウォレットアカウントに紐づく受け取りプロファイルを一覧する。 |
POST | /api/wallets/{wallet_handle}/profiles | 既存のウォレットアカウントに受け取りプロファイルを追加する。 |
GET | /api/viewing-profiles/{address_id} | 受け取りプロファイルの情報を取得する。 |
POST | /api/viewing-profiles/{address_id}/disable | 受け取りプロファイルの同期を停止する。 |
POST | /api/viewing-profiles/{address_id}/enable | 受け取りプロファイルの同期を再開する。 |
残高と取引可能状況の確認
| Method | Path | 用途 |
|---|---|---|
GET | /api/viewing-profiles/{address_id}/status | 受け取りプロファイルの同期状況を取得する。 |
GET | /api/viewing-profiles/{address_id}/notes | 受け取りプロファイルの保有資産と残高を取得する。 |
残高表示や送金可能かどうかの判断に使います。
入金処理
| Method | Path | 用途 |
|---|---|---|
POST | /api/deposits/proof-requests | 受け取りアドレス、トークン、金額を指定して入金の証明を生成する。 |
GET | /api/proof-requests/{proof_request_id} | 証明の生成状況を確認する。 |
証明が完了すると、ユーザーのウォレットから ERC-20 の利用許可と入金処理を実行できるようになります。
送金・出金の準備と実行
| Method | Path | 用途 |
|---|---|---|
POST | /api/wallets/{wallet_handle}/transfer-preparations | 送金または出金の準備データと、ユーザーが署名する内容を生成する。 |
POST | /api/wallets/{wallet_handle}/transfers/execution-requests | 署名済みの送金を実行する(証明生成・ブロックチェーン送信・完了確認まで非同期で処理)。 |
POST | /api/wallets/{wallet_handle}/transfers/proof-requests | 証明のみを生成する。 |
GET | /api/execution-requests/{execution_request_id} | 送金の実行状況を確認する。 |
送金準備で主に指定する値は、送金元のプロファイル、宛先(Kura address または通常のアドレス)、トークン、金額です。
スマートコントラクトウォレット連携
| Method | Path | 用途 |
|---|---|---|
POST | /api/contract-wallets | Kura に対応したコントラクトウォレットと受け取りプロファイルを作成する。 |
PUT | /api/contract-wallets/{contract_wallet_address}/signers | コントラクトウォレットの署名者情報を登録する。 |
GET | /api/wallets/{wallet_handle}/contract-wallet-status | コントラクトウォレットの登録状況と送金可能状況を確認する。 |
POST | /api/contract-wallets/{contract_wallet_address}/user-operations | 署名済みのウォレット操作を実行する。 |
EOA ではなくスマートコントラクトでアカウントを管理する場合に使います。
履歴照会
| Method | Path | 用途 |
|---|---|---|
GET | /api/history/addresses/{address_id}/notes/received | 受け取りプロファイルの受信履歴を取得する。 |
GET | /api/history/addresses/{address_id}/notes/spent | 受け取りプロファイルの送信履歴を取得する。 |
GET | /api/history/wallets/{wallet_handle}/notes/received | ウォレットアカウント全体の受信履歴を取得する。 |
GET | /api/history/wallets/{wallet_handle}/notes/spent | ウォレットアカウント全体の送信履歴を取得する。 |
GET | /api/history/deposits | 入金履歴を取得する。 |
GET | /api/history/publications | 取引履歴を取得する。 |
履歴は activity 表示、突合、サポート対応などに使えます。