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

Documentation Index

Fetch the complete documentation index at: https://docs.chainstream.io/llms.txt

Use this file to discover all available pages before exploring further.

GraphQLエンドポイント

すべてのGraphQLクエリは単一のエンドポイントに送信されます:
https://graphql.chainstream.io/graphql
POSTGETの両方のメソッドがサポートされています。
メソッドContent-Typeユースケース
POSTapplication/jsonすべてのクエリに推奨 — 変数と複雑なクエリをサポート
GETクエリ文字列(?query=...シンプルなクエリ、ブラウザテスト、キャッシュフレンドリー
本番ワークロードにはPOSTを使用してください。GETリクエストはURLにクエリをエンコードするため、長さ制限があり複雑なクエリには不向きです。

認証

X-API-KEYヘッダーにAPIキーを渡して認証します。REST Data APIと同じAPIキーを使用します — 別途の認証情報は不要です。
X-API-KEY: your_api_key
ChainStream DashboardApplicationsCreate New App でAPIキーを取得できます。キーは cs_live_... で始まります。

必須ヘッダー

ヘッダー必須
Content-Typeapplication/jsonはい(POST)
X-API-KEYcs_live_...はい

リクエスト形式

GraphQLリクエストボディは2つのフィールドを持つJSONオブジェクトです:
フィールド説明
querystringGraphQLクエリまたはミューテーション文字列
variablesobject$variable構文でクエリ内で参照されるオプションの変数

POSTの例

curl -X POST "https://graphql.chainstream.io/graphql" \
  -H "Content-Type: application/json" \
  -H "X-API-KEY: your_api_key" \
  -d '{
    "query": "{ Solana { DEXTrades(limit: {count: 5}, orderBy: {descending: Block_Time}) { Block { Time } Trade { Buy { Currency { MintAddress } Amount } } } } }"
  }'

GETの例

curl -G "https://graphql.chainstream.io/graphql" \
  -H "X-API-KEY: your_api_key" \
  --data-urlencode 'query={ Solana { DEXTrades(limit: {count: 5}, orderBy: {descending: Block_Time}) { Block { Time } } } }'

対応ネットワーク

Cubeクエリを適切なChain Groupで囲んでネットワークを選択します:
Chain GroupブロックチェーンChain ID
SolanaSolana
EVM(network: eth)Ethereum1
EVM(network: bsc)BNB Chain (BSC)56
# Solana
{ Solana { DEXTrades(limit: {count: 5}) { ... } } }

# Ethereum
{ EVM(network: eth) { DEXTrades(limit: {count: 5}) { ... } } }

# BSC
{ EVM(network: bsc) { DEXTrades(limit: {count: 5}) { ... } } }

レスポンス形式

すべてのレスポンスは以下の構造のJSONです:
{
  "data": {
    "Solana": {
      "DEXTrades": [
        { "Block": { "Time": "2025-03-27T10:15:30Z" }, "..." : "..." }
      ]
    }
  },
  "extensions": {
    "credits": {
      "total": 50,
      "cubes": [
        { "cube": "DEXTrades", "credits": 50, "row_count": 5 }
      ]
    }
  }
}
フィールド説明
dataクエリ結果 — クエリの形状に一致
errorsバリデーションまたは実行エラーがある場合のみ存在
extensions.credits.totalこのクエリで消費された合計クレジットユニット
extensions.credits.cubesCubeごとの内訳:Cube名、請求クレジット、返却行数
extensions.creditsフィールドはクレジットが消費された場合に含まれます。クレジットの計算方法の詳細は課金とクレジットをご覧ください。

エラーレスポンス

クエリが不正な場合や失敗した場合、レスポンスにはerrors配列が含まれます:
{
  "data": null,
  "errors": [
    {
      "message": "Unknown field 'InvalidField' on type 'DEXTrades'",
      "locations": [{ "line": 3, "column": 5 }]
    }
  ]
}
アプリケーションに統合する前に、GraphQL IDEを使用してクエリをインタラクティブに検証してください。IDEは自動補完とインラインエラーハイライトを提供します。

次のステップ

最初のクエリを実行

IDEまたはcURLからステップバイステップのチュートリアルに従って実際のクエリを実行します。

スキーマを探索

25のCube、フィールドタイプ、フィルタリングオペレータ、集計関数を詳しく見ます。