prepareTransfer
Inspect HTTP routes, arguments and responses used by @hazbase/kit/wallet. Additional authentication and passkey APIs are covered in the auth SDK reference and integration guide.
User-session, signature and permission requirements differ by API. Check the specifications below and the connection requirements of your API environment. Check API access requirements
POST /api/wallet/transfer/prepare
Request
prepareTransfer(input: PrepareTransferInput): Promise<PrepareTransferResult>| Field | Type | Required | Location |
|---|---|---|---|
chainId | number | No | JSON body |
token | string | Yes | JSON body |
account | string | Yes | JSON body |
recipient | string | Yes | JSON body |
amount | string | Yes | JSON body |
metadata | Record<string, unknown> | No | JSON body |
endpoint | string | No | SDK endpoint override |
POST requests include Content-Type: application/json and x-request-id. The request ID supports tracking; it is not a blanket idempotency guarantee.
Response
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;
};Find nested types in the SDK reference. The client handles both a top-level response and a response wrapped in data.
PrepareTransferResultHandling failures
Non-2xx responses become HazbaseWalletApiError. Record status, code and message, distinguishing API errors from network failures. Keep credentials out of logs.
Errors & troubleshooting