A.4. 例

A.4.1. cURL を使用した GET 要求

例A.1 GET 要求

以下の GET 要求は、vms コレクション内の仮想マシンを一覧表示します。GET 要求には本文が含まれない点に注意してください。
GET /api/vms HTTP/1.1
Accept: application/xml
メソッド (GET)、ヘッダー (Accept: application/xml)、URI (https://[RHEVM-Host]:443/api/vms) を次の cURL コマンドに適用します。
$ curl -X GET -H "Accept: application/xml" -u [USER:PASS] --cacert [CERT] https://[RHEVM-Host]:443/api/vms
vms コレクションの XML 表現が表示されます。

A.4.2. cURL を使用した POST 要求

例A.2 POST 要求

次の POST 要求は、vms コレクション内に仮想マシンを作成します。POST 要求には本文が必要な点に注意してください。
POST /api/vms HTTP/1.1
Accept: application/xml
Content-type: application/xml

<vm>
  <name>vm1</name>
  <cluster>
    <name>default</name>
  </cluster>
  <template>
    <name>Blank</name>
  </template>
  <memory>536870912</memory> 
  <os>
    <boot dev="hd"/>
  </os>
</vm>
メソッド (POST)、ヘッダー (Accept: application/xml および Content-type: application/xml)、 URI (https://[RHEVM-Host]:443/api/vms)、要求の本文を次の cURL コマンドに適用します。
$ curl -X POST -H "Accept: application/xml" -H "Content-type: application/xml" -u [USER:PASS] --cacert [CERT] -d "<vm><name>vm1</name><cluster><name>default</name></cluster><template><name>Blank</name></template><memory>536870912</memory><os><boot dev='hd'/></os></vm>" https://[RHEVM-Host]:443/api/vms
REST API は新規仮想マシンを作成し、そのリソースの XML 表現を表示します。

A.4.3. cURL を使用した PUT 要求

例A.3 PUT 要求

以下の PUT 要求は、仮想マシンリソースのメモリーを更新します。PUT 要求には本文が必要な点に注意してください。
PUT /api/vms/082c794b-771f-452f-83c9-b2b5a19c0399 HTTP/1.1
Accept: application/xml
Content-type: application/xml

<vm>
    <memory>1073741824</memory>
</vm>
メソッド (PUT)、ヘッダー (Accept: application/xmlContent-type: application/xml)、URI (https://[RHEVM-Host]:443/api/vms/082c794b-771f-452f-83c9-b2b5a19c0399)、要求の本文を次の cURL コマンドに適用します。
$ curl -X PUT -H "Accept: application/xml" -H "Content-type: application/xml" -u [USER:PASS] --cacert [CERT] -d "<vm><memory>1073741824</memory></vm>" https://[RHEVM-Host]:443//api/vms/082c794b-771f-452f-83c9-b2b5a19c039
REST API は新しいメモリー設定で仮想マシンを更新します。

A.4.4. cURL を使用した DELETE 要求

例A.4 DELETE 要求

以下の DELETE 要求は、仮想マシンのリソースを削除します。
DELETE /api/vms/082c794b-771f-452f-83c9-b2b5a19c0399 HTTP/1.1
メソッド (DELETE) および URI (https://[RHEVM-Host]:443/api/vms/082c794b-771f-452f-83c9-b2b5a19c0399) を次の cURL コマンドに適用します。
$ curl -X DELETE -u [USER:PASS] --cacert [CERT] https://[RHEVM-Host]:443//api/vms/082c794b-771f-452f-83c9-b2b5a19c039
REST API は仮想マシンを削除します。DELETE 要求の結果が空のため、Accept: application/xml ヘッダーはオプションになります。

A.4.5. cURL を使用した 本文付きの DELETE 要求

例A.5 本文付きの DELETE 要求

以下の DELETE 要求は、オプションの本文で示されているように、仮想マシンリソースを強制削除します。
DELETE /api/vms/082c794b-771f-452f-83c9-b2b5a19c0399 HTTP/1.1
Accept: application/xml
Content-type: application/xml

<action>
  <force>true</force>
</action>
メソッド (DELETE)、ヘッダー (Accept: application/xml および Content-type: application/xml)、URI (https://[RHEVM-Host]:443/api/vms/082c794b-771f-452f-83c9-b2b5a19c0399)、要求の本文を次の cURL コマンドに適用します。
$ curl -X DELETE -H "Accept: application/xml" -H "Content-type: application/xml" -u [USER:PASS] --cacert [CERT] -d "<action><force>true</force></action>" https://[RHEVM-Host]:443//api/vms/082c794b-771f-452f-83c9-b2b5a19c039
REST API は仮想マシンを強制削除します。