JSON-RPC API 概要

Kora v2.2.0-beta をご利用ですか? 新しいバンドルメソッド(signBundlesignAndSendBundleestimateBundleFee)および getVersion については、 Beta ドキュメントをご覧ください。

TypeScript SDK

@solana/kora パッケージは、Kora サーバーとやり取りするための 3 つのクライアントオプションを提供します:

KoraClient(スタンドアロン)

スタンドアロン使用には KoraClient を使用します。@solana/kit v5.0+ で動作します。

import { KoraClient } from "@solana/kora";
const kora = new KoraClient({ rpcUrl: "https://your-kora-server.com" });
const config = await kora.getConfig();

koraPlugin(Kit コンポーザブル)

既存の Kit クライアントに Kora メソッドを組み込むには koraPlugin() を使用します。createEmptyClient().use() パターンには @solana/kit v5.4+ が必要です。

import { createEmptyClient } from "@solana/kit";
import { koraPlugin } from "@solana/kora";
const client = createEmptyClient().use(
koraPlugin({ endpoint: "https://your-kora-server.com" })
);
const config = await client.kora.getConfig();

このプラグインは、Kit 型のレスポンス(AddressBlockhashBase64EncodedWireTransaction)を提供し、他のプラグインとの組み合わせのために KoraPlugin 型をエクスポートします。

createKitKoraClient(Kit クライアント)

自動トランザクションプランニング、手数料見積もり、支払い注入、実行を備えた完全な Kit 統合には createKitKoraClient() を使用します。これはほとんどのアプリケーションで推奨されるアプローチです。@solana/kit v6.1+ が必要です。

Kit クライアントは、Kora を Kit のプラグインアーキテクチャ(プランナー、エグゼキューター、ペイヤープラグイン)と組み合わせることで、tokenProgram() のような Kit program プラグインを直接使用できるようにします。

import { createKitKoraClient } from "@solana/kora";
import { address } from "@solana/kit";
import { tokenProgram } from "@solana-program/token";
const client = await createKitKoraClient({
endpoint: "https://your-kora-server.com",
rpcUrl: "https://api.mainnet-beta.solana.com",
feeToken: address("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"), // USDC
feePayerWallet: userSigner // TransactionSigner that authorizes SPL fee payment
});
// Compose with Kit program plugins
const tokenClient = client.use(tokenProgram());
// Send transactions — Kora handles blockhash, fee estimation,
// payment instruction injection, signing, and submission
await tokenClient.token.instructions
.transferToATA({
/* ... */
})
.sendTransaction();

設定オプション:

オプション必須説明
endpointはいKora RPC エンドポイント URL
rpcUrlはいコンピュートユニット見積もりおよび program プラグイン互換性のための Solana RPC URL
feeTokenはい手数料支払い用の SPL ミントアドレス
feePayerWalletはいSPL 手数料支払いを承認する TransactionSigner
apiKeyいいえ認証用の API キー
hmacSecretいいえ署名ベース認証用の HMAC シークレット
computeUnitLimitいいえ固定コンピュートユニット制限(設定されていない場合はシミュレーションベースの見積もりを使用)
computeUnitPriceいいえマイクロランポート単位の優先手数料
tokenProgramIdいいえToken Program ID(デフォルトは Token Program;Token-2022 トークンの場合は Token-2022 アドレスを使用)

プロトコル

  • 標準: JSON-RPC 2.0
  • トランスポート: HTTP POST
  • Content-Type: application/json
  • エンドポイント: http://your-kora-instance/

利用可能なメソッド

メソッド説明
estimateTransactionFeelamportと指定されたトークンの両方でトランザクション手数料を見積もります。
getBlockhashKoraサーバーーが接続しているSolana RPCから最新のブロックハッシュを取得します。
getConfig現在のKoraサーバー設定を取得します。
getPayerSignerKoraサーバーから支払者署名者と支払先を取得します。
getPaymentInstructionKora paymasterへの手数料支払いのためにトランザクションに追加する支払いinstructionsを作成します。
getSupportedTokens手数料支払いに対応しているトークンのリストを取得します。
signAndSendTransactionトランザクションに署名し、即座にSolanaネットワークにブロードキャストします。
signTransactionトランザクションに手数料支払者への必要な支払いが含まれている場合、ブロードキャストせずにKora手数料支払者で署名します。
transferTransactionKoraを手数料支払者としてトークン転送トランザクションを作成します。

リクエスト形式

すべてのリクエストはJSON-RPC 2.0標準に従います:

{
"jsonrpc": "2.0",
"id": 1,
"method": "methodName",
"params": {}
}

レスポンス形式

成功レスポンス:

{
"jsonrpc": "2.0",
"id": 1,
"result": {}
}

エラーレスポンス:

{
"jsonrpc": "2.0",
"id": 1,
"error": {
"code": -32600,
"message": "Invalid request"
}
}

Is this page helpful?

目次

ページを編集

管理運営

© 2026 Solana Foundation.
無断転載を禁じます。
つながろう