シンクラウド ドメインAPI リファレンス
シン ドメインAPI は、シンドメインで提供しているドメイン管理機能(ネームサーバー・DNSレコード・Whois情報・レジストラロック)およびドメインの取得・移管・更新を REST API で利用するためのインターフェースです。
API の変更履歴は 更新履歴 を参照してください。
| 項目 | 値 |
|---|---|
| ベースURL | https://api.shin-server.jp |
| ベースパス | /v1/domain |
| 対象サービス | シンドメイン |
| プロトコル | HTTPS |
| レスポンス形式 | JSON |
| OpenAPI仕様 | openapi.json |
認証
すべてのリクエストで Authorization ヘッダーに Bearer トークン(APIキー)を付与してください。
Authorization: Bearer xs_xxxxxxxxxxxx...APIキーはシンクラウドアカウント(契約管理画面)の「APIキー管理」から発行できます。ドメイン用のAPIキーはユーザー単位で発行されます。
操作対象(対象ドメイン)
ドメイン用のAPIキーは、発行時に「すべてのドメイン」または「指定ドメインのみ」から操作範囲を選択できます。「指定ドメインのみ」のキーでは、キーが許可されたドメインに対してのみ操作でき、範囲外のドメインを指定しても操作できません。詳細は操作対象のドメインを参照してください。
権限(スコープ)
APIキー発行時に設定する権限によって、利用可能なAPIが異なります。各エンドポイントに表示されている必要な権限を確認してください。
| APIキーの権限 | 利用可能なAPI |
|---|---|
| すべての操作 | 読み取り + 書き込み のすべてのAPI |
| 読み取り専用 | 読み取り のAPIのみ |
| カスタム | 個別に選択した権限に応じたAPI |
カスタム権限では、以下のカテゴリごとに読み取り・書き込みを個別に設定できます。
| カテゴリ | 対象API |
|---|---|
| ドメイン情報 | ドメイン一覧・詳細の取得 |
| ネームサーバー | ネームサーバーの取得・変更 |
| DNS | DNSレコードの取得・追加・変更・削除 |
| Whois | Whois情報の取得・変更 |
| レジストラロック | レジストラロックの取得・変更 |
取得可能性・価格の確認、およびドメインの取得・移管・契約更新APIのご利用には、APIキー発行時に「このキーでドメインの新規取得・移管・更新(お申し込み)を許可する」チェックボックスにチェックを入れる必要があります。この許可は、上記のカスタム権限カテゴリとは別に設定されます。
チェックボックスを選択するには、Whois初期値設定の登録とプリペイド残高のご入金が必要です。また、権限が「読み取り専用」のキーでは、許可を有効にしてもドメインの取得・移管・契約更新は実行できません(取得可能性・価格の確認のみ利用できます)。
レート制限
レスポンスヘッダーでレート制限情報が返されます。
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 45
X-RateLimit-Reset: 1709654400
X-RateLimit-Concurrent-Limit: 5
X-RateLimit-Concurrent-Remaining: 4制限超過時は HTTP 429 と Retry-After ヘッダー(待機すべき秒数を整数で返却)が返されます。同時リクエスト数が上限を超えた場合も HTTP 429 が返されます。
また、認証失敗が短時間に連続した場合はIPアドレス単位で一時的にブロックされ、認証照合前に HTTP 429 が返されます。APIキーや認証ヘッダーの設定を確認してから再試行してください。
ドメインAPIのレート制限はユーザー単位で適用されます。同じユーザーが複数のAPIキーを発行しても、合算値で制限がかかります。
| 対象 | リクエスト/分 | リクエスト/日 | 同時接続数 |
|---|---|---|---|
| 全ユーザー共通 | 60 | 10,000 | 5 |
HTTPステータスコード
成功時
リクエストが正常に処理された場合、以下のステータスコードが返されます。
| ステータス | 意味 | 対象 |
|---|---|---|
200 | OK | すべてのリクエスト(GET / POST / PUT / DELETE)。ドメインの取得・移管申請・契約更新も同期処理され、200 で結果を返します(「取得・移管・更新の結果確認」参照) |
成功時のレスポンスボディは各エンドポイントのレスポンス例を参照してください。
エラーハンドリング
エラー時は以下の形式のJSONが返されます。
{
"error": {
"code": "VALIDATION_ERROR",
"message": "入力値が正しくありません",
"errors": [
"エラーメッセージ1",
"エラーメッセージ2"
]
}
}エラー時のHTTPステータスコード
| ステータス | 意味 | 説明 |
|---|---|---|
400 | Bad Request | リクエストが不正 |
401 | Unauthorized | 認証エラー(APIキーが無効・期限切れ) |
402 | Payment Required | プリペイド残高が不足している(取得・移管・更新API) |
403 | Forbidden | 権限不足(スコープ不足・操作範囲外のドメイン・IP制限等) |
404 | Not Found | リソースまたはエンドポイントが見つからない |
405 | Method Not Allowed | 対応していないHTTPメソッドを指定した |
409 | Conflict | ドメイン側の制約により操作を完了できなかった |
422 | Unprocessable Entity | バリデーションエラー |
429 | Too Many Requests | レート制限超過 |
500 | Internal Server Error | サーバー内部エラー |
502 | Bad Gateway | バックエンドとの通信でエラーが発生 |
503 | Service Unavailable | レジストラ側のシステムが一時的に利用できない |
エラーコード一覧
レスポンスの error.code には以下のいずれかの値が入ります(コードはすべて大文字の文字列で返されます)。
| コード | HTTP | 説明 |
|---|---|---|
BAD_REQUEST | 400 | リクエストの形式が不正(JSONのパースエラーなど) |
UNAUTHORIZED | 401 | APIキーが未指定・無効・期限切れ |
FORBIDDEN | 403 | APIキーの権限不足、操作範囲外のドメインへの操作、またはIP制限 |
NOT_FOUND | 404 | エンドポイントまたは対象リソースが見つからない場合の汎用コード |
METHOD_NOT_ALLOWED | 405 | エンドポイントが対応していないHTTPメソッドを指定した |
VALIDATION_ERROR | 422 | 入力値のバリデーションエラー。errors 配列にメッセージが含まれます |
DOMAIN_NOT_FOUND | 404 | 指定したドメインが存在しない、または操作対象外 |
RECORD_NOT_FOUND | 404 | 指定したDNSレコードが存在しない |
USER_NOT_FOUND | 404 | APIキーに紐づくユーザー情報を取得できない |
DOMAIN_NOT_ACTIVE | 409 | 対象ドメインが有効な状態ではないため、操作を実行できない |
MIGRATION_LOCKED | 409 | サービス統合等に伴う一時的な編集制限中のため、操作を実行できない |
WHOIS_NOT_EDITABLE | 409 | 対象ドメインはWhois情報の編集に対応していない(属性型JPドメイン等) |
MAIL_VALIDATION_REQUIRED | 409 | メールアドレス有効性確認が未完了のため、Whois情報を変更できない |
UNLOCK_BLOCKED | 409 | レジストラロックの解除には対象ドメインの解約申請が必要 |
PAYMENT_REQUIRED | 402 | プリペイド残高が不足している(取得・移管・更新API)。契約管理画面から入金のうえ再実行してください |
PRICE_MISMATCH | 422 | expected_total_price が現在の価格と一致しない(取得・移管・更新API)。取得可能確認APIで最新の価格を取得して再実行してください |
EXPIRY_MISMATCH | 409 | current_expiry_date が現在の有効期限と一致しない(契約更新API・二重更新の防止)。ドメイン詳細取得APIで最新の有効期限を確認して再実行してください |
DUPLICATE_REQUEST | 409 | 同じ Idempotency-Key のリクエストを処理中。先行リクエストの結果確定後に同じキーで再送すると、保存済みの同一レスポンスが返ります。4xx エラーで失敗した場合は同じキーのまま再送できます。5xx・502 で失敗した場合は、同じキーでの再送は48時間このコードになります |
DUPLICATE_OPERATION | 409 | 対象ドメインに進行中の手続き(取得・移管・更新等)があります。進行中の手続きが完了してから再実行してください |
DOMAIN_CONFLICT | 409 | ドメインの契約状態を特定できない。サポートまでお問い合わせください |
PREMIUM_NOT_SUPPORTED | 422 | プレミアムドメインはAPIから取得できない |
UNSUPPORTED_TLD_FOR_API | 422 | 指定したTLDは対象操作のAPIに対応していません。JPドメイン・属性型JPドメインはAPIから移管できません |
CREDIT_CARD_REQUIRED | 422 | 初回限定の0円キャンペーンを利用するには、会員管理画面でクレジットカードを登録する必要があります。 |
FREE_CAMPAIGN_NOT_AVAILABLE | 422 | 初回限定の0円キャンペーンの利用条件を満たしていません。会員管理画面から通常価格でお申し込みください。 |
REGISTRAR_REJECTED | 409 | レジストラが要求を受け付けなかった(登録内容や指定値がレジストラ側の条件を満たしていない等)。同じ内容で再試行しても結果は変わりません。message の内容をご確認のうえ、内容を見直して再実行してください |
REGISTRAR_ERROR | 500 | レジストラ側の処理でエラーが発生(レジストラに到達できない・応答が不正など)。時間をおいて再試行してください |
REGISTRAR_UNAVAILABLE | 503 | レジストラ側のシステムを一時的に利用できない。時間をおいて再試行してください |
RATE_LIMIT_EXCEEDED | 429 | 分あたり・日あたりのリクエスト上限を超過。Retry-After ヘッダーで待機秒数を確認できます |
INTERNAL_ERROR | 500 | API内部で予期しないエラーが発生 |
BACKEND_ERROR | 502 | バックエンドとの通信・応答処理でエラーが発生。時間をおいて再試行してください |
OPERATION_ERROR | 状況による | 上記に分類されないエラーのフォールバック(通常は返りません) |
共通仕様
ドメイン名(domain_name)について
APIのURLパスに含まれる {domain_name} には、対象ドメインのドメイン名を指定してください。
日本語ドメイン(国際化ドメイン名)は Punycode に変換して指定します(例: 日本語.jp → xn--wgv71a119e.jp)。レスポンスのドメイン名も Punycode 表記で返され、日本語ドメインの場合は decoded_domain フィールドに復号名が含まれます。
GET /v1/domain/example.com/nameservers操作対象のドメイン
APIキーを発行したユーザーが保有している契約ドメインが操作対象です。他のユーザーが保有するドメインは、ドメイン名を指定しても操作できません(404 が返されます)。DNSレコード設定のみ、外部ドメイン連携でDNS編集可能な状態のドメインも対象になります。
APIキーの操作範囲が「指定ドメインのみ」の場合は、許可されたドメインだけが操作対象です。ドメイン一覧(GET /v1/domain)も許可されたドメインのみを返します。範囲外のドメインを指定した場合は 403 が返されます。ドメインの取得(POST /v1/domain)は「すべてのドメイン」のキーでのみ利用できます。
取得可能性の確認(GET /v1/domain/check)と料金の確認(GET /v1/domain/pricing)は、特定のご契約に依存しない情報のため、操作範囲の制限を受けません。
DNSレコード設定の対象
DNSレコード設定APIは、当社ネームサーバーを利用している契約ドメイン、または外部ドメイン連携でDNS編集可能な状態のドメインが対象です。他社ネームサーバーを利用している場合、レコードを変更しても名前解決には反映されません。
ネームサーバーの設定が必要です: 取得直後のドメインは当社のドメイン用ネームサーバー(ns1.xdomain.ne.jp 〜 ns3.xdomain.ne.jp)に向いていない場合があり、その状態では本APIで設定したDNSレコードは名前解決に反映されません。ネームサーバー設定API(PUT /v1/domain/{domain_name}/nameservers)で当社ドメイン用ネームサーバーへ変更してください。
日時について
APIのレスポンスに含まれる日時はすべて日本時間(JST)で、タイムゾーン表記は付きません。
取得・移管・更新の結果確認
ドメインの取得・移管・契約更新は、リクエスト内で同期的に処理され、200 OK とともにレスポンスボディの domain に結果が返ります。ポーリング用のエンドポイントはありません。
取得(新規登録)
通常は domain.status が active で返り、その時点で取得は完了しています。レジストラ側の処理が保留された場合は、status が pending_create のまま 200 が返ります。この場合も申込は受け付けられており、通常は自動で解消されます(解消されない場合はサポートまでお問い合わせください)。その後の状態は ドメイン詳細取得API の status で確認できます。
契約更新
更新の成否は、レスポンスの domain.renewed(true で更新完了)と、expiry_date が previous_expiry_date から延長されていることで判定してください。
移管
移管はレジストリ側の承認を伴うため、申請が受け付けられた後も完了までに時間がかかります。申請に成功すると domain.status が transferring で返り、以降の進行は ドメイン詳細取得API の status で確認します(完了で active、失敗すると transfer_action_required)。
補足
- 同一ドメインで同時に進行できる手続きは1つです。進行中に新しい申込を行うと
409 DUPLICATE_OPERATIONになります。 - 課金を伴うAPIは、
dry_run=trueの場合を除きIdempotency-Keyヘッダーが必須です。8〜64文字の英数字・ハイフン・アンダースコアで指定してください(UUID推奨)。同じキー・同じ内容で48時間以内に再送した場合は二重課金されず、初回と同じレスポンスが返ります。 - 同じ
Idempotency-Keyで内容の異なるリクエストを送信した場合は、422 VALIDATION_ERRORが返ります。 - 4xx エラー(残高不足・価格不一致等)で失敗した場合は課金前に失敗しているため、同じキーのまま内容を修正して再送できます。5xx・502 で失敗した場合は処理結果が確定していない可能性があるため、同じキーでの再送は48時間
409 DUPLICATE_REQUESTになります。まずドメイン詳細取得と請求履歴で状態を確認し、未実行を確認できた場合のみ新しいキーで再申請してください。
APIキー情報
/v1/me
読み取り
認証中のAPIキー情報を取得
現在認証に使用しているAPIキーの情報を返します。有効期限・サービス種別を確認できます。
すべてのサービス(サーバー / ドメイン / XServer for WordPress)で共通のエンドポイントです。APIキーの疎通確認や、鍵の有効期限が切れていないかの確認に利用できます。
リクエスト例
curl \
"https://api.shin-server.jp/v1/me" \
-H "Authorization: Bearer YOUR_API_KEY"
レスポンスフィールド
| 名前 | 型 | 説明 |
|---|---|---|
service_type |
string | APIキーのサービス種別。ドメイン用のキーでは domain |
expires_at |
string|null | 有効期限。無期限の場合は null |
レスポンス例
{
"service_type": "domain",
"expires_at": "2027-04-16 00:00:00"
}
ドメイン情報
/v1/domain
読み取り
ドメイン一覧を取得
APIキーで操作できるドメインの一覧を返します。取得申込の処理中(pending_create)や移管中(transferring)のドメインも含まれます。解約済みの契約は含まれず、同じドメイン名の契約が複数ある場合は代表1件に集約して返します。
ドメイン用のAPIキーはユーザー単位で発行されます。操作範囲が「すべてのドメイン」のキーではユーザーが保有する全ドメイン、「指定ドメインのみ」のキーでは許可されたドメインだけを返します。
現在は全件を返します。将来ページングパラメータを追加する場合も、パラメータ未指定時の挙動(全件返却)は変更しません。
リクエスト例
curl \
"https://api.shin-server.jp/v1/domain" \
-H "Authorization: Bearer YOUR_API_KEY"
レスポンスフィールド
| 名前 | 型 | 説明 |
|---|---|---|
domains[].domain_name |
string | ドメイン名(Punycode表記) |
domains[].expiry_date |
string|null | 有効期限(YYYY-MM-DD)。取得申込の処理中など有効期限が未確定の場合は null |
domains[].status |
string | ドメインの状態
|
domains[].decoded_domain |
string|null | 日本語ドメインの復号名。日本語ドメイン以外は null |
レスポンス例
{
"domains": [
{
"domain_name": "example.com",
"expiry_date": "2026-12-31",
"status": "active",
"decoded_domain": null
},
{
"domain_name": "xn--wgv71a119e.jp",
"expiry_date": "2027-03-31",
"status": "active",
"decoded_domain": "日本語.jp"
}
]
}
/v1/domain/{domain_name}
読み取り
ドメイン詳細を取得
指定したドメインの詳細情報を返します。取得申込の処理中は status が pending_create、移管の進行中は transferring になります(「取得・移管・更新の結果確認」参照)。
パスパラメータ
| 名前 | 説明 |
|---|---|
domain_name | ドメイン名(Punycode表記) |
リクエスト例
curl \
"https://api.shin-server.jp/v1/domain/{domain_name}" \
-H "Authorization: Bearer YOUR_API_KEY"
レスポンスフィールド
| 名前 | 型 | 説明 |
|---|---|---|
domain_name |
string | ドメイン名(Punycode表記) |
expiry_date |
string|null | 有効期限(YYYY-MM-DD)。取得申込の処理中など有効期限が未確定の場合は null |
status |
string | ドメインの状態
|
auto_renew |
boolean | 自動更新設定の有無 |
epp_statuses |
string[] | 当社側で把握しているEPPステータス
|
decoded_domain |
string | 日本語ドメインの復号名(日本語ドメインの場合のみ含まれる) |
レスポンス例
{
"domain_name": "example.com",
"expiry_date": "2026-12-31",
"status": "active",
"auto_renew": true,
"epp_statuses": []
}
ネームサーバー設定
/v1/domain/{domain_name}/nameservers
読み取り
ネームサーバーを取得
有効(active)なドメインに設定されているネームサーバーの一覧を返します。
パスパラメータ
| 名前 | 説明 |
|---|---|
domain_name | ドメイン名(Punycode表記) |
リクエスト例
curl \
"https://api.shin-server.jp/v1/domain/{domain_name}/nameservers" \
-H "Authorization: Bearer YOUR_API_KEY"
レスポンスフィールド
| 名前 | 型 | 説明 |
|---|---|---|
nameservers |
string[] | ネームサーバーの配列 |
レスポンス例
{
"nameservers": ["ns1.example.jp", "ns2.example.jp"]
}
/v1/domain/{domain_name}/nameservers
書き込み
ネームサーバーを変更
ドメインのネームサーバーを、送信した内容で全件置き換えます。現在の設定への追加ではないため、設定したいネームサーバーをすべて指定してください。
パスパラメータ
| 名前 | 説明 |
|---|---|
domain_name | ドメイン名(Punycode表記) |
リクエストボディ
| 名前 | 型 | 必須 | 説明 |
|---|---|---|---|
nameservers |
string[] | 必須 | ネームサーバーの配列(1〜13件、各253文字以内)。ホスト名で指定し、同じ値は重複指定できません |
リクエスト例
curl \
-X PUT \
"https://api.shin-server.jp/v1/domain/{domain_name}/nameservers" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"nameservers": [
"ns1.example.jp",
"ns2.example.jp"
]
}'
レスポンスフィールド
| 名前 | 型 | 説明 |
|---|---|---|
nameservers |
string[] | 変更後のネームサーバーの配列 |
message |
string | 処理結果メッセージ |
レスポンス例
{
"nameservers": ["ns1.example.jp", "ns2.example.jp"],
"message": "ネームサーバーを変更しました"
}
DNSレコード設定
/v1/domain/{domain_name}/dns
読み取り
DNSレコード一覧を取得
ドメインのDNSレコードを一覧で返します。対応レコードタイプは A / AAAA / CNAME / MX / TXT / NS / SRV です(SOAレコードは取得・編集の対象外)。当社ネームサーバーを利用しているドメインが対象です。
ネームサーバーの設定が必要です: 取得直後のドメインは当社のドメイン用ネームサーバー(ns1.xdomain.ne.jp 〜 ns3.xdomain.ne.jp)に向いていない場合があり、その状態では本APIで設定したDNSレコードは名前解決に反映されません。ネームサーバー設定API(PUT /v1/domain/{domain_name}/nameservers)で当社ドメイン用ネームサーバーへ変更してください。
パスパラメータ
| 名前 | 説明 |
|---|---|
domain_name | ドメイン名(Punycode表記) |
リクエスト例
curl \
"https://api.shin-server.jp/v1/domain/{domain_name}/dns" \
-H "Authorization: Bearer YOUR_API_KEY"
レスポンスフィールド
| 名前 | 型 | 説明 |
|---|---|---|
records[].id |
integer | レコードID(更新・削除で使用) |
records[].type |
string | レコードタイプAAAAACNAMEMXTXTNSSRV |
records[].host |
string | ホスト名(@ は apex) |
records[].content |
string | レコードの内容(IPアドレス・ホスト名・テキスト等) |
records[].ttl |
integer | TTL(秒) |
records[].priority |
integer | 優先度(MX / SRV で使用。それ以外は 0) |
レスポンス例
{
"records": [
{
"id": 1,
"type": "A",
"host": "www",
"content": "192.0.2.1",
"ttl": 3600,
"priority": 0
}
]
}
/v1/domain/{domain_name}/dns
書き込み
DNSレコードを追加
ドメインにDNSレコードを追加します。レスポンスの id は後続の更新・削除で使用します。
ネームサーバーの設定が必要です: 取得直後のドメインは当社のドメイン用ネームサーバー(ns1.xdomain.ne.jp 〜 ns3.xdomain.ne.jp)に向いていない場合があり、その状態では本APIで設定したDNSレコードは名前解決に反映されません。ネームサーバー設定API(PUT /v1/domain/{domain_name}/nameservers)で当社ドメイン用ネームサーバーへ変更してください。
パスパラメータ
| 名前 | 説明 |
|---|---|
domain_name | ドメイン名(Punycode表記) |
リクエストボディ
| 名前 | 型 | 必須 | 説明 |
|---|---|---|---|
type |
string | 必須 | レコードタイプAAAAACNAMEMXTXTNSSRV |
host |
string | 必須 | ホスト名(@ で apex、最大64文字) |
content |
string | 必須 | レコードの内容(最大1024文字) |
ttl |
integer | 任意 | TTL(秒)。60〜86400。省略時は 3600 |
priority |
integer | 任意 | 優先度0〜999。MXSRV で使用(省略時は 0)。それ以外のレコードタイプでは 0 になります |
リクエスト例
curl \
-X POST \
"https://api.shin-server.jp/v1/domain/{domain_name}/dns" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"type": "A",
"host": "www",
"content": "192.0.2.1",
"ttl": 3600,
"priority": 0
}'
レスポンスフィールド
| 名前 | 型 | 説明 |
|---|---|---|
id |
integer | 追加されたDNSレコードのID(更新・削除で使用) |
type |
string | レコードタイプ |
host |
string | ホスト名 |
content |
string | レコードの内容 |
ttl |
integer | TTL(秒) |
priority |
integer | 優先度 |
message |
string | 処理結果メッセージ |
レスポンス例
{
"id": 1,
"type": "A",
"host": "www",
"content": "192.0.2.1",
"ttl": 3600,
"priority": 0,
"message": "DNSレコードを追加しました"
}
/v1/domain/{domain_name}/dns/{dns_id}
書き込み
DNSレコードを変更
既存のDNSレコードを変更します。送信した項目のみ更新され、省略した項目は現在の設定が維持されます。存在しないDNSレコードID、または他のユーザーのDNSレコードIDを指定した場合は 404(RECORD_NOT_FOUND)になります。
ネームサーバーの設定が必要です: 取得直後のドメインは当社のドメイン用ネームサーバー(ns1.xdomain.ne.jp 〜 ns3.xdomain.ne.jp)に向いていない場合があり、その状態では本APIで設定したDNSレコードは名前解決に反映されません。ネームサーバー設定API(PUT /v1/domain/{domain_name}/nameservers)で当社ドメイン用ネームサーバーへ変更してください。
パスパラメータ
| 名前 | 説明 |
|---|---|
domain_name | ドメイン名(Punycode表記) |
dns_id | DNSレコードID |
リクエストボディ
| 名前 | 型 | 必須 | 説明 |
|---|---|---|---|
type |
string | 任意 | レコードタイプAAAAACNAMEMXTXTNSSRV |
host |
string | 任意 | ホスト名(@ で apex、最大64文字) |
content |
string | 任意 | レコードの内容(最大1024文字) |
ttl |
integer | 任意 | TTL(秒)。60〜86400 |
priority |
integer | 任意 | 優先度0〜999。MXSRV 以外のレコードタイプでは 0 になります |
リクエスト例
curl \
-X PUT \
"https://api.shin-server.jp/v1/domain/{domain_name}/dns/{dns_id}" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"type": "A",
"host": "www",
"content": "192.0.2.2",
"ttl": 3600,
"priority": 0
}'
レスポンスフィールド
| 名前 | 型 | 説明 |
|---|---|---|
id |
integer | DNSレコードID |
type |
string | レコードタイプ |
host |
string | ホスト名 |
content |
string | レコードの内容 |
ttl |
integer | TTL(秒) |
priority |
integer | 優先度 |
message |
string | 処理結果メッセージ |
レスポンス例
{
"id": 1,
"type": "A",
"host": "www",
"content": "192.0.2.2",
"ttl": 3600,
"priority": 0,
"message": "DNSレコードを更新しました"
}
/v1/domain/{domain_name}/dns/{dns_id}
書き込み
DNSレコードを削除
指定したDNSレコードを削除します。存在しないDNSレコードID、または他のユーザーのDNSレコードIDを指定した場合は 404(RECORD_NOT_FOUND)になります。
ネームサーバーの設定が必要です: 取得直後のドメインは当社のドメイン用ネームサーバー(ns1.xdomain.ne.jp 〜 ns3.xdomain.ne.jp)に向いていない場合があり、その状態では本APIで設定したDNSレコードは名前解決に反映されません。ネームサーバー設定API(PUT /v1/domain/{domain_name}/nameservers)で当社ドメイン用ネームサーバーへ変更してください。
パスパラメータ
| 名前 | 説明 |
|---|---|
domain_name | ドメイン名(Punycode表記) |
dns_id | DNSレコードID |
リクエスト例
curl \
-X DELETE \
"https://api.shin-server.jp/v1/domain/{domain_name}/dns/{dns_id}" \
-H "Authorization: Bearer YOUR_API_KEY"
レスポンスフィールド
| 名前 | 型 | 説明 |
|---|---|---|
message |
string | 処理結果メッセージ |
レスポンス例
{
"message": "DNSレコードを削除しました"
}
Whois情報設定
/v1/domain/{domain_name}/whois
読み取り
Whois情報を取得
有効(active)かつWhois編集に対応しているドメインのWhois登録情報と代理公開設定を返します。属性型JPドメイン(co.jp 等)は対象外です。
パスパラメータ
| 名前 | 説明 |
|---|---|
domain_name | ドメイン名(Punycode表記) |
リクエスト例
curl \
"https://api.shin-server.jp/v1/domain/{domain_name}/whois" \
-H "Authorization: Bearer YOUR_API_KEY"
レスポンスフィールド
| 名前 | 型 | 説明 |
|---|---|---|
domain_name |
string | ドメイン名 |
whois_privacy |
boolean | 代理公開設定
|
is_whois_privacy_available |
boolean | 代理公開を利用できるか(TLDにより異なる) |
locked_by_migration |
boolean | 当社レジストラ切替に伴う一時制限中かどうか。true の間は Whois 変更・レジストラロック変更が MIGRATION_LOCKED(409)で拒否されます(期間終了後に自動解除) |
fields.organization_name |
string | 組織名 |
fields.first_name |
string | 名 |
fields.last_name |
string | 姓 |
fields.postal_code |
string | 郵便番号 |
fields.state_province |
string | 都道府県 |
fields.city |
string | 市区町村 |
fields.address1 |
string | 住所1 |
fields.address2 |
string | 住所2 |
fields.email |
string | メールアドレス |
fields.phone |
string | 電話番号(例: +81.9012345678) |
fields.fax |
string | FAX番号 |
fields.country |
string | 国コード(例: JP) |
fields.role |
string | 担当区分 |
mail_validation_required |
boolean | 現在の登録情報についてメールアドレス有効性確認が必要な状態か。true の場合、確認が完了するまでAPIからのWhois情報変更はできません。false は代理公開OFFへの変更可否を保証する値ではありません |
レスポンス例
{
"domain_name": "example.com",
"whois_privacy": false,
"is_whois_privacy_available": true,
"locked_by_migration": false,
"fields": {
"organization_name": "",
"first_name": "Taro",
"last_name": "Yamada",
"postal_code": "1000001",
"state_province": "Tokyo",
"city": "Chiyoda",
"address1": "1-1-1",
"address2": "",
"email": "admin@example.com",
"phone": "+81.9012345678",
"fax": "",
"country": "JP",
"role": ""
},
"mail_validation_required": false
}
/v1/domain/{domain_name}/whois
書き込み
Whois情報を変更
ドメインのWhois登録情報と代理公開設定を変更します。
fields と whois_privacy の少なくとも一方を指定してください。省略した項目は現在値を維持し、両方を省略すると 422 になります。
代理公開ONでは fields に空のオブジェクトを指定できます。代理公開OFFでは、fields に13キーすべてを含めてください。9項目は値必須(空文字不可)、4項目は値任意(空文字可)です。
メールアドレス有効性確認が未完了のドメイン、および属性型JPドメイン(co.jp 等)は、APIからの変更に対応していません。
レジストラが登録内容を受け付けなかった場合は 409(REGISTRAR_REJECTED)を返します。同じ内容で再試行しても結果は変わらないため、message の内容をご確認のうえ、指定値を見直して再実行してください。レジストラに到達できない場合は 500(REGISTRAR_ERROR)となり、こちらは時間をおいての再試行で回復する可能性があります。
パスパラメータ
| 名前 | 説明 |
|---|---|
domain_name | ドメイン名(Punycode表記) |
リクエストボディ
| 名前 | 型 | 必須 | 説明 |
|---|---|---|---|
whois_privacy |
boolean | 任意 | 代理公開設定
|
fields |
object | 任意 | Whois登録情報のオブジェクト。省略時は現在値を維持します。代理公開ONでは空のオブジェクトを指定できます。代理公開OFFでは13キーすべてが必要です。9項目は値必須(空文字不可)、4項目は値任意(空文字可)です |
fields.organization_name |
string | 任意 | 組織名。代理公開OFFでfields指定時はキー必須、空文字可 |
fields.first_name |
string | 任意 | 名(英字)。代理公開OFFでfields指定時はキー・値必須 |
fields.last_name |
string | 任意 | 姓(英字)。代理公開OFFでfields指定時はキー・値必須 |
fields.postal_code |
string | 任意 | 郵便番号。代理公開OFFでfields指定時はキー・値必須 |
fields.state_province |
string | 任意 | 都道府県(英字)。代理公開OFFでfields指定時はキー・値必須 |
fields.city |
string | 任意 | 市区町村(英字)。代理公開OFFでfields指定時はキー・値必須 |
fields.address1 |
string | 任意 | 住所1(英字)。代理公開OFFでfields指定時はキー・値必須 |
fields.address2 |
string | 任意 | 住所2(英字)。代理公開OFFでfields指定時はキー必須、空文字可 |
fields.email |
string | 任意 | メールアドレス。代理公開OFFでfields指定時はキー・値必須 |
fields.phone |
string | 任意 | 電話番号(例: +81.9012345678)。代理公開OFFでfields指定時はキー・値必須 |
fields.fax |
string | 任意 | FAX番号。代理公開OFFでfields指定時はキー必須、空文字可 |
fields.country |
string | 任意 | 国コード(例: JP)。代理公開OFFでfields指定時はキー・値必須 |
fields.role |
string | 任意 | 担当区分。代理公開OFFでfields指定時はキー必須、空文字可 |
リクエスト例
curl \
-X PUT \
"https://api.shin-server.jp/v1/domain/{domain_name}/whois" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"whois_privacy": true,
"fields": {
}
}'
レスポンスフィールド
| 名前 | 型 | 説明 |
|---|---|---|
message |
string | 処理結果メッセージ |
レスポンス例
{
"message": "Whois情報を保存しました。"
}
レジストラロック設定
/v1/domain/{domain_name}/registrar-lock
読み取り
レジストラロック状態を取得
レジストラロックに対応している有効(active)なドメインの移管ロック状態を返します。ロックが有効な間は他社への移管申請が承認されません。
他社への移管に必要な認証鍵(AuthCode)の取得は、APIでは提供していません。契約管理画面のドメインパネル「別サービスに移管」から取得してください。
パスパラメータ
| 名前 | 説明 |
|---|---|
domain_name | ドメイン名(Punycode表記) |
リクエスト例
curl \
"https://api.shin-server.jp/v1/domain/{domain_name}/registrar-lock" \
-H "Authorization: Bearer YOUR_API_KEY"
レスポンスフィールド
| 名前 | 型 | 説明 |
|---|---|---|
domain_name |
string | ドメイン名 |
locked |
boolean | レジストラロックが有効か |
locked_by_migration |
boolean | 当社レジストラ切替に伴う一時制限中かどうか。true の間はレジストラロック変更・Whois情報変更が MIGRATION_LOCKED(409)で拒否されます(期間終了後に自動解除) |
unlock_blocked |
boolean | true の場合、ロック解除には対象ドメインの解約申請が必要です(解除リクエストは UNLOCK_BLOCKED(409)になります) |
warn_on_lock |
boolean | true の場合、現在は解除中ですが、一度レジストラロックを設定するとドメイン解約時まで解除できません。設定前に画面と同じ注意を表示するためのフラグです |
レスポンス例
{
"domain_name": "example.com",
"locked": true,
"locked_by_migration": false,
"unlock_blocked": false,
"warn_on_lock": false
}
/v1/domain/{domain_name}/registrar-lock
書き込み
レジストラロックを変更
レジストラロックに対応している有効(active)なドメインの移管ロックを設定・解除します。契約種別によっては、解除前に対象ドメインの解約申請が必要です。上位レジストラの変更期間中は操作できません。
パスパラメータ
| 名前 | 説明 |
|---|---|
domain_name | ドメイン名(Punycode表記) |
リクエストボディ
| 名前 | 型 | 必須 | 説明 |
|---|---|---|---|
locked |
boolean | 必須 | true: ロックを設定 / false: ロックを解除 |
リクエスト例
curl \
-X PUT \
"https://api.shin-server.jp/v1/domain/{domain_name}/registrar-lock" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"locked": true
}'
レスポンスフィールド
| 名前 | 型 | 説明 |
|---|---|---|
locked |
boolean | 変更後のロック状態 |
message |
string | 処理結果メッセージ |
レスポンス例
{
"locked": true,
"message": "レジストラロックを設定しました"
}
取得可能性・価格
/v1/domain/check
読み取り
取得可能かを確認(空き確認+見積)
ドメインが取得可能かどうかと、取得・更新・移管の価格(税込・キャンペーン適用後)を返します。
各APIの expected_total_price には、取得・更新では価格に対象年数を掛けた合計金額、移管では transfer の金額を指定します。
取得できない場合は available が false になり、理由は reason と reason_message で確認できます。prices は、形式不正・取扱対象外TLD等で価格を判定できない場合に null になります。登録済み(reason: registered)の場合は、移管の見積等に利用できる参考価格を返します。プレミアムドメインはAPIから取得できないため、reason に premium が入ります。
クエリパラメータ
| 名前 | 型 | 必須 | 説明 |
|---|---|---|---|
domain_name |
string | 必須 | 確認するドメイン名(最大255文字)。日本語ドメインは Punycode(xn-- 形式)で指定してください。日本語のまま指定した場合は形式不正(reason: invalid_name)になります |
リクエスト例
curl \
"https://api.shin-server.jp/v1/domain/check?domain_name=VALUE" \
-H "Authorization: Bearer YOUR_API_KEY"
レスポンスフィールド
| 名前 | 型 | 説明 |
|---|---|---|
domain_name |
string | ドメイン名(Punycode表記) |
available |
boolean | 取得可能か |
reason |
string|null | 取得できない理由
|
reason_message |
string | 取得できない理由の詳細(available が false の場合のみ) |
premium |
boolean | プレミアム判定の互換フィールド(現行は false)。プレミアムドメインが取得対象外の場合は reason に premium が入ります |
prices |
object|null | 取得・更新・移管価格。形式不正・取扱対象外TLD等で価格を判定できない場合は null。登録済み(reason: registered)の場合は、移管の見積等に利用できる参考価格を返します |
prices.register |
integer | 取得価格(初年度・税込・円) |
prices.renew |
integer|null | 更新価格(1年あたり・税込・円)。価格を取得できない場合は null |
prices.transfer |
integer|null | 移管価格(税込・円)。移管API対象外のTLDは null |
prices.currency |
string | 通貨(JPY) |
prices.campaign_applied |
boolean | キャンペーン価格が適用されているか |
レスポンス例
{
"domain_name": "example.com",
"available": true,
"reason": null,
"premium": false,
"prices": {
"register": 1602,
"renew": 1602,
"transfer": 1602,
"currency": "JPY",
"campaign_applied": false
}
}
/v1/domain/pricing
読み取り
TLD別価格一覧を取得
ドメイン取得APIに対応しているTLDごとの取得・更新・移管価格(税込)を一覧で返します。
対応TLDは300件を超えるため、必要なTLDだけを取得したい場合は tld パラメータで絞り込んでください。
クエリパラメータ
| 名前 | 型 | 必須 | 説明 |
|---|---|---|---|
tld |
任意 | 取得するTLDを指定します。カンマ区切りで複数指定できます(例: com,net,jp)。先頭のドットは省略可。未指定の場合は全TLDを返します |
リクエスト例
curl \
"https://api.shin-server.jp/v1/domain/pricing" \
-H "Authorization: Bearer YOUR_API_KEY"
レスポンスフィールド
| 名前 | 型 | 説明 |
|---|---|---|
prices[].tld |
string | TLD(例: com) |
prices[].register |
integer | 取得価格(初年度・税込・円) |
prices[].renew |
integer|null | 更新価格(1年あたり・税込・円)。価格を取得できない場合は null |
prices[].transfer |
integer|null | 移管価格(税込・円)。移管API対象外のTLDは null |
prices[].currency |
string | 通貨(JPY) |
prices[].campaign_applied |
boolean | キャンペーン価格が適用されているか |
レスポンス例
{
"prices": [
{
"tld": "com",
"register": 1602,
"renew": 1602,
"transfer": 1602,
"currency": "JPY",
"campaign_applied": false
}
]
}
ドメイン取得
/v1/domain
書き込み
ドメインを取得(新規登録)
ドメインの新規取得を申し込みます。属性型JPドメイン(co.jp 等)とプレミアムドメインには対応していません。また、操作範囲が「指定ドメインのみ」のAPIキーからは利用できません(403 FORBIDDEN)。
通常価格はプリペイド残高から引き落とされます。初回限定0円キャンペーンが適用される場合は、クレジットカードを登録済みの会員に限り無料で取得できます。カード未登録の場合は CREDIT_CARD_REQUIRED、同じカードによる無料申込の重複利用対策に該当する場合は FREE_CAMPAIGN_NOT_AVAILABLE を返します。カードの登録・変更は、会員管理画面の「料金のお支払い」→「自動更新設定」から行ってください。
ご利用には、APIキー発行時に「ドメインの新規取得・移管・更新(お申し込み)を許可する」設定を有効にしておく必要があります。この設定を有効にするには、Whois初期値設定の登録とプリペイド残高のご入金が必要です。申込時のWhois情報には、登録済みの「Whois初期値設定」が使用されます。
dry_run が true の場合は、課金・登録を行わず、HTTP 200 で dry_run と total_price を返します。実申請には Idempotency-Key ヘッダーが必要です(UUID推奨)。
実申請はリクエスト内で登録まで同期的に処理され、成功すると HTTP 200 で domain(取得したドメインの情報)を返します。通常は status が active となり、その時点で取得は完了しています。レジストラ側の処理が保留された場合など、まれに status が pending_create のまま 200 が返ることがあります。この場合も申込は受け付けられており、通常は自動で解消されます(解消されない場合はサポートまでお問い合わせください)。その後の状態はドメイン詳細取得API(GET /v1/domain/{domain_name})の status で確認できます。詳しくは「取得・移管・更新の結果確認」を参照してください。
お支払い完了後にレジストラ側の処理が失敗・保留のまま解消されない場合、自動での返金は行われません。状況の確認・返金のご相談はサポートまでお問い合わせください。
リクエストヘッダー
| 名前 | 型 | 必須 | 説明 |
|---|---|---|---|
Idempotency-Key |
string | dry_run=false時必須 | 実申請時に必須。8〜64文字の英数字・ハイフン・アンダースコア(UUID推奨) |
リクエストボディ
| 名前 | 型 | 必須 | 説明 |
|---|---|---|---|
domain_name |
string | 必須 | 取得するドメイン名。日本語ドメインは Punycode(xn-- 形式)で指定してください。日本語のまま指定した場合は 422 になります |
years |
integer | 任意 | 契約年数。TLDごとの対応年数から指定します(最大5年、省略時は1) |
nameservers |
string[] | 任意 | ネームサーバー(最大6件、各255文字以内)。英数字・ハイフン・ドットで指定します。省略時は当社ネームサーバー |
expected_total_price |
integer | 必須 | 合計金額(税込・円・キャンペーン適用後)。取得可能確認APIが返した価格 × 年数を指定します。現在価格と一致しない場合はエラー(PRICE_MISMATCH)になります |
agree_to_terms |
boolean | 必須 | 利用規約への同意(true 必須) |
dry_run |
boolean | 任意 | true の場合、課金・登録を行わずに実行可否のみ検証 |
リクエスト例
curl \
-X POST \
"https://api.shin-server.jp/v1/domain" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Idempotency-Key: 550e8400-e29b-41d4-a716-446655440000" \
-H "Content-Type: application/json" \
-d '{
"domain_name": "example.com",
"years": 1,
"nameservers": [
"ns1.example.jp",
"ns2.example.jp"
],
"expected_total_price": 1602,
"agree_to_terms": true,
"dry_run": false
}'
レスポンスフィールド
| 名前 | 型 | 説明 |
|---|---|---|
domain.domain_name |
string | 取得したドメイン名(Punycode表記) |
domain.status |
string | ドメインの状態
|
domain.expiry_date |
string|null | 有効期限(YYYY-MM-DD)。pending_create の間は null |
domain.epp_statuses |
string[] | 当社側で把握しているEPPステータス(ドメイン詳細取得APIと同じ) |
レスポンス例
{
"domain": {
"domain_name": "example.com",
"status": "active",
"expiry_date": "2027-08-03",
"epp_statuses": []
}
}
レスポンスフィールド(dry_run=true の場合)
課金・登録を行わずに実行可否を検証した結果
| 名前 | 型 | 説明 |
|---|---|---|
dry_run |
boolean | dry run であることを示す値(true) |
total_price |
integer | 実申請時の合計金額(税込・円) |
レスポンス例(dry_run=true の場合)
{
"dry_run": true,
"total_price": 1602
}
ドメイン移管
/v1/domain/{domain_name}/transfer
書き込み
他社からの移管を申請
他社で管理しているドメインの移管(トランスファーイン)を申請します。対象は、価格一覧APIの transfer が null ではないTLDです。JPドメイン・属性型JPドメイン・プレミアムドメインには対応していません。移管料金として1年分の更新料金がプリペイド残高から引き落とされ、移管完了時に有効期限が1年延長されます。
ご利用には、APIキー発行時に「ドメインの新規取得・移管・更新(お申し込み)を許可する」設定を有効にしておく必要があります。
dry_run が true の場合は、課金・移管申請を行わず、HTTP 200 で dry_run と total_price を返します。実申請には Idempotency-Key ヘッダーが必要です(UUID推奨)。実申請は同期的に処理され、申請に成功すると HTTP 200 で domain(status: transferring)を返します。
移管はレジストリ側の承認を伴うため、申請後も完了までに時間がかかります。進行状況はドメイン詳細取得API(GET /v1/domain/{domain_name})の status で確認できます(完了で active、失敗すると transfer_action_required)。進行中の移管が残っている間は再申請できません。詳しくは「取得・移管・更新の結果確認」を参照してください。
お支払い完了後にレジストラ側の処理が失敗・保留のまま解消されない場合、自動での返金は行われません。状況の確認・返金のご相談はサポートまでお問い合わせください。
当社から他社への移管(トランスファーアウト)に必要な認証鍵の取得は、APIでは提供していません。契約管理画面のドメインパネル「別サービスに移管」から取得してください。
パスパラメータ
| 名前 | 説明 |
|---|---|
domain_name | 移管するドメイン名(Punycode表記) |
リクエストヘッダー
| 名前 | 型 | 必須 | 説明 |
|---|---|---|---|
Idempotency-Key |
string | dry_run=false時必須 | 実申請時に必須。8〜64文字の英数字・ハイフン・アンダースコア(UUID推奨) |
リクエストボディ
| 名前 | 型 | 必須 | 説明 |
|---|---|---|---|
auth_code |
string | 必須 | 認証鍵(AuthCode / EPPコード、最大255文字)。現在の管理事業者から取得したもの |
expected_total_price |
integer | 必須 | 合計金額(税込・円・キャンペーン適用後)。取得可能確認APIの transfer 価格を指定。不一致はエラー(PRICE_MISMATCH) |
agree_to_terms |
boolean | 必須 | 利用規約への同意(true 必須) |
dry_run |
boolean | 任意 | true の場合、課金・申請を行わずに実行可否のみ検証(60日ルール・ロック状態等の事前チェック) |
リクエスト例
curl \
-X POST \
"https://api.shin-server.jp/v1/domain/{domain_name}/transfer" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Idempotency-Key: 550e8400-e29b-41d4-a716-446655440000" \
-H "Content-Type: application/json" \
-d '{
"auth_code": "xxxxxxxxxxxx",
"expected_total_price": 1602,
"agree_to_terms": true,
"dry_run": false
}'
レスポンスフィールド
| 名前 | 型 | 説明 |
|---|---|---|
domain.domain_name |
string | 移管を申請したドメイン名(Punycode表記) |
domain.status |
string | ドメインの状態。申請成功時は transferring: 移管申請中 |
domain.expiry_date |
string|null | 有効期限(YYYY-MM-DD)。移管完了までは null |
domain.epp_statuses |
string[] | 当社側で把握しているEPPステータス(ドメイン詳細取得APIと同じ) |
レスポンス例
{
"domain": {
"domain_name": "example.com",
"status": "transferring",
"expiry_date": null,
"epp_statuses": ["pendingTransfer"]
}
}
レスポンスフィールド(dry_run=true の場合)
課金・移管申請を行わずに実行可否を検証した結果
| 名前 | 型 | 説明 |
|---|---|---|
dry_run |
boolean | dry run であることを示す値(true) |
total_price |
integer | 実申請時の合計金額(税込・円) |
レスポンス例(dry_run=true の場合)
{
"dry_run": true,
"total_price": 1602
}
契約更新
/v1/domain/{domain_name}/renew
書き込み
契約を更新(期限延長)
ドメインの契約期限を延長します。更新できるのは有効(active)なドメインのみです。失効後の更新・復旧はサポートまでご相談ください。料金はプリペイド残高から引き落とされます。二重更新を防ぐため、現在の有効期限(current_expiry_date)の指定が必須です。ご利用には、APIキー発行時に「ドメインの新規取得・移管・更新(お申し込み)を許可する」設定を有効にしておく必要があります。
dry_run が true の場合は、課金・更新を行わず、HTTP 200 で dry_run と total_price を返します。実申請には Idempotency-Key ヘッダーが必要です(UUID推奨)。
実申請はリクエスト内で更新まで同期的に処理され、成功すると HTTP 200 で domain を返します。更新の成否は renewed(true で更新完了)と、expiry_date が previous_expiry_date から延長されていることで判定してください。詳しくは「取得・移管・更新の結果確認」を参照してください。
パスパラメータ
| 名前 | 説明 |
|---|---|
domain_name | 更新するドメイン名(Punycode表記) |
リクエストヘッダー
| 名前 | 型 | 必須 | 説明 |
|---|---|---|---|
Idempotency-Key |
string | dry_run=false時必須 | 実申請時に必須。8〜64文字の英数字・ハイフン・アンダースコア(UUID推奨) |
リクエストボディ
| 名前 | 型 | 必須 | 説明 |
|---|---|---|---|
years |
integer | 必須 | 延長する年数。TLDごとの対応年数から指定します(最大5年) |
current_expiry_date |
string | 必須 | 現在の有効期限(YYYY-MM-DD)。実際の有効期限と一致しない場合はエラー(EXPIRY_MISMATCH)。二重更新の防止用 |
expected_total_price |
integer | 必須 | 合計金額(税込・円・キャンペーン適用後)。更新価格 × 年数。不一致はエラー(PRICE_MISMATCH) |
dry_run |
boolean | 任意 | true の場合、課金・更新を行わずに検証のみ |
リクエスト例
curl \
-X POST \
"https://api.shin-server.jp/v1/domain/{domain_name}/renew" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Idempotency-Key: 550e8400-e29b-41d4-a716-446655440000" \
-H "Content-Type: application/json" \
-d '{
"years": 1,
"current_expiry_date": "2026-12-31",
"expected_total_price": 1602,
"dry_run": false
}'
レスポンスフィールド
| 名前 | 型 | 説明 |
|---|---|---|
domain.domain_name |
string | 更新したドメイン名(Punycode表記) |
domain.status |
string | ドメインの状態(active: 有効) |
domain.expiry_date |
string | 更新後の有効期限(YYYY-MM-DD) |
domain.epp_statuses |
string[] | 当社側で把握しているEPPステータス(ドメイン詳細取得APIと同じ) |
domain.renewed |
boolean | 更新が完了したか。成否はこの値と expiry_date の延長で判定してください |
domain.previous_expiry_date |
string|null | 更新前の有効期限(YYYY-MM-DD)。有効期限を解決できなかった場合は null |
レスポンス例
{
"domain": {
"domain_name": "example.com",
"status": "active",
"expiry_date": "2027-12-31",
"epp_statuses": [],
"renewed": true,
"previous_expiry_date": "2026-12-31"
}
}
レスポンスフィールド(dry_run=true の場合)
課金・更新を行わずに実行可否を検証した結果
| 名前 | 型 | 説明 |
|---|---|---|
dry_run |
boolean | dry run であることを示す値(true) |
total_price |
integer | 実申請時の合計金額(税込・円) |
レスポンス例(dry_run=true の場合)
{
"dry_run": true,
"total_price": 1602
}