You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 43 Next »

Anleitung zur vollständigen Automatisierung der Registrierung einer Domain, am Beispiel der Domain TLD.com verwendet. .com ist eine generische Top-Level-Domain. Aufgrund fehlender Beschränkungen, eignet sich diese TLD bestens für die erste Implementierung.


Inhaltsverzeichnis dieser Seite

Voraussetzungen

Domainkontakte

Für die Bestellung einer .com Domain wird ein Domaininhaber (OwnerC), ein administrativer Kontakt (AdminC) und ein technischer Kontakt (TechC) benötigt. Sie können bereits vorhandene Kontakte verwenden oder neue Kontakte anlegen.

Welche Daten ein Kontakt für die Registrierung einer Domain enthalten muß, hängt von der TLD ab. Jede Registry hat dabei ihre eigenen Richtlinien. Für einige TLDs werden sogenannte Kontakterweiterungen (Extensions) benötigt. Detaillierte Informationen zu allen TLDs, die wir anbieten, finden Sie in der TLD Wissensdatenbank

Die Domain registrieren

Auftrag starten

Mit dem Auftragstyp DomainCreate starten Sie die Registrierung der Domain. Dabei müssen Sie mindestens diese Werte angeben:

  • Kontakte:  Die Kontakt-ID der geforderten Kontakte. Bei .com-Domains wird ein Domaininhaber, ein administrativer sowie ein technischer Kontakt benötigt.
  • Domain: Der Name der Domain
  • Nameserver: Die gewünschten Nameserver an. Die Anzahl der benötigten Nameserverabhängig von der TLD.

Welche weiteren Daten für eine Domain benötigt werden hängt von der TLD ab. Jede Registry hat dabei ihre eigenen Richtlinien. Weitere Informationen dazu finden Sie in der TLD Wissensdatenbank.

Beispiele für Aufträge und Antworten (Requests and Responses)

DomainCreate Request
Request
POST /domain
{
    "name": "domain.com",
    "ownerc": {
        "id": 100
    },
    "adminc": {
        "id": 100
    },
    "techc": {
        "id": 100
    },
    "nameServers": [
        {
          "name": "a.ns14.net"
        },
        {
          "name": "b.ns14.net"
        },
        {
          "name": "c.ns14.net"
        },
        {
          "name": "d.ns14.net"
        }
    ]
}
DomainCreate Response
Response
{
    "stid": "20180926-stid",
    "status": {
        "resultCode": "N0101",
        "text": "Die Domainregistrierung wurde erfolgreich gestartet.",
        "type": "NOTIFY"
    },
    "object": {
        "type": "domain",
        "value": "domain.com"
    }
}
DomainCreate Request
Request
<request>
  <auth>
    <user>USER</user>
    <password>PASSWORD</password>
    <context>CONTEXT</context>
  </auth>
  <task>
    <code>0101</code>
    <domain>
      <name>domain.com</name>
      <ownerc>100</ownerc>
      <adminc>100</adminc>
      <techc>100</techc>
      <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>
      <confirm_order>1</confirm_order>
      <period>1</period>
    </domain>
  </task>
</request>
DomainCreate Response
Response
<?xml version="1.0" encoding="UTF-8"?>
<response>
  <result>
    <data>
      <domain_job>
        <job>
          <id>123456</id>
          <status>RUNNING</status>
        </job>
      </domain_job>
    </data>
    <status>
      <code>N0101</code>
      <text>Die Domainregistrierung wurde erfolgreich gestartet.</text>
      <type>notify</type>
      <object>
        <type>domain</type>
        <value>domain.com</value>
      </object>
    </status>
  </result>
		<stid>20181015-dev-3282</stid>
 </response>

Auftrags-Benachrichtigung per Polling abrufen

Der Auftragstyp DomainCreate erzeugt automatisch einen Auftrag für die Registrierung der Domain.
Ist der Auftrag abgearbeitet, wird eine Auftrags-Benachrichtigung , die Aufschluss darüber gibt, ob die Registrierung erfolgreich war oder nicht. Da Sie diese über das Polling-Verfahren abrufen können, wird Sie auch als PollMessage bezeichnet

Sie müssen die PollMessage mit dem Auftragstyp PollmessageInfo abrufen.  Das Abrufen müssen Sie mit dem Auftragstyp PollmessageConfirm bestätigen.


Weitere Details zu Benachrichtigungen finden Sie auf der Seite Asynchrone Benachrichtigungen.

Beispiele für Aufträge und Saytemantworten (Requests and Responses)

PollInfo Request
Request
GET /poll
PollInfo Response
Response
{
    "stid": "20180926-stid",
    "status": {
        "resultCode": "S0905",
        "text": "Die Benachrichtigung wurde erfolgreich abgerufen.",
        "type": "SUCCESS"
    },
    "object": {
        "type": "message",
        "value": "1819917"
    },
    "data": [
        {
            "summary": 1,
            "message": {
                "id": 1819917,
                "job": {
                    "id": 4295609745,
                    "domain": {
                        "created": "2018-09-26T15:11:21.000+0200",
                        "owner": {},
                        "updater": {},
                        "name": "domain.com",
                        "expire": "2019-09-26T15:11:20.000+0200",
                        "payable": "2019-09-26T15:11:21.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"
                            }
                        ],
                        "lastAction": "CREATE",
                        "authinfo": "gg9o3FFL/hzNbuPw",
                        "autoRenewStatus": "TRUE",
                        "registrarStatus": "ACTIVE",
                        "rddsOptIn": "NOT_SET"
                    }
                },
                "stid": "20180926-stid",
                "object": {
                    "type": "domain",
                    "value": "domain.com"
                },
                "status": {
                    "resultCode": "S0101",
                    "type": "SUCCESS"
                }
            }
        }
    ]
}
PollInfo Request
Request
<request>
    <auth>
        <user>USER</user>
        <context>CONTEXT</context>
        <password>PASSWORD</password>
    </auth>
    <task>
        <code>0905</code>
    </task>
</request>
PollInfo Response
Response
<response>
    <result>
        <data>
            <summary>1</summary>
            <message>
                <id>1855680</id>
                <owner>
                    <user>alex_normal_plus</user>
                    <context>4</context>
                </owner>
                <job>
                    <domain>
                        <name>domain.com</name>
                        <expire>2019-10-15 14:02:40</expire>
                        <payable>2019-10-15 14:02:41</payable>
                        <ownerc>100</ownerc>
                        <adminc>100</adminc>
                        <techc>100</techc>
                        <nic_member_label>VGRS-TEST</nic_member_label>
                        <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>
                        <authinfo>S0Lygv+ZkNbniICm</authinfo>
                        <autorenew>true</autorenew>
                        <confirm_order>1</confirm_order>
                        <confirm_owner_consent>0</confirm_owner_consent>
                        <registrar_status>ACTIVE</registrar_status>
                        <rdds_opt_in>NOT_SET</rdds_opt_in>
                        <owner/>
                        <updater/>
                        <created>2018-10-15 14:02:41</created>
                    </domain>
                    <job_id>4295625406</job_id>
                    <status>
                        <code>S0101</code>
                        <type>success</type>
                        <object>
                            <type>domain</type>
                            <value>domain.com</value>
                        </object>
                    </status>
                    <stid>20181015-app1-3788</stid>
                </job>
                <created>2018-10-15 14:03:02</created>
            </message>
        </data>
        <status>
            <code>S0905</code>
            <text>Die Benachrichtigung wurde erfolgreich abgerufen.</text>
            <type>success</type>
            <object>
                <type>message</type>
                <value>1855680</value>
            </object>
        </status>
    </result>
    <stid>20181015-app1-3805</stid>
</response>


PollConfirm Request
Confirm Request
PUT /poll/{id}
PollConfirm Response
Response
{
    "stid": "20180926-stid",
    "status": {
        "resultCode": "S0906",
        "text": "Die Benachrichtigung wurde erfolgreich bestätigt.",
        "type": "SUCCESS"
    },
    "object": {
        "type": "message",
        "value": "1819853"
    }
}
PollConfirm Request
Request
<request>
    <auth>
        <user>USER</user>
        <context>CONTEXT</context>
        <password>PASSWORD</password>
    </auth>
    <task>
        <code>0906</code>
       <message>
            <id>650664</id>
        </message>
    </task>
</request>
PollConfirm Response
Response
<response>
    <result>
        <data>
            <summary>0</summary>
            <message>
                <id>650664</id>
            </message>
        </data>
        <status>
            <code>S0906</code>
            <text>The notification was confirmed successfully.</text>
            <type>success</type>
            <object>
                <type>message</type>
                <value>650664</value>
            </object>
        </status>
         <stid>20181015-app1-3162</stid>
	 </result>
</response>

Domaindaten abrufen

Nach erfolgreicher Registrierung können Sie die im System hinterlegten Registrierungsdaten mit dem Auftragstyp DomainInfo abfragen. Die können so feststellen,  ob die Domain mit den gewünschten Daten registriert wurde. Use Cases mit Marius/Kutti besprechen; wann ist der task sinnvoll

Zur Prozessbeschreibung Domaindaten ermitteln

Auftragstypen, Auftragstypen-Codes und Routen

AuftragstypCodeRoute
ContactCreate0301POST /contact
DomainCreate0101POST /domain
PollMessageInfo0905GET /poll
PollMessageConfirm0906PUT /poll/$id
DomainInfo0105GET / domain/$name

Ablauf-Diagramm



  • No labels