メインコンテンツへスキップ

Monacoエディタ

クエリエディタはMonaco上に構築されており、VS Codeと同じエンジンです。以下の機能を提供するGraphQL言語ワーカーを搭載しています:
  • GraphQLオペレーション、フィールド、引数、ディレクティブのシンタックスハイライト
  • スキーマ駆動の自動補完Ctrl+Spaceを押すと、ライブスキーマに基づいて利用可能なフィールド、引数、型が表示されます
  • リアルタイムエラー検出 — 無効なフィールド名、不足している引数、型の不一致に対する赤い下線とエラーマーカー
  • 中括弧、括弧、文字列のブラケットマッチング自動クローズ
  • 一括変更のためのマルチカーソル編集
自動補完はスキーマ対応です。Cube内(例:DEXTrades)で入力すると、そのCubeに有効なフィールドと引数のみがサジェストリストに表示されます。

エディタパネル

エディタエリアは下部に3つのタブに分かれています。リクエストの異なる部分を設定するために切り替えてください。

クエリパネル

GraphQLクエリを記述するメインの編集エリアです。ここでMonacoの自動補完、ハイライト、エラー検出が有効です。
query {
  DEXTrades(
    network: sol
    limit: {count: 10}
    orderBy: Block_Time_DESC
  ) {
    Block { Time }
    Transaction { Hash }
    Trade {
      Buy { Currency { MintAddress } Amount PriceInUSD }
      Sell { Currency { MintAddress } Amount }
      Dex { ProtocolName }
    }
  }
}

変数パネル

変数パネルを使用して、パラメータ化されたクエリにJSON変数を渡します。クエリテキストを編集せずに変数値を変更するだけで、クエリを再利用可能に保ちます。
query LatestTrades($network: Network!, $limit: Int!) {
  DEXTrades(
    network: $network
    limit: {count: $limit}
    orderBy: Block_Time_DESC
  ) {
    Block { Time }
    Trade {
      Buy { Currency { MintAddress } Amount PriceInUSD }
      Sell { Currency { MintAddress } Amount }
    }
  }
}

ヘッダーパネル

すべてのリクエストで送信されるHTTPヘッダーを設定します。ヘッダーパネルはデフォルトで表示され、X-API-KEYヘッダーが事前設定されています。
{
  "X-API-KEY": "your_api_key"
}
必要に応じて追加のカスタムヘッダーを追加できます。すべてのヘッダーはGraphQLエンドポイントへのPOSTリクエストの一部として送信されます。
Content-Type: application/jsonヘッダーは自動的に含まれます — 手動で設定する必要はありません。

ツールバー

ツールバーはエディタの上部にあり、クイックアクセス操作を提供します:
ボタンアクション説明
Execute (▶)クエリ実行現在のクエリ(変数とヘッダー付き)をGraphQLエンドポイントに送信
Prettifyクエリ整形一貫したインデントと改行でクエリを自動フォーマット
Copyクエリコピー現在のクエリテキストをクリップボードにコピー
Mergeフラグメントマージインラインフラグメントを1つのフラット化されたクエリにマージ
Save Queryローカル保存タイトルとオプションのタグ付きで現在のクエリを保存
Export Codeスニペットエクスポート選択した言語で現在のクエリのコードスニペットを生成

クエリの実行

クエリを実行するには:
  1. エディタにクエリを記述またはロード
  2. ヘッダーパネルでX-API-KEYを設定
  3. ツールバーのExecuteボタン(▶)をクリック、またはCtrl/Cmd+Enterを押す
レスポンスはエディタの右側の結果パネルにフルJSONシンタックスハイライトで表示されます。クエリにエラーがある場合、エラーメッセージと位置の詳細を含むエラーレスポンスが表示されます。

結果パネル

結果パネルはGraphQLエンドポイントからのJSONレスポンスを以下の機能で表示します:
  • JSONキー、文字列、数値、ブーリアンのシンタックスハイライト
  • 深くネストされたレスポンスをナビゲートするための折りたたみ可能なノード
  • 右クリックコンテキストメニューによるレスポンスコピーサポート
典型的な成功レスポンスには、クエリ構造に一致するdataオブジェクトと、課金情報を示すextensions.creditsオブジェクトが含まれます。

ステータスバー

IDEの下部にあるステータスバーは、クエリ実行に関するリアルタイムフィードバックを提供します:
インジケータ説明
StateReady · Executing... · Success · Error現在のリクエストライフサイクル状態
Latency例:120msリクエスト送信からレスポンス受信までのラウンドトリップ時間
Size例:2.4 KBレスポンスボディサイズ
Credits例:8 CUこのクエリで消費されたクレジットユニット
クレジットユニット(CU)はクエリの計算コストを反映します。より多くのデータをスキャンするクエリや、より大きな結果セットを返すクエリはより多くのCUを消費します。詳細は課金とクレジットをご覧ください。

キーボードショートカット

ショートカットアクション
Ctrl/Cmd + Enterクエリ実行
Ctrl/Cmd + Bサイドバー切り替え
Ctrl + Space自動補完トリガー
Ctrl/Cmd + Shift + Pコマンドパレット
Ctrl/Cmd + /行コメント切り替え
Ctrl/Cmd + D次の出現箇所を選択
Ctrl/Cmd + Shift + Fフォーマット/整形
Alt + Up/Down行を上下に移動
macOSではCtrlCmdに置き換えてください。IDEはOSを自動検出し、適切な修飾キーを表示します。