- Start
- API-Referenz
- Automatisierung von Domain-Prozessen
Automatisierung der Laufzeitverlängerung einer Domain
Anleitung zur vollständigen Automatisierung der Laufzeitverlängerung einer Domain (DomainRenew).
Grundlagen der JSON-und XML-API
Alle wichtigen Informationen für die Nutzung der JSON- und XML-API findest du bei den API-Grundlagen, den XML- und JSON-Grundlagen.
Prozessübersicht
Ablauf-Diagramm

Auftragstypen, Codes und Routen
| Auftragstyp | Code | Route |
|---|---|---|
| DomainRenew | 0101003 | PUT /domain/ {name} /_renew |
| PollInfo | 0905 | GET /poll |
| PollConfirm | 0906 | PUT /poll/$id |
| DomainInfo | 0105 | GET / domain/$name |
Voraussetzungen
Domain-Daten abrufen (DomainInfo)
Für den DomainRenew-Auftrag wird das Fälligkeitsdatum der Domain benötigt. Es kann mit einem DomainInfo-Auftrag abgerufen werden. Das Fälligkeitsdatum ist im Feld payable angegeben. Im Beispiel ist es 2020-12-31 12:00:00.
GET /domain/example.com{
"stid": "20180926-stid",
"status": {
"code": "S0105",
"text": "Domaindaten wurden erfolgreich ermittelt.",
"type": "SUCCESS"
},
"object": {
"type": "domain",
"value": "example.com"
},
"data": [
{
"created": "2018-09-26T14:54:03.000+0200",
"updated": "2018-09-26T14:54:10.000+0200",
"owner": {
"user": "USER",
"context": CONTEXT
},
"updater": {
"user": "USER",
"context": CONTEXT
},
"name": "example.com",
"payable": "2020-12-31T12:00:00.000+0200",
"ownerc": {
"id": 100
},
"adminc": {
"id": 100
},
"techc": {
"id": 100
},
"registryStatus": "LOCK",
"nameServers": [
{
"name": "a.ns14.net"
},
{
"name": "b.ns14.net"
},
{
"name": "c.ns14.net"
},
{
"name": "d.ns14.net"
}
],
"trustee": false,
"privacy": false,
"authinfo": "J/w0Xpn66I87YVty",
"domainsafe": false,
"validCertificate": false,
"autoRenewStatus": "TRUE",
"registrarStatus": "ACTIVE",
"rddsOptIn": "NOT_SET"
}
]
}
<request>
<auth>
<user>USER</user>
<password>PASSWORD</password>
<context>CONTEXT</context>
</auth>
<task>
<code>0105</code>
<domain>
<name>example.com</name>
</domain>
</task>
</request><response>
<result>
<data>
<domain>
<name>example.com</name>
<payable>2020-12-31 12:00:00</payable>
<ownerc>100</ownerc>
<adminc>100</adminc>
<techc>100</techc>
<registry_status>LOCK</registry_status>
<nserver>
<name>a.ns14.net</name>
</nserver>
<nserver>
<name>b.ns14.net</name>
</nserver>
<nserver>
<name>c.ns14.net</name>
</nserver>
<nserver>
<name>d.ns14.net</name>
</nserver>
<period>1</period>
<status>SUCCESS</status>
<use_trustee>false</use_trustee>
<use_privacy>false</use_privacy>
<authinfo>J/w0Xpn66I87YVty</authinfo>
<domainsafe>false</domainsafe>
<certificate>false</certificate>
<autorenew>true</autorenew>
<registrar_status>ACTIVE</registrar_status>
<rdds_opt_in>NOT_SET</rdds_opt_in>
<owner>
<user>USER</user>
<context>CONTEXT</context>
</owner>
<updater>
<user>USER</user>
<context>CONTEXT</context>
</updater>
<created>2018-09-26 14:54:03</created>
<updated>2018-09-26 14:54:10</updated>
</domain>
</data>
<status>
<code>S0105</code>
<text>Domaindaten wurden erfolgreich ermittelt.</text>
<type>success</type>
<object>
<type>domain</type>
<value>example.com</value>
</object>
</status>
</result>
<stid>20180926-stid</stid>
</response>
Ablauf
Domain verlängern (Domain Renew)
Mit dem Auftragstyp DomainRenew startest du die Laufzeitverlängerung einer Domain. Das zuvor ermittelte Fälligkeitsdatum ist im Auftrag erforderlich, z. B. um eine versehentliche doppelte Verlängerung zu verhindern.
DomainRenew - Beispiel
PUT /domain/$name/_renew
{
"period": {
"period": 1,
"unit": "YEAR"
},
"payable": "2020-12-31T12:00:00.000+0200",
"removeCancelation": false
}{
"stid": "20180928-stid",
"status": {
"code": "N0101003",
"text": "Die Laufzeitverlaengerung wurde erfolgreich gestartet.",
"type": "NOTIFY"
},
"object": {
"type": "domain",
"value": "example.com"
},
"data": [
{
"id": 4295611341
}
]
}
<request>
<auth>
<user>USER</user>
<password>PASSWORD</password>
<context>CONTEXT</context>
</auth>
<task>
<code>0101003</code>
<domain>
<name>example.com</name>
<period>1</period>
<payable>2020-12-31 12:00:00</payable>
<remove_cancellation>no</remove_cancellation>
</domain>
</task>
</request><response>
<result>
<data>
<domain_job>
<job>
<id>123456</id>
<status>RUNNING</status>
</job>
</domain_job>
</data>
<status>
<code>N0101003</code>
<text>Die Laufzeitverlaengerung wurde erfolgreich gestartet.</text>
<type>notify</type>
<object>
<type>domain</type>
<value>example.com</value>
</object>
</status>
</result>
<stid>20180928-stid</stid>
</response>
Benachrichtigungen erhalten
Der Auftragstyp DomainRenew erzeugt automatisch einen Auftrag für die Verlängerung der Domain.
Ist der Auftrag abgearbeitet, wird eine Systembenachrichtigung erzeugt, die Aufschluss darüber gibt, ob die Laufzeitverlängerung erfolgreich war oder nicht.
Die Benachrichtigung kann mit den Methoden Polling und Push abgerufen bzw. zugesendet werden.
Domain-Daten abrufen (Domain Info)
Nach erfolgreicher Laufzeitverlängerung kannst du das neue Fälligkeitsdatum der Domain (Feld payable) mit einem DomainInfo-Auftrag ermitteln.
Da die Domain-Laufzeit in diesem Beispiel um ein Jahr verlängert wurde, hat das Feld payable den neuen Wert 2021-12-31 00:00:00.
GET /domain/example.com{
"stid": "20180926-stid",
"status": {
"code": "S0105",
"text": "Domaindaten wurden erfolgreich ermittelt.",
"type": "SUCCESS"
},
"object": {
"type": "domain",
"value": "example.com"
},
"data": [
{
"created": "2018-09-26T14:54:03.000+0200",
"updated": "2018-09-26T14:54:10.000+0200",
"owner": {
"user": "USER",
"context": CONTEXT
},
"updater": {
"user": "USER",
"context": CONTEXT
},
"name": "example.com",
"payable": "2021-12-31T00:00:00.000+0200",
"ownerc": {
"id": 100
},
"adminc": {
"id": 100
},
"techc": {
"id": 100
},
"registryStatus": "LOCK",
"nameServers": [
{
"name": "a.ns14.net"
},
{
"name": "b.ns14.net"
},
{
"name": "c.ns14.net"
},
{
"name": "d.ns14.net"
}
],
"trustee": false,
"privacy": false,
"authinfo": "J/w0Xpn66I87YVty",
"domainsafe": false,
"validCertificate": false,
"autoRenewStatus": "TRUE",
"registrarStatus": "ACTIVE",
"rddsOptIn": "NOT_SET"
}
]
}
<request>
<auth>
<user>USER</user>
<password>PASSWORD</password>
<context>CONTEXT</context>
</auth>
<task>
<code>0105</code>
<domain>
<name>example.com</name>
</domain>
</task>
</request><response>
<result>
<data>
<domain>
<name>example.com</name>
<payable>2021-12-31 00:00:00</payable>
<ownerc>100</ownerc>
<adminc>100</adminc>
<techc>100</techc>
<registry_status>LOCK</registry_status>
<nserver>
<name>a.ns14.net</name>
</nserver>
<nserver>
<name>b.ns14.net</name>
</nserver>
<nserver>
<name>c.ns14.net</name>
</nserver>
<nserver>
<name>d.ns14.net</name>
</nserver>
<period>1</period>
<status>SUCCESS</status>
<use_trustee>false</use_trustee>
<use_privacy>false</use_privacy>
<authinfo>J/w0Xpn66I87YVty</authinfo>
<domainsafe>false</domainsafe>
<certificate>false</certificate>
<autorenew>true</autorenew>
<registrar_status>ACTIVE</registrar_status>
<rdds_opt_in>NOT_SET</rdds_opt_in>
<owner>
<user>USER</user>
<context>CONTEXT</context>
</owner>
<updater>
<user>USER</user>
<context>CONTEXT</context>
</updater>
<created>2018-09-26 14:54:03</created>
<updated>2018-09-26 14:54:10</updated>
</domain>
</data>
<status>
<code>S0105</code>
<text>Domaindaten wurden erfolgreich ermittelt.</text>
<type>success</type>
<object>
<type>domain</type>
<value>example.com</value>
</object>
</status>
</result>
<stid>20180926-stid</stid>
</response>