本文へ移動
runlot

ドメインの購入と更新

domains カテゴリーの 10 個の API 操作を扱います。

メソッドパス説明
GET/v1/orgs/{orgSlug}/domainsorg のドメイン(runlot domains list)
POST/v1/orgs/{orgSlug}/domainsドメインを購入します(runlot domains buy)
POST/v1/orgs/{orgSlug}/domains/checkドメイン名を調べます(runlot domains check)
POST/v1/orgs/{orgSlug}/domains/import所有しているドメインをインポートします(runlot domains import)
GET/v1/orgs/{orgSlug}/domains/{name}ドメイン情報と直近の変更履歴(runlot domains show)
POST/v1/orgs/{orgSlug}/domains/{name}/renewドメインを更新します(runlot domains renew)
POST/v1/orgs/{orgSlug}/domains/{name}/auto-renew自動更新の設定を変更します
POST/v1/orgs/{orgSlug}/domains/{name}/locktransfer lock のオン・オフを切り替えます(runlot domains lock|unlock)
POST/v1/orgs/{orgSlug}/domains/{name}/auth-codetransfer auth code を確認します(runlot domains auth-code)
POST/v1/orgs/{orgSlug}/domains/{name}/syncこのドメインをレジストラから今すぐ再読み込みします(runlot domains sync)

GET /v1/orgs/{orgSlug}/domains

viewer 以上が必要です。

operationId listDomains

ステータスコード説明レスポンスボディ
200一覧取得DomainList
403——
404——
503no_core — サービスが一時的に利用できませんError

POST /v1/orgs/{orgSlug}/domains

admin 以上が必要です — これは費用が発生する操作です。 domain.purchase として audit され、連絡先の詳細は audit log には保持されません。

登録直後、ドメインのネームサーバーは Runlot のもの(ns1~3.runlot.app)に設定されるため、別途の所有権確認は不要で、すぐにアプリを接続できます。ICANN の確認メールは contact アドレスに送信されます — 登録前に顧客に伝えてください。

同じリクエストを再送信しても安全です: 完了した購入は 200 を返し、中断された購入は中断した箇所から再開します。

operationId purchaseDomain

リクエストボディ: application/json ・ object

ステータスコード説明レスポンスボディ
200既に購入済みのドメイン(冪等)Domain
201購入完了Domain
400——
402payment_failed — 支払いが拒否されましたError
403——
409domain_taken・domain_unavailableError
422registrar_rejected — レジストラが送信した値(連絡先の詳細など)を拒否しました。何も登録されておらず、同じリクエストを再試行しても解決しません。修正した入力で新しいリクエストを送信してください。Error
502saga_incomplete、registrar_error — 購入が完了していません。同じリクエストを再送信すると、中断した箇所から続行されます。ここで報告されるのは、再試行で解決できる失敗のみです。502 のレスポンスボディは CDN 自体の HTML ページに置き換えられる場合があり、ブラウザクライアントでは code が見えないことがあります。Error
503no_core・registrar_not_configured・dns_not_configuredError

POST /v1/orgs/{orgSlug}/domains/check

member 以上が必要です。このリクエストがレジストラに直接問い合わせを行うためです。

priceCents は登録初年度分を、renewalCents は更新1年分をカバーします。初年度割引が一般的であるため、これらは別々に報告されます。

operationId checkDomains

リクエストボディ: application/json ・ object

ステータスコード説明レスポンスボディ
200名前ごとの利用可否object
400——
403——
503no_core・registrar_not_configuredError

POST /v1/orgs/{orgSlug}/domains/import

admin 以上が必要です。domain.import として audit されます。これはレジストラに問い合わせを行いません — ゾーンを作成するだけです。自分のレジストラでドメインのネームサーバーを ns1~3.runlot.app に向けると、以降 Runlot がその DNS を管理します。

operationId importDomain

リクエストボディ: application/json ・ object

ステータスコード説明レスポンスボディ
200既にインポート済みのドメイン(冪等)Domain
201インポート完了Domain
400——
403——
409domain_takenError
503no_core・dns_not_configuredError

GET /v1/orgs/{orgSlug}/domains/{name}

viewer 以上が必要です。他の org の名前は 404 を返します。

operationId getDomain

ステータスコード説明レスポンスボディ
200ドメインDomainDetail
403——
404——

POST /v1/orgs/{orgSlug}/domains/{name}/renew

admin 以上が必要です。domain.renew として監査されます。

operationId renewDomain

リクエストボディ: application/json ・ object

ステータスコード説明レスポンスボディ
200更新されたドメインDomain
400——
403——
404——

POST /v1/orgs/{orgSlug}/domains/{name}/auto-renew

admin 以上が必要です。レジストラでの自動更新は無効にしても有効のままです — 更新が1日遅れるだけでドメインを失うため、Runlot は先に更新し、後で課金します。この設定を無効にしてもキャンセルにはならず、UI にもその旨が表示されるべきです。

operationId setDomainAutoRenew

リクエストボディ: application/json ・ object

ステータスコード説明レスポンスボディ
200変更されたドメインDomain
400——
403——
404——

POST /v1/orgs/{orgSlug}/domains/{name}/lock

管理者以上が必要です。domain.lock として監査されます。

operationId setDomainLock

リクエストボディ: application/json ・ object

ステータスコード説明レスポンスボディ
200変更されたドメインDomain
400——
403——
404——

POST /v1/orgs/{orgSlug}/domains/{name}/auth-code

admin 以上が必要です。domain.auth_code として audit されます — コード自体は audit log には書き込まれません。保持している人が誰でもドメインを移管できてしまうためです。

このコードはいつでもリクエストできます。移管を遅らせる可能性があるのは、登録または前回の移管後の ICANN の60日ロックのみです。

operationId getDomainAuthCode

ステータスコード説明レスポンスボディ
200コードobject
403——
404——

POST /v1/orgs/{orgSlug}/domains/{name}/sync

メンバー以上の権限が必要です。有効期限・移管ロック・ネームサーバーについては、レジストラが正となる情報源です。レジストラがそのドメインをRunlotが保有していないと報告した場合、ステータスはtransferred_outになります — これは移管が完了したことを示すシグナルです。

operationId syncDomain

ステータスコード説明レスポンスボディ
200一致したドメインDomain
403——
404——

このページの目次