F.Ko-Jiの「一秒後は未来」

さくらのクラウドAPI「ディスクの修正」でUserIPAddress指定時にはUserSubnet.NetworkMaskLenの同時指定が必須

さくらのクラウド API を使ってディスクの修正を実施しようとしたら、正しくパラメータを指定しているはずなのに「不適切な要求です。パラメータの指定誤り、入力規則違反です。入力内容をご確認ください。」という Bad Request が返ってきてしまう。

渡しているパラメータを1つずつ消して調べるとどうも UserIPAddress を渡すとエラーになることが分かった。

UserIPAddress: '192.168.1.10'

ドキュメントを見ると UserIPAddress の型は ipaddr となっていて、もしかして文字列で渡してはいけないのか?とも思ったのだが ipaddr 型についての記述はどこにもなく、最終的にさくらのクラウドのコンソールの手動でディスクを修正できるこのフォームを見て、

もしかしてネットマスクを同時に指定しないといけない…?と思い、

UserSubnet: {
    NetworkMaskLen: 24
}

も同時に渡してあげたら、成功した・・・。ドキュメントには「eth0のネットワークマスク長(UserIPAddressと同時指定時のみ有効)」としか書かれてなかったのでハマった。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

著者について

fkoji

F.Ko-Ji

Webエンジニアやってます。最近は ドットインストール の開発がお仕事です。その傍ら、個人で Meity電車遅延なう梅酒.in#グラドル自画撮り部 の部室といったネットサービスを開発・運営してます。梅酒と草野球とリアル脱出ゲームが好きです。

» 詳しいプロフィールや運営サービスの一覧など