AWS Invoice Summary API(請求サマリー)が利用できるようになったとアナウンスがありました。
API のドキュメントを読んだら、レスポンスに “CurrencyExchangeDetails” という項目を持っており、もしかしたら AWS から送付される PDF の請求書でしか確認できない、請求時点のドル円レートを確認できるのでは?と思ったので、早速試してみました。
AWS CLI の CHANGELOG を読むと、バージョン 2.27.29 から “Invoicing ListInvoiceSummaries API Operation” が追加されているようなので、まずは AWS CLI を最新版にアップデートしました。
API のドキュメントに沿って、請求サマリーを要求するパラメーターを JSON で作成します。必須項目は “Selector” のみのようですが、とりあえず直近の 2025 年 5 月分だけでいいと思うので、”BillingPeriod” も指定します。
{
"Filter": {
"BillingPeriod": {
"Month": 5,
"Year": 2025
}
},
"Selector": {
"ResourceType": "ACCOUNT_ID",
"Value": "アカウント ID"
}
}
その他のリクエストパラメーターの詳細はドキュメントを参照。
AWS CLI から、引数に先ほど作成した JSON を指定して Invoicing ListInvoiceSummaries API を呼び出します。なお、ここでは Organizations の管理者アカウントのクレデンシャルで実行しています。
# aws invoicing list-invoice-summaries --cli-input-json file://作成した JSON ファイルのパス --profile 必要に応じてプロファイルを指定
以下のように JSON 形式でレスポンスが返ってきました。
レスポンスの中に “CurrencyExchangeDetails” という項目があり、USD から JPY への変換レートが出力されていることが分かりました。
ではこれが AWS から送付されてきた 2025 年 5 月分の請求書 PDF に記載されているドル円レートと一致しているか確認してみます。
小数点以下までちゃんと一致していました!
ガバメントクラウドの AWS 環境では、各利用団体はメンバーアカウントとなるため、請求書 PDF が送付されず、請求時点のドル円レートが分からないという問題があります。
もしメンバーアカウントから Invoice Summary API が使えれば、請求時点のドル円レートを確認できるのでは?と試してみました。
結論から言うと、メンバーアカウントのクレデンシャルでは Invoice Summary API へのアクセスが拒否されてしまう ことが分かりました。
SCP で “invoicing:*” をメンバーアカウントに許可したのですが、やはりアクセス拒否のエラーが返るため、予想ですが Organizations 環境だと、ペイヤーアカウントでなければ Invoice API 自体叩けないのではないかと思われます。
これは使えるかもと検証したのですが、またしても Organizations を利用団体で管理できないガバメントクラウドの壁にぶち当たってしまいました。
当面共創 PF で高橋名人に個人の請求書 PDF のキャプチャをアップしてもらうしかなさそうです。
Views: 0