> ## Documentation Index
> Fetch the complete documentation index at: https://www.helius.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Gatekeeperへの移行方法

> アプリケーションをGatekeeperに移行するためのステップバイステップガイド

Gatekeeperへの移行は**5分以内**で完了します。シンプルなURLの変更だけで済み、APIキーはそのまま使用できます。

## クイック移行

既存のエンドポイントを単に置き換えてください：

<CodeGroup>
  ```javascript Before theme={"system"}
  const url = "https://mainnet.helius-rpc.com/?api-key=YOUR_API_KEY";
  ```

  ```javascript After theme={"system"}
  const url = "https://beta.helius-rpc.com/?api-key=YOUR_API_KEY";
  ```
</CodeGroup>

**これで完了です！**

アプリケーションをテストし、パフォーマンスを監視し、準備が整い次第デプロイしてください。

## フレームワークごとの例

<Tabs>
  <Tab title="Solana Web3.js">
    ```javascript theme={"system"}
    import { Connection } from '@solana/web3.js';

    const connection = new Connection(
      `https://beta.helius-rpc.com/?api-key=${YOUR_API_KEY}`,
      'confirmed'
    );
    ```
  </Tab>

  <Tab title="Anchor">
    ```javascript theme={"system"}
    import { AnchorProvider } from '@coral-xyz/anchor';
    import { Connection } from '@solana/web3.js';

    const connection = new Connection(
      `https://beta.helius-rpc.com/?api-key=${YOUR_API_KEY}`,
      'confirmed'
    );

    const provider = new AnchorProvider(connection, wallet, {
      commitment: 'confirmed'
    });
    ```
  </Tab>

  <Tab title="Solana-py">
    ```python theme={"system"}
    from solana.rpc.api import Client

    rpc_url = f"https://beta.helius-rpc.com/?api-key={YOUR_API_KEY}"
    client = Client(rpc_url)
    ```
  </Tab>

  <Tab title="Rust">
    ```rust theme={"system"}
    use solana_client::rpc_client::RpcClient;

    let rpc_url = format!("https://beta.helius-rpc.com/?api-key={}", YOUR_API_KEY);
    let client = RpcClient::new(rpc_url);
    ```
  </Tab>

  <Tab title="環境変数">
    ```bash theme={"system"}
    # .env file
    HELIUS_RPC_URL=https://beta.helius-rpc.com/?api-key=YOUR_API_KEY
    ```
  </Tab>
</Tabs>

## WebSocketエンドポイント

WebSocketを使用している場合は、それらのエンドポイントも更新してください：

```javascript theme={"system"}
// Before
const ws = new WebSocket("wss://mainnet.helius-rpc.com/?api-key=YOUR_API_KEY");

// After
const ws = new WebSocket("wss://beta.helius-rpc.com/?api-key=YOUR_API_KEY");
```

## 移行チェックリスト

<Steps>
  <Step title="エンドポイントURLの更新">
    `mainnet.helius-rpc.com`を`beta.helius-rpc.com`に変更
  </Step>

  <Step title="開発でテスト">
    すべてのRPC呼び出しが正常であり、認証が成功することを確認
  </Step>

  <Step title="パフォーマンスの監視">
    レイテンシーと応答時間の改善をメトリクスで確認
  </Step>

  <Step title="本番環境へのデプロイ">
    標準のデプロイメントプロセスを使用して変更をロールアウト
  </Step>
</Steps>

## 段階的なロールアウト（オプション）

より安全な移行のために、環境変数や機能フラグを使用できます：

```javascript theme={"system"}
// Environment-based
const endpoint = process.env.USE_GATEKEEPER
  ? "https://beta.helius-rpc.com"
  : "https://mainnet.helius-rpc.com";

const connection = new Connection(
  `${endpoint}?api-key=${YOUR_API_KEY}`,
  'confirmed'
);
```

```javascript theme={"system"}
// Percentage rollout (10% of traffic)
const useGatekeeper = Math.random() < 0.1;
const endpoint = useGatekeeper
  ? "https://beta.helius-rpc.com"
  : "https://mainnet.helius-rpc.com";
```

## ロールバック

必要に応じて、標準のエンドポイントに戻すだけです：

```javascript theme={"system"}
const url = "https://mainnet.helius-rpc.com/?api-key=YOUR_API_KEY";
```

## トラブルシューティング

<AccordionGroup>
  <Accordion title="401 Unauthorizedエラーが発生します">
    APIキーが含まれていることを確認してください：`?api-key=YOUR_API_KEY`
  </Accordion>

  <Accordion title="パフォーマンスの改善が見られない">
    * 本番環境からテスト（ローカル開発環境ではありません）
    * レート制限に達していないことを確認（429エラーをチェック）
    * 問題が続く場合はサポートに連絡
  </Accordion>

  <Accordion title="WebSocket接続の失敗">
    * `wss://`を使用（`ws://`ではありません）
    * APIキーがURLに含まれていることを確認
    * ファイアウォールの設定を確認
  </Accordion>

  <Accordion title="応答形式が異なって見える">
    Gatekeeperは同一の応答を返します。違いがある場合は直ちにサポートに連絡してください。
  </Accordion>
</AccordionGroup>

## サポートが必要ですか？

* **メール**: [support@helius.dev](mailto:support@helius.dev)
* **Discord**: [https://discord.com/invite/6GXdee3gBj](https://discord.com/invite/6GXdee3gBj)
* **ドキュメンテーション**: [Gatekeeper概要](/ja/gatekeeper/overview)

<Card title="移行に関する質問？" icon="comments" href="https://discord.com/invite/6GXdee3gBj">
  チームや他の開発者とチャットするためにDiscordに参加してください
</Card>
