2016-11-14 6 views
0

SoftLayer_Hardware :: generateOrderTemplateを使用して注文テンプレートを生成しようとすると、次のエラーが表示されます。softlayer generateOrderTemplate APIのテンプレートハードウェアレコード

{ "エラー": "テンプレートのハードウェアのレコードは、この メソッドを使用する必要があります。"、 "コード": "SoftLayer_Exception_MissingParameter"}

が私の要求は次のようになります。

{ 
    "datacenter" : { "name" : "dal02" }, 
    "hostname": "deleteme", 
    "domain": "ciber-itc.local", 
    "hourlyBillingFlag": true, 
    "processorCoreAmount": 4, 
    "memoryCapacity": 8192, 
    "operatingSystemReferenceCode": "UBUNTU_LATEST", 

    "networkComponents": [ 
     { "maxSpeed": 1000 } 
    ], 
    "hardDrives": [ 
     {"capacity": 500 } 
    ] } 

と私のAPI呼び出しは、このように形成されます:https://username:[email protected]:443/rest/v3/SoftLayer_Hardware/generateOrderTemplate.json

同様の質問がこのstackoverflow threadに掲載されています。しかし、記事は仮想ゲストに関連していますが、私はハードウェアvsiを作成しようとしています。だから私はブロックデバイスを取得するか、ハードウェアのコンテキストで仮想ゲストのこのAPIにトランザクションをアーカイブすることはできません。

私はjsonリクエストのバリエーションを試しました。固定構成を使用し、常に必要なすべてのパラメータが確実に表示されるようにしました。

答えて

0

あなたはこれを試すことができます:

{ 
    "parameters":[ 
     { 
     "datacenter":{ 
      "name":"dal02" 
     }, 
     "hostname":"deleteme", 
     "domain":"ciber-itc.local", 
     "hourlyBillingFlag":true, 
     "processorCoreAmount":8, 
     "memoryCapacity":8, 
     "operatingSystemReferenceCode":"UBUNTU_LATEST", 
     "networkComponents":[ 
      { 
       "maxSpeed":1000 
      } 
     ], 
     "hardDrives":[ 
      { 
       "capacity":500 
      } 
     ] 
     } 
    ] 
} 

あなたはテンプレートの開始時に「パラメータ」を指定する必要があります。また、有効な設定ではないため、processorCoreAmount:4memoryCapacity:8192を注文することはできません。その理由は、私が利用可能な構成やオプションを取得するには8

"processorCoreAmount"を交換し、次のメソッドを使用する必要があります。

休憩例:

https://$user:[email protected]/rest/v3/SoftLayer_Hardware/getCreateObjectOptions 

Method: Get 
+0

これが解決策です!どうもありがとう。私は以前にそれを試してみたと思ったが、構造に何か間違っていたに違いない。 – user3208130

関連する問題