ラッコドメインAPI
ラッコドメインAPIのドキュメントです。APIを利用することで管理画面にログインすることなく、システムと連携しドメインの登録・更新などの操作を行うことができます。
よくある質問
・ラッコドメインAPIの利用条件/手順/制限は?
・API利用上の禁止事項はありますか?
API共通
APIにリクエストする際にapiKey
, rakkoId
を含めてリクエストする必要があります。
マイページのAPI設定からAPI使用をONに設定し、APIキーを取得してください。
APIは無料でご利用いただけますが、管理ドメイン10件以上またはラッコポイント10,000以上の保有が必要です。
resultがpending(受付)になった場合は、暫く後に処理が行われます。結果は操作履歴から確認してください。 API停止条件:「直近30分・500リクエスト以上」または「直近10分・失敗10以上」
1. Domain Management
domainCheck
ドメイン登録可否確認API
ドメインの登録可否情報を返却します。
お取り扱いドメイン(TLD)は「ドメイン価格一覧」からご確認いただけます。
Example request:
curl -X POST \
"https://rakkodomain.com/api/v1/domain/check" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"apiKey":"[your api key]","rakkoId":100000,"keyword":"sample-domain","tlds":["com"]}'
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://rakkodomain.com/api/v1/domain/check',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'apiKey' => '[your api key]',
'rakkoId' => 100000,
'keyword' => 'sample-domain',
'tlds' => [
'com',
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://rakkodomain.com/api/v1/domain/check'
payload = {
"apiKey": "[your api key]",
"rakkoId": 100000,
"keyword": "sample-domain",
"tlds": [
"com"
]
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200, success):
{
"result": "success",
"errors": [],
"data": {
"domainName": "sample-domain",
"idn": "sample-domain",
"tlds": [
{
"tld": "com",
"status": 1
},
{
"tld": "net",
"status": 0
}
]
}
}
Request
POST
api/v1/domain/check
Body Parameters
apiKey
string
ユーザー個別に発行されたAPIキー
rakkoId
integer
ラッコID
keyword
string
登録可否確認対象のキーワード
tlds
array
登録可否確認TLD配列(最大25件)
tlds.*
string
TLD
Response Fields
domainName
string
登録可否確認対象ドメイン名
idn
string
登録可否確認対象ドメイン名(国際化ドメイン)
tlds
array
登録可否確認結果オブジェクト配列
tlds.[].tld
string
TLD
tlds.[].status
string
登録可否ステータス
・1: 登録可能
・0: 登録不可
domainList
管理ドメイン一覧取得API
検索条件に一致した管理ドメインの一覧情報を返却します。1ページあたりの出力件数は最大100件。
Example request:
curl -X POST \
"https://rakkodomain.com/api/v1/domain/list" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"apiKey":"[your api key]","rakkoId":100000,"key":"sample-domain sample123","sort":"due_date_ascend","page":1,"whois":"proxy_release","isAutoRenewal":0,"isDomainLock":0,"status":1,"isTrash":0,"nameServer":"01.dnsv.jp","obtainDateStart":"2020-06-01","obtainDateEnd":"2020-06-30","dueDateStart":"2021-06-01","dueDateEnd":"2021-06-30"}'
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://rakkodomain.com/api/v1/domain/list',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'apiKey' => '[your api key]',
'rakkoId' => 100000,
'key' => 'sample-domain sample123',
'sort' => 'due_date_ascend',
'page' => 1,
'whois' => 'proxy_release',
'isAutoRenewal' => 0,
'isDomainLock' => 0,
'status' => 1,
'isTrash' => 0,
'nameServer' => '01.dnsv.jp',
'obtainDateStart' => '2020-06-01',
'obtainDateEnd' => '2020-06-30',
'dueDateStart' => '2021-06-01',
'dueDateEnd' => '2021-06-30',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://rakkodomain.com/api/v1/domain/list'
payload = {
"apiKey": "[your api key]",
"rakkoId": 100000,
"key": "sample-domain sample123",
"sort": "due_date_ascend",
"page": 1,
"whois": "proxy_release",
"isAutoRenewal": 0,
"isDomainLock": 0,
"status": 1,
"isTrash": 0,
"nameServer": "01.dnsv.jp",
"obtainDateStart": "2020-06-01",
"obtainDateEnd": "2020-06-30",
"dueDateStart": "2021-06-01",
"dueDateEnd": "2021-06-30"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200, success):
{
"result": "success",
"errors": [],
"data": {
"total": 2,
"currentPage": 1,
"domains": [
{
"domainName": "sample-domain.com",
"idn": "sample-domain.com",
"isWhoisProxyEnabledFlg": 1,
"isWhoisProcessingFlg": 0,
"isAutoRenewalEnabledFlg": 1,
"isDomainLockEnabledFlg": 1,
"regContactId": 7,
"admContactId": 7,
"tecContactId": 7,
"bilContactId": 7,
"obtainDate": "2020-04-14",
"dueDate": "2022-04-14",
"createdAt": "2020-04-14 12:01:27",
"updatedAt": "2020-04-14 15:03:15",
"domainNameServers": [
"01.dnsv.jp",
"02.dnsv.jp"
]
},
{
"domainName": "xn--tck5a9g.jp",
"idn": "ラッコ.jp",
"isWhoisProxyEnabledFlg": 1,
"isWhoisProcessingFlg": 0,
"isAutoRenewalEnabledFlg": 1,
"isDomainLockEnabledFlg": 1,
"regContactId": 7,
"admContactId": 7,
"tecContactId": 7,
"bilContactId": 7,
"obtainDate": "2020-04-14",
"dueDate": "2022-04-14",
"createdAt": "2020-04-14 12:01:27",
"updatedAt": "2020-04-14 15:03:15",
"domainNameServers": [
"01.dnsv.jp",
"02.dnsv.jp"
]
}
]
}
}
Request
POST
api/v1/domain/list
Body Parameters
apiKey
string
ユーザー個別に発行されたAPIキー
rakkoId
integer
ラッコID
key
string optional
キーワード検索文字列。スペース区切りで複数指定可能
sort
string optional
並び順
・due_date_ascend: 有効期限が近い順
・due_date_descend: 有効期限が遠い順
・obtain_date_descend: 登録日が近い順
・obtain_date_ascend: 登録日が遠い順
・name_ascend: ドメイン名昇順
・name_descend: ドメイン名降順
page
integer optional
ページ番号
whois
string optional
WHOIS情報
・proxy_release: WHOIS代理公開
・not_proxy_release: WHOIS代理公開以外
・processing: WHOIS変更中
・(数値): WHOISコンタクト情報一覧取得APIで取得したid
isAutoRenewal
integer optional
自動更新
・0: 自動更新OFF
・1: 自動更新ON
isDomainLock
integer optional
ドメインロック
・0: ドメインロックOFF
・1: ドメインロックON
status
integer optional
ステータス
・1: 有効
・2: 30日以内期限切れ
・3: 期限切れ(更新可能)
・4: 期限切れ(復旧可能)
isTrash
integer optional
ごみ箱
・0: ごみ箱に入っていないドメインのみ
・1: ごみ箱に入っているドメインのみ
※指定しない場合:0
nameServer
string optional
ネームサーバー1の情報
obtainDateStart
string optional
登録日(from)date_format:Y-m-d
obtainDateEnd
string optional
登録日(to)date_format:Y-m-d
dueDateStart
string optional
有効期限(from)date_format:Y-m-d
dueDateEnd
string optional
有効期限(to)date_format:Y-m-d
Response Fields
total
integer
ドメイン件数(条件に一致する全て)
currentPage
integer
現在のページ
domains
array
ドメイン情報オブジェクト配列
domains.[].domainName
string
ドメイン名(IDNの場合、punycode)
domains.[].idn
string
国際化ドメイン名
domains.[].isWhoisProxyEnabledFlg
integer
WHOIS代理公開
・0: WHOIS代理公開以外
・1: WHOIS代理公開
domains.[].isWhoisProcessingFlg
integer
WHOIS変更処理
・0: WHOIS処理中以外
・1: WHOIS変更処理中(メール承認必要)
・2: WHOIS変更処理中(メール承認不要)
domains.[].isAutoRenewalEnabledFlg
integer
自動更新
・0: 自動更新OFF
・1: 自動更新ON
domains.[].isDomainLockEnabledFlg
integer
ドメインロック
・0: ドメインロックOFF
・1: ドメインロックON
domains.[].regContactId
integer
WHOIS情報の登録者情報ID。WHOIS代理公開の場合null
domains.[].admContactId
integer
WHOIS情報の管理担当者情報ID。WHOIS代理公開の場合null
domains.[].tecContactId
integer
WHOIS情報の技術担当者情報ID。WHOIS代理公開の場合null
domains.[].bilContactId
integer
WHOIS情報の経理担当社情報ID。WHOIS代理公開の場合null
domains.[].obtainDate
string
ドメイン登録日(date_format:Y-m-d)
domains.[].dueDate
string
ドメイン有効期限(date_format:Y-m-d)
domains.[].createdAt
string
データ登録日(date_format:Y-m-d H:i:s)
domains.[].updatedAt
string
データ更新日(date_format:Y-m-d H:i:s)
domains.[].domainNameServers
array
ネームサーバー情報配列
domains.[].domainNameServers.[]
string
ネームサーバー情報(ns1, ns2まで返却)
domainInfo
管理ドメイン詳細取得API
指定した管理ドメインの詳細情報を返却します。ドメインステータス・WHOIS情報・DNS設定情報
Example request:
curl -X POST \
"https://rakkodomain.com/api/v1/domain/info" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"apiKey":"[your api key]","rakkoId":100000,"domainName":"sample-domain.com"}'
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://rakkodomain.com/api/v1/domain/info',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'apiKey' => '[your api key]',
'rakkoId' => 100000,
'domainName' => 'sample-domain.com',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://rakkodomain.com/api/v1/domain/info'
payload = {
"apiKey": "[your api key]",
"rakkoId": 100000,
"domainName": "sample-domain.com"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200, success):
{
"result": "success",
"errors": [],
"data": {
"domainName": "xn--tck5a9g.jp",
"idn": "ラッコ.jp",
"isWhoisProxyEnabledFlg": 0,
"isWhoisProcessingFlg": 0,
"isDomainLockEnabledFlg": 0,
"isAutoRenewalEnabledFlg": 0,
"regContactId": 37,
"admContactId": 37,
"tecContactId": 37,
"bilContactId": 37,
"obtainDate": "2020-05-20",
"dueDate": "2021-05-20",
"createdAt": "2020-05-20 11:13:59",
"updatedAt": "2020-05-20 11:13:59",
"regContact": {
"contactId": 37,
"email": "whois@rakkodomain.com",
"lastName": "Sakatani",
"firstName": "Yasutaka",
"role": "2",
"organization": "Rakko, Inc.",
"cc": "JP",
"pc": "8100073",
"sp": "40",
"city": "Chuo-ku, Fukuoka-shi",
"street1": "3-1-30, Maiduru",
"street2": "Yutoku Building No.2",
"phoneCountryCode": "81",
"phone": "05031878542",
"faxCountryCode": null,
"fax": null,
"createdAt": "2020-05-20 09:40:56",
"updatedAt": "2020-05-20 09:40:56"
},
"admContact": {
"contactId": 37,
"email": "whois@rakkodomain.com",
"lastName": "Sakatani",
"firstName": "Yasutaka",
"role": "2",
"organization": "Rakko, Inc.",
"cc": "JP",
"pc": "8100073",
"sp": "40",
"city": "Chuo-ku, Fukuoka-shi",
"street1": "3-1-30, Maiduru",
"street2": "Yutoku Building No.2",
"phoneCountryCode": "81",
"phone": "05031878542",
"faxCountryCode": null,
"fax": null,
"createdAt": "2020-05-20 09:40:56",
"updatedAt": "2020-05-20 09:40:56"
},
"tecContact": {
"contactId": 37,
"email": "whois@rakkodomain.com",
"lastName": "Sakatani",
"firstName": "Yasutaka",
"role": "2",
"organization": "Rakko, Inc.",
"cc": "JP",
"pc": "8100073",
"sp": "40",
"city": "Chuo-ku, Fukuoka-shi",
"street1": "3-1-30, Maiduru",
"street2": "Yutoku Building No.2",
"phoneCountryCode": "81",
"phone": "05031878542",
"faxCountryCode": null,
"fax": null,
"createdAt": "2020-05-20 09:40:56",
"updatedAt": "2020-05-20 09:40:56"
},
"bilContact": {
"contactId": 37,
"email": "whois@rakkodomain.com",
"lastName": "Sakatani",
"firstName": "Yasutaka",
"role": "2",
"organization": "Rakko, Inc.",
"cc": "JP",
"pc": "8100073",
"sp": "40",
"city": "Chuo-ku, Fukuoka-shi",
"street1": "3-1-30, Maiduru",
"street2": "Yutoku Building No.2",
"phoneCountryCode": "81",
"phone": "05031878542",
"faxCountryCode": null,
"fax": null,
"createdAt": "2020-05-20 09:40:56",
"updatedAt": "2020-05-20 09:40:56"
},
"domainNameServers": [
{
"name": "01.dnsv.jp",
"priority": 1,
"createdAt": "2020-05-20 12:37:50",
"updatedAt": "2020-05-20 12:37:50"
},
{
"name": "02.dnsv.jp",
"priority": 2,
"createdAt": "2020-05-20 12:37:50",
"updatedAt": "2020-05-20 12:37:50"
}
],
"domainNameSystems": [
{
"recordNum": 0,
"hostName": "a.xn--tck5a9g.jp.",
"record": "12.34.56.78",
"recordType": 20,
"ttl": 86400,
"priority": null,
"weight": null,
"port": null,
"keyTag": null,
"alg": null,
"digestType": null,
"digest": null,
"createdAt": "2020-05-29 10:02:40",
"updated_at": "2020-05-29 10:02:40"
},
{
"recordNum": 1,
"hostName": "_srv._proto.srv.xn--tck5a9g.jp.",
"record": ".",
"recordType": 90,
"ttl": 86400,
"priority": 10,
"weight": 100,
"port": 25,
"keyTag": null,
"alg": null,
"digestType": null,
"digest": null,
"createdAt": "2020-05-29 10:02:40",
"updatedAt": "2020-05-29 10:02:40"
}
]
}
}
Request
POST
api/v1/domain/info
Body Parameters
apiKey
string
ユーザー個別に発行されたAPIキー
rakkoId
integer
ラッコID
domainName
string
ドメイン名(IDNの場合、punycode)
Response Fields
domainName
string
ドメイン名(IDNの場合、punycode)
idn
string
国際化ドメイン名
isWhoisProxyEnabledFlg
integer
WHOIS代理公開
・0: WHOIS代理公開以外
・1: WHOIS代理公開
isWhoisProcessingFlg
integer
WHOIS変更処理
・0: WHOIS処理中以外
・1: WHOIS変更処理中(メール承認必要)
・2: WHOIS変更処理中(メール承認不要)
isDomainLockEnabledFlg
integer
ドメインロック
・0: ドメインロックOFF
・1: ドメインロックON
isAutoRenewalEnabledFlg
integer
自動更新
・0: 自動更新OFF
・1: 自動更新ON
regContactId
integer
WHOIS情報の登録者情報ID。WHOIS代理公開の場合null
admContactId
integer
WHOIS情報の管理担当者情報ID。WHOIS代理公開の場合null
tecContactId
integer
WHOIS情報の技術担当者情報ID。WHOIS代理公開の場合null
bilContactId
integer
WHOIS情報の経理担当者情報ID。WHOIS代理公開の場合null
obtainDate
string
ドメイン登録日(date_format:Y-m-d)
dueDate
string
ドメイン有効期限(date_format:Y-m-d)
createdAt
string
データ登録日(date_format:Y-m-d H:i:s)
updatedAt
string
データ更新日(date_format:Y-m-d H:i:s)
regContact
object
WHOIS情報の登録者情報オブジェクト。WHOIS代理公開の場合null
regContact.contactId
integer
WHOISコンタクト情報ID
regContact.email
string
メールアドレス
regContact.lastName
string
姓
regContact.firstName
string
名
regContact.role
string
種類
・1: 個人
・2: 組織
regContact.organization
string
組織名
regContact.cc
string
国コード(ISO3166 2桁)
regContact.pc
string
郵便番号
regContact.sp
string
都道府県コード(JISX0401)
regContact.city
string
市区
regContact.street1
string
市区町村
regContact.street2
string
建物名・ビル名(任意項目)設定ない場合null
regContact.phoneCountryCode
string
電番番号 国際電話番号
regContact.phone
string
電番番号
regContact.faxCountryCode
string
FAX番号 国際電話番号(任意項目)設定ない場合null
regContact.fax
string
FAX番号(任意項目)設定ない場合null
regContact.createdAt
string
データ登録日(date_format:Y-m-d H:i:s)
regContact.updatedAt
string
データ登録日(date_format:Y-m-d H:i:s)
admContact
object
WHOIS情報の管理担当者情報オブジェクト。設定値はregContactと同様
tecContact
object
WHOIS情報の技術担当者情報オブジェクト。設定値はregContactと同様
bilContact
object
WHOIS情報の経理担当者情報オブジェクト。設定値はregContactと同様
domainNameServers
array
ネームサーバー情報オブジェクト配列
domainNameServers.[].name
string
ネームサーバー名
domainNameServers.[].priority
integer
優先順位
domainNameServers.[].createdAt
string
データ登録日(date_format:Y-m-d H:i:s)
domainNameServers.[].updatedAt
string
データ更新日(date_format:Y-m-d H:i:s)
domainNameSystems
array
DNS情報オブジェクト配列
domainNameSystems.[].recordNum
integer
レコード番号
domainNameSystems.[].hostName
string
ホスト名
domainNameSystems.[].record
string
レコード
domainNameSystems.[].recordType
integer
レコードタイプ
・10: NSレコード
・20: Aレコード
・30: CNAMEレコード
・40: MXレコード
・50: TXTレコード
・60: AAAAレコード
・90: SRVレコード
・100: DSレコード
domainNameSystems.[].ttl
integer
キャッシュ有効時間
domainNameSystems.[].priority
integer
優先度
domainNameSystems.[].weight
integer
重み(レコードタイプ: 90 SRV)
domainNameSystems.[].port
integer
ポート番号(レコードタイプ: 90 SRV)
domainNameSystems.[].keyTag
integer
鍵タグ(レコードタイプ: 100 DS)
domainNameSystems.[].alg
integer
アルゴリズム(レコードタイプ: 100 DS)
domainNameSystems.[].digestType
integer
ダイジェストタイプ(レコードタイプ: 100 DS)
domainNameSystems.[].digest
string
ダイジェスト(レコードタイプ: 100 DS)
domainNameSystems.[].createdAt
string
データ登録日(date_format:Y-m-d H:i:s)
domainNameSystems.[].updatedAt
string
データ更新日(date_format:Y-m-d H:i:s)
authcodeRequest
AUTHCODE取得API
管理ドメインのAUTHCODE取得申請を行います。成功した場合の取得結果はメールにて通知いたします。
Example request:
curl -X POST \
"https://rakkodomain.com/api/v1/domain/authcode_request" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"apiKey":"[your api key]","rakkoId":100000,"domainName":"sample-domain.com"}'
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://rakkodomain.com/api/v1/domain/authcode_request',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'apiKey' => '[your api key]',
'rakkoId' => 100000,
'domainName' => 'sample-domain.com',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://rakkodomain.com/api/v1/domain/authcode_request'
payload = {
"apiKey": "[your api key]",
"rakkoId": 100000,
"domainName": "sample-domain.com"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200, success):
{
"result": "success",
"errors": [],
"data": []
}
Example response (200, error):
{
"result": "error",
"errors": [
"error message"
],
"data": []
}
Request
POST
api/v1/domain/authcode_request
Body Parameters
apiKey
string
ユーザー個別に発行されたAPIキー
rakkoId
integer
ラッコID
domainName
string
ドメイン名(IDNの場合、punycode)
domainCreate
ドメイン登録API
新規にドメインを登録します。ドメイン購入にはラッコポイントが必要です。クレジットカードを登録されている場合は不足分がオートチャージされます。
ドメイン名・登録年数以外は「ドメイン初期設定」の情報を基に登録されます。
Example request:
curl -X POST \
"https://rakkodomain.com/api/v1/domain/create" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"apiKey":"[your api key]","rakkoId":100000,"domainName":"sample-domain.com","period":1}'
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://rakkodomain.com/api/v1/domain/create',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'apiKey' => '[your api key]',
'rakkoId' => 100000,
'domainName' => 'sample-domain.com',
'period' => 1,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://rakkodomain.com/api/v1/domain/create'
payload = {
"apiKey": "[your api key]",
"rakkoId": 100000,
"domainName": "sample-domain.com",
"period": 1
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200, success):
{
"result": "success",
"errors": [],
"data": {
"domainName": "sample-domain.com",
"idn": "sample-domain.com",
"usePoint": 1350,
"chargePoint": 0
}
}
Example response (200, pending):
{
"result": "pending",
"errors": [],
"data": {
"domainName": "sample-domain.com",
"idn": "sample-domain.com",
"usePoint": 1350,
"chargePoint": 0
}
}
Example response (200, error):
{
"result": "error",
"errors": [
"error message"
],
"data": []
}
Request
POST
api/v1/domain/create
Body Parameters
apiKey
string
ユーザー個別に発行されたAPIキー
rakkoId
integer
ラッコID
domainName
string
ドメイン名
period
integer
登録年数
Response Fields
domainName
string
ドメイン名(IDNの場合、punycode)
idn
string
国際化ドメイン名
usePoint
integer
使用したラッコポイント
chargePoint
integer
自動購入したラッコポイント(クレジットカード登録時のみ)
domainRenewal
ドメイン有効期限更新API
管理ドメインの有効期限を更新します。ドメイン更新にはラッコポイントが必要です。クレジットカードを登録されている場合は不足分がオートチャージされます。
Example request:
curl -X POST \
"https://rakkodomain.com/api/v1/domain/renewal" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"apiKey":"[your api key]","rakkoId":100000,"domainName":"sample-domain.com","period":1}'
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://rakkodomain.com/api/v1/domain/renewal',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'apiKey' => '[your api key]',
'rakkoId' => 100000,
'domainName' => 'sample-domain.com',
'period' => 1,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://rakkodomain.com/api/v1/domain/renewal'
payload = {
"apiKey": "[your api key]",
"rakkoId": 100000,
"domainName": "sample-domain.com",
"period": 1
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200, success):
{
"result": "success",
"errors": [],
"data": {
"usePoint": 1350,
"chargePoint": 0
}
}
Example response (200, pending):
{
"result": "pending",
"errors": [],
"data": {
"usePoint": 1350,
"chargePoint": 0
}
}
Example response (200, error):
{
"result": "error",
"errors": [
"error message"
],
"data": []
}
Request
POST
api/v1/domain/renewal
Body Parameters
apiKey
string
ユーザー個別に発行されたAPIキー
rakkoId
integer
ラッコID
domainName
string
ドメイン名(IDNの場合、punycode)
period
integer
更新年数(1年〜9年)
Response Fields
usePoint
integer
使用したラッコポイント
chargePoint
integer
自動購入したラッコポイント(クレジットカード登録時のみ)
domainNameServerUpdate
ドメインネームサーバー変更API
管理ドメインのネームサーバーを変更します。
Example request:
curl -X POST \
"https://rakkodomain.com/api/v1/domain/name_server_update" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"apiKey":"[your api key]","rakkoId":100000,"domainName":"sample-domain.com","nameServers":["01.dnsv.jp"]}'
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://rakkodomain.com/api/v1/domain/name_server_update',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'apiKey' => '[your api key]',
'rakkoId' => 100000,
'domainName' => 'sample-domain.com',
'nameServers' => [
'01.dnsv.jp',
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://rakkodomain.com/api/v1/domain/name_server_update'
payload = {
"apiKey": "[your api key]",
"rakkoId": 100000,
"domainName": "sample-domain.com",
"nameServers": [
"01.dnsv.jp"
]
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200, success):
{
"result": "success",
"errors": [],
"data": []
}
Example response (200, pending):
{
"result": "pending",
"errors": [],
"data": []
}
Example response (200, error):
{
"result": "error",
"errors": [
"error message"
],
"data": []
}
Request
POST
api/v1/domain/name_server_update
Body Parameters
apiKey
string
ユーザー個別に発行されたAPIキー
rakkoId
integer
ラッコID
domainName
string
ドメイン名(IDNの場合、punycode)
nameServers
array
ネームサーバー配列(最低2件、最大8件)
nameServers.*
string
ネームサーバー
domainLock
ドメインロック変更API
管理ドメインのドメインロックを変更します。
Example request:
curl -X POST \
"https://rakkodomain.com/api/v1/domain/lock" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"apiKey":"[your api key]","rakkoId":100000,"domainName":"sample-domain.com","isDomainLockEnabledFlg":1}'
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://rakkodomain.com/api/v1/domain/lock',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'apiKey' => '[your api key]',
'rakkoId' => 100000,
'domainName' => 'sample-domain.com',
'isDomainLockEnabledFlg' => 1,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://rakkodomain.com/api/v1/domain/lock'
payload = {
"apiKey": "[your api key]",
"rakkoId": 100000,
"domainName": "sample-domain.com",
"isDomainLockEnabledFlg": 1
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200, success):
{
"result": "success",
"errors": [],
"data": []
}
Example response (200, pending):
{
"result": "pending",
"errors": [],
"data": []
}
Example response (200, error):
{
"result": "error",
"errors": [
"error message"
],
"data": []
}
Request
POST
api/v1/domain/lock
Body Parameters
apiKey
string
ユーザー個別に発行されたAPIキー
rakkoId
integer
ラッコID
domainName
string
ドメイン名(IDNの場合、punycode)
isDomainLockEnabledFlg
integer
ドメインロック
・0: ドメインロックOFF
・1: ドメインロックON
domainMove
ドメイン移動API
管理ドメインを他のラッコIDに移動します。
移動先のラッコID または、移動先のメールアドレスの指定が必要です。
・移動先のラッコID指定:即時移動
・移動先のメールアドレス指定:相手の承認が必要、ラッコIDが無い人にも譲渡可能
Example request:
curl -X POST \
"https://rakkodomain.com/api/v1/domain/move" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"apiKey":"[your api key]","rakkoId":100000,"toRakkoId":100040,"toEmail":"move@example.com","domainNames":["sample-domain.com"]}'
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://rakkodomain.com/api/v1/domain/move',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'apiKey' => '[your api key]',
'rakkoId' => 100000,
'toRakkoId' => 100040,
'toEmail' => 'move@example.com',
'domainNames' => [
'sample-domain.com',
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://rakkodomain.com/api/v1/domain/move'
payload = {
"apiKey": "[your api key]",
"rakkoId": 100000,
"toRakkoId": 100040,
"toEmail": "move@example.com",
"domainNames": [
"sample-domain.com"
]
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200, success):
{
"result": "success",
"errors": [
"sample-domain2.com:管理外ドメイン",
"sample-domain3.com:WHOIS変更処理中",
"sample-domain4.com:移管OUT処理中"
],
"data": {
"successDomains": [
"sample-domain1.com",
"sample-domain5.com"
]
}
}
Example response (200, pending):
{
"result": "pending",
"errors": [],
"data": {
"successDomains": [
"sample-domain1.com",
"sample-domain2.com"
]
}
}
Example response (200, error):
{
"result": "error",
"errors": [
"存在しない移動先"
],
"data": []
}
Request
POST
api/v1/domain/move
Body Parameters
apiKey
string
ユーザー個別に発行されたAPIキー
rakkoId
integer
ラッコID
toRakkoId
integer optional
移動先のラッコID
toEmail
string optional
移動先のメールアドレス
domainNames
array
移動対象のドメイン名配列(最大100件)
domainNames.*
string
ドメイン名(IDNの場合、punycode)
Response Fields
successDomains
array
移動成功(または移動申請成功)ドメイン配列
successDomains.*
string
移動成功(または移動申請成功)ドメイン名
domainTrash
ごみ箱操作API
管理ドメインをごみ箱に出し入れします。
Example request:
curl -X POST \
"https://rakkodomain.com/api/v1/domain/trash" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"apiKey":"[your api key]","rakkoId":100000,"domainName":"sample-domain.com","isTrash":1}'
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://rakkodomain.com/api/v1/domain/trash',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'apiKey' => '[your api key]',
'rakkoId' => 100000,
'domainName' => 'sample-domain.com',
'isTrash' => 1,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://rakkodomain.com/api/v1/domain/trash'
payload = {
"apiKey": "[your api key]",
"rakkoId": 100000,
"domainName": "sample-domain.com",
"isTrash": 1
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200, success):
{
"result": "success",
"errors": [],
"data": []
}
Example response (200, error):
{
"result": "error",
"errors": [
"管理外ドメイン"
],
"data": []
}
Request
POST
api/v1/domain/trash
Body Parameters
apiKey
string
ユーザー個別に発行されたAPIキー
rakkoId
integer
ラッコID
domainName
string
ドメイン名(IDNの場合、punycode)
isTrash
integer
ごみ箱フラグ
・0: ごみ箱から出す
・1: ごみ箱に入れる
2. Whois Management
contactList
WHOISコンタクト情報一覧取得API
管理下にある全てのWHOISコンタクト情報を返却します。
Example request:
curl -X POST \
"https://rakkodomain.com/api/v1/whois/contact/list" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"apiKey":"[your api key]","rakkoId":100000}'
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://rakkodomain.com/api/v1/whois/contact/list',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'apiKey' => '[your api key]',
'rakkoId' => 100000,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://rakkodomain.com/api/v1/whois/contact/list'
payload = {
"apiKey": "[your api key]",
"rakkoId": 100000
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200, success):
{
"result": "success",
"errors": [],
"data": {
"contacts": [
{
"domainNum": 2,
"contactId": 1,
"email": "whois@rakkodomain.com",
"lastName": "Sakatani",
"firstName": "Yasutaka",
"role": "2",
"organization": "th-hoge-0407.jp",
"cc": "JP",
"pc": "8100073",
"sp": "40",
"city": "Chuo-ku, Fukuoka-shi",
"street1": "3-1-30 Maiduru",
"street2": "Yutoku Building No.2",
"phoneCountryCode": "81",
"phone": "05031878542",
"faxCountryCode": null,
"fax": null,
"createdAt": "2020-04-07 11:21:54",
"updatedAt": "2020-04-07 11:21:54"
},
{
"domainNum": 2,
"contactId": 2,
"email": "whois@rakkodomain.com",
"lastName": "Sakatani",
"firstName": "Yasutaka",
"role": "2",
"organization": "Rakko, Inc.",
"cc": "JP",
"pc": "8100073",
"sp": "40",
"city": "Chuo-ku, Fukuoka-shi",
"street1": "3-1-30 Maiduru",
"street2": "Yutoku Building No.2",
"phoneCountryCode": "81",
"phone": "05031878542",
"faxCountryCode": null,
"fax": null,
"createdAt": "2020-04-07 11:21:54",
"updatedAt": "2020-04-07 11:21:54"
}
]
}
}
Request
POST
api/v1/whois/contact/list
Body Parameters
apiKey
string
ユーザー個別に発行されたAPIキー
rakkoId
integer
ラッコID
Response Fields
contacts
array
WHOISコンタクト情報オブジェクト配列
contacts.[].domainNum
integer
レコード設定ドメイン数
contacts.[].contactId
integer
WHOISコンタクト情報ID
contacts.[].email
string
メールアドレス
contacts.[].lastName
string
担当者姓
contacts.[].firstName
string
担当者名
contacts.[].role
integer
種類
・1: 個人
・2: 組織
contacts.[].organization
string
個人名/組織名
contacts.[].cc
string
国コード(ISO3166 2桁)
contacts.[].pc
string
郵便番号
contacts.[].sp
string
都道府県コード(JISX0401)
contacts.[].city
string
市区
contacts.[].street1
string
町村番地
contacts.[].street2
string
建物名・ビル名(任意項目)設定ない場合null
contacts.[].phoneCountryCode
string
電番番号 国際電話番号
contacts.[].phone
string
電番番号
contacts.[].faxCountryCode
string
FAX番号 国際電話番号(任意項目)設定ない場合null
contacts.[].fax
string
FAX番号(任意項目)設定ない場合null
contacts.[].createdAt
string
データ登録日(date_format:Y-m-d H:i:s)
contacts.[].updatedAt
string
データ登録日(date_format:Y-m-d H:i:s)
contactAdd
WHOISコンタクト情報追加API
WHOIS設定に使用するコンタクト情報を追加します。
Example request:
curl -X POST \
"https://rakkodomain.com/api/v1/whois/contact/add" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"apiKey":"[your api key]","rakkoId":100000,"email":"whois@rakkodomain.com","lastName":"Sakatani","firstName":"Yasutaka","role":"2","organization":"Rakko, Inc.","cc":"JP","pc":"8100073","sp":"40","city":"Chuo-ku, Fukuoka-shi","street1":"3-1-30, Maiduru","street2":"Yutoku Building No.2","phoneCountryCode":"81","phone":"05031878542","faxCountryCode":"81","fax":"05031878542"}'
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://rakkodomain.com/api/v1/whois/contact/add',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'apiKey' => '[your api key]',
'rakkoId' => 100000,
'email' => 'whois@rakkodomain.com',
'lastName' => 'Sakatani',
'firstName' => 'Yasutaka',
'role' => '2',
'organization' => 'Rakko, Inc.',
'cc' => 'JP',
'pc' => '8100073',
'sp' => '40',
'city' => 'Chuo-ku, Fukuoka-shi',
'street1' => '3-1-30, Maiduru',
'street2' => 'Yutoku Building No.2',
'phoneCountryCode' => '81',
'phone' => '05031878542',
'faxCountryCode' => '81',
'fax' => '05031878542',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://rakkodomain.com/api/v1/whois/contact/add'
payload = {
"apiKey": "[your api key]",
"rakkoId": 100000,
"email": "whois@rakkodomain.com",
"lastName": "Sakatani",
"firstName": "Yasutaka",
"role": "2",
"organization": "Rakko, Inc.",
"cc": "JP",
"pc": "8100073",
"sp": "40",
"city": "Chuo-ku, Fukuoka-shi",
"street1": "3-1-30, Maiduru",
"street2": "Yutoku Building No.2",
"phoneCountryCode": "81",
"phone": "05031878542",
"faxCountryCode": "81",
"fax": "05031878542"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200, success):
{
"result": "success",
"errors": [],
"data": {
"contactId": "1"
}
}
Example response (200, error):
{
"result": "error",
"errors": [
"error message"
],
"data": []
}
Request
POST
api/v1/whois/contact/add
Body Parameters
apiKey
string
ユーザー個別に発行されたAPIキー
rakkoId
integer
ラッコID
email
string
メールアドレス
lastName
string
担当者姓
firstName
string
担当者名
role
string
種類
・1: 個人
・2: 組織
organization
string optional
個人名/組織名
種類に組織を設定した場合、必須
cc
string
国コード(ISO3166 2桁)
pc
string
郵便番号
sp
string
都道府県コード(JISX0401)
city
string
市区
street1
string
町村番地
street2
string optional
建物名・ビル名(任意項目)設定ない場合null
phoneCountryCode
string
電番番号 国際電話番号
phone
string
電番番号
faxCountryCode
string optional
FAX番号 国際電話番号(任意項目)設定ない場合null
fax
string optional
FAX番号(任意項目)設定ない場合null
Response Fields
contactId
integer
登録したWHOISコンタクト情報ID
contactDelete
WHOISコンタクト情報削除API
WHOIS設定に使用するコンタクト情報を削除します。
Example request:
curl -X POST \
"https://rakkodomain.com/api/v1/whois/contact/delete" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"apiKey":"[your api key]","rakkoId":100000,"contactId":1}'
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://rakkodomain.com/api/v1/whois/contact/delete',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'apiKey' => '[your api key]',
'rakkoId' => 100000,
'contactId' => 1,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://rakkodomain.com/api/v1/whois/contact/delete'
payload = {
"apiKey": "[your api key]",
"rakkoId": 100000,
"contactId": 1
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200, success):
{
"result": "success",
"errors": [],
"data": []
}
Example response (200, error):
{
"result": "error",
"errors": [
"error message"
],
"data": []
}
Request
POST
api/v1/whois/contact/delete
Body Parameters
apiKey
string
ユーザー個別に発行されたAPIキー
rakkoId
integer
ラッコID
contactId
integer
WHOISコンタクト情報ID
whoisUpdate
WHOIS変更API
指定したドメインのWHOIS情報を変更します。
Example request:
curl -X POST \
"https://rakkodomain.com/api/v1/whois/update" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"apiKey":"[your api key]","rakkoId":100000,"domainName":"sample-domain.com","isWhoisProxyEnabledFlg":0,"contacts":{"regContactId":1,"admContactId":1,"tecContactId":1,"bilContactId":1}}'
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://rakkodomain.com/api/v1/whois/update',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'apiKey' => '[your api key]',
'rakkoId' => 100000,
'domainName' => 'sample-domain.com',
'isWhoisProxyEnabledFlg' => 0,
'contacts' => [
'regContactId' => 1,
'admContactId' => 1,
'tecContactId' => 1,
'bilContactId' => 1,
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://rakkodomain.com/api/v1/whois/update'
payload = {
"apiKey": "[your api key]",
"rakkoId": 100000,
"domainName": "sample-domain.com",
"isWhoisProxyEnabledFlg": 0,
"contacts": {
"regContactId": 1,
"admContactId": 1,
"tecContactId": 1,
"bilContactId": 1
}
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200, success):
{
"result": "success",
"errors": [],
"data": []
}
Example response (200, pending):
{
"result": "pending",
"errors": [],
"data": []
}
Example response (200, error):
{
"result": "error",
"errors": [
"error message"
],
"data": []
}
Request
POST
api/v1/whois/update
Body Parameters
apiKey
string
ユーザー個別に発行されたAPIキー
rakkoId
integer
ラッコID
domainName
string
ドメイン名(IDNの場合、punycode)
isWhoisProxyEnabledFlg
integer
WHOIS代理公開設定
・0: WHOIS代理公開以外
・1: WHOIS代理公開
contacts
array optional
WHOISコンタクト情報オブジェクト
WHOIS代理公開設定が 0(WHOIS代理公開以外)の場合必須
contacts.regContactId
integer optional
登録者コンタクトID
contacts.admContactId
integer optional
管理担当者コンタクトID
contacts.tecContactId
integer optional
技術担当者コンタクトID
contacts.bilContactId
integer optional
経理担当者コンタクトID
whoisUpdateCancel
WHOIS変更キャンセルAPI
指定したドメインのWHOIS情報変更処理をキャンセルします。
Example request:
curl -X POST \
"https://rakkodomain.com/api/v1/whois/update/cancel" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"apiKey":"[your api key]","rakkoId":100000,"domainName":"sample-domain.com"}'
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://rakkodomain.com/api/v1/whois/update/cancel',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'apiKey' => '[your api key]',
'rakkoId' => 100000,
'domainName' => 'sample-domain.com',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://rakkodomain.com/api/v1/whois/update/cancel'
payload = {
"apiKey": "[your api key]",
"rakkoId": 100000,
"domainName": "sample-domain.com"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200, success):
{
"result": "success",
"errors": [],
"data": []
}
Example response (200, pending):
{
"result": "pending",
"errors": [],
"data": []
}
Example response (200, error):
{
"result": "error",
"errors": [
"error message"
],
"data": []
}
Request
POST
api/v1/whois/update/cancel
Body Parameters
apiKey
string
ユーザー個別に発行されたAPIキー
rakkoId
integer
ラッコID
domainName
string
ドメイン名(IDNの場合、punycode)
3. DNS Management
dnsUpdate
DNSレコード変更API
管理ドメインのDNSレコード変更します。
ご利用の際は、DNSレコードの設定方法をご確認ください。
Example request:
curl -X POST \
"https://rakkodomain.com/api/v1/dns/update" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"apiKey":"[your api key]","rakkoId":100000,"domainName":"sample-domain.com","editNameServer":1,"dnsRecords":[{"recordType":20,"hostName":"arecord","value":"13.115.58.34","ttl":86400,"priority":10,"serviceName":"_service.","protocol":"_proto.","weight":100,"port":21,"keyTag":0,"alg":3,"digestType":1,"digestString":"1234567890123456789012345678901234567890"}]}'
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://rakkodomain.com/api/v1/dns/update',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'apiKey' => '[your api key]',
'rakkoId' => 100000,
'domainName' => 'sample-domain.com',
'editNameServer' => 1,
'dnsRecords' => [
[
'recordType' => 20,
'hostName' => 'arecord',
'value' => '13.115.58.34',
'ttl' => 86400,
'priority' => 10,
'serviceName' => '_service.',
'protocol' => '_proto.',
'weight' => 100,
'port' => 21,
'keyTag' => 0,
'alg' => 3,
'digestType' => 1,
'digestString' => '1234567890123456789012345678901234567890',
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://rakkodomain.com/api/v1/dns/update'
payload = {
"apiKey": "[your api key]",
"rakkoId": 100000,
"domainName": "sample-domain.com",
"editNameServer": 1,
"dnsRecords": [
{
"recordType": 20,
"hostName": "arecord",
"value": "13.115.58.34",
"ttl": 86400,
"priority": 10,
"serviceName": "_service.",
"protocol": "_proto.",
"weight": 100,
"port": 21,
"keyTag": 0,
"alg": 3,
"digestType": 1,
"digestString": "1234567890123456789012345678901234567890"
}
]
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200, success):
{
"result": "success",
"errors": [],
"data": []
}
Example response (200, error):
{
"result": "error",
"errors": [
"error message"
],
"data": []
}
Request
POST
api/v1/dns/update
Body Parameters
apiKey
string
ユーザー個別に発行されたAPIキー
rakkoId
integer
ラッコID
domainName
string
ドメイン名(IDNの場合、punycode)
editNameServer
integer
ネームサーバー同時変更
・0: ネームサーバー変更なし
・1: ネームサーバー同時変更
dnsRecords
array
DNSレコードオブジェクト配列
dnsRecords.*.recordType
integer
レコードタイプ
・10: NSレコード
・20: Aレコード
・30: CNAMEレコード
・40: MXレコード
・50: TXTレコード
・60: AAAAレコード
・90: SRVレコード
・100: DSレコード
dnsRecords.*.hostName
string optional
ホスト名
ホスト名を入力(xxx.rakkodomain.comの場合はxxxのみ)
dnsRecords.*.value
string optional
レコード値(レコードタイプ: 10,20,30,40,50,60 の場合必須)
dnsRecords.*.ttl
integer
キャッシュ有効時間
・60〜86400の範囲の値
dnsRecords.*.priority
integer optional
優先度(レコードタイプ: 40 MXレコード, 90 SRV の場合必須)
・0〜65535の範囲の値
dnsRecords.*.serviceName
string optional
サービス名(レコードタイプ: 90 SRV の場合必須)
・「_」アンダーバーから開始されていること。
・「.」ドットで終了されていること。
dnsRecords.*.protocol
string optional
プロトコル(レコードタイプ: 90 SRV の場合必須)
・「_」アンダーバーから開始されていること。
・「.」ドットで終了されていること。
dnsRecords.*.weight
integer optional
重み(レコードタイプ: 90 SRV の場合必須)
・0〜65535の範囲の値
dnsRecords.*.port
integer optional
ポート番号(レコードタイプ: 90 SRV の場合必須)
・0〜65535の範囲の値
dnsRecords.*.keyTag
integer optional
鍵タグ(レコードタイプ: 100 DS の場合必須)
・0〜65535の範囲の値
dnsRecords.*.alg
integer optional
アルゴリズム(レコードタイプ: 100 DS の場合必須)
・3,5,6,7,8,10,12,13,14 のいずれか
dnsRecords.*.digestType
integer optional
ダイジェストタイプ(レコードタイプ: 100 DS の場合必須)
・1,2 のいずれか
dnsRecords.*.digestString
string optional
ダイジェスト(レコードタイプ: 100 DS の場合必須)
・digestType:1の場合 40byte
・digestType:2の場合 64byte
4. Transfer Management
transferCheck
ドメイン移管可否チェックAPI
ドメイン移管可否チェックの結果を返却します。
Example request:
curl -X POST \
"https://rakkodomain.com/api/v1/transfer/check" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"apiKey":"[your api key]","rakkoId":100000,"domainName":"sample-domain.com"}'
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://rakkodomain.com/api/v1/transfer/check',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'apiKey' => '[your api key]',
'rakkoId' => 100000,
'domainName' => 'sample-domain.com',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://rakkodomain.com/api/v1/transfer/check'
payload = {
"apiKey": "[your api key]",
"rakkoId": 100000,
"domainName": "sample-domain.com"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200, success):
{
"result": "success",
"errors": [],
"data": {
"domainName": "sample-domain.com",
"idn": "sample-domain.com",
"isFreeTransfer": 1
}
}
Example response (200, error):
{
"result": "error",
"errors": [
"申請済み"
],
"data": []
}
Request
POST
api/v1/transfer/check
Body Parameters
apiKey
string
ユーザー個別に発行されたAPIキー
rakkoId
integer
ラッコID
domainName
string
移管対象ドメイン名
Response Fields
domainName
string
ドメイン名(IDNの場合、punycode)
idn
string
国際化ドメイン名
isFreeTransfer
integer
無料移管
・0: 無料移管対象外
・1: 無料移管対象
transferDomain
ドメイン移管申請API
ドメイン移管申請を行います。ドメイン移管にはラッコポイントが必要です。クレジットカードを登録されている場合は不足分がオートチャージされます。
Example request:
curl -X POST \
"https://rakkodomain.com/api/v1/transfer/domain" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"apiKey":"[your api key]","rakkoId":100000,"domainName":"sample-domain.com","authcode":"gMmcTG16hE1!"}'
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://rakkodomain.com/api/v1/transfer/domain',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'apiKey' => '[your api key]',
'rakkoId' => 100000,
'domainName' => 'sample-domain.com',
'authcode' => 'gMmcTG16hE1!',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://rakkodomain.com/api/v1/transfer/domain'
payload = {
"apiKey": "[your api key]",
"rakkoId": 100000,
"domainName": "sample-domain.com",
"authcode": "gMmcTG16hE1!"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200, pending):
{
"result": "pending",
"errors": [],
"data": {
"domainName": "sample-domain.com",
"idn": "sample-domain.com",
"usePoint": 1350,
"chargePoint": 0
}
}
Example response (200, error):
{
"result": "error",
"errors": [
"ポイント不足"
],
"data": []
}
Request
POST
api/v1/transfer/domain
Body Parameters
apiKey
string
ユーザー個別に発行されたAPIキー
rakkoId
integer
ラッコID
domainName
string
移管対象ドメイン名
authcode
string optional
AUTHOCDE(.JPドメイン以外必須)
Response Fields
domainName
string
ドメイン名(IDNの場合、punycode)
idn
string
国際化ドメイン名
usePoint
integer
使用したラッコポイント
chargePoint
integer
自動購入したラッコポイント(クレジットカード登録時のみ)
5. ActionLog Management
actionLogList
操作履歴取得API
操作履歴(アクションログ)の一覧を返却します。1ページあたりの出力件数は最大200件。
Example request:
curl -X POST \
"https://rakkodomain.com/api/v1/action_log/list" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"apiKey":"[your api key]","rakkoId":100000,"page":1,"description":"sample-domain","dateStart":"2020-06-01","dateEnd":"2020-06-30"}'
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://rakkodomain.com/api/v1/action_log/list',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'apiKey' => '[your api key]',
'rakkoId' => 100000,
'page' => 1,
'description' => 'sample-domain',
'dateStart' => '2020-06-01',
'dateEnd' => '2020-06-30',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://rakkodomain.com/api/v1/action_log/list'
payload = {
"apiKey": "[your api key]",
"rakkoId": 100000,
"page": 1,
"description": "sample-domain",
"dateStart": "2020-06-01",
"dateEnd": "2020-06-30"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200, success):
{
"result": "success",
"errors": [],
"data": {
"total": 2,
"currentPage": 1,
"actionLogs": [
{
"id": 4838,
"actionName": "ドメイン登録(成功)",
"description": "sample-domain-0522.xyz \/ 1年",
"point": null,
"leftPoint": null,
"pointType": null,
"createdAt": "2020-05-22 10:30:16"
},
{
"id": 4837,
"actionName": "ドメイン登録(受付)",
"description": "sample-domain-0522.xyz \/ 1年",
"point": 11,
"leftPoint": 0,
"pointType": 1,
"createdAt": "2020-05-22 10:30:07"
}
]
}
}
Request
POST
api/v1/action_log/list
Body Parameters
apiKey
string
ユーザー個別に発行されたAPIキー
rakkoId
integer
ラッコID
page
integer optional
ページ番号
description
string optional
ドメイン名
dateStart
string
期間(from)date_format:Y-m-d
dateEnd
string
期間(to)date_format:Y-m-d
Response Fields
total
integer
アクションログ件数
currentPage
integer
現在のページ
actionLogs
array
アクションログ情報オブジェクト配列
actionLogs.[].id
integer
アクションログID
actionLogs.[].actionName
string
アクション名
actionLogs.[].description
string
内容
actionLogs.[].point
integer
取得ポイント/使用ポイント
actionLogs.[].leftPoint
integer
残りポイント
actionLogs.[].pointType
integer
ポイント加減タイプ
・0: 正
・1: 負
actionLogs.[].createdAt
string
アクションログ登録日時(date_format:Y-m-d H:i:s)