前回の記事でVultrのアカウントが作成できましたので、今回はAPIの利用を始めるための前準備であるAPIキーの発行を行います。
Vultrのページにログインした状態で、画面右上のアカウント名にマウスカーソルを合わせるとメニューが表示されるので「API」をクリックします。
または、左側のメニューから「Account」>「OTHER」>「API」を選択する形でもOKです。
APIの設定画面が表示され、初期状態ではAPI利用が無効化されていますので「Enable API」ボタンをクリックします。
以下のメッセージが表示されたらAPI利用が可能な状態になっています。
APIの設定の画面が更新され、「Personal Access Token」の「API Key」の欄に発行されたAPIキーが表示されています。
「Access Control」の「Subnet」欄には現在接続中のグローバルIPがデフォルト値として登録されているようです。
「Enter your IPv4 or IPv6 below.」の入力欄にアクセス許可をさせたいIPアドレスを入力して、「Add」ボタンを押すことで、許可IPを増やせるようです。
※ちなみに、「Enter your IPv4 or IPv6 below.」のプレースホルダとして「203.0.113.24」が表示されていますが、この値は例示用のIPアドレス(RFC5737で決められているTEST-NET-3のアドレス)の範囲である「203.0.113.0/24」なので、へー、ちゃんとしてるなぁと思いました。
それでは、API利用の準備が整いましたので、「Vultr API」のドキュメントに従い、練習がてら、まずは「アカウント情報」を取得してみましょう。
アカウント情報は「/v2/account」で取得するようです。
APIドキュメントに記載されている内容をそのままコピペして実行したいので、まずはAPIキーを環境変数「VULTR_API_KEY」に格納します。
$ export VULTR_API_KEY=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
ドキュメント内の「Copy」ボタンをクリックしてターミナルに貼り付けて実行すると以下のように表示されました。
$ curl "https://api.vultr.com/v2/account" \
-X GET \
-H "Authorization: Bearer ${VULTR_API_KEY}"
{"account":{"balance":-5,"pending_charges":0,"name":"XXXXXXXXXXXXXX","email":"XXXXXXXX@XXXXX.XXX","acls":["root","manage_users","subscriptions","subscriptions_view","provisioning","upgrade","billing","support","dns","firewall","objstore","loadbalancer","vke","vcr","abuse","alerts"],"last_payment_date":"2025-08-02T13:55:11+00:00","last_payment_amount":-5}}
さすがにちょっと見づらいので、jqコマンドで整形した結果がこちらです。
$ curl "https://api.vultr.com/v2/account" \
-s \
-X GET \
-H "Authorization: Bearer ${VULTR_API_KEY}" | jq .
{
"account": {
"balance": -5,
"pending_charges": 0,
"name": "XXXXXXXXXXXXXX",
"email": "XXXXXXXX@XXXXX.XXX"
"acls": [
"root",
"manage_users",
"subscriptions",
"subscriptions_view",
"provisioning",
"upgrade",
"billing",
"support",
"dns",
"firewall",
"objstore",
"loadbalancer",
"vke",
"vcr",
"abuse",
"alerts"
],
"last_payment_date": "2025-08-02T13:55:11+00:00",
"last_payment_amount": -5
}
}
ということで、今回は「API利用」を有効化して、発行された「API Key」でAPIが実行可能なことを確認しました。