シンクラウド CLI リファレンス — ドメイン管理
シンクラウド CLI で、保有ドメインの情報取得、ネームサーバー・DNS・Whois設定、取得・移管・契約更新を行うためのリファレンスです。
shincloud domain 配下のコマンドを掲載しています。レンタルサーバーへ追加するドメイン設定やサーバー側DNSではなく、ドメインレジストラで保有・管理するドメインが対象です。
CLIの変更履歴は 更新履歴 を参照してください。
インストール
Node.js(v18 以上)がインストールされた環境で、npm からグローバルインストールしてください。
npm install -g shincloud-cliインストール後は、ターミナルのどのディレクトリからでも shincloud コマンドが利用可能です。
インストールせずに即時実行することもできます。
npx shincloud-cli domain listバージョン確認
shincloud --version認証設定
APIを利用するには、事前にAPIキーを設定する必要があります。APIキーはシンクラウドアカウント画面の「APIキー管理」から発行できます。
APIキーの発行手順については、下記マニュアルをご参照ください。
shincloud auth login
対話形式でAPIキーを設定します。APIキーの入力はセキュリティのためマスク表示(***)され、ログイン時に利用可能なサービス・権限・操作対象・APIキー有効期限を表示します。ドメインサービスでは、ドメインの取得・移管・更新が許可されているかも確認できます。ドメイン管理コマンドではサーバー名の指定は不要です。
shincloud auth login
# ✔ APIキーを入力: ****
# 認証情報を検証中...
# ✓ 認証に成功しました
#
# 利用可能なサービス:
# Domain
# 権限: すべての操作
# 対象ドメイン:
# - example.com
# 取得・移管・更新: 許可されていません
#
# APIキー有効期限: 2026-12-31 00:00:00
#
# ✓ プロファイル "default" を保存しました
# 設定ファイル: ~/.config/shincloud-cli/config.jsonオプションで非対話的に設定することも可能です(CI/CD 環境向け)。
shincloud auth login --api-key YOUR_API_KEYプロファイル
複数のAPIキーを名前付きプロファイルとして保存し、切り替えて使うことができます。
shincloud auth login --profile stagingshincloud --profile staging domain listshincloud auth profilesshincloud --format json auth profiles設定ファイルは ~/.config/shincloud-cli/config.json に保存されます。
環境変数
環境変数でもAPIキーを指定できます。CI/CD パイプラインでの利用に適しています。
| 環境変数 | 説明 |
|---|---|
SHINCLOUD_API_KEY | APIキー |
SHINCLOUD_API_KEY=YOUR_API_KEY shincloud domain list認証の優先順位
| 優先度 | 方式 | 用途 |
|---|---|---|
| 1(最優先) | 環境変数 | CI/CD、スクリプト |
| 2 | プロファイル設定ファイル | 通常利用(推奨) |
※環境変数はSHINCLOUD_API_KEYが設定されている場合のみ使用されます。
shincloud auth status
現在の認証状態を確認します。
shincloud auth statusshincloud --format json auth statusグローバルオプション
すべてのコマンドで共通して利用できるオプションです。
| オプション | 説明 | デフォルト |
|---|---|---|
--format <format> | 出力形式(table または json) | table |
--profile <name> | 使用するプロファイル名 | default |
-y, --yes | 破壊的操作の確認プロンプトをスキップ | — |
--debug | トラブルシューティング情報を標準エラー出力へ表示 | — |
-V, --version | バージョン番号を表示 | — |
-h, --help | ヘルプを表示 | — |
domain コマンドの対象
shincloud domain 配下では、各コマンドの引数で対象ドメインを指定します。--servernameやSHINCLOUD_SERVERNAMEは使用しません。
出力形式
テーブル形式(デフォルト)
人間が読みやすい形式で出力します。
shincloud domain listJSON形式
プログラムからの利用やパイプラインでの処理に適した形式です。jq コマンドと組み合わせて使うこともできます。
課金操作では、見積内容や確認メッセージを標準エラー出力へ、最終結果を標準出力へ表示します。--format json の標準出力はそのままパイプ処理できます。
shincloud --format json domain listshincloud --format json domain list | jq ".domains[].domain_name"課金操作の安全確認
domain register、domain transfer、domain renewは、実申込の前に見積内容と税込金額を表示します。試算のみ行う場合は --dry-run を指定してください。
domain check、domain pricing、domain register、domain transfer、domain renewの利用には、APIキー管理画面で「このキーでドメインの新規取得・移管・更新(お申し込み)を許可する」を有効にしておく必要があります。- 税込価格は、事前に
domain checkまたはdomain pricingで確認してください。取得・更新では1年あたりの価格に年数を掛けた合計金額、移管では移管料金を使用します。 --expected-total-priceには事前確認した税込合計金額を指定します。見積金額と一致しない場合はエラーとなり、実申込へ進みません。--dry-runを指定すると、見積表示だけで終了し、課金や申込は行いません。- 実申込には
--confirm-purchaseが必要です。汎用の--yesでは省略できません。 - 実申込は対話式ターミナル(TTY)で、確認文字列(例:
example.com を税込1721円で承認)を正確に入力した場合のみ実行されます。CIなどの非対話環境では実申込できません。 - 新規取得と移管では、
サービス利用規約および
個人情報の取り扱いについて
を確認し、
--agree-to-termsで両方へ明示的に同意する必要があります。 --idempotency-keyを省略した場合は自動生成されます。入力不備・残高不足・価格不一致などで却下された場合は、最初に表示された同じキーで再実行できます。- 通信エラーなどで結果が不明な場合は、同じキーで再実行すると重複申込を防げます。既に処理済みの場合は重複エラーになります。
domain showと請求履歴で状態を確認し、未実行と確認できたときのみ新しいキーで再申請してください。
レート制限エラー
APIの利用上限を超えた場合、CLIはレート制限エラーを表示して終了します。待機時間が表示された場合は、その時間を目安に待ってから再実行してください。
認証失敗が短時間に続いた場合も、一時的にアクセスが制限されることがあります。APIキーや環境変数の設定を確認してから再試行してください。
ドメイン情報
shincloud domain list
APIキーで参照できる保有ドメインの一覧を取得します。各ドメインの契約状態や有効期限などを確認できます。
使用例
shincloud domain listshincloud --format json domain listshincloud domain show <domain>
指定した保有ドメインの詳細情報を取得します。契約状態、自動更新設定、移管ロックなどを確認できます。
使用例
shincloud domain show example.comネームサーバー設定
shincloud domain nameservers show <domain>
指定したドメインのネームサーバー設定を取得します。
使用例
shincloud domain nameservers show example.comshincloud domain nameservers update <domain> --nameservers <list>
現在のネームサーバー設定を、指定した1~13件で全置換します。各ホスト名は253文字以内で、同じ値を重複して指定できません。
オプション
| オプション | 必須 | 説明 |
|---|---|---|
--nameservers <list> | 必須 | ネームサーバー(1~13件、カンマ区切り、重複不可) |
使用例
shincloud domain nameservers update example.com --nameservers ns1.example.net,ns2.example.netWhois情報設定
shincloud domain whois show <domain>
指定したドメインのWhois情報を取得します。
使用例
shincloud domain whois show example.comshincloud domain whois update <domain> --data <json>
Whois代理公開設定または登録者情報を更新します。--dataには whois_privacy または fields の少なくとも一方を含むJSONオブジェクトを指定します。whois_privacyをfalseにする場合は、fieldsに13キーすべてを含める必要があります。
オプション
| オプション | 必須 | 説明 |
|---|---|---|
--data <json> | 必須 | whois_privacy または fields を含むJSONオブジェクト(代理公開OFF時はfieldsの全13キーが必要) |
使用例
shincloud domain whois update example.com --data '{"whois_privacy":true}'shincloud domain whois update example.com --data '{"whois_privacy":true,"fields":{"first_name":"Taro","last_name":"Yamada"}}'レジストラロック設定
shincloud domain registrar-lock show <domain>
指定したドメインのレジストラロック(移管ロック)の状態を取得します。
使用例
shincloud domain registrar-lock show example.comshincloud domain registrar-lock update <domain> --locked <bool>
レジストラロック(移管ロック)の有効/無効を切り替えます。
オプション
| オプション | 必須 | 説明 |
|---|---|---|
--locked <bool> | 必須 | ロック状態(true / false) |
使用例
shincloud domain registrar-lock update example.com --locked trueshincloud domain registrar-lock update example.com --locked falseDNSレコード設定
shincloud domain dns list <domain>
指定したドメインのDNSレコード一覧を取得します。
使用例
shincloud domain dns list example.comshincloud domain dns add <domain> --host <host> --type <type> --content <content> [--ttl <ttl>] [--priority <priority>]
DNSレコードを新規追加します。
オプション
| オプション | 必須 | 説明 |
|---|---|---|
--host <host> | 必須 | ホスト名(ルートドメインは @) |
--type <type> | 必須 | レコードタイプ(A / AAAA / CNAME / MX / TXT / NS / SRV) |
--content <content> | 必須 | レコード値 |
--ttl <ttl> | 任意 | TTL(60-86400。デフォルト: 3600) |
--priority <priority> | 任意 | 優先度(0~999) |
使用例
shincloud domain dns add example.com --host www --type A --content 192.0.2.1shincloud domain dns add example.com --host @ --type MX --content mail.example.com --priority 10shincloud domain dns update <domain> <dns_id> [--host <host>] [--type <type>] [--content <content>] [--ttl <ttl>] [--priority <priority>]
指定したDNSレコードを部分更新します。host、type、content、ttl、priorityのうち1項目以上を指定してください。dns_idは正の整数です。
オプション
| オプション | 必須 | 説明 |
|---|---|---|
--host <host> | 任意 | ホスト名 |
--type <type> | 任意 | レコードタイプ(A / AAAA / CNAME / MX / TXT / NS / SRV) |
--content <content> | 任意 | レコード値 |
--ttl <ttl> | 任意 | TTL(60-86400) |
--priority <priority> | 任意 | 優先度(0~999) |
使用例
shincloud domain dns update example.com 12345 --content 192.0.2.2shincloud domain dns delete <domain> <dns_id> [options]
DNSレコード一覧から対象を取得して表示し、確認後に削除します。一覧に存在しないdns_idは実行前にエラーになります。削除後は元に戻せません。
オプション
| オプション | 必須 | 説明 |
|---|---|---|
-y, --yes | 任意 | 確認プロンプトをスキップ |
使用例
shincloud domain dns delete example.com 12345取得可否・価格
shincloud domain check <domain>
指定したドメイン名が新規取得可能か確認し、取得可能な場合は見積金額を取得します。申込や課金は行いません。利用には、APIキー管理画面で「このキーでドメインの新規取得・移管・更新(お申し込み)を許可する」を有効にしておく必要があります。
使用例
shincloud domain check example.comshincloud domain pricing [--tld <list>]
TLD別の取得・移管・更新価格を取得します。--tldを省略すると全対象TLDを取得します。利用には、APIキー管理画面で「このキーでドメインの新規取得・移管・更新(お申し込み)を許可する」を有効にしておく必要があります。
オプション
| オプション | 必須 | 説明 |
|---|---|---|
--tld <list> | 任意 | 絞り込むTLD(カンマ区切り) |
使用例
shincloud domain pricingshincloud domain pricing --tld com,net,jp取得・移管・契約更新
shincloud domain register <domain> --years <n> --expected-total-price <yen> --agree-to-terms [options]
ドメインを新規取得します。実申込の前に見積内容と金額を表示します。--dry-run指定時は申込を行いません。実申込には--confirm-purchaseと対話式ターミナルでの確認文字列入力が必要で、--yesでは代替できません。APIキーの操作対象が「指定ドメインのみ」の場合は利用できません。申込後は原則取り消せません。
オプション
| オプション | 必須 | 説明 |
|---|---|---|
--years <n> | 必須 | 契約年数(1~5) |
--expected-total-price <yen> | 必須 | 事前確認した税込合計金額(0以上の整数) |
--agree-to-terms | 必須 | ドメイン取得の「サービス利用規約」および「個人情報の取り扱いについて」へ明示的に同意 |
--nameservers <list> | 任意 | 取得時に設定するネームサーバー(1~6件、各255文字以内、カンマ区切り、重複不可) |
--dry-run | 任意 | 見積プレビューだけを実行し、申込を行わない |
--confirm-purchase | 任意 | 課金を伴う実申込を明示確認(実申込時は必須。続けて対話式ターミナルで確認文字列入力) |
--idempotency-key <key> | 任意 | 実申込の冪等性キー(英数字・_・-の8~64文字。省略時は自動生成) |
使用例
shincloud domain register example.com --years 1 --expected-total-price 1000 --agree-to-terms --dry-runshincloud domain register example.com --years 1 --expected-total-price 1000 --agree-to-terms --confirm-purchaseshincloud domain transfer <domain> --auth-code <code> --expected-total-price <yen> --agree-to-terms [options]
他社管理のドメイン移管を申請します。実申請の前に見積内容と金額を表示します。--dry-run指定時は申請を行いません。実申請には--confirm-purchaseと対話式ターミナルでの確認文字列入力が必要で、--yesでは代替できません。
オプション
| オプション | 必須 | 説明 |
|---|---|---|
--auth-code <code> | 必須 | 移管元で取得した移管認証コード(AuthCode) |
--expected-total-price <yen> | 必須 | 事前確認した税込合計金額(0以上の整数) |
--agree-to-terms | 必須 | ドメイン移管の「サービス利用規約」および「個人情報の取り扱いについて」へ明示的に同意 |
--dry-run | 任意 | 見積プレビューだけを実行し、申請を行わない |
--confirm-purchase | 任意 | 課金を伴う実申請を明示確認(実申請時は必須。続けて対話式ターミナルで確認文字列入力) |
--idempotency-key <key> | 任意 | 実申請の冪等性キー(英数字・_・-の8~64文字。省略時は自動生成) |
使用例
shincloud domain transfer example.com --auth-code AUTH-CODE --expected-total-price 1000 --agree-to-terms --dry-runshincloud domain transfer example.com --auth-code AUTH-CODE --expected-total-price 1000 --agree-to-terms --confirm-purchaseshincloud domain renew <domain> --years <n> --current-expiry-date <date> --expected-total-price <yen> [options]
ドメイン契約を更新します。実更新の前に見積内容と金額を表示します。--dry-run指定時は更新を行いません。実更新には--confirm-purchaseと対話式ターミナルでの確認文字列入力が必要で、--yesでは代替できません。
オプション
| オプション | 必須 | 説明 |
|---|---|---|
--years <n> | 必須 | 更新年数(1~5) |
--current-expiry-date <date> | 必須 | 現在の有効期限と一致するYYYY-MM-DD形式の日付 |
--expected-total-price <yen> | 必須 | 事前確認した税込合計金額(0以上の整数) |
--dry-run | 任意 | 見積プレビューだけを実行し、更新を行わない |
--confirm-purchase | 任意 | 課金を伴う実更新を明示確認(実更新時は必須。続けて対話式ターミナルで確認文字列入力) |
--idempotency-key <key> | 任意 | 実更新の冪等性キー(英数字・_・-の8~64文字。省略時は自動生成) |
使用例
shincloud domain renew example.com --years 1 --current-expiry-date 2027-08-12 --expected-total-price 1000 --dry-runshincloud domain renew example.com --years 1 --current-expiry-date 2027-08-12 --expected-total-price 1000 --confirm-purchase