HTTP API / WALLET CLIENT
prepareTransfer
@hazbase/kit/walletが呼び出すHTTP APIのパス・引数・レスポンスを確認できます。認証・パスキーなどの追加APIは、認証SDKのリファレンスと実装ガイドで扱います。
APIごとに、利用者セッション・署名・操作権限の要件が異なります。以下の仕様と、利用するAPI環境の接続条件を確認してください。 APIの利用方法を確認
POST /api/wallet/transfer/prepare
リクエスト
@hazbase/kit/wallet
prepareTransfer(input: PrepareTransferInput): Promise<PrepareTransferResult>このSDKメソッドはBearerヘッダーを自動付与しません。環境側のアクセス条件は別途確認してください。
| 項目 | 型 | 必須 | 送信先 |
|---|---|---|---|
chainId | number | 任意 | JSON body |
token | string | 必須 | JSON body |
account | string | 必須 | JSON body |
recipient | string | 必須 | JSON body |
amount | string | 必須 | JSON body |
metadata | Record<string, unknown> | 任意 | JSON body |
endpoint | string | 任意 | SDKの接続パス上書き |
POSTではContent-Type: application/jsonとx-request-idを付与します。x-request-idは処理の追跡用で、API全体の冪等性を保証するものではありません。
レスポンス
typescript
export type PrepareTransferResult = {
chainId: number;
account: string;
recipient: string;
token: WalletTokenSummary;
amount: {
input: string;
raw: string;
formatted: string;
decimals: number;
symbol: string;
};
execution: {
target: string;
value: string;
data: string;
method: string;
selector: string;
};
policy: {
authorization: string;
sessionEligible: boolean;
sponsored: boolean;
};
display: {
title: string;
subtitle: string;
from: string;
to: string;
assetSymbol: string;
assetName: string;
};
metadata?: Record<string, unknown>;
status?: string;
};ネストした型はSDKリファレンスで確認できます。SDKはトップレベルの応答と、dataで包まれた応答を処理します。
PrepareTransferResult失敗時の確認
非2xxの応答はHazbaseWalletApiErrorとして扱われます。status、code、messageを記録し、機能固有のエラーとネットワーク障害を区別してください。秘密情報をログに出さないようにしてください。
エラーとトラブル対応