--- html: http-websocket-apis.html parent: references.html metadata: indexPage: true --- # HTTP / WebSocket API リファレンス rippledサーバの公開APIを通じて、XRP Ledgerと通信することができます。 現在、APIにはバージョン1とバージョン2の2種類があります{% badge href="https://github.com/XRPLF/rippled/releases/tag/2.0.0" %}新規: rippled 2.0.0{% /badge %}。 サーバは、[`version` APIメソッド](public-api-methods/server-info-methods/version.md)を通じてサポートされているAPIバージョンの範囲を通知します。APIリクエストで使用するバージョンを指定できます。 同じ持続的な接続で、異なるAPIリクエストで異なるAPIバージョンを使用できます。例えば、WebSocketを通じて、APIバージョン1と2をサポートするサーバに接続した場合、同じ接続からAPIバージョン2を使用して`account_tx`リクエストを行い、その後、APIバージョン1を使用してもう1つの`account_tx`リクエストを行うことができます。 ## デフォルトのAPIバージョン 以下の表は、リクエストでAPIバージョンを指定しない場合に使用される`rippled` APIのバージョンを示しています。 | リクエスト方式 | APIバージョン | 追加の注意事項 | |----------------|---------------|------------------| | Websocket | 1 | | | JSON-RPC | 1 | | | Commandline | 2 | コマンドラインでは、最新のAPIバージョンのみが使用されます。 | | [xrpl.js](https://github.com/XRPLF/xrpl.js) | 2 | v4.0.0以降では、[API v2][]がデフォルトで使用されます。 | | [xrpl-py](https://github.com/XRPLF/xrpl-py) | 2 | v3.0.0以降では、[API v2][]がデフォルトで使用されます。 | {% admonition type="info" name="注記" %} Clioは、[API v1][]をデフォルトで使用しますが、[API v2][]のリクエストもサポートしています。 {% /admonition %} `rippled`の将来のバージョンでは、破壊的な変更を導入すると、APIバージョン3が導入されます。 ### 破壊的な変更 以下のタイプの変更は、**破壊的な変更**です。 - リクエストまたはレスポンスのフィールドを削除または変更する。 - リクエストまたはレスポンスのフィールドの型を変更する。 - リクエストまたはレスポンスのフィールドの意味を変更する。 - 位置パラメータの順序を変更する、または他の位置パラメータの前に新しいフィールドを追加する。 - APIメソッドを削除または変更する。 - 既存のクライアントからアクセス可能なAPI関数の動作を変更する。 - 以下のタイプの破壊的な変更は、gRPC APIにのみ適用されます。 - `proto`フィールド番号を変更する。 - 列挙型または列挙型の値を削除または変更する。 - `oneof`にフィールドを追加または削除する。 - `oneof`を分割またはマージする。 - メッセージフィールドが`optional`、`repeated`、または`required`であるかどうかを変更する。 - リクエストまたはレスポンスのストリーム値を変更する。 - パッケージまたはサービスを削除または変更する。 いずれかのリリースで破壊的な変更が導入されると、新しいAPIバージョン番号が導入されます。プレリリース、ベータ、開発バージョンは、同じAPIバージョン番号に対して破壊的な変更を導入する場合があります。 ### 非破壊的な変更 以下のタイプの変更は、**非破壊的な変更**です。APIバージョン番号の変更なしに発生する可能性があります。 - リクエストまたはレスポンスに新しいフィールドを追加する(位置パラメータを除く)。 - APIメソッドを追加する。 {% raw-partial file="/docs/_snippets/common-links.md" /%} {% child-pages /%}